


Detaillierte Erläuterung des Beispielcodes für das XML-Konzept der Schemaüberprüfung
1.Struktur der Schemadatei
Die Schemadatei sieht anderen XML-Dateien sehr ähnlich. Sie besteht aus einer Reihe von Elementen und ihr Stammelement ist „Schema“. . Das „Schema“-Element ist das erste Element, das im XML-Schema erscheint und wird verwendet, um anzuzeigen, dass das XML-Dokument ein Schema-Dokument ist. Dementsprechend befindet sich das End-Tag von „Schema“ im Allgemeinen am Ende des Dokuments. Auf diese Weise ist die Struktur eines Schemas wie folgt:
<Schema name="schema-name" xmlns="namespace" > </Schema>
Schema hat zwei Attribute: name gibt den Namen des Schemas an und xmlns gibt den enthaltenen Namespace an im Schema. Beachten Sie, dass ein XML-Schemadokument mehrere Namespaces enthalten kann. Die folgende Anweisung gibt beispielsweise drei Namespaces an:
<Schema name="mySchema" xmlns="urn:schemas-microsoft-com:xml-data" xmlns:dt="urn:schemas-microsoft-com:datatypes" xmlns:myNS=http://www.xml_step_by_step.edu\ns.xml >
Der erste ist xmlns="urn:schemas-microsoft-com:xml -data", was angibt, dass es sich bei diesem Dokument um ein XML-Schemadokument handelt; das zweite ist xmlns:dt="urn:schemas-microsoft-com:datatypes", das die Datentypen definiert, die in diesem Dokument verwendet werden könnenDas dritte Eine davon ist xmlns:myNS="http://www.xml_step_by_step.eduns.xml", was darauf hinweist, dass in myNS definierte Elemente oder Attribute unten verwendet werden können.
2.Verwenden Sie Schema, um Elemente und ihre Inhalte zu definieren
Bevor wir die verschiedenen Definitionsmethoden in Schema beschreiben, die ETD-Definitionen entsprechen, werfen wir zunächst einen Blick auf die drei beteiligten Schema-Elemente: ElementType , Element, Gruppe.
1.ElementType-Element
Verwenden Sie ElementType im Schemadokument, um die Elemente zu deklarieren, die in der XML-Datei angezeigt werden. Die Syntax von ElementType lautet wie folgt:
<ElementType name="元素名" content="{ empty | textOnly | eltOnly | mixed }" dt:type="元素类型" order="{ one | seq | many }" model="{ open | closed }" >
Unter den verschiedenen Attributen von ElementType ist die Bedeutung von name selbsterklärend, es ist der Name des deklarierten Elements und unverzichtbar. content ist ein wichtiges Attribut von ElementType. Es gibt an, ob das von ElementType deklarierte Element leer ist, Text enthält, Unterelemente enthält oder sowohl Text als auch Unterelemente enthält. dt:typeGibt den Datentyp des Elements an. order gibt die Bestellregeln für die untergeordneten Elemente dieses Elements an. Schließlich gibt model an, ob das Element Elemente und Attribute enthalten kann, die in diesem Schema nicht definiert sind. Es wird hauptsächlich für die Einführung anderer Schemas verwendet, dh für die Einführung anderer „Namespaces“. Das Konzept des „Namespace“ ist Ihnen möglicherweise noch unbekannt. Jetzt müssen Sie nur noch verstehen, dass mehrere verschiedene DTD- oder Schemadefinitionen gleichzeitig in einer XML-Datei verwendet werden können.
Die folgende Tabelle listet die möglichen Werte des Modells auf:
| <🎜>Erklärung<🎜 > <🎜> | ||||||
open | Gibt an, dass das Element andere undefinierte Elemente enthalten kann Elemente und Attribute, die im XML-Schema | ||||||
closed | definiert sind, geben an, dass Elemente dies können enthalten nur Elemente und Attribute, die in diesem XML-Schema definiert sind |
缺省状态下,XML Schema的model取值"open",也就是说,该元素可以包含其它未在XML Schema中定义的元素和属性。但是,这并不意味着任何元素和属性都可在Schema中出现,允许出现的前提是这些"异类"元素和属性必须在单独的XML Schema中加以定义,并且必须在引用的它们的元素中以命名空间形式指定其出处。
2. element元素
ElementType只是起到声明元素的作用,至于元素的内容究竟是什么,则要靠它的子元素element来说明。element的语法表达如下:
<element type="元素类型" [minOccurs="{ 0 | 1 }"] [maxOccurs="{ 1 | * }"] >
element实际上是对该Schema中ElementType声明的引用,而具体引用什么元素类型,就要靠type属性指定了。type属性不可缺少,并且为了保证type指定的是已经声明过的元素,要求它的取值必须同某个ElementType中的name属性严格一致。至于其它两个属性倒是可有可无。minOccurs指定该元素在其父元素中出现的最小次数,缺省值为1,表明该元素至少出现一次;也可以取值为0,表明该元素是可选的,可以不出现。maxOccurs则指定了该元素出现的最大次数,缺省值同样为1,表明该元素至多出现一次;也可取值为“*”,表明该元素在XML实例文档中出现次数不受限制。
3.group元素
DTD中有成组的概念,相应的,Schema中也有“group”元素。它的语法表达类似element元素:
<group order="{one | seq | many}" [minOccurs="{ 0 | 1 }"] [maxOccurs="{ 1 | * }"] >
<AttributeType 和DTD的规定相同,组里的内容可以是元素,也可以是另一个子组。属性order指定该组中的元素或子组的顺序,minOccurs和maxOccurs分别指定了该组在其父元素中出现的最小次数和最大次数。
4.用Schema定义元素属性
Schema中用来定义属性的元素有两个,AttributeType元素是声明属性的,attribute元素则是说明一个元素中究竟包含那些属性。
AttributeType元素
AttributeType元素也是Schema中的重要元素之一,用于定义该Schema文档中出现的属性类型。AttributeType的语法表达如下:
name="属性名" dt:type="属性类型" dt:values="枚举值列表" default="缺省值" required="{yes | no}" >
name
name不言而喻,自然是所声明的属性类型的名称。注意,该属性是必须的。dt:type
dt:type指定所声明属性的数据类型,它除了支持DTD中包含的全部十大数据类型外,还支持一些扩展属性。Schema中的十个基本属性与DTD中属性的对应关系请见下表:
Schema中基本类型 | DTD中数据类型 |
---|---|
string | #PCDATA |
enumeration | ENUMERATED |
id | ID |
idref | IDREF |
idrefs | IDREFS |
nmtoken | NMTOKEN |
nmtokens | NMTOKENS |
entity | ENTITY |
entities | EMTITIES |
notation | NOTATION |
3.dt:value
dt:value ist nur gültig, wenn dt:type den Wert „enumeration“ annimmt. Zu diesem Zeitpunkt muss dt:value alle möglichen Werte auflisten.
4.default
default gibt den Standardwert dieses Attributtyps an. Der Standardwert muss gültig sein. Wenn dt:type beispielsweise den Wert „enumeration“ annimmt, muss der Standardwert aus den in dt:value aufgeführten Werten stammen.
5.required
required gibt an, ob dieses Attribut für das Element erforderlich ist, das darauf verweist. Der Wert „Ja“ gibt an, dass dies erforderlich ist, und der Wert „Nein“ gibt an, dass dies nicht erforderlich ist.
6. Attributelement
Die Beziehung zwischen AttributeType und Attribut ist dieselbe wie die zwischen ElementType und Element. AttributeType dient nur zur Deklaration von Attributen, es ist jedoch nicht erforderlich, sie wirklich anzugeben Welche Attribute ein Element hat, muss sich auf das Attributelement verlassen.
Das obige ist der detaillierte Inhalt vonDetaillierte Erläuterung des Beispielcodes für das XML-Konzept der Schemaüberprüfung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

Können XML-Dateien mit PPT geöffnet werden? XML, Extensible Markup Language (Extensible Markup Language), ist eine universelle Auszeichnungssprache, die häufig im Datenaustausch und in der Datenspeicherung verwendet wird. Im Vergleich zu HTML ist XML flexibler und kann eigene Tags und Datenstrukturen definieren, wodurch die Speicherung und der Austausch von Daten komfortabler und einheitlicher werden. PPT oder PowerPoint ist eine von Microsoft entwickelte Software zum Erstellen von Präsentationen. Es bietet eine umfassende Möglichkeit

Verwenden von Python zum Zusammenführen und Deduplizieren von XML-Daten XML (eXtensibleMarkupLanguage) ist eine Auszeichnungssprache, die zum Speichern und Übertragen von Daten verwendet wird. Bei der Verarbeitung von XML-Daten müssen wir manchmal mehrere XML-Dateien zu einer zusammenführen oder doppelte Daten entfernen. In diesem Artikel wird erläutert, wie Sie mit Python die Zusammenführung und Deduplizierung von XML-Daten implementieren und entsprechende Codebeispiele angeben. 1. XML-Daten zusammenführen Wenn wir mehrere XML-Dateien haben, müssen wir sie zusammenführen

Konvertieren Sie XML-Daten in Python in das CSV-Format. XML (ExtensibleMarkupLanguage) ist eine erweiterbare Auszeichnungssprache, die häufig zur Datenspeicherung und -übertragung verwendet wird. CSV (CommaSeparatedValues) ist ein durch Kommas getrenntes Textdateiformat, das häufig für den Datenimport und -export verwendet wird. Bei der Datenverarbeitung ist es manchmal erforderlich, XML-Daten zur einfachen Analyse und Verarbeitung in das CSV-Format zu konvertieren. Python ist mächtig

Implementieren des Filterns und Sortierens von XML-Daten mit Python Einführung: XML ist ein häufig verwendetes Datenaustauschformat, das Daten in Form von Tags und Attributen speichert. Bei der Verarbeitung von XML-Daten müssen wir die Daten häufig filtern und sortieren. Python bietet viele nützliche Tools und Bibliotheken zum Verarbeiten von XML-Daten. In diesem Artikel wird erläutert, wie Sie mit Python XML-Daten filtern und sortieren. Lesen der XML-Datei Bevor wir beginnen, müssen wir die XML-Datei lesen. Python verfügt über viele XML-Verarbeitungsbibliotheken.

Importieren von XML-Daten in die Datenbank mit PHP Einführung: Während der Entwicklung müssen wir häufig externe Daten zur weiteren Verarbeitung und Analyse in die Datenbank importieren. Als häufig verwendetes Datenaustauschformat wird XML häufig zum Speichern und Übertragen strukturierter Daten verwendet. In diesem Artikel wird erläutert, wie Sie mit PHP XML-Daten in eine Datenbank importieren. Schritt 1: XML-Datei analysieren Zuerst müssen wir die XML-Datei analysieren und die erforderlichen Daten extrahieren. PHP bietet mehrere Möglichkeiten zum Parsen von XML. Die am häufigsten verwendete davon ist die Verwendung von Simple

Python implementiert die Konvertierung zwischen XML und JSON. Einführung: Im täglichen Entwicklungsprozess müssen wir häufig Daten zwischen verschiedenen Formaten konvertieren. XML und JSON sind gängige Datenaustauschformate. In Python können wir verschiedene Bibliotheken zum Konvertieren zwischen XML und JSON verwenden. In diesem Artikel werden mehrere häufig verwendete Methoden mit Codebeispielen vorgestellt. 1. Um XML in Python in JSON zu konvertieren, können wir das Modul xml.etree.ElementTree verwenden

Behandeln von Fehlern und Ausnahmen in XML mit Python XML ist ein häufig verwendetes Datenformat zum Speichern und Darstellen strukturierter Daten. Wenn wir Python zum Verarbeiten von XML verwenden, können manchmal Fehler und Ausnahmen auftreten. In diesem Artikel werde ich die Verwendung von Python zur Behandlung von Fehlern und Ausnahmen in XML vorstellen und einige Beispielcodes als Referenz bereitstellen. Verwenden Sie Try-Exception-Anweisungen, um XML-Parsing-Fehler abzufangen. Wenn wir Python zum Parsen von XML verwenden, können manchmal Fehler auftreten

Python analysiert Sonderzeichen und Escape-Sequenzen in XML. XML (eXtensibleMarkupLanguage) ist ein häufig verwendetes Datenaustauschformat, das zum Übertragen und Speichern von Daten zwischen verschiedenen Systemen verwendet wird. Bei der Verarbeitung von XML-Dateien kommt es häufig vor, dass Sonderzeichen und Escape-Sequenzen enthalten sind, die zu Analysefehlern oder einer Fehlinterpretation der Daten führen können. Daher müssen wir beim Parsen von XML-Dateien mit Python verstehen, wie mit diesen Sonderzeichen und Escape-Sequenzen umgegangen wird. 1. Sonderzeichen und
