XML -Tutorial

XML-HOME XML-Einführung XML-Wie zu verwenden XML-Baum XML-Syntax XML-Elemente XML-Attribute XML-Namespaces XML-Anzeige XML-HttpRequest XML-Parser XML-DOM XML-XPath XML-XSLT XML-XQuery XML-XLink XML-Validator XML-DTD XML-Schema XML-Server XML-Beispiele XML-Quiz XML-Zertifikat

XML-AJAX

AJAX-Einführung AJAX-XMLHttp AJAX-Anfrage AJAX-Antwort AJAX-XML-Datei AJAX-PHP AJAX ASP AJAX-Datenbank AJAX-Anwendungen AJAX-Beispiele

XML-DOM

DOM-Einführung DOM-Knoten DOM-Zugriff DOM-Knoten-Info DOM-Knotenliste DOM-Traversierung DOM-Navigation DOM Get-Werte DOM-Änderungsknoten DOM-Knoten entfernen DOM-Ersetzungsknoten DOM-Knoten erstellen DOM-Knoten hinzufügen DOM-Klonknoten DOM-Beispiele

XPath -Tutorial

XPath-Einführung XPath-Knoten XPath-Syntax XPath-Achsen XPath-Operatoren XPath-Beispiele

XSLT -Tutorial

XSLT-Einführung XSL-Sprachen XSLT-Transformation XSLT <Vorlage> XSLT <Wert von> XSLT <für-jeden> XSLT <sortieren> XSLT <wenn> XSLT <auswählen> XSLT anwenden XSLT auf dem Client XSLT auf dem Server XSLT XML bearbeiten XSLT-Beispiele

XQuery- Tutorial

XQuery-Einführung XQuery-Beispiel XQuery FLWOR XQuery-HTML XQuery-Bedingungen XQuery-Syntax XQuery hinzufügen XQuery-Auswahl XQuery-Funktionen

XML -DTD

DTD-Einführung DTD-Bausteine DTD-Elemente DTD-Attribute DTD-Elemente vs. Attr DTD-Entitäten DTD-Beispiele

XSD- Schema

XSD-Einführung XSD-Anleitung XSD <Schema> XSD-Elemente XSD-Attribute XSD-Einschränkungen

XSD- Komplex

XSD-Elemente XSD leer Nur XSD-Elemente Nur XSD-Text XSD gemischt XSD-Indikatoren XSD <beliebig> XSD <beliebiges Attribut> XSD-Ersetzung XSD-Beispiel

XSD -Daten

XSD-String XSD-Datum XSD Numerisch XSD Sonstiges XSD-Referenz

Webdienste _

XML-Dienste XML-WSDL XML-SOAP XML-RDF XML-RSS

Verweise

DOM-Knotentypen DOM-Knoten DOM-Knotenliste DOM NamedNodeMap DOM-Dokument DOM-Element DOM-Attribut DOM-Text DOM-CDATA DOM-Kommentar DOM-XMLHttpRequest DOM-Parser XSLT-Elemente XSLT/XPath-Funktionen

XSD- Attribute


Alle Attribute sind als einfache Typen deklariert.


Was ist ein Attribut?

Einfache Elemente können keine Attribute haben. Wenn ein Element Attribute hat, wird es als komplexer Typ betrachtet. Aber das Attribut selbst wird immer als einfacher Typ deklariert.


Wie definiere ich ein Attribut?

Die Syntax zum Definieren eines Attributs lautet:

<xs:attribute name="xxx" type="yyy"/>

wobei xxx der Name des Attributs ist und yyy den Datentyp des Attributs angibt.

Das XML-Schema verfügt über viele integrierte Datentypen. Die häufigsten Typen sind:

  • xs:Zeichenfolge
  • xs:dezimal
  • xs: ganze Zahl
  • xs:boolesch
  • xs:Datum
  • xs:Zeit

Beispiel

Hier ist ein XML-Element mit einem Attribut:

<lastname lang="EN">Smith</lastname>

Und hier ist die entsprechende Attributdefinition:

<xs:attribute name="lang" type="xs:string"/>

Standard- und Festwerte für Attribute

Attribute können einen Standardwert ODER einen festgelegten festen Wert haben.

Dem Attribut wird automatisch ein Standardwert zugewiesen, wenn kein anderer Wert angegeben wird.

Im folgenden Beispiel ist der Standardwert "EN":

<xs:attribute name="lang" type="xs:string" default="EN"/>

Außerdem wird dem Attribut automatisch ein fester Wert zugewiesen, und Sie können keinen anderen Wert angeben.

Im folgenden Beispiel ist der feste Wert "EN":

<xs:attribute name="lang" type="xs:string" fixed="EN"/>


Optionale und erforderliche Attribute

Attribute sind standardmäßig optional. Um anzugeben, dass das Attribut erforderlich ist, verwenden Sie das Attribut „use“:

<xs:attribute name="lang" type="xs:string" use="required"/>

Inhaltliche Beschränkungen

Wenn für ein XML-Element oder -Attribut ein Datentyp definiert ist, wird der Inhalt des Elements oder Attributs eingeschränkt.

Wenn ein XML-Element vom Typ „xs:date“ ist und eine Zeichenfolge wie „Hello World“ enthält, wird das Element nicht validiert.

Mit XML-Schemas können Sie Ihren XML-Elementen und -Attributen auch Ihre eigenen Beschränkungen hinzufügen. Diese Einschränkungen werden als Facetten bezeichnet. Mehr über Facetten erfahren Sie im nächsten Kapitel.