XooCode(){

State

State is a direct AdministrativeArea subtype for first-order national subdivisions: US states, Australian states, Indian states, German Länder. It has no unique properties; the type is the semantic signal, and the graph structure (containedInPlace → Country, containsPlace → City) carries the relationships.

Use State whenever the subject is the political region itself (a jobs-by-state page, a state-level tax or shipping rule, a state knowledge panel). For an address, keep it simple: "addressRegion": "PA" is the preferred form. A full State node is only useful when the state is a first-class entity in your graph.

Full example of schema.org/State json-ld markup

The markup is verified as valid with Rich Results Test from Google.

Highlight legend:Required by GoogleRecommendedOptional
schema.org/State
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "State",
  "@id": "https://xoocode.com/reference/state/US-PA",
  "name": "Pennsylvania",
  "identifier": "US-PA",
  "containedInPlace": { "@type": "Country", "@id": "https://xoocode.com/reference/country/US", "name": "United States", "identifier": "US" },
  "containsPlace": [
    { "@type": "City", "@id": "https://xoocode.com/reference/city/dunmore-pa", "name": "Dunmore" }
  ],
  "sameAs": [
    "https://en.wikipedia.org/wiki/Pennsylvania",
    "https://www.wikidata.org/wiki/Q1400"
  ]
}
</script>

Identifier conventions

  • US: ISO 3166-2 subdivision code (US-PA) or the two-letter postal abbreviation (PA).
  • Other countries: ISO 3166-2 subdivision code (AU-NSW, DE-BY, IN-KA).
  • Always cross-link with sameAs to Wikipedia / Wikidata for entity resolution.

Minimal valid version

The smallest markup that still produces a valid State entity. Use it as the floor. Reach for the advanced example above when you want search engines and AI agents to understand more about your content.

schema.org/State (minimal)
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "State",
  "name": "Pennsylvania",
  "identifier": "US-PA",
  "containedInPlace": { "@type": "Country", "name": "United States" }
}
</script>

Google rich results this unlocks

Markup matching this example makes your page eligible for the following Google Search rich results. The primary target drives the required / recommended property classification in the advanced code block above.

  • No dedicated rich result (knowledge graph and jurisdictional anchoring)
    Google docs

Common State mistakes

Mistakes that pass validation but silently fail to earn rich results or mislead consumers walking the graph. Avoid these and your markup will be ahead of most sites in the wild.

  1. 01

    State for UK / Japanese / French subdivisions

    Wrong
    State on an English county, a Japanese prefecture, or a French département
    Right
    Plain AdministrativeArea (or Country-specific types where they exist)

    State is semantically scoped to first-order national subdivisions that identify themselves as 'states'. For county / prefecture / département, AdministrativeArea is the safe fallback.

  2. 02

    Populating addressRegion with a full State node

    Wrong
    addressRegion wraps a State with ISO code and containedInPlace
    Right
    "addressRegion": "PA"

    addressRegion expects a short text code. Use a full State node only when the state itself is the subject.

Also mentioned in 12 other examples

State also appears in AdministrativeArea, Airport, City, Country, DrugCost, InsuranceAgency, LegalService, MovingCompany, and 4 more. See the full State schema page for every reference.

About the example data

Pennsylvania as a State node containing Dunmore (Xoo Code's home city) and sitting inside the United States.

Comments

Loading comments...

Leave a comment