Inhoudelijke validaties

Inhoudelijke validaties

Onderdeel van de NLCS++ Netbeheer informatie-uitwisseling is een XML-bestand met daarin onder andere de geometrieën en attributen van de bedrijfsmiddelen (LS Kabel, LS Mof, etc.). Het XSD borgt een valide structuur van het XML-bestand. Voor het inhoudelijke controleren van dit bestand zijn er de Inhoudelijke Validaties ontwikkeld. Voorbeelden van inhoudelijke validaties zijn:

  • Een mantelbuis die in een andere mantelbuis ligt moet een kleinere diameter hebben dan de mantelbuis waarin het ligt.

  • Iedere geometrie (punt, lijn en vlak) van ieder NLCS Object in het bestand moet interactie hebben met het Projectgebied van AprojectReferentie.

  • Het aantal kabels moet passen bij de Functie van de Mof.

De inhoudelijke validaties dragen bij aan de efficiëntie en datakwaliteit in de informatie-uitwisseling via NLCS++ en zijn een onmisbaar onderdeel in het geautomatiseerd uitwisselen.

Doel van de software is om een mogelijkheid te bieden om op elke plek (device) dezelfde inhoudelijke validaties te kunnen uitvoeren, die ook voor de netbeheerder worden uitgevoerd.

De inhoudelijke validatie software is gebaseerd op Schematron. Schematron is een op XML gebaseerde technologie voor het decentraal en systeem agnostisch kunnen uitvoeren van inhoudelijke validaties van XML-bestanden.

Concept

NLCS++ ondersteunt de verschillende fasen van het aanlegproces: van het aanleveren van de bestaande situatie tot de eindrevisie. Context voor het uitvoeren van inhoudelijke validaties is daarom van belang.

Voor het creëren van deze context bestaat er binnen de software de entiteit Scope. De attributen Tekeningtype, Status en de Bedrijfstoestand vormen de basis van een Scope. Aan een Scope zijn de Validatieregels gekoppeld met de bijbehorende Ernst (fout, waarschuwing, informerend). Een Validatieregel geeft de definitie van de betreffende controle. Elke validatieregel is uniek genummerd en is gekoppeld aan de objecttypes die gevalideerd worden (Validatieobjecten). Het onderstaande figuur illustreert schematisch de relaties tussen deze entiteiten.

Inhoudelijke_validaties_entiteiten_scherp.png

Aan een tekeningtype kunnen meerdere Scopes gekoppeld zijn. Dit geldt bijvoorbeeld voor het tekeningtype “Deelrevisie”.

Definities van de verschillende scopes en validatieregels zijn vastgelegd in NLCSValidatieRegels.xml. Deze zijn hier in leesbare vorm terug te vinden.

Documentatie

Verdere (technische) documentatie over de werking van de inhoudelijke validaties is terug te vinden op deze wiki.

Testbestanden

Om de werking van elke validatieregel te testen zijn er testbestanden. Deze testbestanden kunnen ontwikkelaars helpen bij het integreren van de software in hun oplossing.

Releases

De software van de inhoudelijke validaties is gekoppeld aan de versie van NLCS++ Netbeheer. De versienummering is daarom overeenkomstig. De laatste releases van de software kan je hier vinden.

Issues

Bugs, wijzigingsverzoeken en vragen kunnen worden ingediend op de issues pagina van de GitHub repository.