Upload
kriemhild-storm
View
110
Download
0
Embed Size (px)
Citation preview
Interoperable Informationssysteme - 1Klemens Böhm
XML - verwandte Standards
Interoperable Informationssysteme - 2Klemens Böhm
XML - verwandte Standards XPath - Sprache, mit der logische Bestandteile
eines XML-Dokuments referenziert werden, XPointer - verallgemeinert XPath, man kann jetzt
z.B. auch Worte im Dokument referenzieren, XLink - einheitliche Darstellung von Hyperlinks
(verwendet XPointer), XSL - Transformationssprache (insbesondere
geeignet für XML), DOM - Methoden für Zugriff und Manipulation von
Dokumentbestandteilen, SAX - Callback-Interface der XML-Engine.
Übersicht
DOM
SAX
XPath
XPointer
XLink
Sonstiges
Interoperable Informationssysteme - 3Klemens Böhm
XML - verwandte Standards
XLink
XPointerXSL
XPath DOM SAX
Übersicht
DOM
SAX
XPath
XPointer
XLink
Sonstiges
Interoperable Informationssysteme - 4Klemens Böhm
URN: Namen und Lokatoren
Beispiele für URI•http://rdbm.com/sql.cgi?query="select * from foo"
• urn:ISBN:0-395-36341-6
• urn:uuid:C4ED1820-6207-11d1-A29F-00AA00C14882URI kann optionale ‚trailing Query‘ enthalten, leading ‚?‘, gefolgt von ‚#‘ plus Fragment Identifier
uuid - Universal Unique Identifier (fuer Objekte; DCE = distributed computing environment)
Adressierung von Ressourcen im WWW
URL := Uniform Resource LocatorURN := Uniform Resource NameURI := URN oder URL
Uniform Resource IdentifierRessource := durch URI adressierbares Objekt
URN Definition
urn:namespace identifier:namespace specific string
Übersicht
DOM
SAX
XPath
XPointer
XLink
Sonstiges
Interoperable Informationssysteme - 5Klemens Böhm
Schnittstelle XML-Processor - Anwendung
Document Object Model (DOM) Ereignisorientierte VerarbeitungÜbersicht
DOM
SAX
XPath
XPointer
XLink
Sonstiges
Interoperable Informationssysteme - 6Klemens Böhm
XML Processor, Application
Application
XML-Processor(XML-Engine)
Callback-Methoden
DOM-Methoden
Aufruf fürXML-Dok.
MM-Tool 1 MM-Tool 2
...
Übersicht
DOM
SAX
XPath
XPointer
XLink
Sonstiges
Interoperable Informationssysteme - 7Klemens Böhm
DOM: Document Object Model Objektorientierte Sicht auf XML-Dokumente,
Baumstruktur. Unterschied zur Baumstruktur, wie bisher beschrieben, erlaeutern
Methoden erlauben das Navigieren im Baum und das Manipulieren des Baums.
Keine Aussagen über die konkrete Implementation der Objekte, nur API wird IDL-mässig beschrieben,
(Nicht alle Konzepte sind berücksichtigt, DTDs, Entitäten fehlen,)
Hilfsklassen: Node, NodeList, NamedNodeList, etc.,
Normung erreicht am 1. Oktober 1998
Übersicht
DOM
SAX
XPath
XPointer
XLink
Sonstiges
Interoperable Informationssysteme - 8Klemens Böhm
DOM: Document Object Model Abstrakte Objekttypen:
Node, NodeList, NamedNodeMap (bzw. XMLDOMNode, XMLDOMNodeList, XMLDOMNamedNodeMap bei MS)
Node ist Superklasse für alle Bestandteile des Dokuments, z.B. Elemente, Attribute, Processing Instructions.
NodeList - Typ des Properties childNodes und der Methoden selectNodes und getElementsByTagName.
NamedNodeMap - Attribute eines Elements.
Übersicht
DOM
SAX
XPath
XPointer
XLink
Sonstiges
Interoperable Informationssysteme - 9Klemens Böhm
Übersicht
DOM
SAX
XPath
XPointer
XLink
Sonstiges
Attribute und Methoden von Node
nodeNamenodeTypenodeValue
...
childNodesfirstChildchildNodes.item(0)
attributes
nextSiblingpreviousSibling
parentNode ...ownerDocument
......
... ...
lastChild
(NULL, wenn der aktuelle Knoten Document ist)
Abhaengig vom Typ,z.B. Text bei Textknoten oder Attributwert
hasChildNodes
1 = element, 2 = attribute, …AufzaehlungstypfuerElemente, Attribute u.
Entity Referenzen qualif. Name,sonst fester String
Interoperable Informationssysteme - 10Klemens Böhm
Manipulationsmethoden von Node
...
replaceChild
insertBefore
... ...
removeChildappendChild
Übersicht
DOM
SAX
XPath
XPointer
XLink
Sonstiges
Interoperable Informationssysteme - 11Klemens Böhm
Mögliche strukturelle Beziehungen zw. Objekten unterschiedlichen Typs
Kinder-Beziehung
Document -- Element (maximal eins), ProcessingInstruction, Comment, DocumentType
DocumentFragment -- Element, ProcessingInstruction, Comment, Text, CDATASection, EntityReference
wenn es eingefuegt wird, werden die Kinder an der Stelle eingefuegt DocumentType -- keine Kinder Properties vom Typ NameNodeMap: entities, notations
EntityReference -- Element, ProcessingInstruction, Comment, Text, CDATASection, EntityReference
EntityReference wird u.U. nicht sofort aufgeloest, sondern ‘lazy’. Die Kinder sind die Knoten, die in der Entity enthalten sind.
Element -- Element, Text, Comment, ProcessingInstruction, CDATASection, EntityReference
Attr -- Text, EntityReference ProcessingInstruction -- keine Kinder Comment -- keine Kinder Text -- keine Kinder CDATASection -- keine Kinder Entity -- Element, ProcessingInstruction, Comment, Text, CDATASection,
EntityReference Notation -- keine Kinder
Übersicht
DOM
SAX
XPath
XPointer
XLink
Sonstiges
Interoperable Informationssysteme - 12Klemens Böhm
Weitere DOM-Methoden Methoden von Document:
(da Kontext, d.h. Dokument, zu dem Objekte gehoeren, fuer neue Objekte erforderlich)
createAttribute createCDATASection createComment createDocumentFragment
hat keine Parameter, erlaubt Erzeugung der DOM-Repraes. nur eines Fragments createElement createEntityReference createProcessingInstruction createTextNode
Beispiel: newAttNode = XMLDoc.createAttribute("newAtt")Warum nicht fuer XMLDOMNode?
newAttNode.nodeValue = "hello world"
Übersicht
DOM
SAX
XPath
XPointer
XLink
Sonstiges
Interoperable Informationssysteme - 13Klemens Böhm
Weitere Methoden für Node Methoden:
namespaceURI * - gibt URI des Namespaces zurück nodeTypeString * parsed - liefert TRUE gdw. Knoten und Nachfolger
bereits geparst wurden; sinnvoll z.B. vor
transform. specified * - explizit spezifiziert oder von Default-Wert
abgeleitet? (Eigentlich nur für Attribute)
xml * - enthält die XML-Repräs. des Teilbaums
* - nicht in der W3C-Recommendation, MS-spezifisch
Beispiele (JavaScript-Codefragmente): if (xmlNode.nodeTypeString == "element")
XMLDoc.loadXML(xmlNode.xml) if (elem1.hasChildNodes == true &&
elem1.firstChild.nodeTypeString == "element") elem1.firstChild.text = "I'm the first child of elem1"
Übersicht
DOM
SAX
XPath
XPointer
XLink
Sonstiges
Interoperable Informationssysteme - 14Klemens Böhm
Methoden und Properties anderer Objekttypen
Methoden von XMLDOMDocument: XMLDoc.loadXML("<customer><first_name>Joe</first_name><last_name>Smith</last_name></customer>")
docRoot = XMLDoc.documentElement nodeFromID getElementsByTagName transformNode
Parameter: Stylesheet
Methoden von XMLDOMNodeList: length, item, z.B. item(0), nextNode
Übersicht
DOM
SAX
XPath
XPointer
XLink
Sonstiges
Interoperable Informationssysteme - 15Klemens Böhm
DOM-Beispiel: Transformation von XML Data Islands
<HTML> <HEAD><TITLE>...</TITLE></HEAD> <XML id="source" src="simple.xml"></XML> <XML id="style" src="simple.xsl"></XML> <SCRIPT FOR="window" EVENT="onload"> xslTarget.innerHTML = source.transformNode(style.XMLDocument); </SCRIPT>
<BODY> <P STYLE="font-size:10pt; color:gray"> <B>This demo shows the use of data islands for loading XML source and XSL style sheets and inserting the transformed result into the Web page.</B> </P> <DIV id="xslTarget"></DIV> </BODY></HTML>
Einbettung von DOM MethodentransformNode - DOM MethodeStylesheet applied to rootinnerHTML - sets or retrieves the HTML between the start and end tags of the objectXMLDocument -> DOM Knoten‘source.XMLDocument.transform’
transformNodeToObject
Übersicht
DOM
SAX
XPath
XPointer
XLink
Sonstiges
AlbisWindows/temp/Samples/Samples
Interoperable Informationssysteme - 16Klemens Böhm
Ereignisorientierte Architektur
Anwendungs-programm
Dispatcher
Handler #1
Handler #2
Handler #nParserEreignis-strom
...
AuslösendeMuster
("Trigger")
Callback,mit demEreignis alsParameter
Anmeldungder Handler
Übersicht
DOM
SAX
XPath
XPointer
XLink
Sonstiges
Interoperable Informationssysteme - 17Klemens Böhm
Traversierung
ESIS Ausgabe
?xml version="1.0" encoding="ISO-8859-1"(wetter(plz-87724)plz(datum-981009)datumAeinheit CDATA °C(temperatur-13)temperatur(regen- 30)regenAeinheit CDATA km/h(wind-7)wind(prognose-\n\012\011\011heiter bis wolkig\n\012\011)prognose)wetter
Dokument
<?xml version="1.0" encoding="ISO-8859-1"?><wetter> <plz>87724</plz> <datum>981009</datum> <temperatur einheit="°C">13</temperatur> <regen> 30 </regen> <wind einheit="km/h">7</wind> <prognose> heiter bis wolkig </prognose></wetter>
87724 ... ... ... ... heiter...
"Document Order"-Traversierung
Übersicht
DOM
SAX
XPath
XPointer
XLink
Sonstiges
Interoperable Informationssysteme - 18Klemens Böhm
ESIS - Element Structure Information Set
Strukturinformation zu einem Dokument, Information, die z.B.
durch Abfolge von Eventsexplizit gemacht wird,z.B. Start des Elements, Attributinformation,
ESIS ist implizit Teil von ISO 8879 (SGML),
ist aber nicht explizit definiert, Definition ist eher kontemplativer Natur,
konkrete Definition einer Callback-Schnittstelle ist wohl hilfreicher.http://www.oasis-open.org/cover/WG8-n931a.html
Übersicht
DOM
SAX
XPath
XPointer
XLink
Sonstiges
Interoperable Informationssysteme - 19Klemens Böhm
Ereignisorientiertes API
SAX - Simple API for XML, Callback-Interface, spezielle Beziehung
zwischen Java und SAX: Schnittstelle in Java (nicht z.B. IDL), Implementierung in Java
(andere Implementierungen von Callback-Interfaces nicht identisch)
Übersicht
DOM
SAX
XPath
XPointer
XLink
Sonstiges
Interoperable Informationssysteme - 20Klemens Böhm
Beispiele für SAX-Methoden characters(char[], int, int)
Benachrichtigung bezüglich character data. endDocument()
Benachrichtigung, dass Dokumentende. endElement(String)
Benachrichtigung, dass Elementende. setDocumentLocator(Locator)
übermittelt Objekt, dem Methoden geschickt werden können zum Abfragen von Eigenschaften der Events getLineNumber()
retourniert Nummer der Zeile, wo das aktuelle Event endet
getSystemId() retourniert system identifier des aktuellen Elements, wenn verfügbar, z.B. URL.
Übersicht
DOM
SAX
XPath
XPointer
XLink
Sonstiges
Interoperable Informationssysteme - 21Klemens Böhm
Ereignisorientiertes API
Vor- und Nachteile:+ Minimaler Speicherbedarf,+ Geschwindigkeit, ‚Gedächtnislosigkeit‘, nicht deklarativ.
Übersicht
DOM
SAX
XPath
XPointer
XLink
Sonstiges
Interoperable Informationssysteme - 22Klemens Böhm
Eigenschaften von XPath Motivation: Adressierung beliebiger
logischer Dokumentbestandteile, Non-XML Syntax, Verwendung in URIs und Attributwerten, XPath operiert auf der logischen
Dokumentstruktur.
Übersicht
DOM
SAX
XPath
XPointer
XLink
Sonstiges
Interoperable Informationssysteme - 23Klemens Böhm
XPath - Location Paths Ausdruck (in XPath) - liefert ein Objekt, z.B. node-
set oder string-Objekt, Location Path - wichtige Art von Ausdrücken. Location Path selektiert Menge von Knoten relativ
zu einem Kontext-Knoten (im folgenden Beispiel die Wurzel des Dokuments).
Beispiel für Location Path:/doc/chapter[5]/section[2](‘/’ ist Abkürzung für ‘child::’)
‘Nach unten zum Kind’ ist nur eine mögliche Richtung (“Achse”).
Übersicht
DOM
SAX
XPath
XPointer
XLink
Sonstiges
Interoperable Informationssysteme - 24Klemens Böhm
XPath - Location Paths (2) Absoluter Location Path vs. relativer Location Path, Location Path besteht aus Location Steps, Location Step besteht aus
Achse, ‘Node Test’, Prädikaten.
Beispiel:/descendant::figure[position() = 42]selektiert das 42. Bild im Dokument
Übersicht
DOM
SAX
XPath
XPointer
XLink
Sonstiges
Interoperable Informationssysteme - 25Klemens Böhm
XPath - Ausdrücke Beispiel:
string(/descendant::figure[position() = 42]) = “bla”
weitere Funktionen mit Location Path als Argument, z.B. ‘name’,
Funktion id - Beispiel: id(“foo”) Die üblichen arithmetrischen Operationen und
String-Funktionen sind erlaubt.
Location PathExpressionÜbersicht
DOM
SAX
XPath
XPointer
XLink
Sonstiges
Interoperable Informationssysteme - 26Klemens Böhm
XPath - absolute und relative Lokator-Terme
Kandidatenmengen, relativ zu Knoten #6:
root() 1id("foo“) 4child(…) 10, 11descendant(…) 10, 11, 13ancestor(…) 2, 1preceding(…) 5, 2, 1following(…) 10, 11, 13, 7,
3, 4, 8, 9, 12psibling(…) 5fsibling(…) 7
77
22
6655
44
88 99
33
11
1010 1111
1313
1212
ID="foo"ID="foo"absoluteLokator-Terme
Lokator-Term - spezif. Position, meist relativ zum vorangegangenen Lok. Termorigin - von dort beginnt Traversierung Bsp. ‘next chapter’
Übersicht
DOM
SAX
XPath
XPointer
XLink
Sonstiges
Interoperable Informationssysteme - 27Klemens Böhm
XPath - Einbettung in URLBeispiel: href=‘doc.xml#xpointer(book/chapter[position() <= 5])’
Übersicht
DOM
SAX
XPath
XPointer
XLink
Sonstiges
Interoperable Informationssysteme - 28Klemens Böhm
Beispiele für Ausdrücke (1/3) titel bzw. ./titel
Alle Titel im aktuellen Element. //titel
Alle Titel im Dokument. buch/* Andere Bedeutung von *, verglichen mit DTD -
Wildcard
Alle Kinder des Elements "buch“. buch/@*
Alle Attribute des Buchs, d.h. Attributnamen zusammen mit Werten.
preis/@währungAlle Währungen von Preisen.
buch[zusammenfassung]Alle Bücher, die eine Zusammenfassung enthalten.Albis: Windows/temp/xml/xsl_pattern_builder
Übersicht
DOM
SAX
XPath
XPointer
XLink
Sonstiges
Interoperable Informationssysteme - 29Klemens Böhm
Beispiele für Ausdrücke (2/3) buch[zusammenfassung]/titel
Die Titel aller Bücher, die eine Zusammenfassung enthalten
autor[vorname!text() = "Hans"]autor[vorname $ieq$ "Hans"]Alle Autoren mit Vornamen "Hans"
autor[(titel $or$ auszeichnung)]Alle Autoren mit einen Titel oder einer Auszeichnung $ und Klammern koennen weggelassen werden
mein_namensraum:*Alle Elemente in "mein_namensraum"
//buch[./buchladen/@spezialität = @gattung]Alle Bücher, deren Literaturgattung gleich der Spezialität des Buchladens isterlaeutern ./ kann man weglassen
Übersicht
DOM
SAX
XPath
XPointer
XLink
Sonstiges
Interoperable Informationssysteme - 30Klemens Böhm
Beispiele für Ausdrücke (3/3) book[price<10]//title book[price<10]/*/name book[title $ile$ "The B"]/title book/author[first-name and last-name]
Was wird ausgegeben?
book[author/first-name and author/last-name]/title book[author[first-name and last-name]]/title book[.//name $ieq$ „Plato“]/title book/@genre book[@genre="novel"]/title book[@genre=./author/@pipapo]/title
Übersicht
DOM
SAX
XPath
XPointer
XLink
Sonstiges
Interoperable Informationssysteme - 31Klemens Böhm
Operatoren in Ausdrücken
/ Kind-Operator Direkte Nachfolger,Dokumentelement
// Rekursiver Abstieg Indirekte Nachfolger,. Aktueller Kontext* Wildcard Jeder Elementtyp@ Attribut Unterscheidet Attribut- von
Elementnamen: Namensraumtrenner Trennt Namensraum-
und Namensteil! Methodenaufruf Wendet eine Methode auf das
referenzierte Element an( ) Gruppierung[ ] Filter Subquery
Übersicht
DOM
SAX
XPath
XPointer
XLink
Sonstiges
Interoperable Informationssysteme - 32Klemens Böhm
XPointer XPath erlaubt nur die Referenzierung von
logischen Dokumentbestandteilen, insbesondere Elementen,
XPointer erlaubt Referenzierung beliebiger Stellen (“Points” bzw. “Ranges”) im Dokument (bzw. in Elementen, die mit XPath identifiziert wurden),
Identifizierung von Points und Ranges mit String-Matching Mechanismen.
Übersicht
DOM
SAX
XPath
XPointer
XLink
Sonstiges
Interoperable Informationssysteme - 33Klemens Böhm
point und range Location Types Container Node und Index definieren
Location vom Typ point, z.B.start-point(//title, “pipapo”)[17]Ausdruck identifiziert Start-Punkt des 17. Vorkommens des Strings ‘pipapo’ in einem title-Element,
range-Location ist definiert durch zwei Punkte, z.B. Xpointer(id(“sec2.1”)/descendant:P[last()] to id(“sec2.2”)/descendant::P[last()])
Ausdruck identifiziert Bereich vom letzten P-Element in sec2.1 bis zum letzten P-Element von sec2.2.
Übersicht
DOM
SAX
XPath
XPointer
XLink
Sonstiges
Interoperable Informationssysteme - 34Klemens Böhm
String Matching Mechanismen XPpointer bietet Konstrukt, das den range
von Vorkommen eines Strings zurückliefert. Beispiel:string-range(//title, “Klemens Boehm”)[17]
Übersicht
DOM
SAX
XPath
XPointer
XLink
Sonstiges
Interoperable Informationssysteme - 35Klemens Böhm
Hyperlinks Motivation, Begriffsbildung, Standardisierung durch XLink.
Übersicht
DOM
SAX
XPath
XPointer
XLink
Sonstiges
Interoperable Informationssysteme - 36Klemens Böhm
Übersicht
DOM
SAX
XPath
XPointer
XLink
- Motivation
- Begriffe
- Standardis.
Sonstiges
Links - Motivation Ziel: Positionen in einem Dokument referenzieren
und diese mit einer Query beschreiben; Standard-HTML-Mechanismus ist zu unflexibel und erfordert Marke im Zieldokument;
man will Links definieren aus Dokumenten, die man nicht modifizieren kann;Beispiel auf folgender Folie; Unterschied zw. Definieren von Links und Darstellen von Links
Links können i.a. mehrere ‘Zielobjekte’ referenzieren; gleiche Differenzierung
man will getypte Links und Links mit Attributen; Ressource kann Teil mehr als eines Links sein
(mit HTML und herkömmlichen Browsern nicht ohne weiteres darstellbar).
Interoperable Informationssysteme - 37Klemens Böhm
Bestandteile eines Links - Beispiel
Konstruktions-unterlagenModell XY500‘Fahrzeugelektrik’Bild 28
AuswertungKundenbeschwerden‘Fahrzeugelektrik’vorletzter Absatz
Konstruktions-unterlagenModell XY500‘Hydraulik’drittes Bild
Schluss-folgerung
TÜV-Vorschrift xyz,Abschnitt 28
ProtokollEntwickler-Meeting03.05.1999Punkt 18result
resultinput
input
input
LocatorsDaten, die Teil des Links sind, die Ressource identifizieren
‘Link-Semantik’
Übersicht
DOM
SAX
XPath
XPointer
XLink
- Motivation
- Begriffe
- Standardis.
Sonstiges
Semantik der ‘remote resource’
Beispiel ‘Design Rationale Management’
Interoperable Informationssysteme - 38Klemens Böhm
Links in XML
Simple Linknur ein Locator;(Locator - Daten im Link, die eine Ressource identifizieren) ein Element f. Linking Element u. Locator
Extended Link
XPointer Link Group
Übersicht
DOM
SAX
XPath
XPointer
XLink
- Motivation
- Begriffe
- Standardis.
Sonstiges
Interoperable Informationssysteme - 39Klemens Böhm
Inline-Links und out-of-line Links Differenzierung zwischen inline-Links
und out-of-line Links: inline-Link: Inhalt des Link-Elements
ist eine Ressource, z.B. A in HTML. out-of-line Link - Gegenteil.
Inhalt des Links ist keine Ressource.out-of-line simple link sind moeglich, “one-ended”, bringen Properties mit Locations in Verbindung
Es gibt keine Alternative zu out-of-line Links
bei Read-Only Ressourcen und ‘multi-dimensional Traversal’.
nicht dasselbe: Interne Links - externe Links.
Übersicht
DOM
SAX
XPath
XPointer
XLink
- Motivation
- Begriffe
- Standardis.
Sonstiges
Interoperable Informationssysteme - 40Klemens Böhm
Beispiel für inline-Link
<mylink xml:link="simple" title="Citation” href="http://www.xyz.com/xml/foo.xml" show="new" content-role="Reference">as discussed in Smith(1997)</mylink>
Semantik der lokalen RessourceLocator - Daten im Link,
die eine Ressource identifizieren
beschreibt remote resource
Attribut xml:link enthaelt Information darueber, um was fuer einen link-Typ es sich handelt, z.B. ‘simple’ oder 'extended' oder 'group'.‘Citation’ - Zitat
Übersicht
DOM
SAX
XPath
XPointer
XLink
- Motivation
- Begriffe
- Standardis.
Sonstiges
Interoperable Informationssysteme - 41Klemens Böhm
Beispiel: Extended Link
<?xml version="1.0"?><product xml:link="extended"
inline= "false“ indicates inline status
title= "Das FooBar Produkt"id= "id12345">
<locator href= "desc.xml"role= "Beschreibung"/>
<locator href= "img.gif"role= "Bild"/>
<locator href= "urn:rdbm:select price
from products
where id="id12345"role= "Preis"/>
</product>
locatorlocator
productproduct
locatorlocator locatorlocator
XLinks sind vollwertige Objekte.role kann auch Attribut fuer Link-Element sein.
Übersicht
DOM
SAX
XPath
XPointer
XLink
- Motivation
- Begriffe
- Standardis.
Sonstiges
Interoperable Informationssysteme - 42Klemens Böhm
Was wird durch XLink standardisiert?
Locators, die die ‘remote resources’ identifizieren
Beschrei-bung des Links(‘Link-Semantik’)
Beschreibung (‘Semantik’)der remote resources
Beschreibung (‘Semantik’)der local resource,falls inline-Link
...Übersicht
DOM
SAX
XPath
XPointer
XLink
- Motivation
- Begriffe
- Standardis.
Sonstiges
Interoperable Informationssysteme - 43Klemens Böhm
Attribute der Link-Elemente <link>-Element Attribute
role Rolle des LinksText, der von
Anwendungen interpretiert wird, z.B.PRIMARY, criticism,
summary. Attribute für lokale Ressource, falls inline:
content-role Rolle des anchors content-title
keine Aussage darueber, wie diese Information verwendet werden kann/soll; optionales Attr.
Übersicht
DOM
SAX
XPath
XPointer
XLink
- Motivation
- Begriffe
- Standardis.
Sonstiges
Interoperable Informationssysteme - 44Klemens Böhm
Attribute der Link-Elemente (2) Entfernte Ressource:
role title ‘displayable caption’ show embed, replace, new
wie wird Ressource angezeigt, zu der navigiert wird?
actuate auto, userwann soll Traversierung des Links erfolgen? Auto - Anzeigen der Ressource, sobald and. Ressource des Links angetroffen wurde (falls Reihenfolge der Ressourcen erforderlich, die aus dem Link)
Übersicht
DOM
SAX
XPath
XPointer
XLink
- Motivation
- Begriffe
- Standardis.
Sonstiges
Interoperable Informationssysteme - 45Klemens Böhm
locator
Das Link-Element
•<link>-Element Attribute– role– inline (true, false)
– lokalen Ressource (falls inline)– content-role– content-title
– entfernte Ressource– role– title– show (embed, replace, new)– actuate (auto, user)– behaviour
‚traversal behavior‘, keine Constraints fuer Attributwert
• <locator>-Element Attribute– href
locator
linkelement
..
.
entfernteRessource
lokaleRessource
Übersicht
DOM
SAX
XPath
XPointer
XLink
- Motivation
- Begriffe
- Standardis.
Sonstiges
Interoperable Informationssysteme - 46Klemens Böhm
XML Architektur des W3C
CSS Cascading Style Sheets (Level 1 und 2)Recommendation, 12.05.1998
DOM Document Object Model (DOM) Level 1Recommendation, 01.10.1998
RDF/RDFS Resource Description Framework4. Working Draft, 08.10.1998
XLink Extensible Linking Language2. Working Draft, 03.03.1998
XML Extensible Markup LanguageRecommendation, 10.02.1998
XMLNS Namespaces in XML4. Working Draft, 16.09.1998
XPointer XML Pointer Language2. Working Draft, 03.03.1998
XSL Extensible Stylesheet Language2. Working Draft, 18.08.1998
Übersicht
DOM
SAX
XPath
XPointer
XLink
Sonstiges
Interoperable Informationssysteme - 47Klemens Böhm
Standard-DTDs (1/2) Offizielle W3C-DTDs
MathML: Mathematical Markup Language SMIL: Synchronized Multimedia
Integration Language Appel: A Privacy Preference Exchange Language RDF: Resource Description Framework RDFS: Resource Description Framework
Schemas SVG: Scaleable Vector Graphics HTML: Hypertext Markup Language
E-Commerce OFX: Open Financial Exchange XMLEDI: Electronic Data Interchange
Übersicht
DOM
SAX
XPath
XPointer
XLink
Sonstiges
Interoperable Informationssysteme - 48Klemens Böhm
Standard-DTDs (2/2) Wissenschaft
CML: Chemical Markup Language Computer, Kommunikation
CDF: Channel Definition Format OSD: Open Software Distribution WIDL: Web Interface Definition Language JSML: Java Speech Markup Language DocBook
Über hundert weitere von verschiedenen Gruppen angekündigte DTDs: Immobilien, Logfiles, Genealogie etc.
Übersicht
DOM
SAX
XPath
XPointer
XLink
Sonstiges
Interoperable Informationssysteme - 49Klemens Böhm
Mit XML zusammenhängende Standards
SGMLStandard Generalized Markup LanguageISO/IEC 8879:1986
HyTimeHypermedia/Time-based Structuring LanguageISO/IEC 10744:1992
UCSUniversal Multiple-Octet Coded Character Set (UCS)ISO/IEC 10646-1:1993
DSSSLDocument Style Semantics and SpecificationLanguageISO/IEC 10179:1996
Übersicht
DOM
SAX
XPath
XPointer
XLink
Sonstiges