Inhoudsopgave
3.1. Latin-1
3.2. Gereserveerde tekens
4.1. Algemene structuur
4.2. Structuur van een rubriek
4.3. Structuur van een segment
4.4. Structuur van een gegevenselement
5.1. Uitsluiten van segmenten
5.2. Weglaten van gegevenselementen
5.3. Afkappen van gegevenselementen
5.4. Weglaten van samenstellende gegevenselementen
5.5. Afkappen van samenstellende gegevenselementen
6.1. Segment XGH, header van een groep uitwisselingseenheden
6.2. Segment XGT, trailer van een groep uitwisselingseenheden
6.3. Segment XEH, header van een uitwisselingseenheid
6.4. Segment XET, trailer van een uitwisselingseenheid
6.5. Segment XRH, header van een rubriek
6.6. Segment XRT, trailer van een rubriek
Deze norm beschrijft de regels op toepassingsniveau voor het structureren van de gebruikersgegevens en de bijbehorende dienstgegevens met het oog de uitwisseling van informatie.
De beschreven syntaxis is gebaseerd op de ISO 9735-norm, die door de Economische Commissie voor Europa van de Verenigde Naties (UNECE) geadopteerd is als syntaxisregels voor elektrische uitwisseling van gegevens in administratie, handel en transport (EDIFACT).
Dit is versie 1 van deze norm.
Deze syntaxis geldt voor alle gegevensuitwisselingen in het kader van de Assurnet2-architectuur, waarbij verschillende partners betrokken zijn ( bijvoorbeeld de log-deal, het nieuwe antwoordrecord, ... ).
3.1. Latin-1
Tenzij de bij de gegevensuitwisseling betrokken partners overeenkomen om een andere tekenset te gebruiken, wordt de Latin-1 (ISO 8859-1) gebruikt, met uitzondering van het teken NUL (hexadecimaal : 00). Deze set bevat alle tekens die gebruikt worden in Westeuropese talen, waaronder het Nederlands en het Frans.
Het teken NUL (hexadecimaal : 00) heeft in de meeste ontwikkelingsomgevingen een bijzondere functie, en mag daarom niet worden gebruikt in een uitwisseling.
3.2. Gereserveerde tekens
De volgende tekens hebben een speciale functie:
De segmenten moeten in een groep van uitwisselingseenheden weergegeven worden in de hieronder voorgestelde volgorde.
Een groep kan meerdere uitwisselingseenheden bevatten.
Een uitwisselingseenheid kan meerdere rubrieken bevatten.
Een rubriek bestaat uit segmenten (en rubrieken).
Een segment bestaat uit enkelvoudige en/of samengestelde gegevenselementen.
4.1. Algemene structuur
Een groep uitwisselingseenheden bevat :
4.2. Structuur van een rubriek
Een rubriek bevat:
4.3. Structuur van een segment
Een segment bevat:
4.4. Structuur van een gegevenselement
Een gegevenselement bevat:
Een enkelvoudig gegevenselement bevat slechts één gegevenselement-waarde.
Een samengesteld gegevenselement bevat meerdere samenstellende gegevenselementen.
Een samenstellend gegevenselement bevat slechts één gegevenselement-waarde.
Na het laatste samenstellende gegevenselement wordt geen scheidingsteken van samenstellende gegevenselementen geplaatst; na het laatste gegevenselement wordt geen scheidingsteken van gegevenselementen geplaatst.
Niet-significante tekens van gegevenselementen moeten worden weggelaten. Deze tekens worden niet verstuurd: bijvoorbeeld de voorloopnullen van een numerieke waarde of de opvultekens van een alfanumerieke waarde.
Op te merken valt dat één enkele nul voor een decimale punt betekenis kan hebben, en dat een nul betekenis kan hebben als dit in de gegevenselementen is gespecificeerd.
De hierna vermelde regels gelden voor het comprimeren van uitwisselingseenheden.
In onderstaande voorbeelden, staat "TAG" voor de segmentcode, "DE" voor een gegevenselement en "CE" voor een samenstellend gegevenselement.
5.1. Uitsluiten van segmenten
Segmenten zonder gegevenselementen moeten worden weggelaten (samen met hun code).
5.2. Weglaten van gegevenselementen
Gegevenselementen worden geïdentificeerd door hun positie in een segment, zoals vastgelegd in de TELEBIB segmentenrepertorium. Als een door een ander gegevenselement gevolgd gegevenselement wordt weggelaten, dan wordt een scheidingsteken van een gegevenselement verstuurd in plaats van het gegevenselement zelf.
TAG+DE+DE+++DE+DE+DE' Twee gegevenselementen worden weggelaten.
5.3. Afkappen van gegevenselementen
Als één of meer gegevenselementen worden weggelaten op het einde van een segment, dan mag dit worden afgekapt met het segmenteindeteken; in dit geval worden de scheidingstekens van weggelaten gegevenselementen niet verstuurd.
TAG+DE+DE+++DE' In het voorbeeld van punt 5.2., werden de laatste twee gegevenselementen weggelaten en werd het segment afgekapt.
5.4. Weglaten van samenstellende gegevenselementen
Samenstellende gegevenselementen worden geïdentificeerd door hun positie in een samengesteld gegevenselement. Als een samenstellend gegevenselement wordt weggelaten, dan wordt een scheidingsteken van een samenstellend gegevenselement verstuurd in plaats van het samenstellende gegevenselement zelf.
TAG+DE+CE:CE+CE:::CE' Twee samenstellende gegevenselementen werden weggelaten in het derde gegevenselement.
5.5. Afkappen van samenstellende gegevenselementen
Als één ( of meer ) samenstellende gegevenselementen worden weggelaten aan het einde van een samengesteld gegevenselement, dan mag dit worden afgekapt met het scheidingsteken van gegevenselementen; in dit geval worden de scheidingstekens van weggelaten samenstellende gegevenselementen niet verstuurd.
TAG+DE+CE+CE' In het voorbeeld van punt 5.4., werd het laatste samenstellend gegevenselement van het eerste samengestelde gegevenselement weggelaten, alsook de laatste drie samenstellende gegevenselementen van het tweede samengestelde gegevenselement. In beide gevallen werd het samengestelde gegevenselement afgekapt; dat blijkt in het eerste geval uit het scheidingsteken van gegevenselementen, en in het tweede geval uit het eindteken van het segment.
6.1. Segment XGH, header van een groep uitwisselingseenheden
6.1.1. Functie
6.1.2. Inhoud
6.2. Segment XGT, trailer van een groep uitwisselingseenheden
6.2.1. Functie
6.2.2. Inhoud
Versienummer van de syntaxis (verplicht)
6.3. Segment XEH, header van een uitwisselingseenheid
6.3.1. Functie
6.3.2. Inhoud
6.4. Segment XET, trailer van een uitwisselingseenheid
6.4.1. Functie
6.4.2. Inhoud
6.5. Segment XRH, header van een rubriek
6.5.1. Functie
6.5.2. Inhoud
6.6. Segment XRT, trailer van een rubriek
6.6.1. Functie
6.6.2. Inhoud
Dit deel beschrijft de formele grammatica van de syntaxis van Assurnet2 in BNF-notatie.
exchange is de wortel van de boom, en komt overeen met de groep uitwisselingseenheden in de beschrijvende tekst.
exchange:
exchange-group-header exchange-unit-list exchange-group-trailer
exchange-group-header:
XGH+ syntax-version + address + address '
XGH+ syntax-version + address + address + string '
exchange-group-trailer:
XGT+ syntax-version '
exchange-unit-list:
exchange-unit
exchange-unit-list exchange-unit
exchange-unit:
exchange-unit-header segment-list block-list exchange-unit-trailer
exchange-unit-header:
XEH+ string + exchange-unit-version '
XEH+ string + exchange-unit-version + string '
XEH+ string + exchange-unit-version + stringopt + string '
XEH+ string + exchange-unit-version + stringopt + stringopt + string '
XEH+ string + exchange-unit-version + stringopt + stringopt + stringopt + string '
exchange-unit-trailer:
XET+ string '
segment-list:
segmentopt
segment-list segment
block-list:
blockopt
block-list block
segment:
tag + data-element-list '
block:
block-header id-segment segment-list block-list block-trailer
block-header:
XRH+ number '
block-trailer:
XRT+ number '
id-segment:
segment
tag:
tag-letter tag-letter tag-letter
data-element-list:
data-element
data-element-list list-plus data-element
list-plus:
+
list-plus +
data-element:
simple-data-element
composite-data-element
simple-data-element
string
number
composite-data-element:
simple-data-element
composite-data-element list-colon simple-data-element
list-colon:
:
list-colon :
syntax-version:
1
01
exchange-unit-version:
digit
digit digit
address:
string
string : string
string:
init-string
string list-spaceopt init-string
init-string:
not-reserved
escape-sequence
list-space:
spatie
list-space spatie
number:
digit-list
- digit-list
digit-list:
digit
digit-list digit
digit:
één van de volgende cijfers0 1 2 3 4 5 6 7 8 9
escape-sequence:
?+
?:
?'
??
tag-letter:
één van de volgende lettersA B C D E F G H I J K L M N O P Q R S T U V W X Y Z
not-reserved:
een teken van de tekenset Latin-1 uitgezonderd + : ' ?, de binaire nul en de spatie