Kindelemente#
Lernziel#
Ein weiteres Element wird definiert.
Handlungsanweisungen#
- Aufgaben:
Erweitern Sie das Schema aus der vorherigen Station
Fügen Sie ein zweites Element adresse ein.
Die DTD als Vorlage#
1<?xml version="1.0" encoding="UTF-8"?>
2<!ELEMENT adressdb (adresse+)>
3<!ENTITY % sichtbarkeit "einsicht (privat|public|proteced) #REQUIRED">
4<!ELEMENT adresse (anrede, name, strasse, postanschrift, email?, bild)>
5<!ELEMENT anrede (#PCDATA)>
6<!ELEMENT name (nachname, vorname)>
7<!ELEMENT postanschrift (plz, wohnort)>
8<!ELEMENT nachname (#PCDATA)>
9<!ELEMENT vorname (#PCDATA)>
10<!ELEMENT plz (#PCDATA)>
11<!ELEMENT wohnort (#PCDATA)>
12<!ELEMENT strasse (#PCDATA) >
13<!ELEMENT email (#PCDATA)>
14<!ATTLIST strasse %sichtbarkeit;>
15<!ATTLIST postanschrift land
16 (Deutschland | Schweiz | Oesterreich) #REQUIRED %sichtbarkeit; >
17<!ATTLIST adresse nr CDATA #REQUIRED>
18<!ELEMENT bild EMPTY>
19<!ATTLIST bild bezeichnung CDATA #REQUIRED>
20<!ENTITY email_default "keine E-Mail angegeben" %sichtbarkeit; >
Kind-Element in der DTD#
<!ELEMENT adressdb (adresse+)>
Kind-Element in einem Schema#
Siehe Zeile 4 …
1<?xml version="1.0" encoding="UTF-8"?>
2<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
3 <xs:element name="adressdb"></xs:element>
4 <xs:element name="adresse"/>
5</xs:schema>
Das fertige XML-Dokument#
Wenn Sie nun mit der XSD-Datei ein neues XML-Dokument anlegen, können Sie den folgenden Inhalt erzeugen (achten Sie auf den Namen der XSD-Datei art03.xsd):
<?xml version="1.0" encoding="UTF-8"?>
<adressdb xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="art03.xsd">
<adresse />
</adressdb>