Fachhochschule Augsburg
Fachbereich Informatik

Klausur im Fach „XML“, Wintersemester 2000/01

Semester: I/MM 8
2001-01-24, 1530 Uhr
Bearbeitungszeit: 60 Minuten
Zugelassene Hilfsmittel: keine



Alle Codebeispiele, die angegeben oder verlangt sind, beziehen sich auf die Version 1.0 (second edition) der XML Recommendation des World Wide Web Consortiums vom 6. Oktober 2000.



back to top   1 Grundlagen

 

1.1  Vergleich zu existierenden Ans㳺en

Bietet XML Vorteile gegen�igenentwickelten (propriet㱮) ASCII-basierenden Datenformaten, und falls ja, welche?

1.2  Informationsstrukturen

UmreiÞ¥n Sie kurz den Unterschied zwischen einem Element und einem Attribut.
Unterscheiden Sie die beiden hinsichtlich ihrer Anwendung, und geben Sie ein kurzes Code-Beispiel (DTD und XML-Dokument).

1.3  Dokumentarten

Inwiefern stellt schema valid eine st㱫ere Aussage als valid dar?

back to top   2 Document Type Definitions

 

2.1  Ermittlung einer DTD

Geben Sie zum nachfolgenden Dokument eine m�chst restriktive Document Type Definition an.

<?xml version="1.0" encoding="UTF-8"?>
<root>
   <elementA attA="42">
      <elementB/>
      <elementC attC="77">
         <elementD>
            <elementE attA="test" attB="">
               <nothing/>
            </elementE>
         </elementD>
      </elementC>
      <elementC/>
   </elementA>
   <elementA attA="99">
      <nothing/>
   </elementA>
</root>

Download

2.2  Konformit?

Ist das angegebene Dokument konform zur dargestellten DTD?
Welche îderungen m�am Dokument vollzogen werden, um die Konformit㲠herzustellen ohne Information zu verlieren?

<?xml version='1.0' encoding='ISO-8859-1'?>
<!DOCTYPE html [
   <!ENTITY % content "(#PCDATA | i | b)*" >
   <!ELEMENT html (head , body)>
   <!ELEMENT head (title?)>
   <!ELEMENT meta EMPTY>
   <!ATTLIST meta
   name CDATA #REQUIRED
   content CDATA #REQUIRED>
   <!ELEMENT body (h1 | b | i | p)*>
   <!ELEMENT title (#PCDATA)>
   <!ELEMENT h1 (#PCDATA)>
   <!ELEMENT i %content;>
   <!ELEMENT b %content;>
   <!ELEMENT p %content;>
]>
<html>
   <head>
      <meta name="DC.Date" content="2001-01-24"/>
   </head>
   <body>
      <h1><i>Hello world!</b></h1>
      <p>This is just a test
      <p>with a new paragraph</p></p>
   </body>
</html>

Download

back to top   3 XML-Schema

 

3.1  Grundidee

a) Skizzieren Sie kurz die ۢerlegungen, die zur Definition der XML-Schemasprachen gef�aben.
b) Inwiefern stellen XML-Schema-Sprachen eine Erweiterung des bestehenden Grammatikmechanismus (DTD) dar, welche Grundprinzipien bleiben gewahrt?

3.2  Anwendung

Stellen Sie nachfolgenden DTD-Ausschnitt durch ein ã°µivalentes XML-Schema dar.

<!ELEMENT ElA (ElB, ElC)>
<!ATTLIST ElA
attA CDATA #REQUIRED
attB CDATA #IMPLIED>
...

back to top   4 Programmierschnittstellen

 

4.1  Parsing-Modelle

Welche grundlegenden Arten von XML-Parsing Modellen existieren?
Durch welche Charakteristika lassen sich diese voneinander abgrenzen?

4.2  XML-API

Bei einem umfangreichen XML-Dokument (>500MB) soll die Auftretensh㴦igkeit eines Elements ermittelt werden, welches Parsingmodell w㧬en Sie?
Verã­¤ert sich Ihre Empfehlung, wenn im Hauptspeicher Modifikationen am Dokument vorgenommen werden sollen?

4.3  Applikationsintegration

Welche Schritte sind notwendig um einen SAX-konformen Parser in eigene Applikation zu integrieren?

back to top   5 XSLT

 

Welche XML-Ausgabe liefert die angegebene XSL-Transformation bei Anwendung auf den abgebildeten Beispieldaten?
Transformation:

<?xml version="1.0" encoding="UTF-8"?>
<xsl:transform version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
   <xsl:template match="person/salary">
      <person>
         <salary>
            <xsl:choose>
               <xsl:when test="@promote = 'true'">
                  <xsl:value-of select=". * 1.25"/>
               </xsl:when>
               <xsl:otherwise>
                  <xsl:value-of select=". * 1.1"/>
               </xsl:otherwise>
            </xsl:choose>
         </salary>
      </person>
      <xsl:apply-templates/>
   </xsl:template>
   <xsl:template match="text()"/>
</xsl:transform>

Download

Eingabe:

<?xml version="1.0"?>
<table>
   <person>
      <salary promote="true">100</salary>
   </person>
   <person>
      <salary promote="false">100</salary>
   </person>
</table>

Download

Ausgabe:




separator line
Service provided by Mario Jeckle
Generated: 2004-06-07T12:31:08+01:00
Feedback Feedback       SiteMap SiteMap
This page's original location This page's original location: http://www.jeckle.de/vorlesung/xml/ws2000_01.html
RDF metadata describing this page RDF description for this page