diff --git a/counterexamples/bad-entityId.json b/counterexamples/bad-entityId.json new file mode 100644 index 00000000..501e0e72 --- /dev/null +++ b/counterexamples/bad-entityId.json @@ -0,0 +1,11 @@ +{ + "id": "featureWithBadEntityId", + "type": "Feature", + "geometry": { + "type": "Point", + "coordinates": [0, 1] + }, + "properties": { + "entityId": "1423" + } +} diff --git a/examples/admins/locality/admin-named-locality.yaml b/examples/admins/locality/admin-named-locality.yaml index 40018fec..64fcf6f3 100644 --- a/examples/admins/locality/admin-named-locality.yaml +++ b/examples/admins/locality/admin-named-locality.yaml @@ -1,9 +1,11 @@ +id: capitolHillFeatureId geometry: coordinates: - -122.3183680 - 47.6238307 type: Point properties: + entityId: 08628d542fffffff0100000000052a6f context: seattleId localityType: neighborhood names: diff --git a/schema/defs.yaml b/schema/defs.yaml index 0def7fff..4a23898e 100644 --- a/schema/defs.yaml +++ b/schema/defs.yaml @@ -4,6 +4,11 @@ title: Overture Maps Feature Schema Common Definitions description: Common schema definitions shared by all themes "$defs": propertyDefinitions: + entityId: + description: >- + Optional stable identifier for the feature. 128 bits represented as 32 hex characters. + type: string + pattern: ^[0-9a-f]{32}$ level: description: Z-order of the feature where 0 is visual level type: integer @@ -241,6 +246,7 @@ description: Common schema definitions shared by all themes ^ext.*$: description: "Additional top-level properties must be prefixed with `ext`." properties: + entityId: { "$ref": "#/$defs/propertyDefinitions/entityId" } theme: { "$ref": "#/$defs/propertyDefinitions/theme" } type: { "$ref": "#/$defs/propertyDefinitions/featureType" } version: { "$ref": "#/$defs/propertyDefinitions/featureVersion" }