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
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
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
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Markup Language History

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
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
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
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)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
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
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

XML Dokumentenstruktur

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
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)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
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
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
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
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
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
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
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)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
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.)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
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)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
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
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

XML Document Parser

A

• Zwei Arten von Parsern:

  • Document Object Model / Dokumentobjektmodell (DOM)
  • Einfache API für XML (SAX)
  • DOM-Typ-Parser laden alle Elemente in den Speicher und erstellen ein Baumdiagramm, das dann verarbeitet werden kann
  • Parser des SAX-Typs navigieren durch ein Dokument und geben nur Teile dieses Dokuments an, ohne es vollständig in den Speicher zu laden
  • Vergleich:
  • SAX kann Dateien jeder Größe analysieren
  • SAX ist einfach zu bedienen
  • SAX ist effizient, wenn nur Teile der Datei relevant sind
  • DOM erlaubt freien Zugriff und Änderungen in einem Dokument
  • DOM erstellt ein vollständiges Bild des Dokuments im Speicher

• Typische Anwendungen:

  • DOM Parser sind sehr nützlich, wenn sie das ganze Dokument gleichzeitig bearbeiten, (z.B. Bearbeiten eines strukturierten Textes in einem Textbearbeitungsprogramm)
  • SAX sind nützlich für den schnellen Abruf von Datensätzen, z.B für den zugriff auf Adressen in einer XML-basierten Kundendatenbank