www.wikidata.de-de.nina.az
XML Schema abgekurzt XSD XML Schema Definition ist eine Empfehlung des W3C zum Definieren von Strukturen fur XML Dokumente Anders als bei den klassischen XML DTDs wird die Struktur in Form eines XML Dokuments beschrieben Daruber hinaus wird eine grosse Anzahl von Datentypen unterstutzt XML Schema beschreibt in einer komplexen Schemasprache Datentypen einzelne XML Schema Instanzen Dokumente und Gruppen solcher Instanzen Ein konkretes XML Schema wird auch als eine XSD XML Schema Definition bezeichnet und hat als Datei ublicherweise die Endung xsd Im Gegensatz zu DTDs kann bei Verwendung von XML Schemata zwischen dem Namen des XML Typs und dem in der Instanz verwendeten Namen des XML Tags unterschieden werden Neben XML Schema gibt es weitere Konzepte zur Definition von XML Strukturen wie RELAX NG oder Schematron Auch DTD als Normbestandteil von XML selbst kann verwendet werden Inhaltsverzeichnis 1 Datentypen 1 1 Einfache Typen 1 2 Komplexe Typen 1 2 1 Beliebiger Inhalt 1 2 2 Leere Elemente 1 3 Ableitung neuer Typen 1 3 1 Erweiterung eines Typs 1 3 2 Einschrankung eines Typs 2 Elementdefinition 3 Weiterfuhrende Konzepte und Eigenschaften 3 1 Eindeutige Schlussel 3 2 Import Include und Redefine 4 Verwendung von XML Schemata 5 Beispiel 6 Siehe auch 7 Literatur 8 Weblinks 9 EinzelnachweiseDatentypen BearbeitenXML Schema unterscheidet zwischen einfachen atomaren Datentypen und komplexen Datentypen Der Begriff Typ bezeichnet im nachfolgenden Text jeweils die abstrakte Spezifikation der Struktur eines Abschnitts innerhalb eines XML Dokumentes Datentypen in XML Schema werden klassifiziert in eingebaute bzw vordefinierte built in und benutzerdefinierte user defined Datentypen In der Spezifikation des W3C fur XML Schema sind 19 voreingestellte primitive Datentypen z B boolean string float date und NOTATION und weitere 25 davon abgeleitete primitive Datentypen wie ID und integer definiert Einfache Typen Bearbeiten XML Schema stellt einige grundlegende atomare Datentypen bereit Die atomaren Datentypen enthalten die klassischen Typen wie sie zum Teil auch in anderen Typsystemen z B C Java oder SQL spezifiziert sind xs string xs decimal xs integer xs float xs boolean xs date xs timeHinzu kommen weitere XML spezifische atomare Typen unter anderem QName qualifizierter Name global eindeutiger Bezeichner Aufgebaut aus sogenannten NCNames Non Colonized Names wobei jeder NCName bis auf den letzten einen Namensraum Namespace bezeichnet Der letzte NCName entspricht dem lokalen Namen innerhalb des Namensraumes Die einzelnen NCNames werden mittels Punkt zu einem QName zusammengesetzt anyURI Uniform Resource Identifier URI language Sprachbezeichnung z B de DE en US fr ID Identifikationsattribut innerhalb von XML Elementen IDREF Referenz auf einen ID WertEinfache XML Datentypen durfen weder XML Kindelemente enthalten noch XML Attribute besitzen Ausser den atomaren Datentypen gehoren Listen und Unions bestehend aus atomaren Elementen und Listen zu den einfachen Typen Das folgende Beispiel definiert einen neuen XML Datentyp mit dem Namen monatInt sowie eine Liste monate dieses neuen Typs lt xs simpleType name monatInt gt lt xs restriction base xs integer gt lt xs minInclusive value 1 gt lt xs maxInclusive value 12 gt lt xs restriction gt lt xs simpleType gt lt xs simpleType name monate gt lt xs list itemType monatInt gt lt xs simpleType gt Eine Instanz des neuen Typs konnte wie folgt aussehen lt monate gt 1 2 3 4 5 6 7 8 9 10 11 12 lt monate gt Die einzelnen Elemente einer Liste werden durch Leerraum hier Leerzeichen getrennt Zu den einfachen Typen gehoren zusatzlich noch sogenannte Vereinigungen englisch unions Ein neuer Typ wird als Vereinigungsmenge bereits bestehender Typen definiert Jede Instanz wahlt dann ihren Typ aus dieser Menge Das nachfolgende Beispiel definiert einen weiteren Typ monatsname sowie einen Union Typ monat lt xs simpleType name monatsname gt lt xs restriction base xs string gt lt xs enumeration value Jan gt lt xs enumeration value Feb gt lt xs enumeration value Mar gt lt und so weiter gt lt xs restriction gt lt xs simpleType gt lt xs simpleType name monat gt lt xs union memberTypes monatsname monatInt gt lt xs simpleType gt XML Elemente vom Typ monat durfen entweder ganzzahlige Werte im Bereich 1 12 enthalten oder eine der entsprechenden Monatsbezeichnungen als Zeichenkette Gultige Instanzen sind beispielsweise lt monat gt Jan lt monat gt lt monat gt 2 lt monat gt Komplexe Typen Bearbeiten In Erganzung zu den einfachen Typen bieten komplexe XML Datentypdefinitionen die Moglichkeit Elementenstrukturen zusammenhangend zu definieren Solche Strukturen konnen weitere Elemente und Attribute beinhalten Das folgende Beispiel definiert einen neuen Typ pc Typ mit entsprechenden Kindelementen name hersteller etc sowie einem Attribut id lt xs complexType name pc Typ gt lt xs sequence gt lt xs element name name type xs string gt lt xs element name hersteller type xs string gt lt xs element name prozessor type xs string gt lt xs element name mhz type xs integer minOccurs 0 gt lt xs element name kommentar type xs string minOccurs 0 maxOccurs unbounded gt lt xs sequence gt lt xs attribute name id type xs integer gt lt xs complexType gt Die Moglichkeiten zur Definition komplexer Typen sollen hier nur exemplarisch erlautert werden Der interessierte Leser sei auf die unten angegebenen Links zu den Seiten des W3C verwiesen Die Kindelemente eines komplexen Typs konnen auf drei unterschiedliche Arten kombiniert werden xs sequence Eine Liste von Kindelementen wird spezifiziert Jedes dieser Elemente kann keinmal einmal oder mehrfach auftreten Attribute minOccurs und maxOccurs Falls kein occurs Attribut vorhanden ist wird in beiden Fallen der Default Wert 1 verwendet Die Elemente innerhalb einer sequence mussen in der angegebenen Reihenfolge auftreten In dem oben gezeigten Beispiel mussen die Elemente name hersteller und prozessor genau einmal auftreten das mhz Element kann null oder einmal auftreten kommentar Elemente konnen beliebig oft oder auch gar nicht auftreten xs choice Aus einer Liste von Alternativen kann ein Element ausgewahlt werden Das nachfolgende Beispiel definiert einen neuen Typ computer der als Kindelement entweder ein desktop Element besitzt vom Typ pc Typ oder ein laptop Element lt xs complexType name computer gt lt xs choice gt lt xs element name desktop type pc Typ gt lt xs element name laptop type laptop Typ gt lt xs choice gt lt xs complexType gt xs all Mittels des xs all Tags lasst sich eine Gruppe von Kindelementen definieren von denen jedes maximal einmal auftreten darf min und maxOccurs der Kindelemente durfen nur die Werte 0 oder 1 annehmen Die Reihenfolge der Elemente ist beliebig Beliebiger Inhalt Bearbeiten XML Elemente mit beliebigem Inhalt lassen sich mittels des Basistyps anyType definieren Der nachfolgende Code spezifiziert ein kommentar Element beliebigen Inhalts d h sowohl komplexe XML Elemente als auch Text konnen vorkommen lt xs element name kommentar type xs anyType gt Sollen in dem Inhalt Text und Tags in beliebiger Reihenfolge vorkommen konnen muss der Wert fur das Attribut mixed auf true gesetzt werden lt xs element name tagname gt lt xs complexType mixed true gt lt xs sequence gt lt xs element minOccurs 0 maxOccurs unbounded name child type xs integer gt lt Weitere Elemente gt lt xs sequence gt lt xs complexType gt lt xs element gt Leere Elemente Bearbeiten Von leeren XML Elementen spricht man wenn das jeweilige Element aus nur einem einzelnen XML Tag besteht und keine weiteren XML Elemente oder Text umschliesst z B der XHTML Zeilenumbruch lt br gt XML Schema bedient sich an dieser Stelle eines kleinen Tricks Es wird mittels xs complexType ein neuer Typ definiert ohne ein Kindelement anzugeben Da xs complexType nach Vorgabe nur komplexe XML Kindelemente als Inhalt zulasst bleibt das jeweilige Element in diesem Fall leer Ableitung neuer Typen Bearbeiten Neue Datentypen lassen sich zum einen durch die Definition eines neuen Typs erstellen siehe vorheriger Abschnitt oder durch die Ableitung eines neuen Typs aus bereits bestehenden Bei der Ableitung eines neuen Typs handelt es sich nicht um eine Vererbung im Sinne der Objektorientierung da keine Eigenschaften vergleichbar den Methoden oder Attribute objektorientierter Klassen vererbt werden Vielmehr handelt es sich hier um die Wiederverwendung bestehender Typdefinitionen Dementsprechend ist bei der Ableitung neuer Typen auch keine implizite Substituierbarkeit gegeben wie sie in anderen Typsystemen ublich ist explizite Typumwandlungen sind jedoch moglich Die Ableitung eines neuen Typs kann auf zweierlei Arten erfolgen Erweiterung oder Einschrankung Erweiterung eines Typs Bearbeiten Die Erweiterung eines bisherigen Typs engl extension um weitere Eigenschaften d h neue Elemente oder Attribute werden hinzugefugt Im folgenden Beispiel wird der oben definierte Typ pc Typ um ein Element ram erweitert lt xs complexType name myPC Typ gt lt xs complexContent gt lt xs extension base pc Typ gt lt xs sequence gt lt xs element name ram type xs integer gt lt xs sequence gt lt xs extension gt lt xs complexContent gt lt xs complexType gt Der neu definierte XML Typ myPC Typ besteht aus allen Kindelementen des Typs pc Typ sowie dem Element ram Letzteres wird wie in einer xs sequence Definition an die bisherigen Kindelemente angehangt Da keine Substituierbarkeit gegeben ist darf an einer Stelle an der ein Element vom Typ pc Typ erwartet wird nicht ohne weiteres ein Element vom Typ myPC Typ verwendet werden Einschrankung eines Typs Bearbeiten Durch Einschrankung bereits bestehender Typen engl restriction lassen sich ebenfalls neue Definitionen ableiten Zu diesem Zweck mussen alle Elementdefinitionen des Basistyps wiederholt werden verandert um die jeweiligen restriktiveren Einschrankungen Im folgenden Beispiel wird ein neuer Typ myPC2 Typ von pc Typ abgeleitet In diesem Fall darf maximal ein kommentar Element auftreten im Gegensatz zu einer beliebigen Anzahl beim Typ pc Typ lt xs complexType name myPC2 Typ gt lt xs complexContent gt lt xs restriction base pc Typ gt lt xs sequence gt lt xs element name name type xs string gt lt xs element name hersteller type xs string gt lt xs element name prozessor type xs string gt lt xs element name mhz type xs integer minOccurs 0 gt lt xs element name kommentar type xs string minOccurs 0 maxOccurs 1 gt lt xs sequence gt lt xs restriction gt lt xs complexContent gt lt xs complexType gt Zusatzlich zu der Einschrankung komplexer Typen ist es auch moglich neue Typen als Einschrankung einfacher Typen zu definieren Ein Beispiel fur eine solche Definition befindet sich bereits im Abschnitt zu den einfachen Typen Ein neuer Typ monatInt wird als Einschrankung des Typs Integer auf den Wertebereich 1 12 definiert Grundsatzlich stehen die folgenden Primitive zur Verfugung um Einschrankungen auf einfachen Typen zu beschreiben length maxLength minLength Beschrankt die Lange eines Strings oder einer Liste enumeration Beschrankung durch Angabe alternativer Werte pattern Beschrankung durch Angabe eines regularen Ausdrucks minExclusive minInclusive maxExclusive maxInclusive Einschrankung des Wertebereichs totalDigits fractionDigits Einschrankung der Dezimalstellen Gesamtzahl und Nachkommastellen whiteSpace Behandlung von Leerzeichen und TabsDie folgenden Beispiele veranschaulichen die Verwendung dieser Komponenten Korpertemperatur 3 Dezimalstellen 1 Nachkommastelle Minimal und Maximalwert lt xs simpleType name celsiusKorperTemp gt lt xs restriction base xs decimal gt lt xs totalDigits value 3 gt lt xs fractionDigits value 1 gt lt xs minInclusive value 35 0 gt lt xs maxInclusive value 42 5 gt lt xs restriction gt lt xs simpleType gt Deutsche Postleitzahlen optionales D gefolgt von funf Ziffern lt xs simpleType name plz gt lt xs restriction base xs string gt lt xs pattern value D 0 9 5 gt lt xs restriction gt lt xs simpleType gt Grossenangabe lt xs simpleType name size gt lt xs restriction base xs string gt lt xs enumeration value XS gt lt xs enumeration value S gt lt xs enumeration value M gt lt xs enumeration value L gt lt xs enumeration value XL gt lt xs restriction gt lt xs simpleType gt Bei der Definition eines Typs ist es moglich festzulegen ob und auf welche Art von diesem Typ weitere XML Elementtypen abgeleitet werden durfen So kann man zum Beispiel festlegen dass von einem Typ pc Typ weitere Typen nur durch das Setzen weiterer Einschrankungen abgeleitet werden durfen und nicht durch das Hinzufugen neuer Kindelemente Elementdefinition BearbeitenWie im vorangegangenen Abschnitt erlautert erlaubt es XML Schema neue XML Datentypen zu definieren und diese bei der Definition eigener XML Elemente zu verwenden Das folgende Beispiel veranschaulicht die Verwendung des bereits definierten Typs pc Typ innerhalb einer Liste von pc Elementen lt xs element name pc liste gt lt xs complexType gt lt xs sequence gt lt xs element name pc type pc Typ maxOccurs unbounded gt lt xs sequence gt lt xs complexType gt lt xs element gt Ein entsprechendes XML Element konnte wie folgt aussehen lt pc liste gt lt pc gt lt name gt Dimension 3100 lt name gt lt hersteller gt Dell lt hersteller gt lt prozessor gt AMD lt prozessor gt lt mhz gt 3060 lt mhz gt lt kommentar gt Arbeitsplatzrechner lt kommentar gt lt pc gt lt pc gt lt name gt T 42 lt name gt lt hersteller gt IBM lt hersteller gt lt prozessor gt Intel lt prozessor gt lt mhz gt 1600 lt mhz gt lt kommentar gt Laptop lt kommentar gt lt pc gt lt pc liste gt In diesem Beispiel erfolgt die Spezifikation des anonymen Listentyps direkt innerhalb der Elementdefinition wahrend die Spezifikation des pc Typs extern erfolgt Bei dem Entwurf eines komplexen XML Schemas sollte sowohl die Wiederverwendbarkeit und Erweiterbarkeit der einzelnen XML Elementtypen als auch die Lesbarkeit des Schemas selbst berucksichtigt werden Die Verwendung anonymer XML Elementtypen als Teil grosserer Elemente gewahrleistet im Allgemeinen eine bessere Lesbarkeit kleinerer XML Schemata Die Definition und Benennung einzelner kleinerer und wiederverwendbarer XML Elementtypen hingegen ermoglicht eine starkere Modularisierung der XML Schema Struktur Aufgrund der Vielzahl moglicher Anwendungsszenarien haben sich bisher noch keine allgemeingultigen Entwurfsprinzipien fur XML Schemata herausgebildet vergleichbar den Normalformen fur relationale Datenbanken Weiterfuhrende Konzepte und Eigenschaften BearbeitenEindeutige Schlussel Bearbeiten Vergleichbar den Primarschlusseln in relationalen Datenbanken lassen sich mittels XML Schema eindeutige Schlussel definieren XML Schema unterscheidet zwischen der Eindeutigkeit engl unique und der Schlusseleigenschaft Das nachfolgende Beispiel definiert ein neues Element pc list mit einer Liste von pc Kindelementen lt xs element name pc list gt lt xs complexType gt lt xs sequence gt lt xs element name pc type pc Typ maxOccurs unbounded gt lt xs sequence gt lt xs complexType gt lt xs unique name hersteller name gt lt xs selector xpath pc gt lt xs field xpath name gt lt xs field xpath hersteller gt lt xs unique gt lt xs key name idKey gt lt xs selector xpath pc gt lt xs field xpath id gt lt xs key gt lt xs element gt Die beiden Elemente unique und key selektieren mit einem XPath Pfadausdruck im Beispiel pc eine Menge von pc Elementen Fur diese Menge muss die jeweilige Eindeutigkeits bzw Schlusselbedingung erfullt werden Im obigen Beispiel wird festgelegt dass die Kombination der Elemente name und hersteller fur jedes pc Element innerhalb dieser Liste eindeutig sein muss Durch das key Element wird festgelegt dass das Attribut id innerhalb dieser Liste eindeutig sein muss und von ausserhalb referenziert werden kann Das folgende Beispiel zeigt die Referenzierung dieses Schlussels mit dem Attribut refer und dem Schlusselwort references lt xs keyref name idFremdKey refer idKey gt lt idKey von obigem Beispiel gt lt xs selector xpath computerFremd gt lt xs field xpath references gt lt xs keyref gt BeachteMit refer bezieht man sich auf das name Attribut einer Schlusselbedingung nicht auf das Schlusselfeld Die Werte in references mussen also immer unter den Schlusseln zu den computern zu finden sein Hintergrund dieses Konstrukts ist die Sicherstellung der referentiellen Integritat wie man sie von relationalen Datenbanksystemen her kennt Import Include und Redefine Bearbeiten XML Schema erlaubt es fremde Schemata wiederzuverwenden Hierzu stehen sowohl der include als auch der import Tag zur Verfugung sowie die Moglichkeit einer neuen Definition bzw Anpassung fremder Schemata beim Einbinden includeTypdefinitionen innerhalb eines Namensraumes die auf mehrere Dateien verteilt sind lassen sich mittels include zusammenfugen lt schema xmlns http www w3 org 2001 XMLSchema xmlns pcTeile http www example com pcTeile targetNamespace http www example com pcTeile gt lt include schemaLocation http www example com schemata harddisk xsd gt lt include schemaLocation http www example com schemata ram xsd gt lt schema gt Mehrere Schemata konnen inkludiert werden targetNamespace des harddisk xsd muss mit dem des inkludierenden Schemas ubereinstimmen redefineGleiches Beispiel wie gerade Annahme es gabe einen complexType Hersteller im Schema harddisk xsd lt schema xmlns http www w3 org 2001 XMLSchema xmlns pcTeile http www example com pcTeile targetNamespace http www example com pcTeile gt lt redefine schemaLocation http www example com schemata harddisk xsd gt lt redefinition of Hersteller gt lt complexType name Hersteller gt lt complexContent gt lt redefinition of Hersteller mit restriction oder auch extension etc gt lt restriction base pcTeile Hersteller gt lt sequence gt lt element name hersteller type string minOccurs 10 maxOccurs 10 gt lt sequence gt lt restriction gt lt complexContent gt lt complexType gt lt redefine gt lt include schemaLocation http www example com schemata ram xsd gt lt schema gt redefine kann an Stelle von include verwendet werden Der Name des Typs andert sich dabei nicht importDer import Tag erlaubt es Elemente aus anderen Namensraumen zu importieren mit einem Prafix zu versehen und damit Schema Bestandteile aus unterschiedlichen Namensraumen wiederzuverwenden Annahme ist dass es einen definierten Typ superTyp in pcTeile gibt lt schema xmlns http www w3 org 2001 XMLSchema xmlns pcTeile http www example com pcTeile targetNamespace http www example com firma gt lt import namespace http www example com pcTeile gt lt lt xs attribute name xyz type pcTeile superTyp gt gt lt schema gt Verwendung von XML Schemata BearbeitenZur Verwendung eines XML Schemas in einer XML Datei kann das Attribut schemaLocation des Schema Instance Namensraums verwendet werden um die Adresse des Schemas bekannt zu machen Somit ist es einer Anwendung wie beispielsweise einem XML Parser moglich das Schema zu laden sofern es ihm nicht schon bekannt ist Alternativ kann der Anwendung das Schema aber auch uber andere Wege bekannt gemacht werden z B uber Konfigurationsdateien Letztere Moglichkeit ist jedoch nicht standardisiert und somit von Anwendung zu Anwendung verschieden In folgendem Beispiel wird ausgedruckt dass der Standard Namensraum a href http www w3 org 1999 xhtml http www w3 org 1999 xhtml a ist und dann angegeben dass das XML Schema fur diesen Namensraum unter www w3 org 1999 xhtml xsd aufzufinden ist lt html xmlns http www w3 org 1999 xhtml xmlns xsi http www w3 org 2001 XMLSchema instance xsi schemaLocation http www w3 org 1999 xhtml http www w3 org 1999 xhtml xsd gt Die Definition gilt fur das XML Element bei dem die Attribute angegeben sind und alle Kinderelemente Soll Elementen die keinem Namensraum angehoren ein XML Schema zugeordnet werden so geschieht dies wie im folgenden Beispiel gezeigt mittels des Attributes noNamespaceSchemaLocation lt html xmlns xsi http www w3 org 2001 XMLSchema instance xsi noNamespaceSchemaLocation http www w3 org 1999 xhtml xsd gt Beispiel Bearbeiten lt xml version 1 0 encoding UTF 8 gt lt schema xmlns http www w3 org 2001 XMLSchema xmlns bsp http de wikipedia org wiki XML Schema Beispiel targetNamespace http de wikipedia org wiki XML Schema Beispiel elementFormDefault qualified gt lt element name doc gt lt complexType gt lt sequence gt lt element ref bsp head gt lt element name body type string gt lt sequence gt lt complexType gt lt element gt lt element name head gt lt complexType gt lt sequence gt lt element name title type string gt lt sequence gt lt complexType gt lt element gt lt schema gt Dies entspricht abgesehen vom Namensraum folgender DTD lt ELEMENT doc head body gt lt ELEMENT head title gt lt ELEMENT title PCDATA gt lt ELEMENT body PCDATA gt Eine XML Struktur die dem Schema entspricht ist diese lt xml version 1 0 encoding UTF 8 gt lt doc xmlns http de wikipedia org wiki XML Schema Beispiel gt lt head gt lt title gt Dies ist der Titel lt title gt lt head gt lt body gt Dies ist der Text lt body gt lt doc gt Siehe auch BearbeitenListe der XML Namensraume RELAX NG WSDL Schematron Document Structure Description DSD railMLLiteratur BearbeitenAlfons Kemper Andre Eickler Datenbanksysteme Eine Einfuhrung Oldenbourg Wissenschaftsverlag Munchen 2004 ISBN 3 486 27392 2 Helmut Vonhoegen Einstieg in XML Aktuelle Standards XML Schema XSL XLink 5 Auflage Galileo Press 2009 ISBN 978 3 8362 1367 7 Margit Becher XML DTD XML Schema XPath XQuery XSLT XSL FO SAX DOM W3L Verlag Witten 2009 ISBN 978 3 937137 69 8 Marco Skulschus Marcus Wiederstein XML Schema Comelio Medien Berlin 2009 ISBN 978 3 939701 22 4 Eric van der Vlist XML Schema O Reilly Koln 2003 ISBN 978 3 89721 345 6 online Weblinks BearbeitenW3C XML Schema Specification Primer Structures Datatypes und Miscellaneous deutsche Ubersetzungen Einfuhrung Strukturen Datentypen Einfuhrung in XML Schema und ReferenzEinzelnachweise Bearbeiten www w3 org 1999 xhtml xsd Memento vom 10 November 2000 im Internet Archive V DStandards des World Wide Web Consortiums W3C Empfehlungen ActivityPub ARIA Canonical XML CDF CSS DOM Geolocation API HTML HTML5 InkML ITS JSON LD MathML OWL P3P PLS PNG RDF RDF Schema RIF SCXML SISR SKOS SMIL SOAP SRGS SSML SVG SPARQL Timed Text Turtle VoiceXML WSDL XForms XHTML XHTML RDFa XInclude XLink XML XML Base XML Encryption XML Events XML Information Set XML Namespace XML Schema XML Signature XPath XPointer XProc XQuery XSL XSL FO XSLT Elemente nbsp Arbeitsentwurfeund Kandidaten CCXML CURIE SMIL Timesheets sXBL WICD XFrames XBL XHTML MathML SVG XMLHttpRequestAnmerkungen XAdES XFDL XHTML SMIL XUPRichtlinien Web Content Accessibility Guidelines Multimodal Interaction Activity Markup Validation ServiceInitiativen Web Accessibility Initiative Normdaten Sachbegriff GND 4803276 1 lobid OGND AKS Abgerufen von https de wikipedia org w index php title XML Schema amp oldid 236078317