{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "description": "Feature Collection with defined topology for bounding elements",
  "$defs": {
    "FeatureCollectionOptions": {
      "$anchor": "FeatureCollectionOptions",
      "anyOf": [
        {
          "$ref": "https://opengeospatial.github.io/bblocks/annotated-schemas/geo/json-fg/featureCollection/schema.json"
        },
        {
          "$ref": "https://opengeospatial.github.io/bblocks/annotated-schemas/geo/json-fg/featureCollection-lenient/schema.json"
        },
        {
          "$ref": "https://opengeospatial.github.io/bblocks/annotated-schemas/geo/features/featureCollection/schema.json"
        }
      ]
    },
    "FeatureOptions": {
      "$anchor": "FeatureOptions",
      "anyOf": [
        {
          "$ref": "https://opengeospatial.github.io/bblocks/annotated-schemas/geo/json-fg/feature/schema.json"
        },
        {
          "$ref": "https://opengeospatial.github.io/bblocks/annotated-schemas/geo/json-fg/feature-lenient/schema.json"
        },
        {
          "$ref": "https://opengeospatial.github.io/bblocks/annotated-schemas/geo/features/feature/schema.json"
        }
      ]
    },
    "PointOptions": {
      "$anchor": "PointOptions",
      "anyOf": [
        {
          "allOf": [
            {
              "$ref": "#/$defs/FeatureOptions"
            },
            {
              "properties": {
                "geometry": {
                  "properties": {
                    "type": {
                      "type": "string",
                      "enum": [
                        "Point"
                      ]
                    }
                  }
                }
              }
            }
          ]
        }
      ]
    }
  },
  "allOf": [
    {
      "$ref": "#/$defs/FeatureCollectionOptions"
    }
  ],
  "properties": {
    "features": {
      "type": "array",
      "items": {
        "anyOf": [
          {
            "$ref": "https://ogcincubator.github.io/topo-feature/build/annotated/geo/topo/features/topo-feature/schema.json"
          },
          {
            "$ref": "#/$defs/PointOptions"
          }
        ]
      }
    }
  },
  "x-jsonld-extra-terms": {
    "properties": "@nest"
  }
}