Detaillierte Einführung in die DTD-Dokumenttypdefinition in XML

黄舟
Freigeben: 2017-03-10 19:32:35
Original
2095 Leute haben es durchsucht

In diesem Artikel wird hauptsächlich die DTD-Dokumenttypdefinition in XML vorgestellt. Dabei handelt es sich um das Grundwissen für den Einstieg in das Erlernen von XML. Freunde in Not können sich auf die XML-Dokumenttypdefinition beziehen, die allgemein als DTD bekannt ist a Beschreiben Sie genau, wie die XML-Sprache verwendet wird. DTDs prüfen die Gültigkeit des Vokabulars und der Struktur eines XML-Dokuments anhand der Syntaxregeln der entsprechenden XML-Sprache.

XML-DTD kann innerhalb des Dokuments angegeben oder in einem separaten Dokument gespeichert und separat verknüpft werden.

Syntax

Die grundlegende Syntax von DTD lautet wie folgt:

<!DOCTYPE element DTD identifier   
[   
    declaration1   
    declaration2   
    ........   
]>
Nach dem Login kopieren

In der obigen Syntax:

DTD Beginnt mit dem Trennzeichen -Element wird verwendet, um den Parser anzuweisen, mit der Analyse des Dokuments ab dem angegebenen Stammelement zu beginnen.

DTD-Kennung ist eine Kennung, die zur Definition des Dokumenttyps verwendet wird. Es kann sich um einen Pfad handeln, der auf eine Datei im System verweist, oder um eine URL, die eine Verbindung zu einer Datei im Internet herstellt. Wenn die DTD auf einen externen Pfad zeigt, wird sie als externe Teilmenge bezeichnet. Innerhalb von _[] befindet sich eine optionale Liste von Entitätsdeklarationen, die als innere Teilmenge bezeichnet wird. <br/><br/>Interne DTD<br/>Wenn ein Element in einem XML-Dokument deklariert wird, wird die DTD als interne DTD bezeichnet. Damit diese als interne DTD verwendet werden kann, muss das Standalone-Attribut in der XML-Deklaration auf „yes“ gesetzt werden. Dies bedeutet, dass das beanspruchte Werk unabhängig von externen Quellen ist. <br/>

Syntax

Die interne DTD-Syntax lautet wie folgt:

<!DOCTYPE root-element [element-declarations]>
Nach dem Login kopieren

Hier ist root-element der Name von Das Wurzelelement, Elementdeklarationen repräsentieren die Elemente, die wir deklarieren.

Beispiel

Hier ist ein einfaches Beispiel einer internen DTD:

<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>  
<!DOCTYPE address [   
<!ELEMENT address (name,company,phone)>  
    <!ELEMENT name (#PCDATA)>  
    <!ELEMENT company (#PCDATA)>  
    <!ELEMENT phone (#PCDATA)>  
]>  
<address>  
    <name>Tanmay Patil</name>  
    <company>TutorialsPoint</company>  
    <phone>(011) 123-4567</phone>  
</address>
Nach dem Login kopieren

Werfen wir einen Blick auf die Code oben:

Deklaration starten – Starten Sie die XML-Deklaration mit der folgenden Anweisung:

<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
Nach dem Login kopieren

DTD – Unmittelbar nach dem XML-Header lautet die _Dokumenttypdeklaration_ wie folgt folgt, normalerweise DOCTYPE genannt:

DOCTYPE-Deklaration enthält ein Ausrufezeichen (!) am Anfang des Elementnamens. DOCTYPE teilt dem Parser mit, dass diesem Dokument eine DTD zugeordnet ist.

<br/>DTD-Körper – Auf die DOCTYPE-Deklaration folgt der DTD-Körper, hier deklarieren wir Elemente, Attribute, Entitäten und Symbole:

<!ELEMENT address (name,company,phone)>  
<!ELEMENT name (#PCDATA)>  
<!ELEMENT company (#PCDATA)>  
<!ELEMENT phone_no (#PCDATA)>
Nach dem Login kopieren

Viele Elemente werden hier übergeben< ;Name> Deklaration des Dokumentvokabulars. definiert element_name_ als Typ „#PCDATA“. Hier bedeutet #PCDATA analysierbare Textdaten.

Deklaration beenden – Abschließend wird der Deklarationsteil der DTD mit eckigen und spitzen Klammern (]>) geschlossen. Dies ist eine gültige Abschlussdefinition, unmittelbar gefolgt vom Inhalt des XML-Dokuments.

Regeln

Die Dokumenttypdeklaration muss am Anfang des Dokuments stehen (nur zuerst mit dem XML-Header) und darf an keiner anderen Stelle im Dokument erscheinen .

Ähnlich wie DOCTYPE-Deklarationen müssen Elementdeklarationen mit einem Ausrufezeichen beginnen.

Der Name in der Dokumenttypdeklaration muss mit dem Typ des Stammelements übereinstimmen. <br/><br/>Externe DTD<br/>In einer externen DTD werden Elemente außerhalb des XML-Dokuments deklariert. Der Zugriff erfolgt durch Angabe des Systemattributs, bei dem es sich um eine gültige .dtd-Datei oder eine gültige URL handeln kann. Um anzuzeigen, dass es sich um eine externe DTD handelt, muss das Standalone-Attribut der XML-Deklaration auf „no“ gesetzt werden. Dies bedeutet, dass die Erklärung Informationen aus einer externen Quelle enthält. <br/>

Syntax

Das Folgende ist die Syntax der externen DTD:

Hier ist Dateiname die Datei mit der Erweiterung .dtd.
<!DOCTYPE root-element SYSTEM "file-name">
Nach dem Login kopieren

<br/>Beispiel

Das folgende Beispiel zeigt die Verwendung einer externen DTD:

<?xml version="1.0" encoding="UTF-8" standalone="no" ?>  
<!DOCTYPE address SYSTEM "address.dtd">  
<address>  
    <name>Tanmay Patil</name>  
    <company>TutorialsPoint</company>  
    <phone>(011) 123-4567</phone>  
</address>  
DTD 文件 address.dtd 的内容如下所示:   
  
<!ELEMENT address (name,company,phone)>  
<!ELEMENT name (#PCDATA)>  
<!ELEMENT company (#PCDATA)>  
<!ELEMENT phone (#PCDATA)>
Nach dem Login kopieren

Typ

Wir können auf eine externe DTD verweisen, indem wir eine Systemkennung oder eine öffentliche Kennung verwenden.

System-ID

Mit der System-ID können wir den Speicherort einer externen Datei angeben, die die DTD-Deklaration enthält. Die Syntax lautet wie folgt:

<!DOCTYPE name SYSTEM "address.dtd" [...]>
Nach dem Login kopieren

Wie wir sehen können, enthält sie das Schlüsselwort SYSTEM und eine URI-Referenz, die auf den Speicherort des Dokuments verweist.

Öffentliche Kennung

Die öffentliche Kennung bietet einen Mechanismus zum Auffinden von DTD-Ressourcen. Sie lautet wie folgt:

<!DOCTYPE name PUBLIC "-//Beginning XML//DTD Address Example//EN">
Nach dem Login kopieren

Wie wir sehen können, beginnt es mit dem Schlüsselwort PUBLIC, gefolgt von der speziellen Kennung. Öffentliche Identifikatoren werden verwendet, um Einträge im Verzeichnis zu identifizieren. Öffentliche Bezeichner können jedem Format folgen, ein häufig verwendetes Format sind jedoch formale öffentliche Bezeichner (oder FPIs).

Elemente deklarieren

Elemente in dtd deklarieren (in einer XML muss ein Element, wenn es legal sein soll, in dtd deklariert werden)<br/> Syntax:< ;! ELEMENT Elementname Kategorie> und beide Methoden <br/><br/>Zum Beispiel:

<!ELEMENT br EMPTY>
Nach dem Login kopieren

Dann kann XML wie folgt geschrieben werden:

<br/>
Nach dem Login kopieren

注意点
在dtd中
所有的 XML 文档(以及 HTML 文档)均由以下简单的构建模块构成:
元素
属性
实体
PCDATA
CDATA
下面是一些注意点:
(1)实体是用来定义普通文本的变量。实体引用是对实体的引用。
大多数同学都了解这个 HTML 实体引用:" "。这个“无折行空格”实体在 HTML 中被用于在某个文档中插入一个额外的空格。
当文档被 XML 解析器解析时,实体就会被展开。
Detaillierte Einführung in die DTD-Dokumenttypdefinition in XML

(2) PCDATA
PCDATA 的意思是被解析的字符数据(parsed character data)。
可把字符数据想象为 XML 元素的开始标签与结束标签之间的文本。
PCDATA 是会被解析器解析的文本。这些文本将被解析器解析成实体以及标记。
文本中的标签会被当作标记来处理,而实体会被展开。
不过,被解析的字符数据不应当包含任何 &、< 或者 > 字符;需要使用 &、< 以及 > 实体来分别替换它们。
(3)CDATA
CDATA 的意思是字符数据(character data)。
CDATA 是不会被解析器解析的文本。在这些文本中的标签不会被当作标记来对待,其中的实体也不会被展开。

Das obige ist der detaillierte Inhalt vonDetaillierte Einführung in die DTD-Dokumenttypdefinition in XML. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage