8. ICS Development III Flashcards
1
Q
HTML
A
- HTML ist eine Markup-Sprache zum Beschreiben, Strukturieren und Präsentieren von Inhalten wie Texten, Bildern, Videos, Hyperlinks, usw.
- Früher hauptsächlich zur Bereitstellung und Präsentation von statischen Inhalten von Service Providern (Nachrichtenanbieter, Unternehmen,…) Probleme von HTML
- HTML ist eine sehr simple Beschreibungssprache für Inhalte:
- Kaum semantische Beschreibungen für Inhalte
- Hauptsächlich Struktur- und Layoutinformationen wie Abschnitte, Überschriften, Listen,… Beispiel siehe Bild
2
Q
Meta Languages
A
- Das beschreiben von Daten erfordert eine formale Markup-Sprache (bestehend aus einem Vokabular und Grammatikregeln)
- HTML ist eine Markup-Sprache, zielt aber darauf ab, Daten zu strukturieren und darzustellen, anstatt sie zu beschreiben
- Eine Sprache, die Daten beschreibt, muss immer domain-spezifisch sein. Folglich ist eine Meta (Markup) Sprache erforderlich
- Eine Metasprache bietet ein Vokabular und Grammatikregeln für die Spezifizierung anwendungsdomänenspezifischer Sprache + Bild
3
Q
Markup Language History
A
4
Q
Standard Generalized Markup Languages
A
• Grundidee aller SGMLs:
- Erstellung verarbeitbarer Dokumente, indem Informationen über Struktur und Inhalt hinzugefügt werden
- Erstellung eines System- und herstellerunabhängigen Standards
- Separate Struktur, Inhalt und Präsentation eines Dokuments
- Eine Metasprache, aus der eine konkrete Sprache (z.B HTML) spezifiziert werden kann
5
Q
Extensible Markup Language (XML)
A
- Subset von SGML, das nur die relevantesten Sprachfunktionen enthält
- Standardisiert
- Selbstbeschreibend dank der enthaltenden Metainformationen
- Erweiterbar mit neuen Elementen -> Erlaubt Erstellung von anwendungsspezifischen Modellen • Geeignet für Datenspeicherung
- Einfach und leicht zu lesen für Menschen (nicht binär) Beispiel für Anwendung von XML: Austausch von Daten zwischen verschiedenen Komponenten einer Anwendung (Microsoft Excel / Access)
6
Q
XML Begriffe:
DTD, XML Scheme, Parser, Style Sheet, Style Sheet Processor
A
- DTD (Document Type Definition): beschreibt die Struktur des XML Dokuments und definiert seine Grammatik
- XML Scheme: Alternative Herangehensweise an DTD mit zusätzlichen Funktionen
- Parser: Übersetzt ein XML-Dokument in eine Dokumentenstruktur, und macht Elemente für Anwendungen zugänglich
- Stylesheet: Layout-Informationen zum Rendern des Inhalts des XML-Dokuments
- Style-Sheet-Prozessor: Implementiert die Stilinformationen und generiert die Ergebnisseiten
7
Q
XML Dokumentenstruktur
A
8
Q
XML Syntax
A
- XML erwartet geschlossene Elemente
- <name> ist ein Tag</name>
- Syntax: Start- und Endtags müssen gleich lauten: <name>Daisy</name>
- Attribute sind im Start-Tag enthalten - <city>Innsbruck</city>
- Ein Element: Alles zwischen den Tags
- Elemente können verschachtelt sein
- Leere Elemente werden abgekürzt: <red></red> wird zu <red></red>
- Ein XML Dokument hat ein eindeutiges Wurzelelement (root element)
9
Q
XML-Dokument ist gut verfasst, wenn…
A
• Ein XML-Dokument ist wohlgeformt, wenn:
- Es nur richtig codierte, legale Unicode-Zeichen enthält
- Keiner der speziellen Syntaxzeichen wie < und & in den Daten auftaucht
- Anfangs- und Endtags sowie leere Tags, die die Elemente abgrenzen, fehlen nicht und überlappen sich nicht - Anfangs- und Endtags müssen genau übereinstimmen (case-sensitive!)
- Es gibt ein einzelnes „root“ Element, das alle anderen Elemente enthält
10
Q
XML Document Tree
A
- XML Dokumente können auch als Objekte in einer objektorientierten Datenbank oder einer Baumstrukur betrachtet werden (Bild siehe Folie 23)
- Aufgrund der baumartigen Struktur und der Ähnlichkeit zu objektorientierten Systemen können Computer beim lesen von XML-Dokumenten die Datenstruktur eindeutig erkennen
11
Q
XML Document Type Definition (DTD)
A
- DTD beschreibt die Struktur eines Dokuments und definiert die Grammatik für das XML-Dokument - Vergleichbar mit der Definition von Variablen
- Definiert, welche Elemente und Referenzen in dem darauf basierendem Dokument vorkommen dürfen
- Deklariert auch Entitäten (eindeutig zu bestimmendes Objekt) die im XML-Dokument verwendet werden dürfen
12
Q
Valide XML-Dokumente
A
- Ein XML Dokument, das einer DTD entspricht, wird „gültig“ genannt
- Gültigkeit des XML-Dokuments kann automatisch von einer Parser-Software ermittelt werden
- Dies ermöglicht den “Konsumenten” von XML-Dokumenten (z. B. Software), zu verifizieren, dass die Inhalte der XML-Dokumente dem erwarteten Dokumentenformat entsprechen Dokumentenformat: (welche Dokumentenstruktur, welche Elemente sind erlaubt)
13
Q
XML Schema Definition (XSD)
A
- Alternative zu DTD
- Beseitigt einige Schwachstellen von DTD durch Hinzufügen der folgenden Features:
- Reihenfolge und Verschachteln ist konfigurierbar
- Konfigurierbare Wertspannen
- Überprüfen von Elementdatentypen
- Größere Auswahl an Datentypen analog zu anderen Programmiersprachen (Boolean, Float etc.)
14
Q
XML Namespaces
A
- XML Dokumente sind besonders nützlich, wenn Daten zwischen Anwendungen, Benutzern oder Unternehmen ausgetauscht werden
- Wie können Verwechslungen von Tags verhindert werden, wenn Daten aus unterschiedlichen Quellen zusammengeführt werden?
- Idee: Ein Universal resource Identifier (URI), der die Einführung eines Namensraums ermöglicht, dafür wird ein Präfix für ein Element erstellt (siehe Vorlesung)
15
Q
Verarbeitung von XML-Dokumenten
A
- Verarbeitung eines XML-Dokuments benötigt einen Parser
- Dies ist eine Software, die DTDs; Schemas und XML-Dokumente lesen kann und einer Anwendung Zugriff auf alle Elemente ermöglicht
- Algemeiner Analyseprozess:
- Eine Anwendung (z.B. Word) öffnet ein XML-Dokument
- Der Parser liest das XML Dokument, und die dazugehörigen DTDs / Schemas
- Parser prüft, ob das XML Dokument gut geformt und gültig ist
- Parser bietet eine Anwendungsschnittstelle mit Funktionen wie „ListElements()“
- Anwendung greift über die verfügbaren Schnittstellen auf die Elemente des XML-Dokuments zu und verarbeitet die empfangenen Daten
- Die Anwendung speichert das geänderte XML-Dokument