DTD Entitäten



Advertisements

Entitäten werden verwendet, um Verknüpfungen zu Sonderzeichen in den XML-Dokumenten zu definieren. Entitäten können sein in erster Linie von vier Arten:

  • eingebaut Entitäten

  • Charakter Entitäten

  • Allgemeine Entitäten

  • Parameter Entitäten

Entität Deklaration Syntax

In der Regel können Entitäten deklariert werdenintern oder äußerlich. Lasst uns verstehen, jeder von ihnen und ihre Syntax wie folgt:

Interne Entität

Wenn ein Unternehmen innerhalb einer DTD deklariert es als interne Entität aufgerufen.

Syntax

Folgende ist die Syntax für die interne Entity-Deklaration:

<!ENTITY entity_name "entity_value">

In der obigen Syntax:

  • Entität_name ist der Name des Entität, gefolgt von seinem Wert innerhalb der doppelte Anführungszeichen oder Apostroph.

  • Entität_value hält den Wert für das Entität Namen.

  • Das Entität Wert von die intern Entität ist dereferenzierte durch Zugabe Präfix & um das Entität Name i.e. &Entität_name.

Beispiel

Folgende ist ein einfaches Beispiel für die interne Entity-Deklaration:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<!DOCTYPE address [
<!ELEMENT address (#PCDATA)>
<!ENTITY name "Tanmay patil">
<!ENTITY company "Howcodex">
<!ENTITY phone_no "(011) 123-4567">
]>
<address>
   &name;
   &company;
   &phone_no;
</address>

Im obigen Beispiel sind die jeweiligen Entity-Namen name, Unternehmen und phone_no sind durch ihre Werte im XML-Dokument ersetzt. Die Entität Werte werden dereferenziert, indem Hinzufügen von Präfix & um das Entität Name.

Speichern Sie diese Datei als sample.xml und öffnen Sie sie in einem beliebigen Browser, werden Sie feststellen, dass das Entität Werte für name, Unternehmen, phone_no werden jeweils ersetzt.

Externe Entität

Wenn ein Entität ist deklariert außerhalb einer DTD es als externe Entität aufgerufen. Sie können auf ein externes Entity entweder mit System Identifikatoren oder öffentlichen Bezeichner beziehen.

Syntax

Folgende ist die Syntax für External Entity-Deklaration

<!ENTITY name SYSTEM "URI/URL">

In der obigen Syntax:

  • name ist der Name von Entität .

  • SYSTEM ist das Stichwort.

  • URI/URL st die Adresse der externen Quelle in den Doppel-oder Einzel Anführungszeichen eingeschlossen.

Typen

Sie können an eine externe DTD entweder durch Verwendung finden:

  • System Identifiers - Ein System Identifier ermöglicht Sie den angeben der Lage von einem externen Datei Enthalten DTD-Deklarationen. Syntax ist wie folgt:

    <!DOCTYPE name SYSTEM "address.dtd" [...]>
    

    Wie Sie sehen, es enthält Schlüsselwort SYSTEM und eine URI-Referenz, weisenden auf dem Dokument 's Lage.

  • Public Identifiers -

    Öffentlichen Bezeichner liefern einen Mechanismus zu lokalisieren DTD Ressourcen Und sind wie unten geschrieben:
    <!DOCTYPE name PUBLIC "-//Beginning XML//DTD Address Example//EN">
    

    Wie Sie sehen können, beginnt sie mit dem Schlüsselwort PUBLIC, gefolgt von einem spezialisierten Kennungen. Öffentlichen Kennungen verwendet werden, um einen Eintrag in einem Katalog zu identifizieren. Öffentlichen Bezeichner können jedes Format zu folgen; jedoch ist eine häufig verwendete Format namens Formal öffentlichen Bezeichner oder FPI.

Beispiel

Lassen Sie uns die Externe Entität mit dem folgenden Beispiel zu verstehen:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<!DOCTYPE address SYSTEM "address.dtd">

<address>
   <name>Tanmay Patil</name>
   <company>Howcodex</company>
   <phone>(011) 123-4567</phone>
</address>

Unten ist der Inhalt der DTD-Datei address.dtd:

<!ELEMENT address (name, company, phone)>
<!ELEMENT name (#PCDATA)>
<!ELEMENT company (#PCDATA)>
<!ELEMENT phone (#PCDATA)>

eingebaut Entitäten

Alle XML-Parser müssen integrierte Unterstützung Entitäten. In der Regel können Sie diese Entity-Referenzen überall. Sie können auch normaler Text im XML-Dokument zu verwenden, wie in Elementinhalte und Attributwerte.

Es gibt fünf eingebauten Einheiten, die in wohlgeformte XML-ihre Rolle spielen, sie sind:

  • Et-Zeichen: &amp;

  • Single Zitat: &apos;

  • Größer als: &gt;

  • Weniger als: &lt;

  • Doppel Zitat: &quot;

Beispiel

folgende Beispiel zeigt die eingebaute Entity-Deklaration:

<?xml version="1.0"?>
<note>
   <description>I'm a technical writer & programmer</description>
<note>

Wie Sie hier sehen können,&amp; Charakter wird ersetzt durch & wenn der Prozessor trifft dies.

Charakter Entitäten

Charakter Entitäten werden verwendet, um einige der Einrichtungen, die symbolische Darstellung von Informationen, dh Zeichen, die schwierig oder unmöglich, Art können durch Charakter Entitäten ersetzt werden sollen, sind zu nennen.

Beispiel

folgende Beispiel zeigt die Zeichen-Entity-Deklaration:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<!DOCTYPE author[
<!ELEMENT author (#PCDATA)>
<!ENTITY writer "Tanmay patil">
<!ENTITY copyright "&#169;">
]>
<author>&writer;&copyright;</author>

Sie finden hier bemerken wir, &#169; als Wert für Urheber Charakter. Speichern Sie diese Datei als sample.xml und öffnen Sie sie in Ihrem Browser und Sie werden sehen, dass das Urheberrecht wird durch das Zeichen ersetzt. ©.

Allgemeine Entitäten

Allgemeine Entitäten müssen deklariert innerhalb in der DTD werden, bevor sie in einem XML-Dokument verwendet werden. Statt nur ein einzelnes Zeichen darstellt, kann allgemeine Entities Zeichen, Absätze und sogar ganze Dokumente stellen.

Syntax

Um eine allgemeine Entitäten deklarieren, verwenden Sie eine Erklärung von dieser allgemeinen Form in Ihrer DTD:

<!ENTITY ename "text">

Beispiel

folgende ist Beispiel zeigt die allgemeine Entity-Deklaration:

<?xml version="1.0"?>
<!DOCTYPE note [
<!ENTITY source-text "howcodex">
]>

<note>
&source-text;
</note>

Wenn eine XML-Parser auf einen Verweis auf Quelle-Text Entitäten, wird es den neuen Text für die Anwendung bei Versorgungs der Punkt der Referenz.

Parameter Entitäten

Der Zweck eines Parameter-Entity ist es, Ihnen zu ermöglichen, wiederverwendbare Teile der Ersatztext erstellen.

Syntax

folgende ist die Syntax für Parameter-Entity-Deklaration:

<!ENTITY % ename "entity_value">
  • entity_value ist jedes Zeichen, das nicht ein '&', '%' or ' " '.

Beispiel

folgende Beispiel zeigt die Parameter-Entity-Deklaration. Angenommen, Sie Element-Deklarationen wie unten haben:

<!ELEMENT residence (name, street, pincode, city, phone)>
<!ELEMENT apartment (name, street, pincode, city, phone)>
<!ELEMENT office (name, street, pincode, city, phone)>
<!ELEMENT shop (name, street, pincode, city, phone)>

Nun nehmen Sie zusätzliche eleement hinzufügen möchten Land , und dann müssen Sie es auf alle vier Erklärungen hinzuzufügen. Daher können wir für einen Parameter-Entity-Referenz zu gehen. Nun mit Parameter-Entity-Referenz das obige Beispiel wird sein:

<!ENTITY % area "name, street, pincode, city">
<!ENTITY % contact "phone">

Parameter-Entities werden in der gleichen Weise wie eine allgemeine Entity-Referenz nur mit einem Prozentzeichen statt einem kaufmännischen dereferenziert,:

<!ELEMENT residence (%area;, %contact;)>
<!ELEMENT apartment (%area;, %contact;)>
<!ELEMENT office (%area;, %contact;)>
<!ELEMENT shop (%area;, %contact;)>

Wenn der Parser liest diese Erklärungen, ersetzt es der Entität Ersatztext für das Entity-Referenz.

Advertisements