Vorheriges Thema: LexemeNächstes Thema: Deskriptorstruktur


Interpunktionsdetails

ADL ist zeilenorientiert und behandelt das Zeichen für den Zeilenumbruch anders als andere Leerzeichen. In allen nachfolgenden Syntaxbeschreibungen sind die Zeilenumbruchzeichen bedeutungsvoll, und ein Zeilenumbruchzeichen in einem Syntaxbeispiel gibt an, dass es dort erforderlich ist.

Nachfolgend wird die Bedeutung anderer Interpunktionszeichen in ADL beschrieben:

:  

Trennt eine Entitätsdefinition von einer integrierbaren Liste von Attributen für diese Entität

,  

Trennt Attribute in einer Attributliste, die einer Entitätendefinition folgt (integrierbare Attribute)

{}  

Blocktrennzeichen. Diese müssen allein in einer Zeile stehen. Ein Paar geschweifter Klammern umschließt eine Gruppe von Attributen und Unterentitäten, die sich auf die Entität beziehen, nach der sie abgegeben werden. Pro Entität ist nur ein Block zulässig, und sie sollte nur in ein einzelnes Paar geschweifter Klammern gesetzt werden. Das heißt, Konstrukte wie die unten dargestellten sind ungültig:
input X
   {
   { # Doppelklammer - unzulässig
      protocol=http
   }
   }
input X
   {
   }
    { # zweiter Block für dieselbe Entität - unzulässig
   protocol=http
   }

[]  

Array-Blocktrennzeichen. Ein Paar eckige Klammern nach einer Entitätsüberschrift identifiziert diese als eine Array-Entität. Wie die Trennzeichen {} müssen diese allein in einer Zeile stehen. Jede Zeile im [] Block ist eine kommagetrennte Liste mit den Attributen eines einzelnen Array-Elements.

\  

Wenn dieses Zeichen am Zeilenende steht, wird es als Zeilenfortsetzungszeichen interpretiert. Die nächste Zeile wird als Teil der aktuellen Zeile betrachtet.

#  

Kommentartrennzeichen. Alle # nachfolgenden Zeichen bis zum Zeilenende werden ignoriert (einschließlich des Zeilenfortsetzungszeichens \).