XML-PropertySet

Bei XML-PropertySets handelt es sich um XML-Dokumente mit einer speziellen Form:

• ein PropertySet besteht aus genau einem Tag auf oberster Ebene,
• ein Tag darf entweder Text enthalten oder
• eine (möglicherweise leere) Sequenz von PropertySets.


Schemas

Der zulässige Inhalt eines PropertySets kann durch ein Schema angegeben werden. Das Schema ist dabei ein PropertySet mit Annotationen.

• <tag>...</tag> bedeutet, dass das Tag inklusive seines Inhalts an dieser Stelle stehen muss,
• [<tag>...</tag>] bedeutet, dass das Tag inklusive seines Inhalts an dieser Stelle stehen kann, also auch fehlen darf,
• <tag>...</tag>+ bedeutet, dass das Tag inklusive seines Inhalts an dieser Stelle mindestens ein mal stehen muss und mehr als ein mal vorkommen darf,
• <tag>...</tag>n+ , wobei n eine positive, ganze Zahl ist, bedeutet, dass das Tag inklusive seines Inhalts an dieser Stelle n mal oder öfter stehen muss,
• <tag>...</tag>* bedeutet, dass das Tag inklusive seines Inhalts an dieser Stelle beliebig oft (auch nicht) vorkommen darf,
• (...) | (...) bedeutet, dass eine von mehreren Alternativen vorliegen muss,
• # steht anstelle eine numerischen Zeichenkette,
• $ steht anstelle eines Symbols, d.h. eine Zeichenkette ohne Leerzeichen, die mit einem Buchstaben beginnt,
• ... bedeutet, dass der Inhalt anderswo formal oder informal beschrieben wird.


Beispiel

<print-job>
  <page>
    [<paper>
      <width>#</width>
      <height>#</height>
      <printable-left>#</printable-left>
      <printable-top>#</printable-top>
      <printable-width>#</printable-width>
      <printable-height>#</printable-height>
    </paper>]
    [<orientation>(landscape)|(portrait)|(reverse-landscape)</orientation>]
    <content>
      <component>...</component>+
    </content>
  </page>+
</print-job>