TU Ilmenau – Institut für Medientechnik XML für Medientechnologen XML für Medientechnologen Hinweise und Aufgaben zur Klausurvorbereitung Stand: 14.01.16 Inhaltsverzeichnis 1. Hinweise .................................................................................................................. 1 2. Schwerpunkte .......................................................................................................... 1 3. Aufgaben ................................................................................................................. 2 4. Fragen ..................................................................................................................... 8 5. Lösungen der Aufgaben .......................................................................................... 9 1. Hinweise Dieses Material soll Ihnen helfen, sich auf die Klausur „XML für Medientechnologen“ für den Studiengang MT an der TU Ilmenau vorzubereiten. Die Klausur umfasst sowohl Inhalte aus der Vorlesung als auch aus den Übungen. Sie sollen wesentliche Zusammenhänge erläutern und typische Aufgaben lösen können. Die Fragen und Aufgaben werden dabei in der Regel so gestellt, dass Sie Ihr Wissen anwenden müssen, damit überprüft werden kann, ob Sie die Inhalte verstanden und anwendungsbereit zur Verfügung haben. Die folgenden Aufgaben erheben keinen Anspruch auf Vollständigkeit. Sie können nicht erwarten, dass in der Klausur diese Fragen oder gar ausschließlich diese Fragen gestellt werden. Versuchen Sie die Aufgaben zu durchdenken und zu variieren. Es gibt in der Regel mehrere Lösungswege für die Aufgaben; hier wird meist nur einer angegeben. Wenn Sie auf einem anderen schlüssigen Weg zur korrekten Lösung kommen, dann wird das natürlich ebenfalls als richtig gewertet. Der Aufgaben- und Fragenkatalog wird schrittweise erweitert. Achten Sie deshalb auf das Datum am Anfang dieser Seite! Neben diesen Aufgaben und Fragen sollten Sie natürlich auch die Lösungen der Aufgaben aus den praktischen Übungen und Ihre Vorlesungsmitschrift heranziehen. Literaturhinweise finden Sie auf der Webseite: http://www.tu-ilmenau.de/mt/lehrveranstaltungen/ lehre-fuer-bachelor-mt/xml-fuer-mt/ 2. Schwerpunkte • Einordnung und Konzept von XML • XML Syntax, wohlgeformtes und gültiges (valides) XML • Rolle von Namensräumen _eS_ Material zur Klausurvorbereitung Seite 1 TU Ilmenau – Institut für Medientechnik XML für Medientechnologen • Strukturierung mittels DTD und XML Schema (einfache DTD selbst schreiben können, XML Schema lesen und verstehen können; siehe Aufgaben) • Aufgabe und grundlegende Syntax-Elemente von XPath • Aufgaben und grundlegende Syntax von XSLT (Stylesheets lesen, verstehen und anwenden können; siehe Aufgaben) • Überblick über Programmierschnittstellen und XML Datenbanken, XQuery • Aufgaben und wichtige Eigenschaften von XML-Sprachen aus dem Medienbereich und deren Anwendung (XHTML, RSS, XSL:FO, SVG, ...) • Rolle von XML bei der Codierung von Metadaten, wichtige Eigenschaften einiger Metadaten-Standards • Anwendung für XML in den Grundzügen erläutern 3. Aufgaben Die Reihenfolge der Aufgaben hat keine Bedeutung. Neue Aufgaben werden jeweils am Ende ergänzt, um die Nummerierung der bisherigen Aufgaben nicht zu verändern. Die Lösungen der Aufgaben finden Sie am Ende dieses Papiers. Aufgabe 1 Ordnen Sie XML als Markup-Sprache ein! Gehen Sie dabei auf die Beziehungen von XML zu SGML und HTML ein! Nennen Sie drei wichtige Eigenschaften von XML! Aufgabe 2 Worin unterscheiden sich HTML und XHTML? Nennen Sie stichpunktartig drei Unterschiede! Aufgabe 3 Schreiben Sie eine Document Type Definition, der folgende XML-Datei genügt! <adressen> <adresse> <name geschlecht="w"> <vorname>Ilse</vorname> <vorname>Maria</vorname> <nachname>Schuster</nachname> </name> <anschrift> <ort>Berlin</ort> <plz>11111</plz> </anschrift> </adresse> <adresse> <name geschlecht="m"> <titel>Dr.</titel> <vorname>Hans</vorname> <nachname>Heinrich</nachname> </name> _eS_ Material zur Klausurvorbereitung Seite 2 TU Ilmenau – Institut für Medientechnik XML für Medientechnologen <anschrift> <ort>Erfurt</ort> <plz>99000</plz> </anschrift> </adresse> </adressen> Aufgabe 4 Welches Ergebnis liefert folgendes Stylesheet, wenn es auf die Adressdatei aus Aufgabe 3 angewandt wird? <?xml version="1.0" encoding="UTF-8"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:output method="xml" encoding="ISO-8859-1" indent="yes"/> <xsl:template match="adressen"> <xsl:element name="Liste"> <xsl:apply-templates/> </xsl:element> </xsl:template> <xsl:template match="adresse"> <xsl:apply-templates select="anschrift"/> <xsl:apply-templates select="name"/> </xsl:template> <xsl:template match="name"> <xsl:element name="NAME"> <xsl:if test="@geschlecht='w' ">Frau </xsl:if> <xsl:value-of select="vorname"/> <xsl:text> </xsl:text> <xsl:value-of select="nachname"/> </xsl:element> </xsl:template> <xsl:template match="anschrift"> <xsl:element name="ORT"> <xsl:attribute name="PLZ"> <xsl:value-of select="plz"/> </xsl:attribute> </xsl:element> </xsl:template> </xsl:stylesheet> Aufgabe 5 Folgende XML-Datei verstößt in fünf verschiedenen Punkten gegen die Wohlgeformtheit. Kennzeichnen Sie die betreffenden Stellen und geben Sie ein kurze Begründung an! <?xml version="1.0" encoding="UTF-8"?> <rss version=2.0> <channel> <title>NETZEITUNG.DE Wissenschaft</title> <link>http://www.netzeitung.de/wissenschaft/<link> <language>de</language> <item> <title>Verdacht auf Mord an Tutanchamun ... </title> <dc:date>2005-03-08T13:45:31+02:00</dc:date> <description>Tutanchamun starb als junger Mann. Jetzt haben Forscher ...</description> <link>http://www.netzeitung.de/wissenschaft/</link> <!-- zweiter Artikel --> <item> _eS_ Material zur Klausurvorbereitung Seite 3 TU Ilmenau – Institut für Medientechnik XML für Medientechnologen <title>Blauer Planet in Schwarzweiß</title> <dc:date>2005-03-08T12:19:23+02:00</description> <description>Die Kometensonde "Rosetta" ...</dc:date> <Link>http://www.netzeitung.de/spezial/weltraum/</Link> </item> </channel> </rss> Aufgabe 6 Folgendes XML-Schema beschreibt die Datenstruktur eines Quiz. <?xml version="1.0" encoding="UTF-8"?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:element name="quiz"> <xs:complexType> <xs:sequence> <xs:element name="meta-daten" type="meta-datenType"/> <xs:element name="frage" type="frageType" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType> </xs:element> <xs:complexType name="meta-datenType"> <xs:sequence> <xs:element name="titel" type="xs:string"/> <xs:element name="letzte_aenderung" type="xs:date"/> </xs:sequence> </xs:complexType> <xs:element name="text" type="xs:string"/> <xs:complexType name="frageType"> <xs:sequence> <xs:element ref="text"/> <xs:element name="antwort" type="antwortType" maxOccurs="3"/> </xs:sequence> <xs:attribute name="level" use="required"> <xs:simpleType> <xs:restriction base="xs:NMTOKEN"> <xs:enumeration value="1"/> <xs:enumeration value="2"/> </xs:restriction> </xs:simpleType> </xs:attribute> </xs:complexType> <xs:complexType name="antwortType"> <xs:simpleContent> <xs:extension base="xs:string"> <xs:attribute name="status" type="xs:boolean" use="required"/> </xs:extension> </xs:simpleContent> </xs:complexType> </xs:schema> a) Überprüfen Sie, ob die folgende XML-Datei dieser Strukturvorgabe genügt. Kennzeichnen Sie die fünf verschiedenen Fehler und geben Sie ein kurze Begründung an! <?xml version="1.0" encoding="UTF-8"?> <quiz xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="aufg09.xsd"> <meta-daten> _eS_ Material zur Klausurvorbereitung Seite 4 TU Ilmenau – Institut für Medientechnik XML für Medientechnologen <letzte_aenderung>2005/03/07</letzte_aenderung> <quiz-titel>Geografie-Quiz</quiz-titel> </meta-daten> <frage level="1"> <text>In welchem Ozean liegen die Malediven?</text> <antwort status="false">Atlantischer Ozean</antwort> <antwort status="true">Indischer Ozean</antwort> <antwort status="false">Pazifischer Ozean</antwort> </frage> <frage level="2"> <text>Wie heißt die Hauptstadt von Lettland?</text> <antwort status="true">Riga</antwort> <antwort status="false">Tallin</antwort> </frage> <frage level="3"> <text>Welches Land grenzt nicht an Ungarn?</text> <antwort status="falsch">Slowenien</antwort> <antwort status="richtig">Russland</antwort> <antwort status="falsch">Slowakei</antwort> </frage> </quiz> b) Was müssten Sie an dem Schema ändern, damit das Quiz mindestens 10 Fragen enthält? Aufgabe 7 Geben Sie jeweils drei Eigenschaften von XML und HTML an, die der anderen Markup-Sprache nicht eigen sind! Aufgabe 8 Nennen Sie vier Eigenschaften von dokumentenorientiertem XML! Aufgabe 9 Der folgende Baum repräsentiere eine XML-Datei. Wurzel 1 <sammlung> <xsl:stylesheet> <cd> <cd> <gruppe> <titel> <preis> Jethro Tull Aqualung 14.99 2 waehrung <gruppe> <titel> Chicago Old Days EUR 3 <preis> 11.95 waehrung EUR a) Schreiben Sie die XML-Datei dazu auf! b) Was liefert der XPath-Ausdruck (aktueller Knoten ist 1): _eS_ Material zur Klausurvorbereitung Seite 5 TU Ilmenau – Institut für Medientechnik XML für Medientechnologen 1. /sammlung/cd/titel 2. ./preis c) 1 kennzeichnet den aktuellen Knoten. Geben Sie die XPath-Ausdrücke an, um auf die Knoten 2 und den Knoten 3 zuzugreifen! Aufgabe 10 a) Schreiben Sie eine XML-Datei, die folgendem Schema genügt! <?xml version="1.0" encoding="UTF-8"?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:element name="CD-Sammlung"> <xs:annotation> <xs:documentation>Private CD-Sammlung</xs:documentation> </xs:annotation> <xs:complexType> <xs:sequence> <xs:element name="Besitzer"> <xs:simpleType> <xs:restriction base="xs:string"> <xs:maxLength value="60"/> </xs:restriction> </xs:simpleType> </xs:element> <xs:element name="Anzahl" type="xs:positiveInteger"/> <xs:element name="Stand" type="xs:date"/> <xs:element name="Alben"> <xs:complexType> <xs:sequence> <xs:element name="Album" maxOccurs="unbounded"> <xs:complexType> <xs:sequence> <xs:element name="Titel" type="xs:string"/> <xs:element name="Interpret" type="xs:string"/> <xs:element name="Jahr" type="xs:gYear" minOccurs="0"/> <xs:element name="Songs" minOccurs="3" maxOccurs="unbounded"> <xs:complexType> <xs:sequence> <xs:element name="Songtitel"> <xs:complexType> <xs:simpleContent> <xs:extension base="xs:string"> <xs:attribute name="Nummer" type="xs:positiveInteger" use="required"/> </xs:extension> </xs:simpleContent> </xs:complexType> </xs:element> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> _eS_ Material zur Klausurvorbereitung Seite 6 TU Ilmenau – Institut für Medientechnik XML für Medientechnologen </xs:complexType> </xs:element> </xs:schema> b) Welchem Modell genügt dieses Schema? Aufgabe 11 Skizzieren Sie das Ergebnis der Darstellung folgender SVG-Datei! <?xml version="1.0" encoding="UTF-8" standalone="no"?> <svg width="15cm" height="10cm" viewBox="0 0 300 200"> <rect x="10" y="100" width="90" height="90" fill="red"/> <circle cx="200" cy="100" r="100" fill="yellow"/> <text x="20" y="50" fill="black" font-size="16pt" font-weight="bold">SVG</text> <rect x="10" y="10" width="280" height="180" fill="none" stroke="black"/> </svg> Aufgabe 12 Welche XML-Sprachen kommen bei WebServices zum Einsatz? Nennen Sie die drei Sprachen und zeichnen Sie diese in die leeren Kästchen der folgenden Abbildung ein! ServiceBroker ServiceKonsument (client) ServiceAnbieter (server) Aufgabe 13 Zeichnen Sie folgendes RDF-Dokument als Graphen! <?xml version="1.0"?> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#" xmlns:mn="http://MeinNamensraum.de"> <rdf:Description about="Klausur_01"> <rdf:type resource="mn:pruefung"/> <mn:Name>XML für MT</mn:Name> <mn:Studiengang>Medientechnologie</mn:Studiengang> </rdf:Description> <rdf:Description about="Student_007"> <rdf:type resource="mn:student"/> <mn:Name>James Bond</mn:Name> _eS_ Material zur Klausurvorbereitung Seite 7 TU Ilmenau – Institut für Medientechnik XML für Medientechnologen <mn:Teilnahme resource="Klausur_01"/> </rdf:Description> </rdf:RDF> Aufgabe 14 Charakterisieren Sie kurz die jeweilige Aufgabe folgender XML-Sprachen: RDF, SMIL, SVG, ATOM und XSL:FO Aufgabe 15 a) Was ist ein Namensraum und warum wurde das Konzept in XML eingeführt? b) Erläutern Sie folgende Deklaration aus der Beispiel-Datei! Was bedeuten die Attribute? <Reisen xsi:noNamespaceSchemaLocation="reisen.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> 4. Fragen Entscheiden Sie, ob folgende Aussagen wahr oder falsch sind! Achtung, falsche Antworten geben Punktabzug in der Klausur! Sie sollen nicht raten. Wenn Sie die Antwort nicht wissen, dann machen Sie besser kein Kreuz. Aussage Namensräume sind aufgrund der Modularität von XML notwendig. WAHR X XPointer ist ein Standard zur Verknüpfung von XMLDokumenten untereinander Ein validierender XML-Parser überprüft die Wohlgeformtheit eines XML-Dokumentes. FALSCH X X Die Definition eines einfachen Typs in XML Schema erlaubt nur die Bestimmung eines einzelnen Elementes samt seiner Attribute. X Unter „mixed content“ versteht man die gemeinsame Verwendung von Tags aus mehreren Quellen, die jeweils durch Namensräume gekennzeichnet sind. X „Formating Objects“ ist eine layoutorientierte XMLSprache. X XPath ist eine XML-Sprache zur Adressierung von Dokumententeilen. X Kommentare können über mehrere Zeilen gehen. X Die XML-Schema-Sprache kann selbst durch ein XML Schema beschrieben werden. X _eS_ Material zur Klausurvorbereitung Seite 8 TU Ilmenau – Institut für Medientechnik XML für Medientechnologen Aussage WAHR FALSCH Das Simple API for XML (SAX) erlaubt das Manipulieren von XML-Dokumenten. X Built-In Template Rules werden vom XSL-Prozessor immer den eigenen Schablonenregeln vorgezogen. X RSS ist einen XML-Sprache zur Kodierung von Metadaten. X DocBook ist eine SGML- (und inzwischen XML-)Sprache zur Erstellung von wissenschaftlichen Dokumenten. X Das Zeichen & muss in allen XML-Dokumenten durch das Entitiy & maskiert werden. X Sowohl mit einer DTD als auch mit einem XML Schema kann ein XML-Dokument auf Gültigkeit überprüft werden. X SMIL ist eine Weiterentwicklung von VRML zur Darstellung dreidimensionaler Szenen. XForms sendet eine XML-Datei mit den Formular-Inhalten an den Server. X X 5. Lösungen der Aufgaben Aufgabe 1 XML ist eine Meta-Sprache zur Erzeugung konkreter Markup-Sprachen. Sie ist eine Untermenge von SGML (ebenfalls Meta-Sprache), während HTML eine auf SGML basierende konkrete Sprache ist. Eigenschaften: • textbasierte Markup-Sprache • für Menschen und Maschinen lesbar • Trennung von Struktur und Layout • hierarchische Baumstruktur • international, durch Verwendung von Unicode • offener Standard, vom W3C betreut Aufgabe 2 • HTML basiert auf SGML und XHTML auf XML • XHTML-Dokumente müssen wohlgeformt sein • Die Tags werden in XHTML klein geschrieben. • Für XHTML gibt es mehrere DTDs; es ist modular. _eS_ Material zur Klausurvorbereitung Seite 9 TU Ilmenau – Institut für Medientechnik XML für Medientechnologen • layoutorientierte Tags nur in HTML zulässig Aufgabe 3 DTD: <!ELEMENT <!ELEMENT <!ELEMENT <!ATTLIST <!ELEMENT <!ELEMENT <!ELEMENT <!ELEMENT <!ELEMENT <!ELEMENT adressen (adresse+)> adresse (name, anschrift)> name (titel?, vorname+, nachname)> name geschlecht (m | w) #REQUIRED> anschrift (ort, plz)> nachname (#PCDATA)> ort (#PCDATA)> plz (#PCDATA)> titel (#PCDATA)> vorname (#PCDATA)> Aufgabe 4 Ergebnis der Transformation: <?xml version="1.0" encoding="ISO-8859-1"?> <Liste> <ORT PLZ="11111" /> <NAME>Frau Ilse Schuster</NAME> <ORT PLZ="99000" /> <NAME>Hans Heinrich</NAME> </Liste> Aufgabe 5 1. Attribut von <rss version=“2.0“> steht nicht in Hochkommas 2. erstes schließendes <link> ist falsch 3. erstes <item> wir nicht geschlossen 4. schließendes </description> und </dc:date> vertauscht 5. Hochkommas um Rosetta müssten mit " maskiert werden Bemerkung: Die unterschiedliche Schreibweise von <link> ist kein Fehler, da es nur um Wohlgeformtheit geht. Aufgabe 6 a) 1. Reihenfolge der meta-daten stimmt nicht 2. falsches Datumsformat, richtig 2005-03-24 3. Element <quiz-titel> muss durch <titel> ersetzt werden 4. level=“3“ ist unzulässig 5. deutschsprachige status-Attribute _eS_ Material zur Klausurvorbereitung Seite 10 TU Ilmenau – Institut für Medientechnik XML für Medientechnologen b) Die Anweisung <xs:element name="frage" type="frageType" maxOccurs="unbounded"/> müsste um das Attribut minOccurs=“10“ ergänzt werden. Aufgabe 7 XML HTML Lösung Lösung • eigene Tags und Attribute möglich • kann von Browsern direkt angezeigt werden • Wohlgeformtheit • enthält nur Inhalt und Struktur • layoutorientiert • Teilmenge von SGML • • Meta-Markup-Sprache begrenzter Umfang an Tags und Attributen international (Unicode) • SGML-Anwendung • Dokument muss mit <?xml ...> beginnen • <html> als Wurzelelement (optional) • • Namensräume möglich Aufgabe 8 1. für Menschen verständlich 2. Reihenfolge der Elemente wichtig 3. Inhalt auch ohne Markup verständlich (mit Einschränkungen) – Markup kein fundamentaler Bestandteil des Inhalts 4. Wurzelelement repräsentiert das Dokument selbst 5. unausgeglichene Baumstruktur, Dokument oft schwach strukturiert 6. Mixed Content tritt auf (meist in unteren Ebenen) 7. unterste Elemente haben zumeist den Datentyp xsd:string bzw. #PCDATA 8. DTD zur Strukturierung ausreichend 9. Präsentation in einem anderen Format → Styles notwendig Aufgabe 9 a) XML-Datei: <?xml version="1.0" encoding="UTF-8"?> <?xsl:stylesheet?> (kann etwas anders aussehen) <sammlung> <cd> <gruppe>Jethro Tull</gruppe> _eS_ Material zur Klausurvorbereitung Seite 11 TU Ilmenau – Institut für Medientechnik XML für Medientechnologen <titel>Aqualung</titel> <preis waehrung="EUR">14.99</preis> </cd> <cd> <gruppe>Chicago</gruppe> <titel>Old Days</titel> <preis waehrung="EUR">11.95</preis> </cd> </sammlung> b) 1.: Aqualung 2.: 14.99 c) zu Knoten 2: ./preis/@waehrung oder preis/@waehrung zu Knoten 3: ../cd[2]/gruppe oder ../cd[position()=2]/gruppe Aufgabe 10 a) zum Beispiel: <?xml version="1.0" encoding="UTF-8"?> <CD-Sammlung xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="CD-Sammlung.xsd"> <Besitzer>Marko Mustermann</Besitzer> <Anzahl>2</Anzahl> <Stand>1967-08-13</Stand> <Alben> <Album> <Titel>Hallo</Titel> <Interpret>Band</Interpret> <Jahr>2006</Jahr> <Songs> <Songtitel Nummer="01">A</Songtitel> </Songs> <Songs> <Songtitel Nummer="02">B</Songtitel> </Songs> <Songs> <Songtitel Nummer="03">C</Songtitel> </Songs> </Album> </Alben> </CD-Sammlung> Kursiv gesetzte Namensraumkonvention kann fehlen. b) Das Schema genügt dem Russian-Doll-Model (Matroschka-Modell). Aufgabe 11 _eS_ Material zur Klausurvorbereitung Seite 12 TU Ilmenau – Institut für Medientechnik XML für Medientechnologen Aufgabe 12 SOAP = Simple Object Access Protocol (XML-Sprache zum Nachrichtenaustausch zwischen Applikationen, zunächst von Microsoft und später vom W3C definiert) WSDL = WebService Description Language (XML-basiert, dient der Beschreibung von WebServices, maschienenverständlich, Semantik kodiert) UDDI = Universal Description, Discovery and Integration (XML-basiert, „Gelbe Seiten“, machen WebServices bekannt) ServiceBroker UDDI WSDL WSDL ServiceAnbieter (server) SOAP ServiceKonsument (client) SOAP Aufgabe 13 XML für MT James Bond mn:Name mn:Name Teilnahme Medientechnologie Klausur_01 rdf:type mn:pruefung Student_007 rdf:type mn:student Aufgabe 14 RDF – Beschreibung von Metadaten, Grundlage für Sematic Web SMIL – Steuerung multimedialer Anwendungen SVG – Vektorgrafiken, auch animiert ATOM – strukturierte Kurznachrichten (Verbreitung und Verarbeitung) XSL:FO – layoutorientierte Seitenbeschreibung _eS_ Material zur Klausurvorbereitung Seite 13 TU Ilmenau – Institut für Medientechnik XML für Medientechnologen Aufgabe 15 a) weltweit eindeutiger Bezeichner; beschreibt Domäne; dient der Modularisierung von XML; Eindeutigkeit von Tags; ... b) Der Namensraum http://www.w3.org/2001/XMLSchema-instance wird vereinbart und der Abkürzung xsi zugewiesen. Im ersten Attribut wird dieser Namensraum bereits zur Qualifizierung von noNamespaceSchemaLocation verwendet. Dieses Attribut gibt an, wo sich die Schema-Datei zur dieser XMLInstanz befindet. _eS_ Material zur Klausurvorbereitung Seite 14
© Copyright 2024 ExpyDoc