Foutcodes ten onrechte beperkt tot synchrone kennisgevingen

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

18 reacties / 0 nieuw
Ruud Kathmann
Foutcodes ten onrechte beperkt tot synchrone kennisgevingen

In de StUF standaard worden sommige foutcodes alleen gedefinieerd in relatie tot synchrone kennisgevingen. Bijvoorbeeld StUF068 wordt in tabel 4.1 en 5.8 expliciet genoemd als gekoppeld aan een synchrone kennisgeving. Maar dit zou betekenen dat wanneer dezelfde kennisgeving asynchroon wordt verzonden, deze foutcode niet zou zijn toegestaan. Dat is onwenselijk. Daarom wordt voorgesteld expliciet in de standaard vast te leggen dat alle voor synchrone kennisgevingen benoemde foutcodes ook zijn toegestaan bij asynchrone kennisgevingen.

Robert Melskens

Dit onderhoudsverzoek is opgevoerd in de onderhoudsverzoeken als ONV0326.
De lijst met onderhoudsverzoeken vind je op: 
gemmaonline.nl/index.php/StUF-Expertgroep#Documenten

Robert Melskens

Dit issue is tijdens de StUF Expertgroep van 17 december 2014 besproken.

Er is toen gezegd dat als je naar de standaard kijkt dat je dan zou zeggen dat die dit verbiedt. Inmiddels wordt daar echter anders over gedacht en uiteindelijk is geconcludeerd dat in de zin boven tabel 5.8 het woordje ‘Lk01’ geschrapt moet worden.

Het onderhoudsverzoek is omgezet naar een erratum (ERR0326).

Ruud Kathmann

Fijn dat dit als erratum verduidelijkt gaat worden. Dan is tenminste de huidige praktijk van Fo01 foutberichten vanuit de LV WOZ als reactie op asynchrone kennisgevingsberichten in overeenstemming met de bedoeling van de StUF standaard.

Alleen het weghalen van Lk01 boven tabel 5.8 is denk ik niet voldoende om te bereiken dat ook volledig helder is dat asynchrone kennisgevingen (vrije berichten) kunnen leiden tot functionele foutberichten (Fo01).

Wanneer we de eerste zin van paragraaf 5.2.8 lezen, dan staat daar eigenlijk al dat Fo01 berichten als respons op een asynchrone kennisgeving niet verwacht mogen worden. Ik denk dat er iets systematischer gekeken moet worden in de tekst om te zorgen dat de diverse StUF foutberichten ook gewoon gebruikt kunnen worden als respons op asynchrone kennisgevingen.

Sid Brouwer

Mijn interpretatie van het weghalen van Lk01 in de zin boven de tabel zou zijn dat de foutberichten niet toegestaan zijn bij asynchrone kennisgevingen (de berichten zijn specifiek voor Lk02's, dus voor synchrone berichten).

Gezien de oorspronkelijke intentie en de expliciete stelling dat op een asynchroon bericht geen foutmelding wordt verwacht, lijkt me dat ook het meest haalbare als erratum (het is duidelijk een vergissing dat boven de tabel Lk01 genoemd is). Het wijzigen van inzichten waardoor wél foutmeldingen kunnen volgen op asynchrone kennisgevingen is m.i. meer een reden om een RFC in te dienen dan hierven een erratum te maken. 

Robert Melskens

In de StUF Expertgroep van 17 december 2014 was het inzicht dat er voor asynchrone berichten geen foutafhandeling zou gelden. Bij een Lk01 zou je dus niet geïnteresseerd zijn in een evt. fout. Dit was de oorspronkelijke gedachte van Maarten van den Broek. Deze is echter van standpunt veranderd en heeft geen problemen meer met het gebruik van dezelfde foutberichten bij synchrone en asynchrone foutberichten.

Sid Brouwer durfde niet te zeggen wat de Centric systemen doen als asynchrone berichten ineens de betreffende foutmeldingen krijgen. Er is afgesproken dat dit eerst binnen Centric wordt besproken. Sid zal zijn reactie in deze discussie plaatsen. Pas daarna zal KING het erratum uitwerken zodat in een volgende vergadering goedkeuring kan worden gegeven.

Sid Brouwer

Uitgangspunt moet zijn dat de Fo01-berichten niet verplicht zijn en ook niet verplicht ondersteund hoeven te worden door de verzender van de Lk01. Deze is immers niet 'gewend' dergelijke berichten te ontvangen en daar dus wellicht helemaal niet op ingericht.
Liever zien wij dit dus sowieso terug als een RFC en niet als een erratum.

Daarnaast lijkt het ons noodzakelijk om een afnemer die Fo01-berichten verstuurt bij fouten ook te verplichten Bv01-berichten te versturen als verwerking wél goed gaat. Hiermee kan de verzender van de oorspronkelijke Lk01 zijn cache legen. Als je een foutbericht kunt ontvangen, wil je immers het oorspronkelijke bericht bewaren om het foutbericht nog te kunnen interpreteren (anders heb je ook niets aan het foutbericht). Als je geen bevestiging krijgt, weet je nooit of het bericht correct is verwerkt, dan wel of er alsnog een Fo01 op kan volgen. Je kunt dan je berichtenopslag niet schonen voor berichten die goed zijn gegaan.

Ruud Kathmann

Volgens mij wordt deze vraag, conform de wens van Sid, inmiddels als RFC besproken in het kader van de vernieuwing van de StUF onderlaag.

Als RFC willen we dan nog steeds graag dat de generieke foutcodes ook gebruikt kunnen worden in Fo01 berichten als respons op asynchrone kennisgevingen.

We zijn benieuwd hoe anderen tegen het verzoek van Sid aankijken om dan ook Bv01 verplicht te stellen. Wij zijn van mening dat die verplichting niet noodzakelijk is, omdat het foutbericht voldoende informatie bevat om een inhoudelijke foutafhandeling op te starten.

 

 

Sid Brouwer

Het punt met de bevestigingsberichten is niet dat er niet genoeg informatie in de Fo01 zit.

Als je echter géén Fo01 krijgt én geen Bv01, dan weet je dus nooit zeker of een bericht door de ontvanger goed verwerkt is (als Bv01 niet verplicht is). Zou je dus iets met de antwoorden willen doen en daarvoor de oorspronkelijke berichten willen/moeten bewaren (totdat ze zijn verwerkt), dan kun je zonder Bv01 nooit weten of je die opslag kunt schonen. Als je dus wat met een Fo01 moet doen, dan is het ook wel wenselijk om van verzonden berichten te weten als er geen Fo01 meer komt (en je er dus niets meer mee hoeft te (gaan) doen).

Robert Melskens

Tijdens de StUF Expertgroep van 16 maart 2016 is gesteld dat Sid m.b.t. de Bv01 berichten een ander aspect aan de discussie heeft toegevoegd.  Hierover, werd gesteld, moet echter in een koppelvlak worden beslist.

Daarnaast is bediscussieerd of dit issue als een erratum of als een RFC moet worden behandeld.
Een deel van de StUF Expertgroep gaf aan van mening te zijn dat het om een Erratum gaat en dat het backwards compatible is. Een ander deel gaf aan dit issue niet zonder consequenties a;s een erratum kan worden opgelost. Een Fo01 bericht schept verwachtingen terwijl de zender van het Lk bericht niets met de fout kan. De fout moet bij de ontvanger opgelost worden. Andere leden zijn juist van mening dat de verzender het probleem moet oplossen.

Naar de mening van Sid handelt het om een RFC omdat het om nieuwe functionaliteit gaat. Maarten gaf hierop aan dat er te veel vanuit principes wordt geredeneerd terwijl er meer gereageerd zou moeten worden vanuit de vraag of iets een probleem is.

Robert Melskens

Tijdens de StUF Expertgroep van 19 april 2017 vraagt Robert de aanwezigen wat er met dit onderhoudsverzoek moet gebeuren. Moet het worden omgezet naar een RFC of niet?

De StUF Expertgroep ziet hier 2 onderhoudsverzoeken in:

  • De eerste betreft het toestaan dat sommige foutcodes ook worden gebruikt bij asynchrone berichten. Dit is het erratum ERR0326. Er moet echter wel goed gekeken worden voor welke foutcodes dat wel en voor welke dat niet geldt.
  • De tweede betreft het mogelijk maken van het verzenden van een Bv01 berichten als een asynchroon bericht wel goed verwerkt kan worden. Hiervoor wordt een nieuw onderhoudsverzoek (ONV0484) opgevoerd waarvan nog bepaald moet worden of het een Erratum danwel een RFC betreft. Maarten v.d. Broek heeft het idee dat dit nu al is toegestaan en in dat geval moet het alleen beter beschreven worden.
Robert Melskens

Bij deze de voorstellen tot verbetering m.b.t. de errata ERR0326 en ONV0484. De bijlagen bevatten alleen de relevante pagina's. Deze voorstellen zijn ook al opgenomen in pre-patch 27 welke ter goedkeuring op de agenda staat van de StUF Expertgroep van 21 juni 2017.

Bijlage

ERR0326-ONV0484.zip
Michiel Verhoef

In de agenda van de StUF Expertgroep op 28-06-2017 staat ONV 0484 opgenomen als Maak Bv01 berichten verplicht in een asynchone context. Maar uit deze discussie begrijp ik dat het de koppelvlakontwerper vrij staat om BV01 berichten in asynchrone context te gebruiken, niet dat het verplicht is om dat te doen.

Interpreteer ik het ONV verkeerd of klopt de agenda niet?

Henri Korver

Michiel, de EG is morgen (21 juni) en niet op 28-06-2017​ ;-)
De titel "Maak Bv01 berichten verplicht in een asynchone context" van ONV0484 is inderdaad niet correct. Ik weet trouwens niet waar die titel vandaan komt want ik kan het ONV0484 nergens terugvinden op dit forum. Misschien kan Robert ons morgen opheldering geven.

Michiel Verhoef

Henri,

Sorry, ik was even in de war met de werkgroep Documentcreatieservices die wel op 28 juni is :-).

ONV0484 komt ook uit deze discussie voort. In post 11 staat dat de EG in deze discussie twee onderhoudsverzoeken ziet. Eén daar is ONV0484 geworden. In post 12 is een zipfile bijgevoegd met daarin de voorgestelde oplossingen voor beide onderhoudsverzoeken (ERR0326 en ONV0484).

 

Sid Brouwer

Het aanvankelijke voorstel was ook om Bv01-berichten verplicht te stellen, zeker op het moment dat ook Fo01-berichten worden verstuurd. Daarmee is het voor de zender (de ontvanger van de Bv/Fo-berichten) duidelijk dat hij verstuurde berichten niet meer hoeft te bewaren ten behoeve van eventuele foutafhandeling.

Uiteindelijk is (volgens mij) besloten dit niet in de onderlaag verplicht te stellen, maar om het vrij te laten aan de koppelvlakontwerpers om dit al dan niet te doen.

Robert Melskens

Tijdens de StUF Expertgroep van 21 juni 2017 is het voorstel van reactie 12 besproken. M.b.t. ERR0326 is besloten om de voorlaatste zin (‘Als de verwerking van een asynchrone kennisgeving faalt, dan voorziet de StUF-standaard niet in een geautomatiseerde verwittiging van de zender’) in de eerste alinea van paragraaf 5.2.8 te verwijderen. Verder zal er met dit onderhoudsverzoek in het achterhoofd nog een keer kritisch door de StUF standaard gelezen worden en waar nodig n.a.v. gelijksoortige zinnen aanpassingen aangebracht worden.

Met medeneming daarvan heeft de StUF Expergroep de uitwerking van ERR0326 goedgekeurd. Ook de uitwerking van ONV0484 is goedgekeurd. Dat laatste onderhoudsverzoek mag ook omgezet worden naar een erratum (ERR0484).

Robert Melskens

Inmiddels is patch 27 gepubliceerd op GEMMA Online met daarin de tijdens de StUF Expertgroep van 21 juni 2017 goedgekeurde wijzigingen. Zoals uit de voorgaande reactie blijkt is beloofd om de StUF standaard nog een keer kritisch tegen het licht te houden. Daarbij zijn nog enkele wijzigingen aangebracht.
Bijgaand vind je dan ook de laatste versie van de StUF standaard met daarin alle aangebrachte wijzigingen m.b.v. renvooi zichtbaar gemaakt.

Bijlage

stuf0301 (met renvooi).pdf