{
  "$comment": "Adapted from https://raw.githubusercontent.com/opengeospatial/ogcapi-records/master/core/openapi/schemas/linkTemplate.yaml",
  "allOf": [
    {
      "$ref": "https://ogcincubator.github.io/bblocks-ogcapi-records/build/annotated/api/records/v1/schemas/linkBase/schema.json"
    },
    {
      "type": "object",
      "required": [
        "uriTemplate"
      ],
      "properties": {
        "uriTemplate": {
          "type": "string",
          "description": "Supplies a resolvable URI to a remote resource (or resource fragment).",
          "example": "http://data.example.com/buildings/(building-id}",
          "x-jsonld-type": "xsd:string",
          "x-jsonld-id": "https://www.opengis.net/def/ogc-api/records/uriTemplate"
        },
        "varBase": {
          "type": "string",
          "description": "The base URI to which the variable name can be appended to retrieve the definition of the variable as a JSON Schema fragment.",
          "format": "url",
          "x-jsonld-id": "https://www.opengis.net/def/ogc-api/records/varBase"
        },
        "variables": {
          "type": "object",
          "description": "This object contains one key per substitution variable in the templated URL.  Each key defines the schema of one substitution variable using a JSON Schema fragment and can thus include things like the data type of the variable, enumerations, minimum values, maximum values, etc.",
          "x-jsonld-id": "https://www.opengis.net/def/ogc-api/records/hasVariable",
          "x-jsonld-container": "@index",
          "x-jsonld-index": "http://purl.org/dc/terms/identifier"
        }
      }
    }
  ],
  "x-jsonld-prefixes": {
    "rec": "https://www.opengis.net/def/ogc-api/records/",
    "dct": "http://purl.org/dc/terms/"
  }
}