Organization structure profile
How a government's departments and offices are described, including who runs them and how they're organized.
Schemas: 2
Code lists: 1
Standards: schema.org, Popolo, W3C ORG
Directory
A dated, retrievable package of a publisher's whole organizational structure.
Standards: W3C ORG
| Field | Type | Definition | Required |
|---|---|---|---|
@id |
string |
This directory's own dereferenceable identifier. | Yes |
@type |
"DataFeed" |
Always DataFeed. Without this an org chart is only a pile of files with no statement of what the set contains, when it was current, or who stands behind it - a consumer polls one URL and can tell whether anything changed. |
Yes |
name |
string |
The directory's title. | Yes |
description |
string |
A plain-language description of what this directory covers. | No |
url |
string |
Where this directory can be retrieved. | No |
publisher |
Reference |
The GovernmentOrganization asserting this directory. Required: an unattributed directory cannot be trusted or corrected. |
Yes |
about |
Reference |
The Jurisdiction this directory covers. |
No |
dateModified |
string |
When the directory last changed. Required, and the field a polling consumer reads first. | Yes |
conformanceLevel |
string[] |
schemaGov conformance level claimed, per SPEC section 4. Distinct from conformsTo, which names an external standard the data follows. |
No |
numberOfItems |
integer |
How many entities this directory contains. | No |
dataFeedElement |
Reference[] |
References to every entity in the directory. References, never inlined copies - see SPEC section 1.2. | No |
license |
string |
The license this directory is published under. | No |
inLanguage |
string[] |
The language(s) this directory is published in. | No |
{
"@id": "https://example-city.gov/id/directory/organization",
"@type": "DataFeed",
"name": "Example City organizational directory",
"description": "Every government body, office, and officeholder for Example City, with the facilities they occupy.",
"url": "https://example-city.gov/id/directory/organization",
"publisher": {
"@id": "https://example-city.gov/id/organization/city-government",
"name": "Example City Government"
},
"about": {
"@id": "https://example-city.gov/id/jurisdiction/example-city",
"name": "Example City"
},
"dateModified": "2025-09-06",
"conformanceLevel": [
"standard"
],
"inLanguage": [
"en-US",
"es-US"
],
"license": "https://creativecommons.org/publicdomain/zero/1.0/",
"numberOfItems": 14,
"dataFeedElement": [
{
"@id": "https://example-city.gov/id/organization/city-government"
},
{
"@id": "https://example-city.gov/id/organization/city-council"
},
{
"@id": "https://example-city.gov/id/organization/planning-commission"
},
{
"@id": "https://example-city.gov/id/organization/public-works"
},
{
"@id": "https://example-city.gov/id/post/mayor"
},
{
"@id": "https://example-city.gov/id/post/city-manager"
},
{
"@id": "https://example-city.gov/id/post/councilmember-d2"
},
{
"@id": "https://example-city.gov/id/post/councilmember-d5"
},
{
"@id": "https://example-city.gov/id/post/planning-commission-chair"
},
{
"@id": "https://example-city.gov/id/person/jane-smith"
},
{
"@id": "https://example-city.gov/id/person/john-doe"
},
{
"@id": "https://example-city.gov/id/person/maria-garcia"
},
{
"@id": "https://example-city.gov/id/person/robert-johnson"
},
{
"@id": "https://example-city.gov/id/person/alan-reyes"
}
]
}
Post
An office that exists independently of whoever holds it, e.g. 'Mayor of Example City' or 'Councilmember, District 2'.
Standards: Popolo
| Field | Type | Definition | Required |
|---|---|---|---|
@id |
string |
This post's own dereferenceable identifier. | Yes |
@type |
"Post" |
Always Post. A Role binds a person to a body for a span of time, but when nobody holds the office there is no Role - a Post is what a vacancy is a vacancy of, and what a succession runs through. Equivalent to Popolo Post; schema.org has no such concept, so gs:Post is minted as a subclass of schema:Role. |
Yes |
roleName |
string |
The office title as the body names it locally. | Yes |
description |
string |
A plain-language description of the office's responsibilities. | No |
identifier |
Identifier[] |
Any scheme-qualified identifiers for this post beyond its @id. |
No |
memberOf |
Reference |
The GovernmentOrganization the office sits in. Required - an office with no body cannot be placed. |
Yes |
namedPosition |
string |
A named seat, e.g. 'Seat B'. Real schema.org Role property. |
No |
numberedPosition |
number |
A numbered seat. Real schema.org Role property. |
No |
representsJurisdiction |
Reference |
For seats tied to a ward or district rather than the whole area - a Jurisdiction of level submunicipal or subregional. |
No |
roleClassification |
string |
How the office is filled. termCode from the RoleClassification code list. |
Yes |
termDuration |
string |
Nominal length of one term, as an ISO 8601 duration, e.g. 'P4Y'. Nominal, not actual: a specific tenure's real dates live on the Role. | No |
maximumTermCount |
integer |
Term limit, where one applies. | No |
startDate |
string |
When the office was created. | No |
endDate |
string |
When the office was abolished. Present means it no longer exists. | No |
vacantSince |
string |
Set when the office is currently unfilled. A vacancy is publishable information, not an absence of data - omitting it is indistinguishable from not having collected it. | No |
sourceDataset |
string |
The Dataset this record was published as part of. |
No |
{
"@id": "https://example-city.gov/id/post/mayor",
"@type": "Post",
"roleName": "Mayor",
"description": "Head of the city executive, directly elected to a four-year term.",
"memberOf": {
"@id": "https://example-city.gov/id/organization/city-government",
"name": "Example City Government"
},
"roleClassification": "elected",
"termDuration": "P4Y",
"maximumTermCount": 2,
"startDate": "1950-03-15",
"identifier": [
{
"@type": "PropertyValue",
"propertyID": "gs:local",
"value": "post-mayor"
}
]
}