Einführung in XSLT und XQuery Flashcards

1
Q

Was ist XLST?

A

XSLT ist eine XML-Anwendung, d. h. ein XSLT-Dokument ist auch ein XML-Dokument. Ein XSLT-Dokument beinhaltet Regeln, nach denen ein anderes XML-Dokument transformiert werden kann. Dabei ist das Zielformat prinzipiell frei und nur von dem XSLT-Dokument abhängig.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Wie wird ein XLST-Dokument noch genannt?

A

Ein XSLT-Dokument wird u. a. auch Stylesheet genannt. Ein Stylesheet enthält Vorlagen oder Muster (engl. templates), die jeweils aus einem Muster und einem Inhalt bestehen.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Was ist ein XLST-Prozessor?

A

eine Anwendung, die ein XML-Dokument nach Maßgabe eines XSLT-Stylesheets transformiert

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Wofür steht XLST?

A

XSL-Transformationen

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

XSLT-Stylesheets sind selbst … XML-Dokumente.

A

wohlgeformte

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

XSLT benutzt bei der Transformation nur das im XML-Dokument vorhandene … . Inhaltsmodelle wie … oder … werden nicht einbezogen. Es erfolgt somit keine Prüfung auf Gültigkeit, aber das Quelldokument muss wohlgeformt sein.

A

Markup, DTDs, XML-Schemata

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Was ist das Anwendungsgebiet von XLST?

A

Das Anwendungsgebiet von XSLT ist zum einen die Transformation zum Zwecke der Darstellung, auch Präsentationsorientiertes Publizieren (engl. presenta-tion oriented publishing, POP) genannt. Mit unterschiedlichen Stylesheets können die Daten unter anderem in XHTML, SVG und viele andere Formate umgewandelt werden.

Weiter wird die Transformation zum Zwecke des Datenaustausches, gerne mit dem englischen Begriff message oriented middleware (MOM) bezeichnet, benutzt.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Warum kann man XLST-Stylesheets nicht auf HTML-Dateien anwenden?

A

Weil keine Prüfung auf Gültigkeit vorgenommen wird

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Eine Transformation besteht aus einer Reihe von einzelnen … , die … genannt werden. Ein Template beinhaltet ein auf … basierendes Muster, das beschreibt, für welche … es gilt.

A

Transformationsregeln, Templates, XPath, Knoten

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Für jede Art Knoten gibt es eine vorgegebene Regel, die greift, wenn im Stylesheet keine Regel für diese Art Knoten definiert ist. Diese Regeln lauten:

A
  • Für Element- und Wurzelknoten werden die Kindelemente untersucht.
  • Für Text- und Attributknoten wird der Text bzw. der Attributwert ausgegeben.
  • Für Kommentar- und Steueranweisungsknoten wird nichts ausgegeben.
  • Für Namensraumknoten werden alle Namensraum-Deklarationen automatisch in das Ausgabedokument eingefügt.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Die Top-Level-Elemente von stylesheet sind:

A

< xsl:import / >
< xsl:include / >
< xsl:namespace-alias / >
< xsl:strip-space / >
< xsl:preserve-space / >
< xsl:output / >
< xsl:key / >
< xsl:decimal-format / >
< xsl:atribute-set / >
< xsl:variable / >
< xsl:param / >
< xsl:template / >

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Nun folgen noch kurz die Prioritätsregeln, wenn es zu Template-Konflikten kommen sollte, also wenn mehrere Templates auf ein und denselben Knoten betreffen:

A
  1. Regeln mit spezifischen Informationen kommen immer vor Regeln mit allgemeinen Informationen, z. B. kommt die spezifische Information.
  2. match=“/fernuni/lehrgebiet/multimedia/professor/name“ vor
    match=“//name“. Suchmuster mit Wildcards sind allgemeiner als Suchmuster ohne Wildcards.
  3. Wenn mit den Optionen in Punkt 1 und 2 nicht priorisiert werden kann, dann bekommt die zuletzt stehende Regel den Vorrang.
  4. Mit dem Attribut priority kann die Priorität gezielt beeinflusst werden, wobei Ganzzahlen als auch reelle Zahlen verwendet werden können, je höher die Zahl, umso höher die Priorität.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Was ist XQuery?

A

XQuery ist also eine Abfragesprache für XML-Dokumente, die ähnlich wie SQL für relationale Datenbanken funktioniert und als Ergebnisse Datensätze zurückliefert. Für XQuery gibt es eine non-XML-Syntax und eine XML-Syntax.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

XQuery ist eine Abfragesprache für XML-Dokumente, die ähnlich wie SQL für relationale ______________________________ funktioniert und als Ergebnisse Datensätze zurückliefert. Für XQuery gibt es eine ______________________________ und eine XML-Syntax. Für XQuery und XPath gilt, dass sie selbst keine XML-____________________________________ sind, sondern eine eigene Syntax zur Bildung von Zeichenketten enthalten, vor allem zu Adressierung von __________________________________ eines Dokumentes.

A

XQuery ist eine Abfragesprache für XML-Dokumente, die ähnlich wie SQL für relationale Datenbanken funktioniert und als Ergebnisse Datensätze zurückliefert. Für XQuery gibt es eine non-XML-Syntax und eine XML-Syntax.
Für XQuery und XPath gilt, dass sie selbst keine XML-Anwendungen sind, sondern eine eigene Syntax zur Bildung von Zeichenketten enthalten, vor allem zur Adressierung von Untermengen eines Dokumentes.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Worin unterscheiden sich die statische Analysephase und die dynamische Auswertungsphase bei XQuery-Abfragen?

A

X-Query definiert zwei Phasen der Verarbeitung:

statische Analysephase:
Während dieser Phase wird die Abfrage in eine interne Darstellung, den sogenannten Operationsbaum überführt.

dynamische Auswertungsphase:
Phase, während der der Wert eines Ausdruckes berechnet wird. Sie beginnt nach Vollendung der statischen Analysephase und kann nur starten, wenn keine Fehler während der statischen Analysephase ermittelt wurden.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Atomare Werte (XQuery)

A

Atomare Werte sind die primitiven Schematypen mit dem Präfix xs und benutzer-definierte Typen. Sie werden durch Konstruktoren erzeugt. Dabei wird dem Wert ein Typ zugeordnet.

17
Q

Knoten (XQuery)

A

Knoten bilden einen Baum, der aus einem Wurzelknoten plus allen Knoten besteht, die direkt oder indirekt vom Wurzelknoten erreichbar sind. Jeder Knoten gehört genau einem Baum, und jeder Baum hat genau einen Wurzelknoten.

18
Q

Bei XQuery sind die sieben Arten von Knoten von XPath übernommen:

A

Dokumentknoten: Ein Baum, dessen Wurzelknoten ein Dokumentknoten ist, kennzeichnet ein Dokument. Wenn der Wurzelknoten des Baumes kein Do-kumentknoten ist, dann handelt es sich um ein Fragment.

Elementknoten: entspricht einem XML-Element. Der Wert eines Elementknotens ist der textuelle Wert des Knotens und seiner Nachfolger bzw. der typisierte Wert aus der Schemavalidierung (oder xs:untypedAny ohne Schema: nicht typisiert und xdt:untypedAtomic: typisiert).

Textknoten: haben reinen Text als Inhalt, der nicht weiter ausgewertet wird Attributknoten: entsprechen den Attributen von XML-Elementen Namens-raumknoten: stehen für den im aktuellen Kontext gültigen Namensraum

Verarbeitungsanweisungs-Knoten: nehmen eine Verarbeitungsanweisung (Ziel und Inhalt) auf

Kommentarknoten: Knoten haben einen textuellen und einen typisierten Wert

19
Q

Typsystem von XQuery

A

XQuery hat ein mächtiges und komplexes Typsystem. Die Typen werden von XML- Schema importiert. Jeder Ausdruck in XQuery hat einen statischen Typ und jede XDM- Instanz hat einen dynamischen Typ.

20
Q

Elementare Ausdrücke (XQuery)

A

Elementare Ausdrücke sind Literale, Variablenreferenzen, Ausdrücke für Kontextknoten, Konstruktoren und Funktionsaufrufe.

21
Q

Variablenreferenzen (XQuery)

A

Variablenreferenzen bestehen aus einem Dollarzeichen gefolgt von einem qualifizierten Variablenreferenzen binden Namen.

22
Q

Context Items in XQuery

A

Ausdrücke für Kontextknoten erlauben es, zum Auswertungszeitpunkt einen Bezug auf den aktuellen Kontextknoten herzustellen. Der Bezug wird durch einen Punkt ausgedrückt.

23
Q

FLWOR-Ausdrücke

A

FLWOR steht für die möglichen Klauseln For, Let, Where, Order by und Return eines FLWOR-Ausdrucks. Dieser Ausdruck ist der zentrale Teil einer XQuery-Abfrage, ähnlich einer SELECT FROM WHERE-Anweisung in SQL. FLWOR-Ausdrücke können verschachtelt sein.

24
Q

For- und Let-Klauseln

A

For- und Let-Klauseln dienen der Bindung von Variablen und können auch ohne den Kontext eines FLWOR-Ausdrucks sinnvoll eingesetzt werden. Die for-Klausel ist vergleichbar mit der FROM-Anweisung in SQL und leitet einen einfachen Iterationsausdruck ein.

Die let-Klausel hat die Bedeutung einer lokalen Variablendeklaration. Die Deklaration der XQuery-Variable beginnt immer mit einem $-Zeichen:

25
Q

Where-, Order By- und Return-Klauseln

A

Die where-Klausel ist für das Filtern der Daten zuständig und ähnelt der Funktion von WHERE in SQL.

Die Klausel order by veranlasst die Sortierung der Ergebnissequenz und return selektiert die Ausgabewerte für das Ergebnisdokument wie SELECT bei SQL.