Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Sommersemester 2012 -- Blockseminar Daten- und Metadatenstandards | 04: Dokumenttypdefinitionen (DTD)

Jan Wieners
September 20, 2012

Sommersemester 2012 -- Blockseminar Daten- und Metadatenstandards | 04: Dokumenttypdefinitionen (DTD)

Jan Wieners

September 20, 2012
Tweet

More Decks by Jan Wieners

Other Decks in Education

Transcript

  1. Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA <[email protected]>

    Daten- und Metadatenstandards Sommersemester 2012 [Blockseminar] 26. September 2012 – Dokumenttypdefinitionen (DTD)
  2. Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA <[email protected]>

     Bislang: ◦ Text  Inhalt  Struktur  Äußeres Erscheinungsbild: Layout ◦ Extensible Markup Language: XML  Aufbau XML  XML & Wohlgeformtheit  Heute: ◦ Gültigkeit von XML-Dokumenten: Dokumenttypdefinitionen (DTD) Themenüberblick
  3. Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA <[email protected]>

    Transkription  XML Bilden Sie die Transkription bzw. das Digitalisat in XML ab. Überlegen Sie hierzu, welche Kategorien bzw. welche Tags nötig sind, um die Information des Faksimiles - z.B. Stempel, Briefkopf, Unterschrift, etc. - unter Verwendung von XML zu repräsentieren und zu speichern.
  4. Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA <[email protected]>

    XML-Dokumente müssen wohlgeformt sein  d.h. sie müssen den Regeln der XML-Syntax genügen.  Wohlgeformtheit (XML) … wie war das noch ‘mal? ◦ 1. Tags müssen immer geschlossen werden. ◦ 2. „Zwiebelschema“ beachten: Tags in richtiger Reihenfolge schließen / öffnen ◦ 3. Es existiert nur ein Wurzelelement ◦ 4. Attributwerte in Anführungszeichen ◦ 5. Ein Attribut (im öffnenden Tag) darf nur einmal aufgeführt sein
  5. Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA <[email protected]>

    Gültigkeit  Ein XML-Dokument ist „gültig“ („valid“), wenn es den Regeln eines Schemas entspricht. Strukturen und Inhalte eines gültigen XML- Dokuments können leichter kontrolliert, konsistent gehalten und verarbeitet werden. Ein Schema beschreibt ein Modell explizit.  Anforderungen an die Struktur eines XML-Dokumentes definieren: Strukturdefinition per Schemata / Gültigkeit von XML-Dokumenten ◦ DTD (Dokumenttypdefinitionen) ◦ XML Schema ◦ RELAX NG ◦ Schematron Wohlgeformt vs. gültig
  6. Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA <[email protected]>

    DTD einbinden XML Datei artikel.xml: <?xml version="1.0" encoding="ISO-8859-1"?> <!DOCTYPE artikel SYSTEM "artikel.dtd"> <artikel> <titel>Der Titel</titel> <inhalt>Der Inhalt</inhalt> </artikel>
  7. Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA <[email protected]>

    DTD erstellen In oXygen: Datei > Neue Datei… Document Type Definition Voilà!
  8. Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA <[email protected]>

    Elemente bzw. Tags definieren  Einzelnes Element: <!ELEMENT titel (#PCDATA)>  Verschachtelung von Elementen repräsentieren: <!ELEMENT bild (titel, url, abstract, person+, bauwerk+)> Bitte beachten / merken: + (Pluszeichen): Das Tag muss mindestens einmal vorkommen, darf aber auch öfter im XML-Dokument angegeben werden. ? (Fragezeichen): Das Element darf einmal vorkommen, muss jedoch nicht im XML-Dokument angegeben sein. * (Sternchen): Das Tag darf mehrmals im XML-Dokument vorkommen, darf jedoch fehlen. #PCDATA (PCDATA = "Parseable Character Data"): Beliebige Daten / Zeichen als Inhalt des XML-Elementes DTD: Elemente, Syntax & Co.
  9. Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA <[email protected]>

    Attribute definieren  <!ATTLIST tagname attributname CDATA #IMPLIED> Beachten / Merken: #REQUIRED  Jedes Element mit dem Namen „tagname“ muss das Attribut „attributname“ enthalten. #IMPLIED  Das Attribut kann angegeben werden, muss jedoch nicht angegeben werden. DTD: Elemente, Syntax & Co.
  10. Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA <[email protected]>

    Inhalt artikel.dtd: <!ELEMENT artikel (titel, inhalt )> <!ELEMENT titel (#PCDATA)> <!ELEMENT inhalt (#PCDATA)> DTD mit Inhalt füllen
  11. Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA <[email protected]>

    Wohlgeformtheit eines XML-Dokumentes prüfen *neu* Ein XML-Dokument validieren *neu* oXygen – in XML-Datei
  12. Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA <[email protected]>

    Anforderung an Gültigkeit: Jeder Posten MUSS über ein Attribut menge verfügen. Ansonsten ist das XML Dokument nicht gültig: <rezept> <zutaten> <posten menge="500">gebratene Bohnen</posten> <posten>Burrito Sauce</posten> <posten menge="150 gr.">gewuerfelter Jalapeno-Kaese</posten> <posten menge="0.5 Tasse">saure Sahne</posten> </zutaten> <zubereitung>Bohnen und Burrito Sauce in Pfanne mittlerer Groesse anheizen, bis die Mischung kocht, gewuerfelten Kaese hinzufuegen, umruehren, bis der Kaese schmilzt. Vom Herd nehmen und saure Sahne einruehren.</zubereitung> <serviervorschlag>Als Tunke zu Tortilla-Chips aus Mais servieren.</serviervorschlag> </rezept> DTD
  13. Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA <[email protected]>

    <?xml version="1.0"?> <!DOCTYPE rezept [ <!ELEMENT rezept (zutaten, zubereitung, serviervorschlag) > <!ELEMENT zutaten (posten+) > <!ELEMENT zubereitung (#PCDATA) > <!ELEMENT serviervorschlag (#PCDATA) > <!ELEMENT posten (#PCDATA) > <!ATTLIST posten menge CDATA #REQUIRED > ]> <rezept> <zutaten> <posten menge="500">gebratene Bohnen</posten> <posten menge="1 Tasse">Burrito Sauce</posten> <posten menge="150 gr.">gewuerfelter Jalapeno-Kaese</posten> <posten menge="0.5 Tasse">saure Sahne</posten> </zutaten> <zubereitung>Bohnen und Burrito Sauce in Pfanne mittlerer Groesse anheizen, bis die Mischung kocht, gewuerfelten Kaese hinzufuegen, umruehren, bis der Kaese schmilzt. Vom Herd nehmen und saure Sahne einruehren.</zubereitung> <serviervorschlag>Als Tunke zu Tortilla-Chips aus Mais servieren.</serviervorschlag> </rezept> DTD
  14. Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA <[email protected]>

     Erstellen Sie eine Dokumenttypdefinition für das im Folgenden angegebene XML-Markup: <nachrichtensammlung> <nachricht> <sender>Jan Wieners</sender> <empfaenger> Kursteilnehmerinnen und –teilnehmer „Daten- und Metadatenstandards“ Wintersemester 2011/12 </empfaenger> <inhalt>Hallo!</inhalt> </nachricht> </nachrichtensammlung> Übung I: XML  DTD
  15. Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA <[email protected]>

     Schreiben Sie ein XML-Dokument (ohne XML-Deklaration und DOCTYPE-Angabe) für die im Folgenden wiedergegebene Dokumenttypdefinition (DTD): <!ELEMENT catalog (cd+)> <!ELEMENT cd (title, artist+, label, price, year)> <!ELEMENT title (#PCDATA)> <!ELEMENT artist (#PCDATA)> <!ELEMENT label (#PCDATA)> <!ELEMENT price (#PCDATA)> <!ELEMENT year (#PCDATA)> <!ATTLIST cd previewimage CDATA #IMPLIED> Übung II: DTD  XML