{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "title": "part",
  "description": "A single building part. Parts describe their shape and color and other properties. Each building part must contain the building with which it is associated.",
  "type": "object",
  "properties": {
    "geometry": {
      "description": "The part's geometry. It must be a polygon or multipolygon.",
      "unevaluatedProperties": false,
      "oneOf": [
        {
          "$ref": "https://geojson.org/schema/Polygon.json"
        },
        {
          "$ref": "https://geojson.org/schema/MultiPolygon.json"
        }
      ]
    },
    "properties": {
      "unevaluatedProperties": false,
      "allOf": [
        {
          "$ref": "https://ogcincubator.github.io/bblocks-overturemaps/build/annotated/overturemaps/schemas/definitions/schema.json#/$defs/propertyContainers/overtureFeaturePropertiesContainer"
        },
        {
          "$ref": "https://ogcincubator.github.io/bblocks-overturemaps/build/annotated/overturemaps/schemas/definitions/schema.json#/$defs/propertyContainers/namesContainer"
        },
        {
          "$ref": "https://ogcincubator.github.io/bblocks-overturemaps/build/annotated/overturemaps/schemas/definitions/schema.json#/$defs/propertyContainers/levelContainer"
        },
        {
          "$ref": "https://ogcincubator.github.io/bblocks-overturemaps/build/annotated/overturemaps/schemas/buildings/definitions/schema.json#/$defs/propertyContainers/shapeContainer"
        }
      ],
      "required": [
        "theme",
        "type",
        "building_id"
      ],
      "properties": {
        "theme": {
          "const": "buildings"
        },
        "type": {
          "const": "building_part"
        },
        "building_id": {
          "description": "The building ID to which this part belongs",
          "type": "string"
        }
      }
    }
  }
}