Imvertor / Imvertor-Maven

Mavenized version of Imvertor
http://www.imvertor.org
7 stars 12 forks source link

GDP-CDMKAD Json Schema valideert nog niet in XML-SPY #457

Open ThiesMesdag opened 4 months ago

ThiesMesdag commented 4 months ago

De JSON schema is nog niet foutloos als ik hem bekijk in XML-SPY

$anchor fouten

Geo in kadastrale grens

Beide fouten zouden met andere modellering opgelost kunnen worden. Alle klassen met een letter beginnen en geen spaties in de namen en ipv een linestring een characterstring gebruiken voor geo attributen in een plainJson model.

ArjanLoeffen commented 4 months ago

Ten aanzien van "_" en de spaties in een naam: We kunnen een naam normalisatie uitvoeren op de naam die wordt ingevoegd in Json. Echter, daarmee verbreek je de link tussen het informatiemodel en de json serialisatie enigszins. Ook is me dan niet duidelijk welke normalisatie dat moet zijn.

Ten aanzien van Geo: Ik moet dit uitzoeken.

Zie https://www.jsonschemavalidator.net/s/3L0I9J4f voor een parse van het schema tegen het meta-schema "https://json-schema.org/draft/2019-09/schema". Een deel van de fouten is herkenbaar, een ander deel snap ik niet. Lijkt erop dat dat een schema niet een goede json instance is?

Het is de vraag wat een goede jsons schema validator is (dus dus de schemas zelf valideert!), die bij voorkeur ingezet kan worden in een java proces. Suggesties? Start kan zijn: https://json-schema.org/implementations#validators-java

ArjanLoeffen commented 4 months ago

@PalmJanssen wie is in Nederland thuis in Json schemas en kan helpen bij het oplossen van schema vragen?

ArjanLoeffen commented 4 months ago

Ten aanzien van Geo:

In de code van de json generator wordt getest of het externe package de naam GML heeft. In dat geval kunnen de juiste geo referenties worden ingevoerd. Kadaster hanteert echter een package met de naam GMLPROFILE. Het is niet juist om ervan uit te gaan dat "GML" packages allemaal moeten starten met GML of iets dergelijks. We moeten flexibeler omgaan met het "groeperen" van alle GML varianten. Daarom heb ik de <cs:family> geïntroduceerd in de conceptual schema's. De enige "family" van specificaties op dit moment is GML. Daarop kan worden getest en dan komen de referenties er correct uit.

Deze family info wordt geplaatst als tagged value náást source, definition en data location van een extern package.