XML Diagramm (W3C)

XML Diagramm, veröffentlicht als eine W3C Empfehlung im Mai 2001, ist eine von mehreren XML Diagramm-Sprachen. Es war die erste getrennte Diagramm-Sprache für XML, um Empfehlungsstatus durch den W3C zu erreichen. Wegen der Verwirrung zwischen dem XML Diagramm als eine spezifische W3C Spezifizierung und dem Gebrauch desselben Begriffes, um Diagramm-Sprachen im Allgemeinen zu beschreiben, haben sich einige Teile der Benutzergemeinschaft auf diese Sprache als WXS, ein initialism für W3C XML Diagramm bezogen, während sich andere darauf als XSD, ein initialism für das XML Diagramm-Dokument — ein Dokument bezogen haben, das auf der XML Diagramm-Sprache geschrieben ist, normalerweise den "xsd" XML namespace Präfix enthaltend, und mit dem ".xsd" Dateiformat versorgt ist. In der Version 1.1 hat der W3C beschlossen, XSD als der bevorzugte Name anzunehmen, und das ist der in diesem Artikel verwendete Name.

Wie alle XML Diagramm-Sprachen kann XSD verwendet werden, um eine Reihe von Regeln auszudrücken, denen sich ein XML Dokument anpassen muss, um 'gültig' gemäß diesem Diagramm betrachtet zu werden. Jedoch, verschieden von den meisten anderen Diagramm-Sprachen, wurde XSD auch mit der Absicht entworfen, dass der Entschluss von einer Gültigkeit eines Dokumentes eine Sammlung der Information erzeugen würde, die an spezifischen Datentypen klebt. Solch eine Postgültigkeitserklärung infoset kann in der Entwicklung der XML Belegverarbeitungssoftware nützlich sein, aber die Diagramm-Sprachabhängigkeit von spezifischen Datentypen hat Kritik provoziert.

Geschichte

In seinem Anhang von Verweisungen erkennt die XSD Spezifizierung den Einfluss von DTDs und anderen frühen XML Diagramm-Anstrengungen wie DDML, SOCKEN, XML-Daten und XDR an. Es hat Eigenschaften aus jedem dieser Vorschläge angenommen, aber ist auch ein Kompromiss unter ihnen. Jener Sprachen haben XDR und SOCKEN fortgesetzt, verwendet und eine Zeit lang unterstützt zu werden, nachdem XML Diagramm veröffentlicht wurde. Mehrere Produkte von Microsoft haben XDR bis zur Ausgabe von MSXML 6.0 unterstützt (der XDR für das XML Diagramm fallen lassen hat) im Dezember 2006. Handel Ein, Inc. hat seine SOCKEN-Diagramm-Sprache bis zum Erklären des Bankrotts gegen Ende 2004 unterstützt.

Die offensichtlichsten Eigenschaften haben sich in XSD geboten, die in den heimischen Dokumenttyp-Definitionen von XML (DTDs) nicht verfügbar sind, sind namespace Bewusstsein und datatypes, d. h. die Fähigkeit, Element und Attribut-Inhalt als enthaltend Werte wie ganze Zahlen und Daten aber nicht willkürlicher Text zu definieren.

Der XSD 1.0 Spezifizierung wurde 2001 mit einer zweiten Ausgabe im Anschluss an 2004 ursprünglich veröffentlicht, um große Anzahl von Fehlern zu korrigieren. XSD 1.1 ist eine W3C Empfehlung im April 2012 geworden.

Diagramme und Diagramm-Dokumente

Technisch ist ein Diagramm eine abstrakte Sammlung von metadata, aus einer Reihe von Diagramm-Bestandteilen bestehend: hauptsächlich Element und Attribut-Behauptungen und komplizierte und einfache Typ-Definitionen. Diese Bestandteile werden gewöhnlich durch die Verarbeitung einer Sammlung von Diagramm-Dokumenten geschaffen, die die Quellsprache-Definitionen dieser Bestandteile enthalten. Im populären Gebrauch, jedoch, wird ein Diagramm-Dokument häufig ein Diagramm genannt.

Diagramm-Dokumente werden durch namespace organisiert: Alle genannten Diagramm-Bestandteile gehören einem Ziel namespace, und das Ziel namespace ist ein Eigentum des Diagramm-Dokumentes als Ganzes. Ein Diagramm-Dokument kann andere Diagramm-Dokumente für denselben namespace einschließen, und kann Diagramm-Dokumente für einen verschiedenen namespace importieren.

Wenn ein Beispiel-Dokument gegen ein Diagramm gültig gemacht wird (ein Prozess, der als Bewertung bekannt ist), kann das für die Gültigkeitserklärung zu verwendende Diagramm entweder als ein Parameter dem Gültigkeitserklärungsmotor geliefert werden, oder darin kann direkt aus dem Beispiel-Dokument mit zwei speziellen Attributen Verweise angebracht werden, und. (Der letzte Mechanismus verlangt, dass der Kunde, der Gültigkeitserklärung anruft, dem Dokument genug vertraut, um zu wissen, dass es gegen das richtige Diagramm gültig gemacht wird. "xsi" ist das herkömmliche Präfix für den namespace "http://www.w3.org/2001/XMLSchema-instance".)

XML Diagramm-Dokumente haben gewöhnlich das Dateiformat ".xsd". Ein einzigartiges Internetsektorformat wird für XSDs noch nicht eingeschrieben, so sollten "application/xml" oder "text/xml", laut RFC 3023 verwendet werden.

Datentypen

Verschieden von DTDs erlaubt ein XML Diagramm dem Inhalt eines Elements oder Attributes, gegen einen Datentyp gültig gemacht zu werden. Zum Beispiel könnte ein Attribut beschränkt werden, nur ein gültige Datum oder eine Dezimalzahl zu halten.

XSD stellt eine Reihe 19 primitive Datentypen (und) zur Verfügung. Es erlaubt neuen Datentypen, von diesen Primitiven durch drei Mechanismen gebaut zu werden:

  • Beschränkung (den Satz von erlaubten Werten reduzierend),
  • Liste (eine Folge von Werten erlaubend), und
  • Vereinigung (eine Wahl von Werten von mehreren Typen erlaubend).

Fünfundzwanzig abgeleitete Typen werden innerhalb der Spezifizierung selbst definiert, und weiter können abgeleitete Typen von Benutzern in ihren eigenen Diagrammen definiert werden.

"

Postdiagramm-Gültigkeitserklärung" Infoset

Nach XML Diagramm-basierte Gültigkeitserklärung ist es möglich, eine Struktur eines XML Dokumentes und Inhalt in Bezug auf das Datenmodell auszudrücken, das während der Gültigkeitserklärung implizit war. Das XML Diagramm-Datenmodell schließt ein:

  • Das Vokabular (Element und Attribut-Namen)
  • Das zufriedene Modell (Beziehungen und Struktur)
  • Die Datentypen

Diese Sammlung der Information wird Post-Schema-Validation Infoset (PSVI) genannt. Der PSVI gibt einem gültigen XML Dokument seinen "Typ" und erleichtert das Behandeln des Dokumentes als ein Gegenstand mit Paradigmen der objektorientierten Programmierung (OOP).

Beispiel

Das ist ein Beispiel eines ziemlich einfachen Diagramm-Dokumentes, um eine Adresse zu beschreiben.

</xs:restriction>

</xs:simpletype>

</xs:element>

</xs:sequence>

</xs:complextype>

</xs:element>

</xs:schema>

</Quelle>

Mehrere Entwicklungswerkzeuge können verwendet werden, um eine grafische Darstellung eines Diagramms zu schaffen. Viele von ihnen schaffen Diagramme, die ein gezeigter unten ähnlich sind:

Ein Beispiel eines XML Dokumentes, das sich diesem Diagramm anpasst

</Adresse>

</Quelle>

Sekundärer Gebrauch für XML Diagramme

Der primäre Grund dafür, ein XML Diagramm zu definieren, soll ein XML Dokument formell beschreiben; jedoch hat das resultierende Diagramm mehreren anderen Nutzen, der einfache Gültigkeitserklärung übertrifft.

Codegeneration

Das Diagramm kann verwendet werden, um Code zu erzeugen, der auf als XML Datenschwergängigkeit verwiesen ist. Dieser Code erlaubt Inhalt von XML Dokumenten, als Gegenstände innerhalb der Programmierumgebung behandelt zu werden.

Generation der XML Dateistruktur-Dokumentation

Das Diagramm kann verwendet werden, um menschlich-lesbare Dokumentation einer XML Dateistruktur zu erzeugen; das ist besonders nützlich, wo die Autoren von den Anmerkungselementen Gebrauch gemacht haben. Kein formeller Standard besteht für die Dokumentationsgeneration, aber mehrere Werkzeuge sind wie Xs3p stylesheet verfügbar, der hohe Qualität lesbares HTML und gedrucktes Material erzeugen wird.

Kritik

Obwohl XML Diagramm darin erfolgreich ist, ist es weit angenommen worden und erreicht größtenteils, was es begonnen hat zu erreichen, ist es das Thema sehr viel strenger Kritik vielleicht mehr gewesen als jede andere W3C Empfehlung.

Eine gute Zusammenfassung der Kritiken wird von James Clark zur Verfügung gestellt (wer seine eigene Alternative fördert, ENTSPANNEN SIE NG):

  • Es gibt viele Überraschungen auf der Sprache, zum Beispiel arbeitet diese Beschränkung von Elementen verschieden von der Beschränkung von Attributen.
  • Die W3C Empfehlung selbst ist äußerst schwierig zu lesen. Die meisten Benutzer finden WC3s XML Diagramm-Zündvorrichtung, die viel leichter ist, zu verstehen
  • XSD hat an jeder formellen mathematischen Spezifizierung Mangel. (Das macht es schwierig, über Diagramme vernünftig zu urteilen, zum Beispiel zu beweisen, dass eine Modifizierung zu einem Diagramm umgekehrt vereinbar ist.)
  • XSD stellt keine Möglichkeiten zur Verfügung festzustellen, dass der Wert oder die Anwesenheit eines Attributes von den Werten oder der Anwesenheit anderer Attribute (so genannte Co-Ereignis-Einschränkungen) abhängig sind.
  • XSD bietet sehr schwache Unterstützung für den nicht eingeordneten Inhalt an.
  • Der Satz von XSD datatypes zu verkaufen ist hoch willkürlich. In der Praxis ist das nicht ein Problem. Es ist trivial, um Ihren eigenen datatypes zu definieren. Sieh Einfache Typ-Seiten für eine Liste von heimischem datatypes.
  • Die zwei Aufgaben der Gültigkeitserklärung und Zunahme (das Hinzufügen der Typ-Information und Verzug-Werte) sollten getrennt behalten werden.

Version 1.1

XSD 1.1 ist eine W3C Empfehlung im April 2012 geworden, was bedeutet, dass es eine genehmigte W3C Spezifizierung ist.

Bedeutende neue Eigenschaften in XSD 1.1 sind:

  • Die Fähigkeit, Behauptungen gegen den Dokumenteninhalt mittels XPath 2.0 Ausdrücke zu definieren (hat eine Idee von Schematron geborgt)
  • Die Fähigkeit, den Typ auszuwählen, gegen den ein Element gestützt auf den Werten der Attribute des Elements ("bedingte Typ-Anweisung") gültig gemacht wird
  • Das Entspannen der Regeln, wodurch ausführliche Elemente in einem zufriedenen Modell Wildcards nicht vergleichen müssen, die auch durch das Modell erlaubt sind
  • Die Fähigkeit, Wildcards (sowohl für Elemente als auch für Attribute) anzugeben, die für alle Typen im Diagramm gelten, so dass sie alle dieselbe Dehnbarkeitspolitik durchführen

Bis zum Vorgeschlagenen Empfehlungsentwurf hat XSD 1.1 auch die Hinzufügung eines neuen numerischen Datentyps, precisionDecimal vorgeschlagen. Das hat sich umstritten erwiesen, und war deshalb von der Spezifizierung in einer späten Bühne der Entwicklung fallen gelassen.

Siehe auch

  • Liste von XML Diagrammen - Liste von XML Diagrammen im Gebrauch im Internet, das durch den Zweck sortiert ist
  • ENTSPANNEN SIE NG - eine andere XML Diagramm-Sprache (ein ISO internationaler Standard), der häufig mit dem XML Diagramm datatypes verwendet wird
  • XML Diagramm-Redakteur - Information über XML Diagramm-Redigieren-Werkzeuge
  • XML Diagramm-Sprachvergleich - Vergleich in andere XML Diagramm-Sprachen.
  • Einzigartige Partikel-Zuweisung

Weiterführende Literatur

  • Endgültiges XML Diagramm, Priscilla Walmsley, Prentice-Saal, 2001, internationale Standardbuchnummer 0-13-065567-8
  • XML Diagramm, Eric van der Vlist, O'Reilly, 2001, internationale Standardbuchnummer 0-596-00252-1
  • Der XML Diagramm-Begleiter, Neil Bradley, Addison-Wesley, 2003, internationale Standardbuchnummer 0-321-13617-9
  • XML Berufsdiagramme, Jon Ducket u. a. Wrox Presse, 2001, internationale Standardbuchnummer 1-86100-547-4
  • XML Diagramme, Lucinda Dykes u. a. Sybex, internationale Standardbuchnummer 0-7821-4045-9

Links

W3C XML Spezifizierung des Diagramms 1.0

W3C XML Spezifizierung des Diagramms 1.1

Anderer


Hanna Reitsch / Esophageal atresia
Impressum & Datenschutz