Heinz Kredel

Erster Versuch mit XML

Inhaltsverzeichnis

Vorwort

Hier kommt der erste Text, der einen Überblick gibt.

1. Hauptteil des ersten Textes

Einleitung.

1.1. Abschnitt 1

Text von Abschnitt 1. Text von Abschnitt 1 erster Paragraph. Text von Abschnitt 1 erster Paragraph. Text von Abschnitt 1 erster Paragraph. Text von Abschnitt 1 erster Paragraph. Text von Abschnitt 1 erster Paragraph. Text von Abschnitt 1 erster Paragraph.

1.2. Abschnitt 2

Text von Abschnitt 2 erster Paragraph. Text von Abschnitt 2 erster Paragraph. Text von Abschnitt 2 erster Paragraph. Text von Abschnitt 2 erster Paragraph. Text von Abschnitt 2 erster Paragraph. Text von Abschnitt 2 erster Paragraph. Text von Abschnitt 2. Text von Abschnitt 2. Text von Abschnitt 2.

  • Listen Item

  • Listen Item

  • Bemerkung: Hinweis für den Leser.

    Warnung: Warnung vor Fehlern.

    2. Fortsetzung und Vertiefung

    Warum müssen wir das fortsetzen?

    2.1. Abschnitt 1

    Text von Abschnitt 1.

    2.2. Abschnitt 2

    Text von Abschnitt 2 erster Paragraph. Text von Abschnitt 2 erster Paragraph. Text von Abschnitt 2 erster Paragraph. Text von Abschnitt 2 erster Paragraph. Text von Abschnitt 2 erster Paragraph. Text von Abschnitt 2 erster Paragraph.

    Text von Abschnitt 2 zweiter Paragraph. Text von Abschnitt 2 zweiter Paragraph. Text von Abschnitt 2 zweiter Paragraph. Text von Abschnitt 2 zweiter Paragraph. Text von Abschnitt 2 zweiter Paragraph. Text von Abschnitt 2 zweiter Paragraph.

    Anhang A. Beispiel Anwendung

    Beispiel der Anwendung der DTD.

    <?xml version="1.0" encoding="ISO-8859-1"?>
    <!DOCTYPE book SYSTEM "report.dtd">
    <book>
      <title>My book</title>
      <overview>
        <title>Avant-propos</title>
        <paragraph>
          Avant de lire ce document...
        </paragraph>
      </overview>
      <chapters>
        <chapter>
          <title>Il était une fois</title>
          <paragraph>
    	Il était une fois un petit koala rouge...
          </paragraph>
        </chapter>
      </chapters>
    </book>
          

    Anhang B. Die verwendete DTD.

    <?xml version="1.0" encoding="ISO-8859-1"?>
    
    <!-- hook pour permettre a l'utilisateur de rajouter des attributs -->
    <!ENTITY % generalAttr "">
    
    <!-- l'ensemble des attributs communs à chaque élément -->
    <!ENTITY % book.generalAttr
      "id ID #IMPLIED
       %generalAttr;">
    
    <!-- URI locator -->
    <!ENTITY % locator.att
        "xlink:href CDATA #REQUIRED">
    
    <!-- définition des attributs d'une élément lien -->
    <!ENTITY % book.link
       '%book.generalAttr;
        xlink:type CDATA #FIXED "simple"
        %locator.att;'>
    
    <!-- un lien quelconque -->
    <!ELEMENT link (#PCDATA)>
    <!ATTLIST link 
              %book.link;>
    
    
    <!-- l'auteur(s) du document -->
    <!ELEMENT authors (author)+>
    <!ATTLIST authors 
              %book.generalAttr;>
    
    <!ELEMENT author (#PCDATA)>
    <!ATTLIST author 
              %book.link;>
    
    <!-- le coordonnateur(s) du stage -->
    <!ELEMENT managers (manager)+>
    <!ATTLIST managers 
              %book.generalAttr;>
    
    <!ELEMENT manager (#PCDATA)>
    <!ATTLIST manager 
              %book.link;>
    
    <!-- la société dans lequel le stage a été effectué -->
    <!ELEMENT organisation (#PCDATA)>
    <!ATTLIST organisation 
              %book.link;>
    
    <!-- titre du rappport, du chapitre ou de la section -->
    <!ELEMENT title (#PCDATA)>
    <!ATTLIST title
           %book.generalAttr;>
    
    <!-- contenu général d'une section ou d'un item de liste -->
    <!ENTITY % book.content 
           "(paragraph|list|code|img|newpage)">
    
    <!-- saut de page -->
    <!ELEMENT newpage EMPTY>
    <!ATTLIST newpage
        %book.generalAttr;>
    
    <!-- définition de la liste -->
    
    <!ELEMENT item (%book.content;)*>
    <!ATTLIST item
        %book.generalAttr;>
    
    <!ELEMENT list (item)+>
    <!ATTLIST list
        %book.generalAttr;
        type (ordered|unordered) "unordered">
    
    
    <!-- définiton d'un paragraphe -->
    
    <!ELEMENT em (#PCDATA | link)*>
    <!ATTLIST em
       %book.generalAttr;>
    
    <!ELEMENT paragraph (#PCDATA | em | link)*>
    <!ATTLIST paragraph
        %book.generalAttr;>
    
    <!-- note simple -->
    <!ELEMENT note (#PCDATA | link)*>
    <!ATTLIST note
        %book.generalAttr;>
    
    <!-- les exemples -->
    <!ELEMENT code (#PCDATA)*>
    <!ATTLIST code
        %book.generalAttr;>
    
    <!-- les images -->
    <!ELEMENT img EMPTY>
    <!ATTLIST img
        %book.generalAttr;
        xlink:type CDATA #FIXED "simple"
        %locator.att;
        title CDATA   #REQUIRED
        scale NMTOKEN "1"
    >
    
    <!-- les sections (récursives) -->
    <!ELEMENT section (title, (%book.content; | section)+)>
    <!ATTLIST section
        %book.generalAttr;>
    
    <!-- les appendices -->
    <!ELEMENT appendices (appendix)+>
    <!ATTLIST appendices 
              %book.generalAttr;>
    
    <!ELEMENT appendix (title, (%book.content; | section)+)>
    <!ATTLIST appendix
              %book.generalAttr;>
    
    <!-- les chapitres -->
    <!ELEMENT chapters (chapter)+>
    <!ELEMENT chapter (title, (paragraph|note)*, 
                          (section+, (paragraph|note)*)?)>
    <!ATTLIST chapter
        %book.generalAttr;>
    
    <!ELEMENT overview (title, %book.content;)+>
    <!ATTLIST overview
        %book.generalAttr;>
    
    <!-- la bilbiographie -->
    
    <!ELEMENT bibliography (entry)+>
    <!ATTLIST bibliography
        %book.generalAttr;>
    
    <!ELEMENT entry (authors?, title, year, publisher?, uri?)>
    <!ATTLIST entry
        %book.generalAttr;>
    
    <!ELEMENT year (#PCDATA)*>
    <!ATTLIST year
        %book.generalAttr;>
    
    <!ELEMENT publisher (#PCDATA)*>
    <!ATTLIST publisher
        %book.generalAttr;>
    
    <!ELEMENT uri EMPTY>
    <!ATTLIST uri
        %book.link;>
    
    <!-- structure général du rapport -->
    <!ELEMENT book (title, authors?, managers?, organisation?, 
                    overview?, chapters, (appendices)?, bibliography?)>
    <!ATTLIST book
              xmlns:xlink CDATA #FIXED "http://www.w3.org/1999/xlink/namespace/">
    
          

    Literatur

    1. Erich Gamma, Richard Helm, Ralph Johnson and John Vlissides , Design Patterns, Elements of Reusable Object-Oriented Software, 1995, Addison Wesley
    2. Tim Bray, Jean Paoli and C. M. Sperberg-McQueen , Extensible Markup Language (XML) 1.0, 1998, World Wide Web Consortium
    3. Charles F. Goldfarb , The SGML HandBook, 1990, Clarendon Press - Oxford
    4. Pekka Kilpelainen , SGML and XML Contents Models, 1998, Universityy of Helsinki
    5. David Megginson , Structuring XML documents, 1998, Prentice Hall
    6. Alfred Aho, Ravi Sethi, Jeffrey Ullman , Compilateurs : principes, techniques et outils, 1989, Intereditions