Kommandoar
Alle kommandoar køyrer via containerar — ingen lokal Python-installasjon trengst.
Oppsett og føresetnadar
| Kommando |
Beskriving |
Output |
make check-prereqs |
Sjekkar at Git, Podman, GNU make, user namespace og ledig diskplass er korrekt konfigurert |
Skriv OK/FEIL per føresetnad til stdout; avsluttar med kode 1 ved feil |
Container-image-bygging
Berre nødvendig ved første bruk eller etter endringar i Dockerfile.
| Kommando |
Beskriving |
Output |
make build-docker-linkml |
Byggjer container-image for artefaktgenerering og validering. Berre nødvendig ved første bruk eller etter endringar i Dockerfile. |
Image localhost/linkml-local:latest |
make build-docker-mkdocs |
Byggjer container-image for dokumentasjonsportalen. Berre nødvendig ved første bruk eller etter endringar i Dockerfile. |
Image localhost/mkdocs-local:latest |
make build-docker-python |
Byggjer container-image for Python-testar. Berre nødvendig ved første bruk eller etter endringar i Dockerfile. |
Image localhost/python-pytest:latest |
make build-docker-mcp-modell-utkast |
Byggjer container-image for modell-utkast MCP-server. |
Image localhost/mcp-linkml-modell-utkast:latest |
make build-docker-mcp-begrep-utkast |
Byggjer container-image for begrepsinstans-generator MCP-server. |
Image localhost/mcp-linkml-begrep-utkast:latest |
make build-docker-mcp-validator |
Byggjer container-image for validator MCP-server. |
Image localhost/mcp-linkml-validator:latest |
make build-docker-avrotize |
Byggjer container-image for XSD-generering via Avrotize. Nødvendig for make gen-xsd. |
Image localhost/avrotize-local:latest |
make build-docker-asyncapi |
Byggjer container-image for AsyncAPI CLI-validering. Nødvendig for make gen-asyncapi. |
Image localhost/asyncapi-cli-local:latest |
make build-docker-plantuml |
Byggjer container-image for PlantUML-diagram. Nødvendig for make gen-plantuml. |
Image localhost/plantuml:latest |
Ny modell/begrepskatalog/modellkatalog
| Kommando |
Beskriving |
Output |
make new-modell NAME=<modell> DOMAIN=<domain> |
Opprettar katalogstruktur og boilerplate for ein ny LinkML-domenemodell. |
src/linkml/<domain>/<modell>/<modell>-schema.yaml
src/linkml/<domain>/<modell>/examples/<modell>-eksempel.yaml |
make new-modellkatalog NAME=<alias> |
Opprettar katalogstruktur og boilerplate for ein ny organisasjonskatalog (modellkatalog + datakatalog). <alias> må vere registrert i CODEOWNERS.md-frontmatter med catalog_slug. |
src/linkml/modellkatalog/<catalog_slug>/ |
make new-begrepskatalog NAME=<katalognavn> |
Opprettar katalogstruktur og boilerplate for ein ny begrepskatalog. |
src/linkml/begrepskatalog/<katalognavn>/ |
Validering
| Kommando |
Beskriving |
Output |
make lint |
Linter alle skjemaer i repoet. |
OK/FEIL per skjema til stdout; avsluttar med kode 1 ved feil |
make lint SCHEMA=<sti> |
Linter eit enkelt skjema raskt utan å køyre generatorar. Nyttig for hurtigsjekk under utvikling. |
OK/FEIL til stdout; avsluttar med kode 1 ved feil |
make validate-instance SCHEMA=<sti> INSTANCE=<sti> |
Validerer ei datafil mot eit skjema utan lint og generatorar. Raskaste enkeltsjekk av datainnhald. |
OK/FEIL til stdout; avsluttar med kode 1 ved feil |
make roundtrip SCHEMA=<sti> |
Køyrer berre roundtrip-testane (JSON og TTL) for eitt skjema. Raskare enn full testsuite — nyttig etter skjema-endringar som kan påverke serialisering. |
Testrapport for roundtrip-json og roundtrip-ttl til stdout; avsluttar med kode 1 ved feil |
make roundtrip |
Køyrer roundtrip-testar for alle skjemaer i repoet. |
Testrapport til stdout; avsluttar med kode 1 ved feil |
make roundtrip-json-schema SCHEMA=<sti> |
Køyrer roundtrip-test spesifikt for JSON Schema-generering. Verifiserer at YAML → JSON Schema → YAML gjev same resultat. |
Testrapport til stdout; avsluttar med kode 1 ved feil |
make test SCHEMA=<sti> |
Køyrer full testsuite (lint + validering + alle generatorar) for eitt skjema. |
Samla testrapport til stdout; avsluttar med kode 1 ved feil |
make test |
Linter alle skjemaer og validerer alle eksempelfiler i heile repoet. |
Samla testrapport til stdout; avsluttar med kode 1 ved feil |
make validate |
Validerer alle skjema mot LinkML-metaskjemaet (strukturvalidering, ikkje policy). |
Validerings-resultat per skjema til stdout |
make mcp-linkml-valider-modell SCHEMA=<sti> |
Policy-validering mot validation_policy frå build.yaml. POLICY kan overstyres med POLICY=<bronze\|silver\|gold\|felles-datakatalog\|felles-begrepskatalog>. |
Pass/fail per policy-regel til stdout |
make validate-capture |
Generer valideringsresultat for alle skjema og lagre til src/linkml/<domain>/<modell>/validation/<version>/<policy>.json. |
JSON-filer med valideringsresultat |
make validate-capture SCHEMA=<sti> |
Generer valideringsresultat for eitt skjema og lagre til src/linkml/<domain>/<modell>/validation/<version>/<policy>.json. |
JSON-fil med valideringsresultat |
make validate-bronze DOMAIN=<domain> |
Validerer alle skjema i eit domene mot bronze-policy (basis skjemakvalitet). Ikkje brukt i CI — CI validerer skjema direkte via run-validation.sh per manifest; dette er eit manuelt/lokalt batch-alternativ. |
Pass/fail per skjema til stdout; avsluttar med kode 1 ved feil |
make validate-data DOMAIN=<domain> |
Validerer alle datafiler i data/-katalogar i eit domene mot deira validation_policy frå build.yaml. Brukt i CI per domene. |
Pass/fail per datafil til stdout |
make validate-examples DOMAIN=<domain> |
Validerer alle eksempelfiler i eit domene mot tilhøyrande skjema. Brukt i CI per domene. |
Pass/fail per eksempelfil til stdout; avsluttar med kode 1 ved feil |
make log-mcp-validate SCHEMA=<sti> |
Policy-validering med full JSON-logg. Nyttig for debugging av policy-reglar. |
JSON-logg til stdout |
make log-validate-instance SCHEMA=<sti> INSTANCE=<sti> |
Instansvalidering med full JSON-logg. Nyttig for debugging av valideringsfeil. |
JSON-logg til stdout |
Validerings-Policyar
| Policy |
Beskriving |
bronze |
Obligatoriske metadata (id, name), anbefalt description, alle klasser har identifikator og begrepsreferanse |
silver |
Bronze + skjemaet importerer DCAT-AP-NO og DQV-AP-NO |
gold |
Silver + FAIR-sjekkar F1-R1.3 (class_uri, lisens, proveniens m.m.) |
mcp-linkml-valider-modell flattar automatisk ut relative importar med LinkML sitt gen-linkml --mergeimports før validering, slik at domenemodellar med fleire schema-lag fungerer utan tilpassing.
Publiserings-Policyar
Brukt for skjema der publish_external: true i build.yaml. Sjekkar at skjemaet
er i samsvar med krava til ei bestemt ekstern katalog. Arvær bronze-laget.
| Policy |
Beskriving |
felles-datakatalog |
Bronze + import av ModelDCAT-AP-NO, containerklasse med Modellkatalog og Informasjonsmodell, obligatoriske felt for desse klassane (tittel, beskrivelse, identifikator, utgjevar, kontaktpunkt) |
felles-begrepskatalog |
Bronze + import av SKOS-AP-NO-Begrep, containerklasse med Begrep, obligatoriske felt for Begrep (anbefalt term, definisjon, identifikator, utgjevar, kontaktpunkt) og Samling |
Generering av artefakter
Per domene (anbefalt)
Kvar domain-* target køyrer følgjande steg for alle skjema i domenet:
- Validering:
merge-imports mergar imports og validerer skjemaet (output vert kasta)
- Artefaktgenerering (parallelt): JSON-LD context, SHACL, Python, JSON Schema, OWL, RDF, PlantUML, docs
- Eksempelkonvertering: Konverterer
*-eksempel.yaml til RDF/Turtle (dersom example_rdf: true)
- Modellmanifest (parallelt): Genererer Informasjonsmodell-instans ihht ModelDCAT-AP-NO til
src/linkml/<domain>/<modell>/metadata/<modell>-manifest.yaml
Parallellisering: Alle domain-* targets støttar PARALLEL parameter (default: 8 jobbar).
make domain-ap-no — køyrer med 8 parallelle jobbar (default)
make domain-ap-no PARALLEL=16 — køyrer med 16 parallelle jobbar
make domain-ap-no PARALLEL=1 — køyrer sekvensielt (debugging)
Parallell køyring viser timer per jobb: → gen-jsonld-context ap-no/dcat-ap-no (5.1s)
| Kommando |
Beskriving |
Output |
make domain-ap-no |
Valider + generer alle artefakter for alle AP-NO-profiler (parallelt) |
generated/ap-no/ |
make domain-begrepskatalog |
Valider + generer alle artefakter for begrepskatalogmodellane |
generated/begrepskatalog/ |
make domain-fair |
Valider + generer alle artefakter for FAIR-metadata |
generated/fair/ |
make domain-fint |
Valider + generer alle artefakter for FINT-modellane |
generated/fint/ |
make domain-modellkatalog |
Valider + generer alle artefakter for modellkatalogmodellane |
generated/modellkatalog/ |
make domain-ngr |
Valider + generer alle artefakter for NGR-modellane |
generated/ngr/ |
make domain-oreg |
Valider + generer alle artefakter for OREG-registera |
generated/oreg/ |
make domain-samt |
Valider + generer alle artefakter for SAMT-modellane |
generated/samt/ |
Enkeltartefakter
Alle gen-* targets støttar tre bruksmåtar:
- make gen-<format> — generer for alle skjema
- make gen-<format> DOMAIN=<domain> — generer for alle skjema i eitt domene
- make gen-<format> SCHEMA=<sti> — generer for eitt spesifikt skjema
| Kommando |
Beskriving |
Output |
make gen-jsonld-context [DOMAIN=...] [SCHEMA=...] |
JSON-LD kontekst |
generated/<domain>/<modell>/<modell>-context.jsonld |
make gen-shacl [DOMAIN=...] [SCHEMA=...] |
SHACL shapes |
generated/<domain>/<modell>/<modell>-shapes.ttl |
make gen-python [DOMAIN=...] [SCHEMA=...] |
Python-dataklassar |
generated/<domain>/<modell>/<modell>-model.py |
make gen-jsonschema [DOMAIN=...] [SCHEMA=...] |
JSON Schema |
generated/<domain>/<modell>/<modell>-schema.json |
make gen-owl [DOMAIN=...] [SCHEMA=...] |
OWL/Turtle-ontologi |
generated/<domain>/<modell>/<modell>-ontology.ttl |
make gen-rdf [DOMAIN=...] [SCHEMA=...] |
RDF/Turtle-graf av skjemaet |
generated/<domain>/<modell>/<modell>-schema.ttl |
make gen-erdiagram [DOMAIN=...] [SCHEMA=...] |
Mermaid ER-diagram |
generated/<domain>/<modell>/<modell>-erdiagram.md |
make gen-docs [DOMAIN=...] [SCHEMA=...] |
HTML-klassereferanse og Mermaid ER-diagram |
generated/<domain>/<modell>/docs/ |
make gen-proto [DOMAIN=...] [SCHEMA=...] |
Protocol Buffers-skjema |
generated/<domain>/<modell>/<modell>-schema.proto |
make gen-plantuml [DOMAIN=...] [SCHEMA=...] |
PlantUML-diagram og SVG |
generated/<domain>/<modell>/diagrams/<modell>.svg |
make gen-xsd [DOMAIN=...] [SCHEMA=...] |
XSD-skjema via Avrotize (berre skjema med xsd: true i build.yaml) |
generated/<domain>/<modell>/<modell>-schema.xsd |
make gen-asyncapi [DOMAIN=...] [SCHEMA=...] |
AsyncAPI 3.0-spec (berre skjema med asyncapi: true i build.yaml) |
generated/<domain>/<modell>/<modell>-asyncapi.yaml |
make gen-openapi [DOMAIN=...] [SCHEMA=...] |
OpenAPI 3.1-spec (berre skjema med openapi: true i build.yaml) |
generated/<domain>/<modell>/<modell>-openapi.yaml |
make gen-config [DOMAIN=...] [SCHEMA=...] |
Generatorkonfigurasjon frå build.yaml |
generated/<domain>/<modell>/config.yaml |
make gen-dqv-measurements [DOMAIN=...] [SCHEMA=...] |
DQV-kvalitetsmålingar for datakatalogdata |
generated/<domain>/<modell>/dqv-measurements.ttl |
make gen-modelldcat-elements [DOMAIN=...] [SCHEMA=...] |
ModelDCAT-element for modellkatalogdata |
generated/<domain>/<modell>/modelldcat-elements.ttl |
make convert-rdf |
Konverter alle eksempel-YAML til RDF/Turtle |
generated/<domain>/<modell>/<modell>-eksempel.ttl |
make convert-data |
Konverter produksjonsdatafiler i data/-underkatalogar til RDF/Turtle (berre publish_external: true) |
generated/<domain>/<katalog>/<katalog>.ttl |
make clean |
Slett generated/ |
— |
Nye skjema under src/linkml/<domain>/<modell>/ vert oppdaga automatisk — ingen Makefile-endringar nødvendig.
Vedlikehald
| Kommando |
Beskriving |
Output |
make gen-informasjonsmodell-instance SCHEMA=<sti> |
Genererer ModelDCAT-metadata-fil (metadata/modelldcat.yaml) for eit enkelt skjema. Samlar data frå 6 kjelder: schema.yaml (toppnivå + annotations), build.yaml, CODEOWNERS.md, lokale klasser, genererte artefakter, er_profil_av. Genererer inline Kontaktopplysning og Standard-instansar. |
src/linkml/<domain>/<modell>/metadata/modelldcat.yaml |
make validate-informasjonsmodell-instance SCHEMA=<sti> |
Validerer generert ModelDCAT-metadata mot modelldcat-katalog-schema.yaml med full LinkML-validering. Sjekkar YAML-struktur, obligatoriske felt, LangString-format og inline-instansar. Køyrer i LinkML-container for korrekt schema-oppløysing. Convenience wrapper for make validate-instance som auto-detekterer metadata/modelldcat.yaml og schema-sti. |
Pass/fail til stdout; avsluttar med kode 1 ved feil |
make gen-modellkatalog-instance |
Genererer per-org modellkatalogar frå alle metadata/modelldcat.yaml-filer. Grupper Informasjonsmodell-instansar etter utgiver (frå CODEOWNERS.md) og genererer éi katalogfil per organisasjon for publisering til Felles datakatalog. Konverterer standard URI-ar (https://data.norge.no/...) til org-spesifikke URI-ar (https://<org-domene>/modellkatalogar/<catalog_slug>/...). Erstatter: make update-modellkatalog (deprecated). |
src/linkml/modellkatalog/<org>/data/<org>/<org>.yaml |
make validate-modellkatalog-instance ORG=<org-slug> |
Validerer generert modellkatalog-datafil mot org-spesifikt schema. Eksempel: ORG=digdir-modellkatalog. Validerer src/linkml/modellkatalog/<org>/data/<org>/<org>.yaml mot src/linkml/modellkatalog/<org>/<org>-schema.yaml. Convenience wrapper for make validate-instance som auto-konstruerer schema- og instans-stiar. |
Pass/fail til stdout; avsluttar med kode 1 ved feil |
Dokumentasjonsportal
| Kommando |
Beskriving |
Output |
make docs-publish |
Kopier generated/ → mkdocs/docs/ og regenerer mkdocs.yml |
mkdocs/docs/ |
make docs-serve |
Start lokal dev-server med live reload. Leser mkdocs/docs/ |
http://localhost:8000 |
make docs-build |
Bygg statisk HTML-site (CI-pipeline for produksjon) |
mkdocs/site/ |
make docs-publish køyrer mkdocs/publish.sh som kopier artefakter og dokumentasjon frå generated/ til mkdocs/docs/, genererer index.md per skjema og domene, og oppdaterer navigasjonsstrukturen i mkdocs.yml. Nye domene og skjema dukkar opp automatisk neste gong publish vert køyrt.
LinkML-modell utkast (mcp-linkml-modell-utkast)
| Kommando |
Beskriving |
Output |
make build-docker-mcp-modell-utkast |
Byggjer container-image for MCP-serveren (eingongsoperasjon). |
Image localhost/mcp-linkml-modell-utkast:latest |
make mcp-linkml-modell-utkast-smoke |
Køyrer røyktest med eksempel-meldingar for å verifisere at serveren svarar korrekt. |
Testresultat til stdout; avsluttar med kode 1 ved feil |
make mcp-linkml-modell-utkast-test |
Køyrer alle unit-testar for MCP-serveren. |
Testresultat til stdout; avsluttar med kode 1 ved feil |
make mcp-linkml-modell-utkast SCHEMA=<sti> |
Genererer eit LinkML-skjemautkast frå ei JSON Schema-fil ved hjelp av MCP-serveren. |
<same katalog>/<modell>-schema.yaml |
make mcp-linkml-modell-utkast SCHEMA=<sti> FORMAT=json-schema PROFILE=default |
Same som over med eksplisitt format og profil. |
<same katalog>/<modell>-schema.yaml |
make mcp-linkml-modell-utkast-run |
Startar MCP-serveren interaktivt. Nyttig for manuell testing og feilsøking. |
JSON-RPC på stdin/stdout |
LinkML-begrep utkast (mcp-linkml-begrep-utkast)
| Kommando |
Beskriving |
Output |
make build-docker-mcp-begrep-utkast |
Byggjer container-image for MCP-serveren (eingongsoperasjon). |
Image localhost/mcp-linkml-begrep-utkast:latest |
make mcp-linkml-begrep-utkast-smoke |
Køyrer røyktest med eksempel-meldingar for å verifisere at serveren svarar korrekt. |
Testresultat til stdout; avsluttar med kode 1 ved feil |
make mcp-linkml-begrep-utkast-list-profiles |
Listar alle tilgjengelege organisasjonsprofiler som kan brukast ved oppretting av begrep. |
JSON-liste over profil-ID-ar til stdout |
make mcp-linkml-begrep-utkast INPUT=<sti> |
Genererer eit YAML-utkast til begrep frå ei JSON-fil med argument til opprett_begrep. |
YAML-blokker til stdout |
make mcp-linkml-begrep-utkast-run |
Startar MCP-serveren interaktivt. Nyttig for manuell testing og feilsøking. |
JSON-RPC på stdin/stdout |
LinkML-validator (mcp-linkml-validator)
| Kommando |
Beskriving |
Output |
make build-docker-mcp-validator |
Byggjer container-image for validator MCP-serveren (eingongsoperasjon). |
Image localhost/mcp-linkml-validator:latest |
make mcp-linkml-valider-modell-smoke |
Køyrer røyktest med eksempel-meldingar for å verifisere at serveren svarar korrekt. |
Testresultat til stdout; avsluttar med kode 1 ved feil |
make mcp-linkml-valider-modell-test |
Køyrer alle policy-testar for validator MCP-serveren. |
Testresultat til stdout; avsluttar med kode 1 ved feil |
make mcp-linkml-valider-modell-run |
Startar validator MCP-serveren interaktivt. Nyttig for manuell testing og feilsøking. |
JSON-RPC på stdin/stdout |
Påskeegg: Gource-visualisering
Krev make build-docker-gource éin gong (eller etter endringar i Dockerfile). Output-filer hamnar i tmp/.
| Kommando |
Beskriving |
Output |
make build-docker-gource |
Byggjer container-image med Gource og ffmpeg. |
Image localhost/gource-local:latest |
make gource-preview |
Genererer ein 30fps-preview-video av heile git-historikken (rask, lågare kvalitet). |
tmp/gource-preview.mp4 |
make gource-video |
Genererer ein 60fps fullkvalitetsvideo av heile git-historikken. |
tmp/gource.mp4 |