XML

Transcription

XML
h_da WS 2010/2011
XML
Seite 1
XML – Was ist das?
h_da WS 2010/2011
<html>
<head/>
<body style="background-color:white; background-image:url(&quot;
file:///D:/activities/PAPERS/FH_XML/documents/hg.gif&quot;)">
<META http-equiv="Content-Type" content="text/html; charset=UTF-16">
<h1 style="border-color:RED; color:red; font-size:24pt; fontweight:bold"/>
CSS
<span style="color:green; font-size:24.0pt; font-style:italic; fontweight:bold">Beispiel</span><span style="color:red; font-size:24.0pt;
font-weight:bold"> Seite</span></h1>
<p><span style="font-size:12.0pt">Saying What it Means: SemiAutomated (News) Media Annotation</span></p>
</body>
</html>
Seite 2
XML – Was ist das?
<?xml version="1.0" encoding="UTF-8"?>
<!--Sample XML file generated by XML Spy 2007 sp2
(http://www.xmlspy.com)-->
<!DOCTYPE memo SYSTEM "D:\BACKUP\PAPERS\documents\example.dtd">
h_da WS 2010/2011
<memo id=“M050001“ confidential =“no“ >
<to>Müller</to>
<from>Maier</from>
<date>31.03.2009</date>
<subject>XML-Vorlesung</subject>
<para>Die nächste Vorlesung findet in einer Woche statt.</para>
<para>Bis nächste Woche.</para>
</memo>
Seite 3
XML – Was ist das?
XML steht für “eXtensible Markup Language“.
Eine Auszeichnungssprache hat die Aufgabe:
• logischen Bestandteile und den strukturellen Aufbau eines Dokuments zu
beschreiben und Attribut-Werte-Paare der logischen Struktur zuzuordnen.
h_da WS 2010/2011
XML ist eine
• Metasprache für Auszeichnungssprachen, d.h. eine Sprache mit der Sprachen
beschrieben werden können.
Seite 4
XML – Was ist das?
1. XML steht für strukturierte Daten
2. XML ist Text, aber nicht zum Lesen
3. XML ist eine Familie von Techniken
4. XML ist neu, aber nicht so neu
5. XML ist modular
h_da WS 2010/2011
6. XML ist die Basis für RDF und das Semantic Web
7. XML ist lizenzfrei, plattformunabhängig und gut unterstützt
Seite 5
XML
Extensible Markup Language
Standardisierungsaktivitäten seit 1996.
Derzeit gültige Spezifikation vom Februar 1998, Version 1.0.
Extensible Markup Language (XML) 1.0 (Fifth Edition), 26 Novemer 2008
XML 1.1 (second edition), W3C Recommendation, 16. August 2006 ,
h_da WS 2010/2011
XML 1.1 ist ein Update von XML , der
• XML unabhängig von einer Unicode Version macht.
• Bezieht Prüfung auf Normalisierung ein.
Seite 6
XML
Extensible Markup Language
Entwicklungen, die XML stark beeinflusst haben, sind HTML und SGML.
HTML: HyperText Markup Language
SGML: Standardized General Markup Language
h_da WS 2010/2011
Nachteile von HTML
-
Sehr viele “Layout”-Elemente in HTML (FONT, CENTER, BGCOLOR)
-
Sehr allgemeiner und beschränkter Satz von Elementen
-
Sehr wenig Strukturierungsmöglichkeiten
Seite 7
SGML - Hintergrund und allgemeiner Ansatz
Hintergrund ist die Dokumenterstellung (Text-Dokumente) und die dabei auftretenden
Kompatibilitätsprobleme bei Austausch und gemeinsamer Bearbeitung.
Die Idee des “generalized markup”:
Markup soll die Struktur statt physikalische Eigenschaften beschreiben
Markup soll genau sein und unmissverständlich sein für Programme und Menschen
(Goldfarb 1970)
Ausgangspunkt war DCF/GML von IBM (Document Composition Facility / Generalized Markup
Language)
h_da WS 2010/2011
Das Ergebnis (SGML) zeichnet sich durch
-
Funktionale Komplexität und
-
Syntaktische Komplexität aus
Seite 8
XML - Extensible Markup Language
Überwindung dieser Nachteile durch:
Trennung von Layout und Inhalts-Strukturierung
Als Sprache eine Vereinfachung von SGML
h_da WS 2010/2011
bessere Unterstützung von Link-Funktionalität (X-Link)
Formatierungssprache (XSL)
Seite 9
XML – Extensible Markup Language
XML die Grundlage für das Definieren verschiedenartiger
Dokumenttypen.
h_da WS 2010/2011
Bei einem Dokumenttyp handelt es sich um einen Sammelbegriff für
Dokumente gleicher Struktur, ähnlich einer Klasse.
Der Begriff "erweiterbar" besagt, dass XML nicht auf eine
Dokumentstruktur festlegt, sondern vielmehr die Definition einer
beliebigen hierarchischen Struktur zulässt.
Seite 10
XML – Extensible Markup Language
• XML trennt die Form vom Inhalt.
Außerdem ist XML
• Einfach: Daten im XML-Format sind leicht lesbar, gut verständlich
• Offen: XML ist ein W3C-Standard
• Erweiterbar: Art und Anzahl der Tags sind nicht begrenzt.
h_da WS 2010/2011
• Selbstbeschreibend: kein explizites Schema notwendig.
• Maschinell lesbare Kontextinformationen: Der Aufbau der Tags,
Attribute und Elemente bieten Kontextinformationen.
Seite 11
XML – grundlegende Syntax
Start- und End-Tags
Die hierarchische Struktur eines XML-Dokuments wird durch Tags
beschrieben.
Sie - wie auch in HTML - treten paarweise als Start- und End-Tags auf
und geben an, welche Rolle der dazwischen liegende Text hat.
h_da WS 2010/2011
Beispiel:
<xxx> ... Text ... </xxx>
Seite 12
XML – grundlegende Syntax
Im Gegensatz zu HTML ist XML „case-sensitive“, d.h. es wird zwischen
Groß- und Kleinschreibung unterschieden:
<xxx> und <Xxx> und <XXX> sind voneinander verschiedene Tags.
Wenn ein Tag als <xxx> definiert ist, dann darf man nicht stattdessen
<XXX> schreiben, und auch eine Kombination wie
h_da WS 2010/2011
<XXX> ... falsch ... </xxx>
ist syntaktisch nicht korrekt.
Seite 13
XML – grundlegende Syntax
Elemente können Attribute besitzen.
Sie werden im Start Tag nach dem Tag-Bezeichner als durch
„Whitespace“ getrennt Liste aufgeführt.
Werte von Attributen werden zwischen Quotes-Zeichen eingeschlossen.
Dabei darf entweder das ASCII-Zeichen Double-Quotes " oder das ASCIIZeichen Apostroph ' verwendet werden (natürlich nur paarweise, nicht
vermischt).
h_da WS 2010/2011
<xxx yyy="zzz" AA ="1">
<xxx yyy='zzz' AA= '1'/>
Seite 14
XML – grundlegende Syntax
Start- und End-Tags
Alle Struktur-Elemente müssen durch paarweise Tags geklammert
werden. Ist kein Inhalt vorhanden, gibt es ein spezielles Tag für „leere“
Elemente:
h_da WS 2010/2011
<xxx/>
Seite 15
XML – Processing Instructions
<?
PIO
...
any text
...
beliebiger Text
?>
PIC
Die Processing Instruction darf nur Text enthalten
Der Text wird von einem Verarbeitungssystem interpretiert
<? exec voice_recognition?>
h_da WS 2010/2011
<?xml version="1.0" encoding="UTF-8"?>
Processing Instructions können auch als Entities definiert werden.
Seite 16
XML – Kommentare
<!--
...
any text
CO
...
beliebiger Text
-->
CC
Beispiel für einen Kommentar:
<!-- declarations for <head> & <body> -->
h_da WS 2010/2011
Ein Kommentar darf nicht enden mit: --->.
Das Dokument ist in diesem Fall nicht well-formed.
<!-- B+, B, or B--->
Seite 17
XML – General Entity
<!ENTITY S
Name
S
EntityDef
GEO
S?
>
GEC
Beispiel für eine Entity Deklaration:
<!ENTITY Status "Das ist eine vorläufige Version">
h_da WS 2010/2011
Eine Entity Definition kann sein:
●
ein Literal (siehe Beispiel)
●
eine Entity reference
Seite 18
XML – Entity Reference
& Name ;
Also, bezogen auf die vorhergehende Folie
&Status;
Ergibt an der referenzierenden Stelle wieder den Text
h_da WS 2010/2011
Das ist eine vorläufige Version
Seite 19
XML – CDATA Sections
<![CDATA[ ...
any text
...
]]>
CDATA Sections -. Syntax-Definition
[18] CDSect ::= CDStart CData CDEnd
[19] CDStart ::= '<![CDATA[‘
[20] CData ::= (Char* - (Char* ']]>' Char*))
h_da WS 2010/2011
[21] CDEnd ::= ']]>‘
Beispiel:
<![CDATA[<Hallo>Hello, world!</Hallo>]]>
Seite 20
XML – Version 1.0 vs. Version 1.1
• XML 1.0 basiert auf Unicode 2.0, d.h. in Elementbezeichnern,
Attributnamen, Aufzählungswerten sind nur Zeichen aus Unicode 2.0
erlaubt.
• XML 1.1 ist unabhängig von Unicode-Versionen: Alle Zeichen in
h_da WS 2010/2011
Namen, die nicht verboten sind erlaubt.
• XML 1.0 hat die LineEnd Konventionen von Mainframe Computern
nicht unterstützt → Liste der LineEnd Zeichen wurde erweitert. (X85)
Seite 21
XML – Version 1.0 vs. Version 1.1
XML 1.1 definiert Regeln für eine "full normalization". “Fully
normalized” Dokumente erlauben Identitätsvergleiche von Namen,
Attributwerten und Inhalt auf Binärbasis.
Text ist „fully-normalized“, wenn:
1. Ist in UTF-8, UTF-16 oder UTF-32 codiert, enthält keine Zeichen-
h_da WS 2010/2011
Escapes oder Includes, die diese Kodierung verletzen.
2. Ist der Text nicht Unicode codiert, und er wird transcodiert, erfüllt er
die Bedingung 1.
Seite 22
h_da WS 2010/2011
XML Sprachen
XML Dialekt
Beschreibung
CC/PP
Description of capabilities and preferences
associated with a user and user agents. Servers
use this information to customize content.
CML
Chemical Markup Language
ebXML
Electronic Business XML. A standard for
electronic business.
FIXML
Financial Information Exchange XML for real
time security transactions.
Seite 23
h_da WS 2010/2011
XML Sprachen
XML Dialekt
Beschreibung
ICE
Information and content exchange. Controlled
distribution of content to subscribers.
LOTP
Layered object transport protocol.
MathML
Mark up language for mathematical notation.
P3P
Platform for privacy preferences for websites
that gives users more control of their
information on websites.
Seite 24
h_da WS 2010/2011
XML Sprachen
XML Dialekt
Beschreibung
RDF
Resource description framework for describing
object relationships to facilitate integration of
a variety of applications.
SCML
Service Creation Markup Language for scripting
next generation network services.
SMIL
XML for authoring interactive audiovisual
presentations.
SOAP
Simple object access protocol for accessing
objects and services on the web.
Seite 25
h_da WS 2010/2011
XML Sprachen
XML Dialekt
Beschreibung
SVG
XML for describing two-dimensional vector and
mixed vector/raster graphics.
tML
Language for telecom network management.
UDDI
Language for registering and discovering
services on the Web
VoiceXML
Markup language for supporting telephone and
web speech applications.
Seite 26
h_da WS 2010/2011
XML Sprachen
XML Dialekt
Beschreibung
WML
Wireless markup language designed for used
with the WAP protocol. It is intended for use
primarily with narrowband devices (low
bandwidth connectivity and small displays).
WSDL
Web Services Description Language.
WF-XML
Workflow interoperability specification
language for communicating data and
workflow between workflow applications.
WIDL
Web Interface Definition Language for
automating interactions with HTML/XML
documents and forms.
Seite 27
h_da WS 2010/2011
XML Sprachen
XML Dialekt
Beschreibung
XHTML
XML based version of HTML.
LXML/EDI
XML for electronic data interchange.
XML Schemas (XSD)
Structure, content, and semantic definition of
XML documents.
XPath
Language for referring to parts of an XML
document (used in XLT, XQuery, …).
Seite 28
h_da WS 2010/2011
XML Sprachen
XML Dialekt
Beschreibung
XQuery
XML database query language.
XSL
Extensible style language for specifying how
XML documents should be viewed.
XMLP
Peer-to-peer communication.
Seite 29

Similar documents