Choice in StUF 3

Dit is een statische kopie van het eerdere discussie.kinggemeenten.nl.
Nieuwe discussies kunnen in de GitHub repository 'StUF standaarden' als issue worden opgevoerd.

3 reacties / 0 nieuw
Maarten van den...
Choice in StUF 3

Henk Timmermans maakte me erop attent dat de formulering rond choices nog niet helemaal scherp was in de errata voor StUF0301. Ik stel daarom voor om een onderstaande paragraaf toe te voegen.

3.4.3 Het opnemen van een choice

Voor een <choice> element dient gekozen te worden welke tak in het bericht wordt opgenomen. In het bericht wordt de tak opgenomen waarbinnen elementen of relaties met een geldige waarde voorkomen. In principe is dit vanuit het domeinmodel slechts voor één tak het geval. Als toch voor meerdere takken geldige waarden mogelijk zijn, dan dient het sectormodel te specificeren welke van deze takken in het bericht opgenomen moet worden.

Als geen van de takken in de <choice> een element of relatie met een geldige waarde bevat en het <choice> element zelf is niet verplicht, dan wordt geen van de takken in het bericht opgenomen.

Wanneer

  • een <choice> element verplicht is,
  • binnen de <choice> in één of meer takken elementen verplicht zijn vanuit het schema of vanuit voorschriften in de standaard of het sectormodel en
  • binnen geen enkele tak een element of een relatie met een geldige waarde voorkomt,

dan moet een willekeurige tak met een verplicht element binnen de <choice> in het bericht worden opgenomen en binnen deze tak dienen de verplichte elementen gevuld te worden met xsi:nil=”true” en StUF:noValue=”waardeOnbekend”.

De bovenstaande regels impliceren dat een <choice> verplicht dient te zijn in een kennisgevingbericht, waarbinnen kerngegevens voorkomen in minimaal één van de takken."

Ik stel voor dat de tweede alinea onder tabel 5.4 wordt aangevuld met een verwijzing naar deze paragraaf (in blauw).

"Indien één of meer kerngegevens binnen een <choice> voorkomen, dan dient de tak van de <choice> met daarbinnen elementen (mogen ook niet-kernelementen zijn) waarvoor een waarde bekend is te worden opgenomen. Het gebruik van een <choice> impliceert dat dit voor hooguit één tak van de <choice> het geval is. Indien geen van de takken van de <choice> een element bevat waarvoor een waarde bekend is, bevat dan dient precies één tak van de <choice> te worden opgenomen met daarbinnen voor alle elementen voor een kerngegeven xsi:nil=”true” en StUF:noValue=”waardeOnbekend”, zie ook paragraaf 3.4.3."

Robert Melskens

Maarten,

Het leest af en toe wat vreemd dus ik heb even de paragraaf aangepast zodat het n.m.m. wat beter leesbaar is (zie onder).

3.4.3 Het opnemen van een choice

Bij een <choice> element dient gekozen te worden welke tak van de choice in het bericht opgenomen moet worden. In het bericht wordt die tak opgenomen waarvoor geldt dat er voor de elementen of relaties een geldige waarde voorkomt. In principe is dit vanuit het domeinmodel slechts voor één tak het geval. Als toch voor meerdere takken geldige waarden bestaan, dan dient het sectormodel te specificeren welke tak in het bericht opgenomen moet worden.

Als voor geen van de takken in de <choice> geldt dat er een element of relatie met een geldige waarde voorkomt en het <choice> element zelf is niet verplicht, dan wordt geen van de takken in het bericht opgenomen.

Wanneer

  • een <choice> element verplicht is en
  • binnen die <choice> in één of meer takken elementen verplicht zijn vanuit het schema of vanuit voorschriften in de standaard of het sectormodel en
  • binnen geen enkele tak een element of een relatie bestaat waarvoor geldt dat een geldige waarde voorkomt,

dan moet een willekeurige tak met een verplicht element binnen de <choice> in het bericht worden opgenomen en binnen deze tak dienen de verplichte elementen gevuld te worden met xsi:nil=”true” en StUF:noValue=”waardeOnbekend”.

In de tekst hieronder moet het vette woord worden verwijderd. Helaas is strikethrough niet beschikbaar.

De bovenstaande regels impliceren dat een <choice> verplicht dient te zijn in een kennisgevingbericht, waarbinnen kerngegevens voorkomen in minimaal één van de takken."

De tweede alinea onder tabel 5.4 heb ik aangevuld met een verwijzing naar deze paragraaf.

"Indien één of meer kerngegevens binnen een <choice> voorkomen, dan dient de tak van de <choice> met daarbinnen elementen (mogen ook niet-kernelementen zijn) waarvoor een waarde bekend is te worden opgenomen. Het gebruik van een <choice> impliceert dat dit voor hooguit één tak van de <choice> het geval is. Indien geen van de takken van de <choice> een element bevat waarvoor een waarde bekend is, bevat dan dient precies één tak van de <choice> te worden opgenomen met daarbinnen voor alle elementen voor een kerngegeven xsi:nil=”true” en StUF:noValue=”waardeOnbekend”, zie ook paragraaf 3.4.3."

Daarnaast heb ik het versienummer ongewijzigd gelaten, maar wel de datum aangepast naar 20-4-2009.

Maarten van den...

Robert,

Bedankt voor je commentaar. Ik heb je wijzigingen allemaal overgenomen.

Maarten