Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
The diff you're trying to view is too large. We only load the first 3000 changed files.
3 changes: 3 additions & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
.git
.DS_Store
**/.DS_Store
11 changes: 11 additions & 0 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
@@ -1,9 +1,11 @@
name: Build

on:
workflow_dispatch:
push:
branches:
- main
- source-meta-schemas

jobs:
build:
Expand All @@ -26,3 +28,12 @@ jobs:
tags: |
ghcr.io/developer-overheid-nl/don-static:latest
ghcr.io/developer-overheid-nl/don-static:${{ github.sha }}
- name: Build & push source-meta schemas Docker image
uses: docker/build-push-action@v5
with:
context: .
file: ./Dockerfile.schemas
push: true
tags: |
ghcr.io/developer-overheid-nl/source-meta-schemas:latest
ghcr.io/developer-overheid-nl/source-meta-schemas:${{ github.sha }}
6 changes: 6 additions & 0 deletions Dockerfile.schemas
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
FROM ghcr.io/sourcemeta/one:v6.7.0

COPY assets/one.json .
COPY assets/schemas ./schemas

RUN sourcemeta one.json
12 changes: 12 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,12 @@ Repository with static files supporting Open API, open repositories and other fu

All files in the [assets](./assets/) folder are published at https://static.developer.overheid.nl.

The schema assets are also published as a separate container image for source-meta:

```text
ghcr.io/developer-overheid-nl/source-meta-schemas
```

## Development

To build & run locally, execute the following commands:
Expand All @@ -16,3 +22,9 @@ docker run --rm -p 8080:80 don-static
Open the index document in the browser:

http://localhost:8080

To build the source-meta schema image locally:

```bash
docker build -f Dockerfile.schemas -t source-meta-schemas .
```
37 changes: 37 additions & 0 deletions assets/one.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
{
"url": "https://schemas.don.projects.digilab.network",
"html": false,
"contents": {
"policy-as-code": {
"title": "Policy-as-Code",
"description": "Policy-as-Code schemas, including CSP and HSTS policies",
"path": "./schemas/policy-as-code",
"x-sourcemeta-one:alert": "WARNING: DO NOT USE THESE SCHEMAS IN PRODUCTION! These schemas are work-in-progress and are meant for demo purposes only."
},
"demo": {
"title": "Bier Demo",
"description": "Bier Demo schemas, used in the Bier Demo application to demonstrate schema referencing and composition",
"path": "./schemas/demo",
"x-sourcemeta-one:alert": "WARNING: DO NOT USE THESE SCHEMAS IN PRODUCTION! These schemas are work-in-progress and are meant for demo purposes only."
},
"api-design-rules": {
"title": "API Design Rules",
"description": "API Design Rules schemas, including guidelines and best practices",
"path": "./schemas/adr",
"x-sourcemeta-one:alert": "WARNING: DO NOT USE THESE SCHEMAS IN PRODUCTION! These schemas are work-in-progress and are meant for demo purposes only."
},
"logboek-dataverwerkingen": {
"title": "Logboek Dataverwerkingen",
"description": "Schemas from the Logboek Dataverwerkingen standard",
"path": "./schemas/ldv",
"x-sourcemeta-one:alert": "WARNING: DO NOT USE THESE SCHEMAS IN PRODUCTION! These schemas are work-in-progress and are meant for demo purposes only."
},
"api-register": {
"title": "API Register",
"description": "Automatically imported schemas from the APIs in the API Register",
"path": "./schemas/api-register",
"x-sourcemeta-one:alert": "WARNING: DO NOT USE THESE SCHEMAS IN PRODUCTION! These schemas are work-in-progress and are meant for demo purposes only.",
"baseUri": "https://schemas.don.apps.digilab.network"
}
}
}
60 changes: 60 additions & 0 deletions assets/schemas/adr/ProblemJson.schema.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "Problem JSON",
"description": "Problem JSON schema representing errors and status code",
"type": "object",
"properties": {
"status": {
"type": "integer",
"description": "The HTTP status code generated by the origin server for this occurrence of the problem",
"examples": [400]
},
"title": {
"type": "string",
"description": "A short, human-readable summary of the problem type",
"examples": ["Request validation failed"]
},
"errors": {
"type": "array",
"items": {
"type": "object",
"description": "List of errors encountered during processing",
"properties": {
"in": {
"type": "string",
"description": "Location of the error (e.g., body, query, header)",
"enum": [
"body",
"query"
]
},
"location": {
"type": "string",
"description": "Location in the document where the error occurred (JSON Pointer)",
"examples": ["#/foo[0]/bar"]
},
"code": {
"type": "string",
"description": "A code representing the type of error",
"examples": ["date.format"]
},
"detail": {
"type": "string",
"description": "A detailed message describing the error",
"examples": ["must be ISO 8601"]
}
},
"required": [
"in",
"location",
"code",
"detail"
]
}
}
},
"required": [
"status",
"title"
]
}
15 changes: 15 additions & 0 deletions assets/schemas/api-register/_shared/AppHealthStatus.schema.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://schemas.don.apps.digilab.network/_shared/apphealthstatus",
"x-derived-from": [
"https://developer.omgevingswet.overheid.nl/publish/pages/167767/omgevingsdocumenten-geovalidatie-v1.json#/components/schemas/AppHealthStatus",
"https://developer.omgevingswet.overheid.nl/publish/pages/204330/omgevingsdocumenten-downloaden-v1.json#/components/schemas/AppHealthStatus",
"https://oinregister.logius.nl/api/v1/openapi.json#/components/schemas/HealthCheckStatus",
"https://service.omgevingswet.overheid.nl/publiek/omgevingsdocumenten/api/verbeelden/v3/openapi.json#/components/schemas/AppHealthStatus"
],
"enum": [
"UP",
"DOWN"
],
"type": "string"
}
14 changes: 14 additions & 0 deletions assets/schemas/api-register/_shared/Links.schema.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://schemas.don.apps.digilab.network/_shared/links",
"x-derived-from": [
"https://internationaal.ondernemen.overheid.nl/api/iio/v1/openapi.yaml",
"https://service.omgevingswet.overheid.nl/publiek/omgevingsdocumenten/api/verbeelden/v3/openapi.json#/components/schemas/Links"
],
"properties": {
"self": {
"$ref": "../rijksdienst-voor-ondernemend-nederland/iio-api-aakgfxenr/Self.schema.json"
}
},
"type": "object"
}
125 changes: 125 additions & 0 deletions assets/schemas/api-register/_shared/MultipolygonGeoJSON.schema.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,125 @@
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://schemas.don.apps.digilab.network/_shared/multipolygongeojson",
"x-derived-from": [
"https://api.bag.kadaster.nl/lvbag/individuelebevragingen/v2/openapi.yaml#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/brt/top10nl/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/bzk/bro-gminsamenhang-karakteristieken/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/cbs/bestand-bodemgebruik-2010/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/cbs/bestand-bodemgebruik-2015/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/cbs/bestand-bodemgebruik-2017/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/cbs/bevolkingskernen-2011/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/cbs/bevolkingskernen-2021/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/cbs/gebiedsindelingen-historisch/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/cbs/gebiedsindelingen/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/cbs/human-health-statistics/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/cbs/landuse/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/cbs/population-distribution/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/cbs/postcode4/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/cbs/postcode6/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/cbs/statistical-units-vector/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/cbs/vierkant-1km-laea/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/cbs/vierkant-500m/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/cbs/vierkantstatistieken100m/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/cbs/vierkantstatistieken500m/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/cbs/wijken-en-buurten-2022/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/cbs/wijken-en-buurten-2023/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/cbs/wijken-en-buurten-2024/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/hwh/waterschappen-hydrografie/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/kadaster/3d-basisvoorziening/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/kadaster/3d-geluid/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/kadaster/bestuurlijkegebieden/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/kadaster/brk-kadastrale-kaart/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/kadaster/brt-bodemgebruik/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/kadaster/brt-geografische-namen/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/kadaster/brt-hydrografie/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/kadaster/brt-vervoersnetwerken/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/kadaster/brt-zeegebieden/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/kadaster/rdinfo/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/lv/bag/ogc/v1-demo/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/lv/bgt/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/lvnl/drone-no-flyzones/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/prorail/spoorwegen/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/rce/beschermde-gebieden-cultuurhistorie/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/rioned/beheer-stedelijk-watersystemen-gwsw/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/rioned/waterschappen-waterketen-gwsw/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/rvo/fysisch-geografische-regios/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/rvo/gesloten-gebieden-visserij/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/rvo/gewaspercelen/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/rvo/habitatrichtlijn-verspreiding-soorten/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/rvo/habitatrichtlijn-verspreiding-typen/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/rvo/indicatieve-aandachtsgebieden-funderingsproblematiek/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/rvo/invasieve-exoten-geharmoniseerd/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/rvo/mossel-en-oesterhabitats/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/rvo/mosselzaad-invanginstallaties/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/rvo/nationaal-beschermde-gebieden-cdda/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/rvo/nationale-parken-geharmoniseerd/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/rvo/nationale-parken/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/rvo/natura2000-geharmoniseerd/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/rvo/natura2000/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/rvo/natuurmeting-op-kaart-2014/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/rvo/potentieel-warmte-koude-opslagsystemen/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/rvo/potentiekaart-omgevingswarmte/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/rvo/potentiekaart-reststromen/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/rvo/potentiekaart-restwarmte/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/rvo/referentiepercelen/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/rvo/schelpdierpercelen-geharmoniseerd/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/rvo/schelpdierpercelen/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/rvo/vogelrichtlijn-verspreiding-soorten/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/rvo/vogelrichtlijn-verspreidingsgebied-soorten/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/rvo/wetlands-geharmoniseerd/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/rvo/wetlands/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/rvo/windsnelheden/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/rws/digitaal-topografisch-bestand/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/rws/hydrografie-netwerk/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/rws/kaderrichtlijn-mariene-strategie/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/rws/kwetsbaar-gebied-agglomeraties/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/rws/kwetsbaar-gebied/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/rws/nationaal-hydrologisch-instrumentarium-netwerkschematisatie/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/rws/nationaal-wegenbestand-vaarwegen/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/rws/nationaal-wegenbestand-wegen/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/rws/overstromingen-gebeurtenis/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/rws/overstromingen-risicogebied/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/rws/productie-en-industrie-productie-installaties/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/rws/productie-en-industrie-productiefaciliteiten/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/rws/richtlijn-stedelijk-afvalwater/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/rws/rioolnetwerk-leidingelementen/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/rws/rioolnetwerk-milieumanagementvoorziening/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/rws/scheepvaart-verkeersscheidingsstelsel-noordzee/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/rws/vaarweg-netwerk-data-service-bevaarbaarheid/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/rws/vaarwegmarkeringen-nederland/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/rws/vervoersnetwerken-waterwegen-netwerk/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/rws/vervoersnetwerken-wegen-netwerk/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON",
"https://api.pdok.nl/rws/weggegevens/ogc/v1/openapi.json#/components/schemas/multipolygonGeoJSON"
],
"properties": {
"coordinates": {
"items": {
"items": {
"items": {
"items": {
"type": "number"
},
"minItems": 2,
"type": "array"
},
"minItems": 4,
"type": "array"
},
"type": "array"
},
"type": "array"
},
"type": {
"enum": [
"MultiPolygon"
],
"type": "string"
}
},
"required": [
"coordinates",
"type"
],
"type": "object"
}
Loading
Loading