XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML...

104
XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH Köln – Fakultät für Informations- und Kommunikationswissenschaft

Transcript of XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML...

Page 1: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML

Einführungskurs

Referentin: Dipl.-Dok. Rusalka Offer

FH Köln – Fakultät für Informations- und Kommunikationswissenschaft

Page 2: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

2

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

Folie 103 - 104

Folie 31 -33

Ziele von XMLFolie 9

Allgemeines zu XMLFolie 6-8

Eigenschaften von XML

Folie 34 -56

Element-Typ-Deklarationen; InhaltsmodelleFolie 57 –

77Attribut-Typ-Deklartationen

Folie 78 - 93

Entity-Deklarationen

Folie 10-12 Folie 13 -15 XML und

HTMLFolie 16-19 Parser, Auszeichnungsarten, Beispiel

Folie 20 -27 PrologFolie 28 -30

Folie 95 -102Notation-Deklarationen, Marked Sections etc

Editoren

Allgemeines zu DTDs

Deklarationsarten und Namensregeln

Page 3: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

3

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

•XML – Why learn XML ?

Beiträge aus der XML4lib –Liste:

““Maintain a single list of subscription databases (complete with administrative info) without using a database to do it. I can format this one list anyway I want (by subject, name, staff-only views, etc.) using XSLT.“

Ran a pilot-project for storing digital publications and searching associated metadata using only XML and XSLT.

OCLC Connexion offers a built-in crosswalk to convert MARC to XML(RDF-Dublin Core). We plan to use this in upcoming digitization projects to provide metadata to non-MARC systems. Librarians increasingly need to understandthe relationships of standards like RDF, METS, DC, TEI, etc. and what to do with them.

Page 4: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

4

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

•XML – Why learn XML ?

Beiträge aus der XML4lib –Liste:

“Serials Solutions offers the option to receive reports in a single XML file. We could eventually use this file as a single source for viewing and searching the report.“

“Some OpenURL resolver systems require some XSLT know-how to format results lists. “

“Most importantly, XSLT is fun! “

In the wider University front, XML is increasingly being used as apublishing mechanism for Course Specifications, the University Handbook and so on. We feel there are increasing possibilities for integrating existing University data into our Library services using XML as the platform.

Page 5: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

5

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

•XML – Why learn XML ?

Beiträge aus der XML4lib –Liste:

“We recently used our XML skills to cosmetically alter the presentation of web pages within a vendor product, Fretwell-Downing's VDX product which is being used for the LIDDAS project in Australia (for inter-lending and document supply). The web pages for this product are all XSL files. We've modified the look and feel to compliment other end-user interfaces that we offer in our existing suite of products and couldn't have done that without our XML skills.“

“... frankly I look at XML/XSLT as a hammer -- once you have it, and know how to use it, you find all kinds of uses for it that would not necessarily have occurred to you without that tool in your hand. “

Page 6: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

6

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

XML und sein Umfeld (1)

XML wurde von der XML Working Group entwickelt (früher SGML Editorial Review Board). Aktuelle Spezifikationen rund um XML sind: - XML 1.0 (Feb.98) - Namespaces (Feb. 99) [Namensräume] -Xlink (Juni 2001) [XML - Linking - Language] -Xpointer (Endphase März 2002) [Adressierung von Verweizielen] -XML Base (Juni 2001) [Übertragung der Funktionalität des HTML- Base-Tags in XML] -XQUERY: (Dez. 2001) [Query Language for XML]

Page 7: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

7

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

XML und sein Umfeld (2)

- XML Schema - Part 1 Structures (Mai 2001) - XML Schema - Part 2 Datatypes (Mai 2001) [Alternative zu DTDs] - DOM Level 3 (gerade in der letzten Phase) [Document Object Model, Objekt-Modell, dass den Zugriff auf XML und/oder HTML -Dokumente beschreibt -XSL : XSLT2.0 und Xpath 2.0 (Feb. 2001)

[Transformation und Ausgabe von XML- Dokumenten] -XML Protocol (Entwurf Dez. 2001) [XMLP, Protokoll für XML-Anwendungen]

Page 8: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

8

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

Allgemeines:

System- und Anwendungsunabhängiges Datenformat

Sinnvoll z. B für den Datenaustausch innerhalb größerer Einrichtungen über das Web (Anwendung im Bereich Datenbanken, Autorensysteme, Dokumentarchive, Informationssysteme...)

Für Web-Designer, die nur an der Darstellung auf dem Bildschirm arbeiten nur mittelmäßig interessant

Page 9: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

9

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

Ziele:

XML soll eine universelle Sprache für: -Datenaustausch,-Retrieval-Datenverwaltung

XML soll nutzbar für / über das Internet seinXML soll viele Applikationen unterstützenXML soll kompatibel mit SGML sein. XML-Dokumente sollten einfach zu erstellen sein Ursprünglich HTML - Alternative

Page 10: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

10

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

Eigenschaften von XML

Der Anwender kann eigene Tags und Attribute definieren Diese Tags haben nichts mit der Darstellung am Bildschirm zu tun, sondern sind semantische Tags Trennung von Layout und Inhalt Wiedergabe von definierten Strukturen

Beispiel<autor>Joachim Ringelnatz</autor>

Page 11: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

11

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

Eigenschaften von XML

XML ist eine Metasprache, mit der Dokumenttypen definiert werden könnenTags und Attribute werden vorher in einer Document Type Definition (DTD) oder einem Schema festgelegt Auch ohne eine DTD / ein Schema kann ein XML- Dokument gelesen werden, wenn es spezielle Kriterien erfüllt

Page 12: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

12

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

Eigenschaften von XML

XML ist eine echte Untermenge von SGML - gültige XML-Dokumente sind gültige SGML

Dokumente

XML ist einfacher anzuwenden und zu implementieren als SGML (Vergleich SGML-Spezifikation 500 S. XML- Spezifikation 26 S.)

Page 13: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

13

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language XML und HTML (1)

XML hat im Gegensatz zu HTML keine fest definierte Menge von Tags und Attributen

HTML-Dokumente können auch gültige XML- Dokumente sein, wenn sie nachfolgende 5 Kriterien erfüllen (Wohlgeformheitskriterien):

XML-Elemente haben immer ein Start-Tag und ein Ende-Tag: Start-Tag und Ende-Tag schließen ein Element ein

Page 14: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

14

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

XML und HTML (2)

Alle Attributwerte stehen in Anführungszeichen

Es gibt keine leeren Tags, auch leere Elemente brauchen ein Ende-Tag: entweder <br></br> oder <br />

Die Elemente müssen sauber verschachtelt werden:richtig: <b><i>Richtige Verschachtelung</i></b>falsch: <b><i>Falsche Verschachtelung</b></i>

Es gibt eine strikte hierarchische Struktur, mit genau einem Wurzelelement

Page 15: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

15

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

XML und HTML (3)

XML-Dokumente müssen wohlgeformt sein (well-formed)

XML unterscheidet zwischen Groß- und Kleinschreibung (case sensitive) <h1> ist nicht dasselbe wie <H1>

Leerzeichen (white spaces) sind relevant

Künftiges HTML wird XML-Module als Grundlage haben

Page 16: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

16

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

Parser

XML-Parser sind Programme, die XML-Dokumente Stück für Stück lesen und überprüfen

Ein Parser kann feststellen, ob ein Dokument den Kriterien der Gültigkeit und / oder der Wohlgeformtheit entspricht

Ein Parser kann ein auf verschiedene Dateien verteiltes Dokument zusammensetzen

Page 17: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

17

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

Parser

Ein Parser erstellt einen Baum, in dem die Abhängigkeiten der Elemente erkennbar werden und unterstützt so Anwendungsprogramme

Die XML-Spezifikation enthält Regeln, die das Verhalten eines Parsers beschreibt

Im Allgemeinen überprüft der Parser ein Dokument sowie die zugehörige DTD und stellt Fehler fest

Page 18: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

18

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

Auszeichnungsarten in XML

XML-Dokumente bestehen immer aus Inhalt (content) und Auszeichnung (markup). Es gibt sechs verschiedene Arten von Auszeichnung:

elementsentity referencescommentsprocessing instructionsmarked sectionsDTDs (document type definitions)

Page 19: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

19

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

Ein einfaches XML-DOKUMENT

<?xml version="1.0" encoding="UTF-8” standalone="yes"?><Adressbuch> <Person> <Name> <Nachname>Clinton</Nachname> <Vorname>Bill</Vorname> </Name> <EMail>[email protected]</EMail> </Person></Adressbuch>

Page 20: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

20

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

Prolog

Ein XML-Dokument sollte mit dem sogenannten Prolog beginnen, der die XML-Spezifikation und die Kodierungsinformation enthält, aber auch die Angabe, ob eine DTD vorhanden ist oder nicht.

Beispiel:<?xml version="1.0" encoding="UTF-8" standalone="yes"?>

Page 21: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

21

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

Prolog - Erläuterung

<?xml

Tags, die mit einem Fragezeichen eingeleitet und abgeschlossen werden stellen eine sogenannte Processing Instruction (PI) dar. Sie aktivieren den Parser zur Verarbeitung der Instruktionen im XML- Dokument

Page 22: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

22

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

Prolog - Erläuterung

version="1.0"

Angabe der XML-Version auf der das Dokument basiert. Diese Versionsdeklaration wird zum Interpretieren des XML Source-Code benötigt, da zukünftige XML -Versionen nicht ausgeschlossen sind. Die Versionsdeklaration ist obligatorisch und steht immer hinter xml

Page 23: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

23

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

Prolog - Erläuterung

encoding="UTF-8"

Die XML - Prozessoren müssen die Unicode-Codierungen UTF-8 und UTF-16 verarbeiten können.(UTF = UCS Transformation Format)(UCS = Universal Multi-Octet Coded Character Set)

Die ersten 256 Unicode Zeichen entsprechen den Codes von ISO 646 (ASCII) und ISO-8859-1 (west- europäischen Zeichensatz, auch "Latin 1" genannt).

Page 24: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

24

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

Prolog - Erläuterung

standalone="yes"

In dieser Deklaration gibt der Wert "yes" an, dass dieses XML-Dokument nicht auf einer DTD basiert. In diesem Fall kann das XML-Dokument nicht vom Parser auf Gültigkeit überprüft werden. Es kann aber bei Einhaltung der XML Syntax-Regeln als “wohlgeformt" gelten und von einem XML-fähigen Browser darstellbar sein.Der Wert “no“ gibt an, dass eine DTD vorhanden ist.

Page 25: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

25

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

Prolog - Erläuterung

Beispiel:

<?xml version= " 1.0" encoding="UTF-8" standalone= " no" ?><!DOCTYPE Adressbuch SYSTEM "adress.dtd">

Ein Prolog mit einer Dokumenttyp-Deklaration und einem Verweis auf eine externe DTD namens adress.dtd

Page 26: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

26

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

Prolog - Erläuterung

<!DOCTYPE Adressbuch SYSTEM "adress.dtd">

Bevor ein Parser beginnen kann ein XML - Dokument gegen eine DTD abzugleichen, um auf diese Art die Gültigkeit des Dokumentes festzustellen, muss ihm der Standort der DTD angegeben werden. Dieses geschieht durch die DOCTYPE-Deklaration. Zu jedem gültigen XML - Dokument gehört eine DOCTYPE-Deklaration

Page 27: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

27

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

Prolog - Erläuterung

<!DOCTYPE Adressbuch SYSTEM "adress.dtd">

Die DOCTYPE-Deklaration enthält auch den Namen des hierachisch höchsten Elementes (Wurzelelement oder Dokumentelement), hier ‘Adressbuch‘.Das Schlüsselwort SYSTEM gibt an, daß die anschließend genannte Datei extern im Dateisystem oder Netz zu suchen ist. Hier kann ein Dateiname mit relativem oder absolutem Pfad stehen oder eine Internetadresse

Page 28: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

28

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

Allgemeines zu DTDs (Document Type Definitons)

Die DTDs erlauben es, zu einem XML-Dokument dem Parser Informationen über seinen Inhalt zukommen zu lassen. Sie enthalten die erlaubte Reihenfolge und die erlaubten Verschachtelungen von Tags, die Attribute, ihre Werte und den Default-Zustand, die Namen von externen Dateien, auf die verwiesen wird und die Entitäten, die vorkommen. Sie definieren somit das XML-Dokument.

Page 29: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

29

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

Allgemeines zu DTDs (Document Type Definitons)

Eine DTD ist die Grammatik für das XML-Dokument, sie bestimmt welche Tags und Attribute für das jeweilige Dokument gültig ist

DTDs können extern angegeben werden (URI, URL) oder innerhalb des XML-Dokumentes

Eine externe DTD kann aber auch durch eine interne DTD ergänzt werden, ein Parser kann interne und externe DTDs zusammen zu einer Gesamt-DTD zusammenfügen

Page 30: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

30

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

Allgemeines zu DTDs (Document Type Definitons)

Eine interne DTD-(Unter)-Menge wird immer zuerst eingelesen, bei mehrfach Deklarationen die sowohl in der internen als auch in der externen DTD vorkommen, gelten die der internen Untermenge

XML-Dokumente ohne DTD müssen den Kriterien der Wohlgeformtheit entsprechen

Eine DTD wird unter Verwendung einer formalen Grammatik notiert, der Extended Backus-Naur Form (EBNF)

Page 31: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

31

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

einige Vorüberlegungen zur Erstellung einer DTD:

Welches sind die abzubildenden Dokumente bzw. Dokumentarten / Dokumenttypen und welche typische Struktur haben sie?

Welche Ziele werden verfolgt? Datenaustausch, Recherche, Ausgabe etcWelche Software (Datenbank, Dokumenten- managementsystem etc) wird verwendet

Page 32: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

32

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

DTD: Deklarationsarten

Innerhalb einer DTD kann es folgende Arten von Deklarationen geben:

Element Type DeclarationsAttribute List DeclarationsEntity DeclarationsNotation Declarations

Page 33: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

33

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

DTD: Deklarationen: Namensregeln

Für Namen in einer DTD gelten folgende Regeln:

Die Zeichenfolge XML ist reserviert und darf nicht als Namensanfang verwendet werdenNamen müssen mit einem Buchstaben oder einem Unterstrich beginnen (Namensräume beginnen mit einem Doppelpunkt)Die nachfolgenden Zeichen können Buchstaben, Ziffern, Punkt, Minuszeichen, Doppelpunkt und verschiedene andere Zeichen sein. Möglichst auf Sonderzeichen verzichtenGroß- und Kleinschreibung ist relevant

Page 34: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

34

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup LanguageDTD: Deklarationsarten: Element Type Declarations

Element-Typ-Deklarationen bestimmen die Namen der Elemente und die Inhaltsarten Sie sind wichtigster Bestandteil in XML, da sie die strukturellen Einheiten angeben. Elemente können folgendes enthalten -andere Elemente -Daten (Text, Graphik etc) -nichts (Definiton als leeres Element) Der mögliche Inhalt von Elementen wird durch ein Inhaltsmodell festgelegt

Page 35: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

35

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

DTD: Deklarationsarten: Element Type Declarations:Inhaltsmodelle

Folgende Inhaltmodelle existieren für Elemente:

Gruppen: Der Elementinhalt besteht aus Kindelementen / Subelementen. Das Auftreten der Kindelemente kann durch Operatoren bestimmt werden

Page 36: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

36

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

DTD: Deklarationsarten: Element Type Declarations:Inhaltsmodelle

Daten: Der Elementinhalt besteht aus Zeichen/Daten besteht und wird mit dem reservierten Wort #PCDATA angegeben

Gemischter Inhalt: Der Elementinhalt besteht aus Kindelementen und Daten

Page 37: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

37

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

DTD: Deklarationsarten: Element Type Declarations:Inhaltsmodelle

leerer Inhalt : Der Elementinhalt wird mit dem Schlüsselwort EMPTY angegeben Beispiel: <!Element br EMPTY>

beliebiger Inhalt: Der Elementinhalt wird mit Schlüsselwort ANY angegeben. Gemeint ist ein beliebiger Inhalt aus PCDATA und aller in der DTD definierten Elemente Beispiel: <!Element div ANY>

Page 38: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

38

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

DTD: Deklarationsarten: Element Type Declarations:Inhaltsmodelle: Operatoren

Die Reihenfolge und das Auftreten von Kind- elementen und PCDATA wird durch Operatoren / Konnektoren bestimmt

Mengenoperatoren: Beispiele

<!ELEMENT Adressbuch (Person?)> Das Element Person taucht nicht auf oder genau einmal (also höchstens einmal)

Page 39: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

39

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

DTD: Deklarationsarten: Element Type Declarations:Inhaltsmodelle: Operatoren

Mengenoperatoren: Beispiele

<!ELEMENT Adressbuch (Person+)> Einmaliges oder mehrmaliges Auftreten des Elementes Person

<!ELEMENT Adressbuch (Person*)> Element Person kann kein oder mehrmals (also beliebig oft) auftreten

Page 40: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

40

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

DTD: Deklarationsarten: Element Type Declarations:Inhaltsmodelle: Operatoren

Strukturoperatoren: Beispiele

<!ELEMENT Adressbuch (Person | Mensch)> Element Person oder Element Mensch kann auftreten (Bildung von Alternativen)

Page 41: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

41

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

DTD: Deklarationsarten: Element Type Declarations:Inhaltsmodelle: Operatoren

Strukturoperatoren: Beispiele

<!ELEMENT Adressbuch (Nachname, Vorname)> Element Nachname gefolgt von Element Vorname (Bildung von Sequenzen)

<!ELEMENT Adressbuch (Nachname, Vorname)+> Zusammengesetztes Element (hier: Sequenz) tritt mindestens einmal auf

Page 42: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

42

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

DTD: Deklarationsarten: Element Type Declarations: Beispiele

Eine typische Deklaration sieht so aus:

<!ELEMENT Adressbuch (Person+)> <!ELEMENT Person (Name, Email*)><!ELEMENT Name (Nachname, Vorname)><!ELEMENT Nachname (#PCDATA)><!ELEMENT Vorname (#PCDATA)><!ELEMENT Email (#PCDATA)>

Page 43: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

43

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

DTD: Deklarationsarten: Element Type Declarations: Beispiele: Erläuterung

Eine Element-Typ-Deklaration beginnt immer mit <!ELEMENT , danach wird der Name des Elementtyps angegeben anschließt folgt das Inhaltsmodell (''content model'').

Page 44: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

44

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

DTD: Deklarationsarten: Element Type Declarations: Beispiele: Erläuterung <!ELEMENT Adressbuch (Person+)>

Die erste Deklaration bestimmt, dass es ein Element Adressbuch gibt. Danach folgt das ''content model'', das angibt, welche Elemente ''Adressbuch'' enthalten kann. In diesem Falle enthält das Element Adressbuch das Element Person. Das Pluszeichen hinter Person gibt an, dass das Element mindestens einmal aber auch mehrmals auftauchen kann.

Page 45: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

45

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

DTD: Deklarationsarten: Element Type Declarations: Beispiele: Erläuterung

<!ELEMENT Person (Name, Email*)>

Die zweite Deklaration bestimmt das Element Person genauer: Das Element Person enthält die Elemente Name und Email, wobei diese genau in dieser Reihenfolge auftreten müssen. Das Element Email ist dabei optional, was durch das Sternchen am Ende kenntlich gemacht wird. Name muss genau einmal vorhanden sein.

Page 46: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

46

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

DTD: Deklarationsarten: Element Type Declarations: Beispiele: Erläuterung

<!ELEMENT Name (Nachname, Vorname)>

Die dritte Deklaration bestimmt das Element Name. Das Element Name besteht aus Nachname und Vorname, die jeweils genau einmal vorkommen dürfen.

Page 47: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

47

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

DTD: Deklarationsarten: Element Type Declarations: Beispiele: Erläuterung

<!ELEMENT Nachname (#PCDATA)><!ELEMENT Vorname (#PCDATA)><!ELEMENT Email (#PCDATA)>

Die Deklarationen in Zeilen 4-6 bestimmen die Elemente Nachname, Vorname und Email. Diese Elemente enthalten keine weiteren Elemente, sondern Daten bzw. Zeichen. Dies wird durch #PCDATA festgelegt.

Page 48: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

48

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

DTD: Deklarationsarten: Element Type Declarations: Beispiele:

<!ELEMENT Person (Nachname, Vorname, Adresse, Telefon, Email, Firma)>

Hier wird eine feste Abfolge der Unter-Elemente vorgegeben. Bei der Benutzung des Kommas müssen die Unter-Elemente genau in der vorgegebenen Reihenfolge auftauchen und zwar genau einmal.

Page 49: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

49

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

DTD: Deklarationsarten: Element Type Declarations: Beispiele:

<!ELEMENT Person (Nachname | Vorname | Adresse | Telefon | Email | Firma)>

Bei dieser Deklaration wird eine ausschließliche Oder-Vernüpfung gebildet: nur eines der Elemente darf als Unter-Element auftauchen.

Page 50: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

50

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

DTD: Deklarationsarten: Element Type Declarations: Beispiele:

<!ELEMENT Person (Nachname, Vorname, Adresse, Telefon, Email, Firma)*>

Der Stern hinter der Aufzählung bewirkt, dass die Elemente in beliebiger Reihenfolge vorkommen können.

Page 51: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

51

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

DTD: Deklarationsarten: Element Type Declarations: Beispiele:

<!ELEMENT Person (Nachname, Vorname, Adresse, Telefon*, Email, Firma)>

Der Stern hinter dem Unter-Element Telefon, bewirkt, dass dieses Unter-Element beliebig oft auf treten darf

Page 52: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

52

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

DTD: Deklarationsarten: Element Type Declarations: Beispiele:

<!ELEMENT Person (Nachname, Vorname, Adresse, Telefon*, Email, Firma?)>

Das Fragezeichen hinter Firma bewirkt, dass dieses Unter-Element einmal aber auch gar nicht vorkommen darf.

Page 53: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

53

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

DTD: Deklarationsarten: Element Type Declarations: Beispiele:

<!ELEMENT Person (Nachname, Vorname, Adresse, Telefon*, Email+, Firma?)>

Da Pluszeichen hinter Email bewirkt, dass dieses Unter-Element einmal oder mehrere Male vorkommen darf.

Page 54: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

54

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

DTD: Deklarationsarten: Element Type Declarations: Beispiele:

<!ELEMENT Person (Nachname, Vorname+, Adresse, Firma?, (Telefon | Email))>

Auch Klammerung ist möglich.

Die Strukturoperatoren sind somit untereinander und bzgl. der Mengenoperatoren orthogonal anwendbar.

Page 55: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

55

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

DTD: Deklarationsarten: Element Type Declarations: Beispiele:

Der Inhalt eines Elements kann also aus Daten, aus Unterelementen oder beiden bestehen. Wenn diese Mischform aus PCDATA und Unter-Elementen verwendet wird, ist eine feste Form vorgeschrieben:

<!ELEMENT P(#PCDATA | ul | ol | dl | img | a)*>

Page 56: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

56

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

DTD: Deklarationsarten: Element Type Declarations: Beispiele:

Bei gemischten Formen muss PCDATA immer am Anfang stehen, alle Elemente müssen alternativ und die ganze Gruppe optional sein. Es gilt also, dass zwar festgelegt werden kann, welche Elemente als untergeordnete Elemente auftreten können, aber nicht deren Reihenfolge oder deren Anzahl.

Page 57: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

57

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

DTD: Deklarationsarten: Attribute-List Declarations: Allgemeines

Attribute werden verwendet, um Elemente genauer zu beschreiben

Sie enthalten zusätzliche Informationen über Elemente und Elementinhalte

Um den Elementen Attribute zuzuweisen, müssen diese Attribute vorher deklariert werden

Eine Attributliste bezieht sich immer auf ein Element.

Page 58: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

58

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

DTD: Deklarationsarten: Attribute-List Declarations: Allgemeines

Zur Attributdeklaration gehört der Elementname sowie eine Angabe zum Attributtyp und zum Default-Wert

Attribute werden in den Start-Tags der Elemente angegeben, ihre Werte stehen immer in Anführungszeichen

Entscheidungsfindung notwendig: Codierung der Information als Attribut oder Element?

Page 59: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

59

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

DTD: Deklarationsarten: Attribute-List Declarations: Beispiel

<!ATTLIST Person Gender (male | female) #implied>

Jede Attributdeklaration besteht aus drei Teilen:

Einen zug. Elementennamen (Name, hier Person)

einem Typ (Type, hier Gender) und einem

Standardwert (default value, hier alternativ male oder female).

Page 60: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

60

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

DTD: Deklarationsarten: Attribute-List Declarations: Attributtypen

Man kann die Attributtypen grob in drei Gruppen unterteilen

Zeichenketten CDATA: Strings, jeder Text ist zugelassen, angegeben durch CDATA

Aufzählungstypen (enumerated type): es wird eine Liste der möglichen Werte vorgegeben ist

Page 61: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

61

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

DTD: Deklarationsarten: Attribute-List Declarations: Attributtypen

Token-Typen: mehrere vordefinierte Attributtypen (ID, IDREF, IDREFS, NMTOKEN, NMTOKENS, NOTATION, NOTATIONS, ENTITY, ENTITIES)

Page 62: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

62

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

DTD: Deklarationsarten: Attribute-List Declarations: Standardattributvorgaben

Manche Attribute sollen obligatorisch gesetzt werden, andere nicht. Dafür werden bestimmte Attributvorgaben genutzt.

#REQUIRED: Das Attribut muss bei jedem Vorkommen im Dokument einen explizit spezifizierten Wert besitzen

#IMPLIED: Der Attributwert ist nicht unbedingt nötig, es gibt auch keinen Defaultwert. Wenn kein Wert angegeben ist, muss der XML-Parser ohne einen Wert fortfahren

Page 63: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

63

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

DTD: Deklarationsarten: Attribute-List Declarations: Standardattributvorgaben

''<value>'': Einem Attribut kann jeder legale Wert als Standard zugewiesen werden. Der Attributwert ist nicht zwingend bei jedem Element des Dokumentes nötig. Ist kein Wert angegeben, so wird der Standardwert eingesetzt

#FIXED ''<value>'': Einem Attribut kann ein fester Wert zugewiesen werden. In diesem Falle ist das Attribut nicht zwingend vorgeschrieben, aber falls es vorkommt, muss es den spezifizierten Wert enthalten.

Page 64: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

64

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

DTD: Deklarationsarten: Attribute-List Declarations: Beispiele

<!ATTLIST Form Method CDATA #FIXED ''Post''>

In diesem Beispiel wird für das Elemtent Form ein Attribut Method deklariert, welches vom Typ CDATA ist und Vorgabewert ''Post'’ hat

<!ATTLIST Person Id ID #REQUIRED>

In diesem Beispiel wird für das Element Person ein Attribut Id vom Typ ID deklariert, welches einen Wert enthalten muß.

Page 65: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

65

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

DTD: Deklarationsarten: Attribute-List Declarations: Beispiele

<!ATTLIST Person Name CDATA #IMPLIED>

In diesem Beispiel wird für das Element Person ein Attribut Name deklariert, welches vom Typ CDATA ist. Der Attributwert ist optional <!ATTLIST Person Gender (male | female) '’female''>

In diesem Beispiel wird für das Element ein Attribut gender definiert, welches vom Typ enumerated type (Aufzählungstyp) ist. Default-Wert ist female.

Page 66: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

66

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

DTD: Deklarationsarten: Attribute-List Declarations: Attributtypen: CDATA

ZeichenkettenMit dem Wort CDATA wird einem Attribut der Zeichenketten-Typ zugeordnet. CDATA entspricht PCDATA bei der Deklaration von Elementen. Wird ein Attribut dem CDATA-Typ zugeordnet, so kann eine beliebige Zeichenfolge als Wert auftreten.

Beispiel<!ATTLIST person name CDATA #IMPLIED>

Page 67: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

67

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

DTD: Deklarationsarten: Attribute-List Declarations: Attributtypen: enumerated type

Aufzählungstypen:Attribute werden dem Aufzählungstyp zugeordnet, wenn mehrere Werte aus einer Aufzählung ausgewählt werden können

Beispiel:<!ATTLIST Person Gender (male | female | unknown) ''unknown'')>Wenn das Element Person kein Gender Attribut hat, wird ihm automatisch ''unknown'' zugewiesen.

Page 68: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

68

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

DTD: Deklarationsarten: Attribute-List Declarations: Attributtypen: Token Typen

Token-Typen:

ID

IDREF, IDREFS

NMTOKEN, NMTOKENS

NOTATION, NOTATIONS

ENTITY, ENTITIES

Page 69: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

69

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

DTD: Deklarationsarten: Attribute-List Declarations: Attributtypen: Token-Typen: ID

Token-Typen:

ID

ID-Attribute werden benötigt, um Elemente zu identifizieren. Der Wert eines ID-Attributs muss immer eindeutig sein d.h. er darf sich in dem Dokument nicht wiederholen. IDs können Elemente in einem Dokument eindeutig kennzeichnen.

Page 70: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

70

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

DTD: Deklarationsarten: Attribute-List Declarations: Attributtypen:Token-Typen: ID

Beispiel:

<!ATTLIST Ware Nummer ID #REQUIRED)>

Für das Element Artikel wird hier ein Attribut mit dem Namen Nummer deklariert, dass den Typ ID besitzt. Mit REQUIRED wird festgelegt, dass das Attribut für das Element Ware immer angegeben werden muss.

Page 71: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

71

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

DTD: Deklarationsarten: Attribute-List Declarations: Attributtypen:Token-Typen: IDREF, IDREFS IDREF, IDREFSDer Wert eines IDREF-Attributs ist die Zeichenfolge, die als Wert eines ID-Attributes in irgendeinem Element des Dokuments erscheint. Es dient also als Verweisziel. Mit dem IDREF-Attribut lassen sich Verweise herstellen. IDREFS kann mehrere Werte annehmen, die durch Leerzeichen getrennt werden.Für diesen Fall soll die Software dem Anwender eine Selektion aus Verweiszielen anbieten

Page 72: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

72

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

DTD: Deklarationsarten: Attribute-List Declarations: Attributtypen:Token-Typen: IDREF, IDREFS

Beispiel<!ATTLIST Standort Bezug IDREFS #REQUIRED)>

Man könnte sich nun innerhalb eines Dokumentes die folgende Konstruktion vorstellen:<Ware Nummer="999"> ... </Ware>.....<Standort Bezug="999 998 997 996"> ... </Standort>

Page 73: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

73

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

DTD: Deklarationsarten: Attribute-List Declarations: Attributtypen:Token-Typen: NMTOKEN, NMTOKENS

NMTOKEN-Attribute sind eine restriktive Form von String-Attributen Der Wert ist ähnlich aufgebaut wie bei CDATA- Attributen, allerdings umfasst er häufig nur ein Wort. Dieses Wort ist bestimmten Beschränkungen unterworfen, die für die Namensbildung in XML gelten. Der Plural NMTOKENS umfasst mehrere NMTOKEN- Werte, die durch Leerzeichen getrennt werden.

Page 74: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

74

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

DTD: Deklarationsarten: Attribute-List Declarations: Attributtypen:Token-Typen: NOTATION, NOTATIONS

Attribute vom Typ NOTATION sollen den Inhalt eines Elementes speziell interpretieren Notations-Attribute werden benötigt, um z.B. auf externe Informationen zugreifen zu können. (Z.B gif, pdf, ps etc)

Beispiel <!NOTATION Gif SYSTEM ''http://www.viewer.de/viewer.exe''><!ATTLIST Bild Typ NOTATION><Bild Typ=''Gif''>...</image>

Page 75: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

75

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

DTD: Deklarationsarten: Attribute-List Declarations: Attributtypen:Token-Typen: ENTITY, ENTITIES

ENTITY ist der Oberbegriff für verschiedene Arten von Objekten. Zeichenketten können ENTITIES sein, aber auch Dateien oder Teile von Dateien. Entitäten werden in der DTD deklariert, d.h. eine Anzahl von Zeichen wird mit einem Namen ausgestattet und diese Entität kann dann im XML-Dokument verwendet werden. Entities können z.B. auch deklariert werden , um sich Schreibarbeit zu ersparen.

Page 76: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

76

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

DTD: Deklarationsarten: Attribute-List Declarations: Attributtypen:Token-Typen: ENTITY, ENTITIES

Man kann z.B. folgendes (interne) Entity deklarieren:

<!ENTITY fbi "Fachbereich Bibliotheks- und Informationswesen''>

Dieses ENTITY wird später im Dokument durch &fbi; angegeben. Wenn ein Parser im Dokument auf &fbi; stößt, wird er den Wert "Fachbereich Bibliotheks- und Informationswesen'' einsetzen. Auch Sounddateien können als ENTITY angegeben werden.

Page 77: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

77

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

DTD: Deklarationsarten: Attribute-List Declarations: Attributtypen:Token-Typen: ENTITY, ENTITIES Im Bereich der Attributdeklarationen ist der Wert eines ENTITY-Attributs der Name eines externen binären ENTITY. Der Wert von ENTITIES sind die Namen verschiedener externer binärer ENTITIES, die durch Leerzeichen getrennt werden.

Mehr zu Enitäten im Bereich Entity -Deklarationen

Beispiel:<!ATTLIST homepage sound ENTITY #IMPLIED>

Page 78: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

78

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

DTD: Deklarationsarten: Entity Declarations

Entities sind Objekte, die einen Namen haben und einen bestimmten Inhalt. Stößt ein Parser beim Lesen eines XML-Dokumentes auf ein ENTITY, so schaut er in der DTD nach und setzt an dieser Stelle den Inhalt des ENTITY ein. Dieser Inhalt wird vorher in den Entity Declarations festgelegt. Sobald ein ENTITY deklariert ist, kann der Parser den Inhalt an jeder gewünschten Stelle einsetzen.

Page 79: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

79

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

DTD: Deklarationsarten: Entity Declarations

Man unterscheidet mehrere Arten von ENTITIES:

allgemeine Entities und Parameter Entities

geparste und nicht geparste Entities

interne und externe Entities

Page 80: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

80

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

DTD: Deklarationsarten: Entity Declarations: Allgemeine Entitity-Deklaration

Allgemeine / generelle Entitäten werden als Text- Konstanten benutzt. Beispiel<!ENTITY fbi ”Fachbereich Bibliotheks und Informationswesen" >

Wenn im XML-Dokument nun die Entität &fbi; enthalten ist wird Parser sie durch “Fachbereich Bibliotheks- und Informationswesen“ ersetzten.

Page 81: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

81

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

DTD: Deklarationsarten: Entity Declarations: Parameter Entity-Deklaration

Die Deklaration eines Parameter-Entities gleicht der eines allgemeinen Entities

Dem Kürzel wird noch ein Prozentzeichen vorangestellt.

Der Aufruf erfolgt auch vorangestelltem Prozentzeichen (%)

Der Parser setzt dann den definierten Inhalt ein

Page 82: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

82

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

DTD: Deklarationsarten: Entity Declarations: Parameter Entity-Deklaration

Unterschied zwischen allgemeinen Entities und Parameter Entities:

allgemeine Entities werden im XML-Dokument verwendet

Parameter Entites werden nur innerhalbvon DTDs zur Verkürzung der Syntax verwendet, bzw. um Konstanten zu bilden.

Page 83: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

83

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

DTD: Deklarationsarten: Entity Declarations: Parameter Entity-Deklaration

Beispiel:

<!ENTITY %headings "H1|H2|H3|H4|H5|H6">

Hier werden alle Überschriften in HTML dem Entity %headings; zugewiesen. Nun kann man in der DTD auf dieses Entity zurückgreifen, wenn man es braucht, z. B zum Definieren des Body-Tags.

Page 84: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

84

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

DTD: Deklarationsarten: Entity Declarations: Parameter Entity-Deklaration

Beispiel: Aufruf eines Parameter-Entities <! ELEMENT body (%headings;| P| HR)*>

Hier wird definiert, dass das Body-Tag die Elemente, die im Entity %headings; ''verborgen'' sind sowie P und HR enthalten darf.

Page 85: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

85

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

DTD: Deklarationsarten: Entity Declarations: Geparste Entities

Die allgemeinen und die Parameter Entities gehören zur Gruppe der geparsten Entities, d.h wenn der Parser auf ein solches Entity stößt, kann er es auflösen und den Inhalt einsetzten.

Page 86: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

86

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

DTD: Deklarationsarten: Entity Declarations: Nichtgeparste Entities

nicht geparste Enitities verweisen auf Dateien, die als Entity formuliert sind aber kein Markup darstellen z.B gif, pdf, bmp

die Art der Daten, auf die verwiesen wird, muss vorher als Notation deklariert sein. (Mehr dazu im Bereich der Notationen-Deklaration)

Page 87: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

87

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

DTD: Deklarationsarten: Entity Declarations: Nichtgeparste Entities

nicht geparste Entities stellen eine gute Möglichkeit dar, Nicht-XML-Daten zu berücksichtigen

In der Deklaration muss die Notation (das Datenformat) mit dem Schlüsselwort NDATA angegeben werden

Um nicht geparste Entities zu referenzieren müssen Attribute verwendet werden.

Page 88: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

88

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

DTD: Deklarationsarten: Entity Declarations: Nichtgeparste Entities

Beispiel:<!ENTITY logo SYSTEM "/bild/logo.gif" NDATA GIF>

<!ELEMENT grafik EMPTY>

<!ATTLIST grafik src ENTITY #REQUIRED>

Aufruf:<p>Das neue Logo<grafik src=“logo“ /> steht hier </p>

Page 89: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

89

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

DTD: Deklarationsarten: Entity Declarations: Interne Entities

Ein internes Entity ist ein Entity, dessen Inhalt in einer Entity-Deklaration bestimmt wird.

Beispiel

<!ENTITY JS ”Javascript">

Alle internen Entities sind geparste Entities!

Page 90: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

90

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

DTD: Deklarationsarten: Entity Declarations: Interne Entities

Ebenso wie in HTML gibt es auch in XML einige Zeichen die für den Parser eine besondere Bedeutung als Markup haben. Diese Zeichen müssen im Dokument als Entitäten aufgerufen werden.Fünf vordefinierte interne Entities werden in XML verwendet:

&lt; linke spitze Klammer (<). &gt; rechte spitze Klammer (>). &amp; Kaufmanns-Und (&). &apos; Hochkomma ( ' ). &quot; Anführungszeichen ( " ).

Page 91: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

91

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

DTD: Deklarationsarten: Entity Declarations: Externe Entities

Externen Entities sind Teile eines XML-Dokumentes die ausserhab des Dokumentes liegen und referenziert und geparst werden.

Externe Entitities erlauben einen modularen Aufbau von XML-Dokumenten

Externe Enitities müssen gültig gegenüber der DTD des referenzierenden Dokumentes sein, damit das referenzierende Dokument gültig ist.

Page 92: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

92

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

DTD: Deklarationsarten: Entity Declarations: Externe Entities

Externe Entities dürfen nur im Dokument selber oder als Inhalt eines allgemeinen (internen) Entities referenziert werden (z.B. &fbi;)

Es ist möglich XML-Dokumente nur aus externen Entities zusammenzusetzen

Beispiel für die Deklaration einer externen Entität:

<!ENTITY fbi SYSTEM "/htdocs/fb.xml">

Page 93: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

93

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

DTD: Deklarationsarten: Entity Declarations: Externe Entities

Externe Entities können auch als externe Parameter Entities vorkommen

Externe Parameter Entities werden innerhalb einer DTD referenziert

Externe Parameter Entities sind Dateien mit gültigen Deklarationen oder Teilen davon

Beispiel für die Deklaration einer externen Parameter Entität: <!ENTITY % fbi SYSTEM "/htdocs/fb.dtd">

Page 94: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

94

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

DTD: Deklarationsarten: Entity Declarations

Gebräuchlich sind auch folgende Entity-Bezeichnungen, die sich alle aus den behandelten Entitiy - Gruppen ableiten lassen

interne Parameter Entities externe Parameter Entities interne generelle Entities externe generelle geparste Entities externe generelle nicht-geparste Entities vordefinierte Entities

Page 95: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

95

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

DTD: Deklarationsarten: Notation Declarations

Notationen-Deklarationen liefern Informationen über den Namen und das Format von Nicht-XML- Daten wie Graphiken, Text-Files etc.

Diese Daten werden übergeben durch -ein generelles nicht geparstes Entity -als Inhalt eines Elemtentes mit einem Notation- -Attribut

Der Name der Notation erlaubt es der XML- Anwendung ein definiertes Hilfsprogramm aufzurufen

Page 96: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

96

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language

DTD: Deklarationsarten: Notation Declarations

Nach dem Namen der Notation wird das Schlüsselwort SYSTEM notiert

Die im Anschluß an SYSTEM angegebene Datei beinhaltet den Pfad zu einem Hilfsprogramm oder zu einer Datei die zur Verarbeitung des Datenformats benötigt wird

Der System-Identifier kann auch leer bleiben

Beispiel: < !NOTATION bmp SYSTEM "http://www.bmp.com/bmpviewer.exe">

Page 97: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

97

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup LanguageMarkierte Bereiche: CDATA - Sections

Markierte Bereiche (cdata sections) geben den Inhalt unverändert wieder. Diese Sektionen werden nicht ”geparst”, so dass Zeichen, die sonst als Markup-Zeichen vom Parser missverstanden werden könnten, problemlos dargestellt werden.

Beispiel<![CDATA[ 50*10>100 ]]>

Page 98: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

98

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup LanguageMarkierte Bereiche: Conditional - Sections

Bedingte Abschnitte sind bestimmte Teile einer DTD deren Deklarationen in Abhängigkeit von einem Schlüsselwort vom Parser verarbeitet oder ignoriert wird. In diese Abschnitte können beliebige Deklarationen enthalten sein.

Beim Schlüsselwort “INCLUDE“ wird der Inhalt eines bestimmten Abschnittes berücksichtigt, beim Schlüsselwort “IGNORE“ wird der Abschnitt ignoriert.

Durch die Zuweisung dieser Schlüsselwörter an Parameter-Entitäten läßt sich die Berücksichtung von Deklarationsabschnitten einfach ändern

Page 99: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

99

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup LanguageMarkierte Bereiche: Conditional - Sections

Beispiel:

<! ENTITY % offiziell “INCLUDE“>

<! [%offiziell;[<! ELEMENT brief (Datum, Anschrift) >]] >

Page 100: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

100

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup LanguageKommentare

Kommentare dürfen sowohl innerhalb einer DTD (Ausnahme: innerhalb von Deklarationen) als auch im XML - Dokument stehen.Sie stehen zwischen den Zeichen <!-- und --> und werden vom Parser ignoriert.

Page 101: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

101

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language Gültigkeit

Ein XML-Dokument ist dann gültig (valid), wenn der Abgleich von Dokument und DTD keine Fehler ergibt, d.h. die in der DTD deklarierten Elemente, Attribute, Entities, Notationen, Referenzen etc. im XML-Dokument entsprechend der Deklarationen vorkommen.

Wenn ein Dokument einmal als gültig befunden worden ist, macht es aufgrund des Zeitaufwandes wenig Sinn, die Prüfung zu wiederholen, wenn das Dokument aufgerufen wird bzw. verschickt wird. Darum hat man für die schnellere Überprüfung die Kriterien der Wohlgeformtheit entwickelt.

Page 102: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

102

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language Wohlgeformtheit

Bei der Überprüfung auf Wohlgeformtheit wird kein Abgleich mit der DTD vorgenommen. Der Parser versucht hier lediglich die Baum-Struktur des Dokumentes zu ermitteln.

Für wohlgeformte Dokumente gelten folgende Kriterien:

Leere Elemente wie <br> oder <hr> brauchen ein Ende-Tag, also <br></br> oder <br />Alle Attributwerte stehen in AnführungszeichenDie Elemente sind sauber verschachtelt

Page 103: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

103

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language Editoren

-Peter‘s XML Editor (Freeware) www.iol.ie/~pxe/download.html

-Macromedia Dreamweaver, Macromedia Homesite, Adobe Golive (eigentlich HTML-Editoren, jetzt mit XML Funktion)

- Xmetal (www.xmetal.com)

-XML-Editor Suite (www.morphon.com)

-XML Spy Suite (www.altova.com)

Page 104: XML Dipl.-Dok. R. Offer FH Köln - Fakultät für Informations- und Kommunikationswissenschaft XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer FH.

104

XM

L

Dipl.-Dok. R. Offer

F

H K

öln

- F

akult

ät

für

Info

rmati

ons-

und

Kom

munik

ati

onsw

isse

nsc

haft

XML - Extensible Markup Language Editoren

-XML Writer www.xmlwriter.net

-Extensibility (www.tibco.com) (Content Management System)

- Team Site (www.interwoven.com) (Content Management System)