Jump to content
Main menu
Main menu
move to sidebar
hide
Navigation
Aphorismen
Applications
Business Economics & Admin.
My Computers
Cooking
Devices
Folders
Food
Hardware
Infos
Software Development
Sports
Operation Instructions
Todos
Test
Help
Glossary
Community portal
adaptions
Sidebar anpassen
Wiki RB4
Search
Search
Create account
Log in
Personal tools
Create account
Log in
Pages for logged out editors
learn more
Contributions
Talk
Editing
XML
(section)
Page
Discussion
English
Read
Edit
View history
Toolbox
Tools
move to sidebar
hide
Actions
Read
Edit
View history
General
What links here
Related changes
Special pages
Page information
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
===Dokumenttypen=== Neben der Grundidee Generic Markup ist ein wichtiges Konzept von XML der '''Dokumenttyp'''. Die Eingabe eines Dokumententyps ist optional. Der Dokumenttyp beschreibt eine Klasse von Dokumenten, die sich in ihrem strukturellen Aufbau gleichen. Ein allgemein bekanntes Beispiel ist der Dokumenttyp »Brief«. Verschiedene Briefe sind meistens identisch oder zumindest sehr ähnlich strukturiert. Sie beginnen mit der Adresse des Absenders, gefolgt von der Adresse des Empfängers. Sie besitzen eine Ort- und Datumsangabe, eine Anrede, den eigentlichen Text des Briefes sowie eine abschließende Grußformel. Ein anderer vertrauter Dokumenttyp ist das »Buch«, oder etwas spezieller das »Fachbuch«. Der grobe Aufbau ist dabei: Titelei, Hauptteil, Anhangteil. Die Titelei enthält den Buchtitel, das Impressum, das Vorwort und ggf. eine Widmung und eine Danksagung. Der Hauptteil besteht aus einer Folge von Kapiteln. Kapitel sind auch im Anhangteil zu finden. Das diese anders dargestellt werden als Kapitel im Hauptteil (Kapitelüberschriften im Anhang sind meist mit einem Buchstaben versehen, während Kapitel im Hauptteil durchnumeriert werden) spielt für die Strukturierung keine Rolle (Generic Markup). Des weiteren gibt es im Anhangteil oft besondere Abschnitte wie etwa ein Glossar, ein Literaturverzeichnis und ein Stichwortverzeichnis. Um zu erläutern, was unter einem Dokumenttyp zu verstehen ist, wird zunächst erläutert, was ein '''Elementtyp''' ist. Man sagt, dass dies ein '''Element''' ist: <p>Lola rennt.</p> Das Element besteht aus einem Start-Tag, dem Inhalt des Elements und einem End-Tag. Auch dies ist ein Element: <p>Ist ja gar nicht wahr.</p> Es handelt sich um zwei Elemente mit auffallenden Ähnlichkeiten. Der Start-Tag und der End-Tag sind gleich. Deswegen sagt man, dass beide Elemente demselben Elementtyp angehören. Im Vergleich zum Brief erscheint die Struktur des Dokumenttyps Buch sehr viel variantenreicher. Komponenten wie Vorwort, Widmung und Danksagung sind optional. Die Anzahl der Kapitel im Hauptteil darf nicht von vornherein festgelegt sein. Und ob es ein Glossar und ein Literaturverzeichnis gibt, sollte ebenfalls dem Autor überlassen bleiben. Die formale Definition eines Dokumenttyps in XML muss die Flexibilität besitzen, die Gemeinsamkeiten festzulegen, aber zugleich genügend Spielraum für ein konkretes Dokument zu lassen. So würde man wohl kaum sagen, dass ein Buch mit fünf Kapiteln ein Vertreter eines anderen Dokumenttyps ist, als ein Buch mit acht Kapiteln. Fehlt jedoch einem Buch der Titel, so würde man wohl von einem (strukturellen) Fehler sprechen. Die '''Dokumenttypdefinition''' muss also den Titel als zwingenden Bestandteil enthalten, die Anzahl der Kapitel aber offen lassen. Zum Beispiel wird festgelegt, welche Elementtypen in den Dokumenten eines bestimmten Dokumenttyps verwendet werden können. XML bietet nun die Möglichkeit, solche Dokumenttypdefinitionen (abgekürzt DTD) für beliebige Arten von Dokumenten zu formulieren. Die DTD kann sowohl in * externer Form vorliegen und vom XML-Dokument referenziert <?xml version="1.0"?> <!DOCTYPE <NAME> (PUBLIC|SYSTEM) "-//MeineFirma Solutions//DTD EMail V 1.0//DE" "http://www.example.org/dtds/email.dtd"> Bei SYSTEM liegt die DTD auf dem spezifizierten Rechner, bei PUBLIC folgt in Hochkommata und -// der Name des Veröfftlichers, dann die DTD und die Sprache. Danach u.U. der tatsächliche Speicherort. * werden oder sie befindet sich (gesondert ausgewiesen) innerhalb des XML-Dokuments: <?xml version="1.0"?> <!DOCTYPE Gruss [ <!ELEMENT Gruss (#PCDATA)> ]> <Gruss>Hallo Jupiter!</Gruss> Die bekannteste DTD ist die HTML-DTD. Sie definiert die Hypertext Markup Language (bisher noch auf Grundlage von SGML, in Zukunft auf Basis von XML). Leider ist HTML ein schlechtes Beispiel für die Umsetzung der Generic Markup Idee. Auf Grund des breiten Einsatzgebietes gibt es nur wenige logische Auszeichnungen, die naturgemäß nicht textspezifisch sind. Sogar visuelle Auszeichnungen (z. B. »b« für bold und »i« für italic) sind vorhanden. Für die Gliederung eines Textes bietet HTML lediglich Überschriften, jedoch keine Elemente wie etwa »Kapitel«, »Abschnitt«, »Unterabschnitt« usw. Versucht man anhand von Beispielen zu erkennen, welcher Dokumenttyp von HTML definiert wird, wird man einen Typ nur schwer erkennen können: HTML-Dokumente sind Homepages, wissenschaftliche Abhandlungen, Kochrezepte, Bücher, Gedichte, Veranstaltungskalender, Börsenkurse, virtuelle Warenhäuser, usw. Kurz gesagt: HTML-Dokumente sind keine Dokumente eines einzigen Typs. Deshalb ist die HTML-DTD so allgemein und enthält keine textspezifischen Metadaten. XML wird diesen Mangel dadurch lösen, dass jeder eine eigene DTD entwerfen kann, die für die eigenen Daten maßgeschneidert ist.
Summary:
Please note that all contributions to Wiki RB4 may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see
Uwe Heuer Wiki New:Copyrights
for details).
Do not submit copyrighted work without permission!
Cancel
Editing help
(opens in new window)
Toggle limited content width