Whitespace-Verarbeitung

(Auszug aus "XML Schema" von Eric van der Vlist)

Die Behandlung bestimmter Zeichen (Tab, Linefeed, Carriage Return und Blank, die oft verwendet werden, um XML-Dokumente »nett aussehen« zu lassen) ist schon immer ziemlich kontrovers gewesen. W3C XML Schema fordert einen allgemeinen zweistufigen Algorithmus, der auf die meisten der vordefinierten Datentypen (tatsächlich auf alle bis auf zwei, nämlich xs:string und xs:normalizedString) angewendet wird.

Whitespace-Ersetzung (Normalisierung)

Dies ist der erste Schritt der Whitespace-Verarbeitung, die auf den geparsten Wert angewendet wird. Bei der Whitespace-Ersetzung werden alle Vorkommen beliebiger Whitespace-Zeichen – #x9 (Tab), #xA (Linefeed) und #xD (Carriage Return) – durch ein Blank, also ein Leerzeichen (#x20), ersetzt (Normalisierung). Die Anzahl der Zeichen wird durch diesen Schritt, der auf alle vordefinierten Datentypen (außer auf xs:string, da für diesen keine Whitespace-Ersetzung an dem geparsten Wert vorgenommen wird) angewendet wird, nicht verändert.

Whitespace-Zusammenfassung (Whitespace-Collapsing)

Der zweite Schritt entfernt die führenden und die am Ende stehenden Blanks und ersetzt alle ununterbrochenen Folgen von Blanks durch ein einziges Blank. Dies wird auf alle vordefinierten Datentypen (außer auf xs:string, da für diesen keine Whitespace-Ersetzung an dem geparsten Wert vorgenommen wird, und auf xs:normalizedString, für den Whitespace nur normalisiert wird) angewendet.

Dieser Begriff des »normalisierten Strings« paßt nicht zu der XPath-Funktion normalize-space(), die dem entspricht, was W3C XML Schema Whitespace-Zusammenfassung nennt. Wiederum etwas anderes bezeichnet die DOM-Methode normalize(), die eine Zusammenfassung nebeneinanderstehender Textobjekte ist.

   

<< zurück vor >>

 

 

 

Tipp der data2type-Redaktion:
Zum Thema XML Schema bieten wir auch folgende Schulungen zur Vertiefung und professionellen Fortbildung an:

Copyright © 2003 O'Reilly Verlag GmbH & Co. KG
Für Ihren privaten Gebrauch dürfen Sie die Online-Version ausdrucken.
Ansonsten unterliegt dieses Kapitel aus dem Buch "XML Schema" denselben Bestimmungen, wie die gebundene Ausgabe: Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt. Alle Rechte vorbehalten einschließlich der Vervielfältigung, Übersetzung, Mikroverfilmung sowie Einspeicherung und Verarbeitung in elektronischen Systemen.

O’Reilly Verlag GmbH & Co. KG, Balthasarstraße 81, 50670 Köln, kommentar(at)oreilly.de