{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/amsterdam-nl/json-schema/amsterdam-nl-bagligplaatsen-schema.json",
  "title": "Bagligplaatsen",
  "description": "Een LIGPLAATS is een door het bevoegde gemeentelijke orgaan als zodanig aangewezen plaats in het water die bestemd is voor het permanent afmeren van een voor woon-, bedrijfsmatige of recreatieve doeleinden geschikt drijvend object",
  "x-generated": "2026-11-10",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/amsterdam-nl-bag-openapi.yml#/components/schemas/Bagligplaatsen",
  "type": "object",
  "properties": {
    "_links": {
      "allOf": [
        {
          "$ref": "#/$defs/BagdefaultLigplaatsenLinks"
        }
      ],
      "title": " links"
    },
    "identificatie": {
      "type": "string",
      "title": "Ligplaats ID",
      "description": "Unieke identificatie van een ligplaats"
    },
    "volgnummer": {
      "type": "integer",
      "maximum": 9223372036854775807,
      "minimum": -9223372036854775808,
      "format": "int64",
      "title": "Object volgnummer",
      "description": "Uniek volgnummer van de toestand van het object"
    },
    "plusvolgnummer": {
      "type": [
        "integer",
        "null"
      ],
      "maximum": 9223372036854775807,
      "minimum": -9223372036854775808,
      "format": "int64",
      "title": "Object plus volgnummer",
      "description": "Uniek BAG-plus volgnummer van de toestand van het object"
    },
    "registratiedatum": {
      "type": [
        "string",
        "null"
      ],
      "format": "date-time",
      "title": "Object registratiedatum",
      "description": "Begin geldigheid van een bepaalde combinatie van BAG- en BAG-plus-gegevens van een BAG-object"
    },
    "geconstateerd": {
      "type": [
        "boolean",
        "null"
      ],
      "title": "Ligplaats geconstateerd indicatie",
      "description": "Een aanduiding waarmee kan worden aangegeven dat een ligplaats in de registratie is opgenomen als gevolg van een feitelijke constatering, zonder dat er op het moment van opname sprake was van een regulier brondocument voor deze opname"
    },
    "statusCode": {
      "type": [
        "integer",
        "null"
      ],
      "maximum": 9223372036854775807,
      "minimum": -9223372036854775808,
      "format": "int64",
      "title": "Ligplaats status code",
      "description": "Dit is een vervallen kenmerk en wordt niet geactualiseerd"
    },
    "statusOmschrijving": {
      "type": [
        "string",
        "null"
      ],
      "title": "Ligplaats status omschrijving",
      "description": "De fase van de levenscyclus van een ligplaats, waarin de betreffende ligplaats zich bevindt, Plaats aangewezen, plaats ingetrokken"
    },
    "heeftHoofdadresId": {
      "type": [
        "string",
        "null"
      ],
      "title": "Ligplaats heeft hoofdadres",
      "description": "Het HOOFDadres dat de ligplaats heeft",
      "readOnly": true,
      "deprecated": true
    },
    "geometrie": {
      "$ref": "#/$defs/Geometry"
    },
    "beginGeldigheid": {
      "type": [
        "string",
        "null"
      ],
      "format": "date-time",
      "title": "Ligplaats geldigheid begindatum",
      "description": "De begindatum van een periode waarin een of meer gegevens die worden bijgehouden over een ligplaats een wijziging hebben ondergaan"
    },
    "eindGeldigheid": {
      "type": [
        "string",
        "null"
      ],
      "format": "date-time",
      "title": "Ligplaats geldigheid einddatum",
      "description": "De einddatum van een periode waarin een of meer gegevens die worden bijgehouden over een ligplaats een wijziging hebben ondergaan"
    },
    "documentdatum": {
      "type": [
        "string",
        "null"
      ],
      "format": "date",
      "title": "Document datum",
      "description": "De datum waarop het brondocument is vastgesteld"
    },
    "documentnummer": {
      "type": [
        "string",
        "null"
      ],
      "title": "Brondocument nummer",
      "description": "Het unieke nummer van het brondocument"
    },
    "ligtInBuurtId": {
      "type": [
        "string",
        "null"
      ],
      "title": "Ligplaats ligt in buurt",
      "description": "De buurt waarin een ligplaats ligt",
      "readOnly": true,
      "deprecated": true
    },
    "heeftDossierId": {
      "type": [
        "string",
        "null"
      ],
      "title": "Ligplaats heeft dossier",
      "description": "De brondocument(en) op basis waarvan de ligplaats is toegevoegd aan de registratie. Afgeleid van hetlandelijke BAG-kenmerk 'Documentnummer'",
      "readOnly": true,
      "deprecated": true
    },
    "bagprocesCode": {
      "type": [
        "integer",
        "null"
      ],
      "maximum": 9223372036854775807,
      "minimum": -9223372036854775808,
      "format": "int64",
      "title": "BAG proces code",
      "description": "Functionele handeling die ten grondslag ligt aan de gebeurtenis. code"
    },
    "bagprocesOmschrijving": {
      "type": [
        "string",
        "null"
      ],
      "title": "BAG proces omschrijving",
      "description": "Functionele handeling die ten grondslag ligt aan de gebeurtenis. omschrijving"
    },
    "datumActueelTot": {
      "type": [
        "string",
        "null"
      ],
      "format": "date-time",
      "title": "Actueel tot datum",
      "description": "Einddatum van de cyclus, eventueel in combinatie met het kenmerk Status"
    },
    "gebruiksdoel": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/Bagligplaatsen_gebruiksdoel"
      }
    }
  },
  "required": [
    "_links",
    "gebruiksdoel",
    "heeftDossierId",
    "heeftHoofdadresId",
    "identificatie",
    "ligtInBuurtId",
    "volgnummer"
  ],
  "$defs": {
    "BagLigplaatsenLink": {
      "type": "object",
      "description": "The identifier of the relationship to ligplaatsen.",
      "properties": {
        "href": {
          "type": "string",
          "format": "uri",
          "readOnly": true
        },
        "title": {
          "type": "string"
        },
        "identificatie": {
          "type": "string",
          "title": "Ligplaats ID",
          "description": "Unieke identificatie van een ligplaats"
        },
        "volgnummer": {
          "type": "integer",
          "maximum": 9223372036854775807,
          "minimum": -9223372036854775808,
          "format": "int64",
          "title": "Object volgnummer",
          "description": "Uniek volgnummer van de toestand van het object"
        }
      },
      "required": [
        "href",
        "identificatie",
        "title",
        "volgnummer"
      ]
    },
    "BagNummeraanduidingenLink": {
      "type": "object",
      "description": "The identifier of the relationship to nummeraanduidingen.",
      "properties": {
        "href": {
          "type": "string",
          "format": "uri",
          "readOnly": true
        },
        "title": {
          "type": "string"
        },
        "identificatie": {
          "type": "string",
          "title": "Nummeraanduiding ID",
          "description": "De unieke aanduiding van een nummeraanduiding"
        },
        "volgnummer": {
          "type": "integer",
          "maximum": 9223372036854775807,
          "minimum": -9223372036854775808,
          "format": "int64",
          "title": "Object volgnummer",
          "description": "Uniek volgnummer van de toestand van het object"
        }
      },
      "required": [
        "href",
        "identificatie",
        "title",
        "volgnummer"
      ]
    },
    "BagdefaultLigplaatsenLinks": {
      "type": "object",
      "description": "The contents of the `ligplaatsen._links` field. It contains all relationships with objects.",
      "properties": {
        "schema": {
          "type": "string",
          "format": "uri",
          "description": "The schema field is exposed with every record",
          "readOnly": true
        },
        "self": {
          "$ref": "#/$defs/BagLigplaatsenLink"
        },
        "heeftHoofdadres": {
          "$ref": "#/$defs/BagNummeraanduidingenLink"
        },
        "ligtInBuurt": {
          "$ref": "#/$defs/GebiedenBuurtenLink"
        },
        "heeftDossier": {
          "$ref": "#/$defs/BagdossiersLink"
        },
        "heeftNevenadres": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/BagligplaatsenHeeftNevenadres_M2M"
          }
        },
        "heeftOnderzoeken": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/BagligplaatsenHeeftOnderzoeken_M2M"
          }
        }
      },
      "required": [
        "heeftDossier",
        "heeftHoofdadres",
        "heeftNevenadres",
        "heeftOnderzoeken",
        "ligtInBuurt",
        "schema",
        "self"
      ]
    },
    "BagdossiersLink": {
      "type": "object",
      "description": "The identifier of the relationship to dossiers.",
      "properties": {
        "href": {
          "type": "string",
          "format": "uri",
          "readOnly": true
        },
        "title": {
          "type": "string"
        },
        "dossier": {
          "type": "string",
          "title": "Dossier ID",
          "description": "Verwijzing vanuit de overige objectklassen"
        }
      },
      "required": [
        "dossier",
        "href",
        "title"
      ]
    },
    "BagligplaatsenHeeftNevenadres_M2M": {
      "type": "object",
      "description": "The M2M table for `Ligplaatsen.heeftNevenadres` that links to `Nummeraanduidingen`",
      "properties": {
        "href": {
          "type": "string",
          "format": "uri",
          "readOnly": true
        },
        "title": {
          "type": "string",
          "readOnly": true
        },
        "identificatie": {
          "type": [
            "string",
            "null"
          ]
        },
        "volgnummer": {
          "type": [
            "integer",
            "null"
          ],
          "maximum": 9223372036854775807,
          "minimum": -9223372036854775808,
          "format": "int64"
        },
        "beginGeldigheid": {
          "type": [
            "string",
            "null"
          ],
          "format": "date-time"
        }
      },
      "required": [
        "href",
        "title"
      ]
    },
    "BagligplaatsenHeeftOnderzoeken_M2M": {
      "type": "object",
      "description": "The M2M table for `Ligplaatsen.heeftOnderzoeken` that links to `Onderzoeken`",
      "properties": {
        "href": {
          "type": "string",
          "format": "uri",
          "readOnly": true
        },
        "title": {
          "type": "string",
          "readOnly": true
        },
        "identificatie": {
          "type": [
            "string",
            "null"
          ]
        },
        "volgnummer": {
          "type": [
            "integer",
            "null"
          ],
          "maximum": 9223372036854775807,
          "minimum": -9223372036854775808,
          "format": "int64"
        },
        "beginGeldigheid": {
          "type": [
            "string",
            "null"
          ],
          "format": "date-time"
        },
        "eindGeldigheid": {
          "type": [
            "string",
            "null"
          ],
          "format": "date-time"
        }
      },
      "required": [
        "href",
        "title"
      ]
    },
    "Bagligplaatsen_gebruiksdoel": {
      "type": "object",
      "description": "Auto-generated table for nested field: ligplaatsen.gebruiksdoel",
      "properties": {
        "omschrijving": {
          "type": [
            "string",
            "null"
          ]
        }
      }
    },
    "GebiedenBuurtenLink": {
      "type": "object",
      "description": "The identifier of the relationship to buurten.",
      "properties": {
        "href": {
          "type": "string",
          "format": "uri",
          "readOnly": true
        },
        "title": {
          "type": "string"
        },
        "identificatie": {
          "type": "string",
          "title": "Object ID",
          "description": "Uniek identificerend kenmerk voor het object dat onveranderlijk is zolang het object bestaat"
        },
        "volgnummer": {
          "type": "integer",
          "maximum": 9223372036854775807,
          "minimum": -9223372036854775808,
          "format": "int64",
          "title": "Object volgnummer",
          "description": "Uniek volgnummer van de toestand van het object"
        }
      },
      "required": [
        "href",
        "identificatie",
        "title",
        "volgnummer"
      ]
    },
    "Geometry": {
      "type": "object",
      "description": "GeoJSON geometry",
      "required": [
        "type"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "Point",
            "LineString",
            "Polygon",
            "MultiPoint",
            "MultiLineString",
            "MultiPolygon"
          ],
          "description": "the geometry type"
        },
        "coordinates": {
          "type": "array",
          "minItems": 2,
          "description": "Based on the geometry type, a point or collection of points.",
          "items": {
            "type": "number"
          }
        }
      }
    }
  }
}