Zum folgendem xml Dokument soll ein dieses vallidierendes DTD Fragment erstellt werden.
Problem: Für <titel> sind keine namespaces deklariert.
Frage: Wie ist es möglich ohne namespaces ein vallidierendes DTD Fragment für folgendes xml Dokument (DocBook) zu erstellen?
<?xml version="1.0" ?>
<!DOCTYPE book SYSTEM "docbookx.dtd">
<?xml-stylesheet type="text/xsl" href="docbook.xsl"?>
<!--Dies ist ein DocBook-Dokument-->
<book lang="de">
<titel>Ein sehr einfaches Buch</titel>
<chapter>
<title>Einführung DocBook</title>
<!--Titel können in Docbook auf unterschiedlichen Hirarchieebenen stehen-->
<para>So ist das also</para>
<figure>
<title>An Example Node Tree</title>
<graphic fileref="figures/node-tree.png"/>
</figure>
</chapter>
</book>
Lösungsversuch:
<?xml version="1.0" encoding="UTF-8"?>
<!ELEMENT book (titel* , chapter)>
<!ATTLIST book
lang (de | en) #REQUIRED>
<!ELEMENT titel (#PCDATA)>
<!ELEMENT chapter (titel*,para?,figure)>
<!ELEMENT para (#PCDATA)>
<!ELEMENT figure (title* , graphic)>
<!ELEMENT graphic (#PCDATA)>
<!ATTLIST graphic fileref CDATA #REQUIRED>
Fehlermeldung:
Das Inhaltsmodell vom Element<chapter> lässt das Element <titel> an dieser Stelle nicht zu.
Problem: Für <titel> sind keine namespaces deklariert.
Frage: Wie ist es möglich ohne namespaces ein vallidierendes DTD Fragment für folgendes xml Dokument (DocBook) zu erstellen?
<?xml version="1.0" ?>
<!DOCTYPE book SYSTEM "docbookx.dtd">
<?xml-stylesheet type="text/xsl" href="docbook.xsl"?>
<!--Dies ist ein DocBook-Dokument-->
<book lang="de">
<titel>Ein sehr einfaches Buch</titel>
<chapter>
<title>Einführung DocBook</title>
<!--Titel können in Docbook auf unterschiedlichen Hirarchieebenen stehen-->
<para>So ist das also</para>
<figure>
<title>An Example Node Tree</title>
<graphic fileref="figures/node-tree.png"/>
</figure>
</chapter>
</book>
Lösungsversuch:
<?xml version="1.0" encoding="UTF-8"?>
<!ELEMENT book (titel* , chapter)>
<!ATTLIST book
lang (de | en) #REQUIRED>
<!ELEMENT titel (#PCDATA)>
<!ELEMENT chapter (titel*,para?,figure)>
<!ELEMENT para (#PCDATA)>
<!ELEMENT figure (title* , graphic)>
<!ELEMENT graphic (#PCDATA)>
<!ATTLIST graphic fileref CDATA #REQUIRED>
Fehlermeldung:
Das Inhaltsmodell vom Element<chapter> lässt das Element <titel> an dieser Stelle nicht zu.