XML/XSLT Unterschied? < Sonstige < Schule < Informatik < Vorhilfe
|
Status: |
(Frage) beantwortet | Datum: | 20:35 Do 15.12.2005 | Autor: | Phoney |
Hallo.
Kann man mir mal in eigenen Worten den Unterschied zwischen XML und XSLT erklären? Aus Definitionen von Wikipedia werde ich irgendwie nicht schlau.
XML dient zum Aufbau einer beliebigen Datei und XSLT dient zur Formatierung von Text - Nicht nur in Html sondern auch in Textverarbeitungsprogrammen?
Wenn ich mal aus Wiki zitiere:
"XML definiert dabei die Regeln für den Aufbau solcher Dokumente"
XSLT: " Es baut auf die logische Baumstruktur eines XML-Dokumentes auf und erlaubt die Definition von Umwandlungsregeln"
Für mich klingt das irgendwie gleich. Naja, das heißt eigentlich nur, dass ich die Sätze wohl nicht richtig verstehe.
Grüße Phoney
|
|
|
|
Status: |
(Antwort) fertig | Datum: | 00:03 Fr 16.12.2005 | Autor: | Frank05 |
> Kann man mir mal in eigenen Worten den Unterschied zwischen
> XML und XSLT erklären? Aus Definitionen von Wikipedia werde
> ich irgendwie nicht schlau.
www.w3.org/XML :
Extensible Markup Language (XML) is a simple, very flexible text format derived from SGML (ISO 8879). Originally designed to meet the challenges of large-scale electronic publishing, XML is also playing an increasingly important role in the exchange of a wide variety of data on the Web and elsewhere.
www.w3.org/TR/xslt :
XSLT is designed for use as part of XSL, which is a stylesheet language for XML. In addition to XSLT, XSL includes an XML vocabulary for specifying formatting. XSL specifies the styling of an XML document by using XSLT to describe how the document is transformed into another XML document that uses the formatting vocabulary.
> XML dient zum Aufbau einer beliebigen Datei und XSLT dient
> zur Formatierung von Text - Nicht nur in Html sondern auch
> in Textverarbeitungsprogrammen?
Nicht zur Formatierung von beliebigem Text, sondern von XML Dokumenten.
> Wenn ich mal aus Wiki zitiere:
> "XML definiert dabei die Regeln für den Aufbau solcher
> Dokumente"
Das stimmt so nur bedingt. XML ist eine Sprache, mit der man Daten (beliebiger Art) als Text speichern kann. Wie diese Daten in Textform dann genau aussehen (sprich die Regeln für den Aufbau der Dokumente) wird nicht immer von XML vorgegeben. Dafür gibt es Document Type Definitions (DTD) und XML Schemas. Wobei die XML Schemas selbst wieder XML Dokumente sind - wie übrigens auch ein XSLT Dokument ein XML Dokument ist - lustige Sache.. heißt aber eigentlich nur dass wirklich alles Mögliche mit XML darstellbar ist ;)
> XSLT: " Es baut auf die logische Baumstruktur eines
> XML-Dokumentes auf und erlaubt die Definition von
> Umwandlungsregeln"
> Für mich klingt das irgendwie gleich. Naja, das heißt
> eigentlich nur, dass ich die Sätze wohl nicht richtig
> verstehe.
Genaugenommen ist XSLT eine spezielle Teilmenge von XML (nämlich die Teilmenge, die dazu gedacht ist Regeln zu beschreiben, mit denen wiederum XML Dokumente transformiert werden können).
Klingt jetzt alles vielleicht etwas kompliziert, aber hier ist mal ein einfaches Beispiel (passt so nicht wirklich, weil man da noch ein paar spezielle Zeilen mehr braucht, aber das lenkt hier nur vom Wesentlichen ab):
XML:
<book>
<author>Knuth</author>
<title>The Art of Programming</title>
</book>
Damit werden einfach nur Daten über ein Buch gespeichert und das eben im XML Format anstatt z.B. als "Buch: The Art of Programming, Knuth". Großer Vorteil von XML: es ist viel leichter und einheitlicher maschinell verwertbar.
XSLT:
<xsl:template match="book">
<html><body><h1>
<xsl:apply-templates="*"/>
</h1></body></h1>
</xsl:template>
<xsl:template match="author">
<xsl:value-of select="."/>
</xsl:template match>
<xsl:template match="title">
< b >
<xsl:value-of select="."/>
< /b >
</xsl:template match>
Das ist jetzt selbst wieder nur ein XML Dokument. Allerdings ist es von einer viel spezielleren Bauart, als das obige Dokument (es ist nämlich ein XSLT Stylesheet). Mit einem entsprechenden Programm (xsltproc z.B.) kann man nun dieses Stylesheet auf obiges XML Dokument anwenden. Dabei entsteht dann folgende Ausgabe:
<html><body><h1>Knuth< b >The Art of Programming< /b ></h1></body></html>
Man hat also eine Möglichkeit obige Daten als Webseite darzustellen. Wie gesagt ist ein wesentlicher Vorteil von XML, dass es sehr gut geeignet ist, um die Daten für den Computer verwendbar zu machen. XSLT ist eine Möglichkeit von dieser Strukturierung Gebrauch zu machen. Damit kannst du mittels verschiedener XSLT Dokumente aus einem Daten-Dokument verschiedene neue Dokumente mittels einer Transformation erzeugen. Wobei diese XSLT Dokumente selbst eben wieder nur eine Art von Daten sind, die in XML gespeichert werden.
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 19:06 Fr 16.12.2005 | Autor: | Phoney |
Hallo Frank.
Danke für deine Antwort. Jetzt habe ich wohl einen groben Überblick über die Unterschiede.
Grüße Phoney
|
|
|
|