In het scope-element van zakLv01 t/m zakLv10 berichten zit een oneindige loop in het schema omdat er wordt verwezen naar het basis-entiteit WOZ-basis:
scope/heeftBetrekkingOp/gerelateerde/wozWaarde/isVoor/gerelateerde[BG:WOZ-basis]/historieMaterieel[BG:WOZ-basis]
Schema-validatie en codegeneratie kan daar prima tegen, vandaar dat het nog niet eerder is opgemerkt, alleen berichtgeneratie blijft hangen in een oneindige loop. De loop is eenvoudig te elimineren door in de tweede gerelateerde in bovenstaand pad het complexType BG:WOZ-basis te restricten naar BG:WOZ-kerngegevens of iets dergelijks.
Dit onderhoudsverzoek is opgevoerd in de onderhoudsverzoeken als ONV0421.
De lijst met onderhoudsverzoeken vind je op:
gemmaonline.nl/index.php/StUF-Expertgroep#Documenten
Tijdens de StUF Expertgroep van 20 januari 2016 is aangegeven dat het schema aangescherpt gaat worden. De wijze waarop zal echter eerst op het forum worden geplaatst.
De oneindige loop kan worden doorbroken door in het volgende complexType:
<complexType name="WRDWOZ-zkn-basis">
<complexContent>
<restriction base="BG:WRDWOZ-basis">
<sequence>
<element name="gerelateerde" type="BG:WOZ-basis" nillable="true" minOccurs="0"/>
</sequence>
</restriction>
</complexContent>
</complexType>
het type "BG:WOZ-basis" te vervangen door "BG:WOZ-kerngegevens".
Tijdens de StUF Expertgroep van 18 mei 2016 heeft Henri uitgelegd dat deze aanscherping handig is voor testdoeleinden. Maarten heeft vervolgens duidelijk gemaakt dat het probleem hem zit in het 'isVoor' element. De StUF Expertgroep heeft het voorstel voor de oplossing van dit erratum daarop nog niet goedgekeurd.
Bij deze een nieuw voorstel om de loop te doorbreken: vervang in het onderstaande complexType in het element "wozWaarde" het type "BG:WRD-zkn-basis" door "BG:WRD-zkn-antwoord".
<complexType name="OBJ-gerelateerdeVraagScope">
<complexContent>
<restriction base="ZKN:OBJ-basis">
<choice minOccurs="0">
<choice minOccurs="0" maxOccurs="31">
<element name="adres" type="BG:AOA-zkn-basis" nillable="true"/>
<element name="besluit" type="ZKN:BSL-inOBJ" nillable="true"/>
<element name="buurt" type="BG:BRT-zkn-basis" nillable="true"/>
<element name="enkelvoudigDocument" type="ZKN:EDC-inOBJ" nillable="true"/>
<element name="gemeente" type="BG:GEM-zkn-basis" nillable="true"/>
<element name="gemeentelijkeOpenbareRuimte" type="BG:GOR-zkn-basis" nillable="true"/>
<element name="huishouden" type="BG:HHD-zkn-basis" nillable="true"/>
<element name="inrichtingselement" type="BG:IRE-zkn-basis" nillable="true"/>
<element name="kadastraleOnroerendeZaak" type="BG:KOZ-zkn-basis" nillable="true"/>
<element name="kunstwerkdeel" type="BG:KWD-zkn-basis" nillable="true"/>
<element name="maatschappelijkeActiviteit" type="BG:MAC-zkn-basis" nillable="true"/>
<element name="medewerker" type="ZKN:MDW-inOBJ" nillable="true"/>
<element name="natuurlijkPersoon" type="BG:NPS-zkn-OBJ-vraag" nillable="true"/>
<element name="nietNatuurlijkPersoon" type="BG:NNP-zkn-OBJ-vraag" nillable="true"/>
<element name="openbareRuimte" type="BG:OPR-zkn-basis" nillable="true"/>
<element name="organisatorischeEenheid" type="ZKN:OEH-inOBJ" nillable="true"/>
<element name="pand" type="BG:PND-zkn-basis" nillable="true"/>
<element name="samengesteldDocument" type="ZKN:SDC-inOBJ"/>
<element name="spoorbaandeel" type="BG:SBD-zkn-basis" nillable="true"/>
<element name="status" type="ZKN:STA-inOBJ" nillable="true"/>
<element name="terreindeel" type="BG:TDL-zkn-basis" nillable="true"/>
<element name="terreinGebouwdObject" type="BG:TGO-zkn-basis" nillable="true"/>
<element name="vestiging" type="BG:VES-zkn-OBJ-vraag" nillable="true"/>
<element name="waterdeel" type="BG:WDL-zkn-basis" nillable="true"/>
<element name="wegdeel" type="BG:WGD-zkn-basis" nillable="true"/>
<element name="wijk" type="BG:WYK-zkn-basis" nillable="true"/>
<element name="woonplaats" type="BG:WPL-zkn-basis" nillable="true"/>
<element name="wozDeelobject" type="BG:WDO-zkn-basis" nillable="true"/>
<element name="wozObject" type="BG:WOZ-zkn-basis" nillable="true"/>
<element name="wozWaarde" type="BG:WRD-zkn-basis" nillable="true"/>
<element name="zakelijkRecht" type="BG:ZKR-zkn-basis" nillable="true"/>
</choice>
</choice>
<attribute ref="StUF:entiteittype" use="prohibited"/>
</restriction>
</complexContent>
</complexType>
In het type "BG:WRD-zkn-antwoord" wordt de recursie gebroken in het type van het element "isVoor"
<complexType name="WRD-zkn-antwoord">
<complexContent>
<restriction base="BG:WRD-zkn-basis">
<sequence>
<element name="waardepeildatum" type="BG:Peildatum-e" nillable="true" minOccurs="0"/>
<element name="vastgesteldeWaarde" type="BG:Maateenheid11-e" nillable="true" minOccurs="0"/>
<element ref="StUF:extraElementen" minOccurs="0"/>
<element name="isVoor" type="BG:WRDWOZ-zkn-kerngegevens" nillable="true" minOccurs="0"/>
</sequence>
<attribute ref="StUF:noValue" use="prohibited"/>
<attribute ref="StUF:verwerkingssoort" use="prohibited"/>
<attribute ref="StUF:entiteittype" use="required" fixed="WRD"/>
</restriction>
</complexContent>
</complexType>
Tijdens de StUF Expertgroep van 15 juni 2016 is het laatste voorstel goedgekeurd. Het zal worden opgenomen in patch 25.