Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

XPointer Die Xpointer beschreiben einen Ort oder Bereich innerhalb einer XML-Instanz. Die XPointer bauen auf der XML Path Language auf. Die XPointer ist.

Ähnliche Präsentationen


Präsentation zum Thema: "XPointer Die Xpointer beschreiben einen Ort oder Bereich innerhalb einer XML-Instanz. Die XPointer bauen auf der XML Path Language auf. Die XPointer ist."—  Präsentation transkript:

1 XPointer Die Xpointer beschreiben einen Ort oder Bereich innerhalb einer XML-Instanz. Die XPointer bauen auf der XML Path Language auf. Die XPointer ist eine kleine Mini-Sprache, die Sie am Ende eines URI nach haften k ö nnen #, im Fall, wohin das URI auf ein XML-Dokument zeigt. (Z.B http://www.wrox.com/Catalog/catalog.xml#xpointer(book 1 ))

2 Bezeichnung Erkl ä rung axis(Achse)Folge von Daten, die XPointer nutzt location(Ort)kann hier ein Punkt oder Bereich sein location-set(Ortmenge)Geordnete Liste aus dem, was ein XPointer-Ausdruck ergibt predicate(Pr ä dikat) Boolscher Ausdruck; von XPointer dazu genutzt Teil-Ressourcen im Verh ä ltnis zu anderen auszuw ä hlen point(Punkt) Ort im Dokument range(Bereich)Auswahl aus dem gesamten Inhalt zwischen zwei Punkten einige Begriffe

3 Es gibt drei Arten, wie sich die XPointer ausdr ü cken lassen: Bare Name (ein Name), Child Sequence (kindfolge) und Full XPointer (ein Fragment).

4 Bare Name Falls das Element die Attribute vom Typ ID (in DTD oder Schema definiert wird) hat, kann man direkt diesen Attributwert vom Typ ID nutzen, um dieses Element zu finden. Beispiele: http://www.xlinksample.com/xpointer.xml#xpointer(id(" _loc")) Abk ü rzung:http://www.xlinksample.com/xpointer.xml#_l oc Auf diese Weise gibt es ein Vorteil: Falls man die Elemente mit Attributen vom Typ ID nutzt, entsteht auf keinen Fall diese Verbindung w ä hrend der Ä nderung der Struktur von Dateien den Fehler.

5 Full XPointer Ein vollst ä diger XPointer-Ausdruck kann ein XPointerteil oder mehre XPointerteile enthalten. Jeder XPointerteil muss mit "xpointer" beginnen. Aufgrund dieses Ausdruck kann man die Verweisoperation tun. Beispiele: xpointer(/child::spec/child::body) xpointer(descendant::language[position()=2])

6 Child Sequence: Au ß erdem erm ö glicht XPointer es, auf Elemente durch Aufschreiben ihres Ortes zuzugreifen: Daf ü r steht die Kindfolge(ChildSeq). Auf diese Weise lassen sich Elemente – nicht Attribute oder andere Knoten – ü ber Schr ä gstriche (/) und Ziffern (n) ansprechen. Nat ü rlich kann man auch in einem XPointer-Ausdruck vor Child Sequence die Bare Name benutzen. Dann ist das Wurzelelement das Element mit Attribute vom Typ ID. Sonst muss dieser Ausdruck mit /1 anfangen.

7 1.Beispiel: #/1/4/2 Mit Full XPointer kann man dieses Beispiel so schreiben: #xpointer(/child::*[position()=1]/child::*[position()=4]/ child::*[position()=2]) 2.Beispiel: book1/4/3 Mit Full XPointer kann man auch dieses Beispiel so schreiben: #xpointer(id( book1")/child::*[position()=4]/child::*[position()= 3])

8 Catalog Book color = red ID= book1 Title IE5 – Eine Referenz f ü r XML-Programmierer /Title Pages 480 /Pages ISBN 1-861001-57-6 /ISBN RecSubjCategories Category Internet /Category Category Web Publishing /Category Category XML /Category /RecSubjCategories Price 49.99 /Price /Book /Catalog

9 XPath-Erweiterungen in XPointer Die Verweism ö glichkeiten von XPath basieren auf Knoten in XML-Dokumenten. Aber vielmehr geht es in XPointer um die Suche nach Orten im Dokument. Dabei kann es auch um Bereiche gehen, die sich ü ber Elementgrenzen oder Teilb ä ume erstrecken.

10 Zwei notwendige Begriffe Point: Ein Punkt (point) besteht aus einem Beh ä lterknoten (container node) und Index (gr öß er oder gleich Null). Range: Ein Bereich (range) ist durch zwei Punkte definiert. (Allerdings m ü ssen sich die beiden Punkte im selben Dokument befinden.) RangeExpr ::= Expr to Expr (Beispiel: Xpointer (id( abschnitt2.1 ) / descendant::P last() to id( abschnitt2.2 ) / descendant::P last() )

11 Funktionen 1.string-range(location-set string number? number?): Sucht in jedem Ort der Ortmenge (1.Parameter) nach der Zeichenkette (2.Parameter); die beiden Zahlen benennen den Anfang (Default:1) und die L ä nge des gesuchten Bereichs (Default: bis zum Ende) Beispiel: string-range(//P. Am Anfang war ) 3 2.range(location-set): Ort im Argument 3.range-inside(location-set): Inhalt von Orten im Argument 4.start-point(location-set):R ü ckgabe eines oder mehrerer Punkte; ein Start-Punkt f ü r jeden Ort im Argument

12 6.here(): R ü ckgabe eines Elements als Ortmenge 7.origin(): R ü ckgabe eines Elements, von dem eine Verzweigung ausging 8.boolean unique(): R ü ckgabe des Wert wahr f ü r den Fall, dass die kontextgr öß e=1 ist (sonst unwahr ) 5.end-point(location-set): R ü ckgabe eines oder mehrerer Punkte; ein Start-Punkt f ü r Jeden Ort im Argument Beispiel: end-point(//Kapitel 3 )

13 Fehler f ü r die XPointer Ein Syntaxfehler liegt vor, wenn eine Zeichenkette nicht der in XPointer definierten Syntax vorliegt (Software sollte solche XPointer nicht verfolgen). Ein Ressourcen-Fehler liegt vor, wenn die XPointer- Software keine Ressource findet, von der sie Ausgehen kann (etwa ein falscher URI). Ein Teil-Ressourcen-Fehler liegt vor, wenn die Anwendung keine Teil-Ressource findet, die der Beschreibung entspricht.


Herunterladen ppt "XPointer Die Xpointer beschreiben einen Ort oder Bereich innerhalb einer XML-Instanz. Die XPointer bauen auf der XML Path Language auf. Die XPointer ist."

Ähnliche Präsentationen


Google-Anzeigen