13.Dezember 2006–1Elektronisches Publizieren: Schemasprachen — Relax NG Schemasprachen für XML — Relax NG — Anne Brüggemann-Klein TU München
13.Dezember 2006–2Elektronisches Publizieren: Schemasprachen — Relax NG Schemasprache für XML-Dokumente: Schema beschreibt Klasse konformer XML-Dokumente o Alternative zu DTD-Sprache und XML Schema o standardisiert von o Organization for the Advancement of Structured Information Standards (OASIS) ( ) o ISO/IEC JTC 1/SC 34 ISO/IEC FDIS :2002(E) ( ) o basiert auf Relax (M. Murata) und TREX (J. Clark) Steckbrief Relax NG …
13.Dezember 2006–3Elektronisches Publizieren: Schemasprachen — Relax NG Entwicklungsziele o Einfachheit (Ebene von XML DTDs) o Anwendungsbereich: syntaktische Kombinationen von Elementen und Attributen in XML-Dokumenten Nicht: Datentypen, semantische Beziehungen Zielt ab auf Validierbarkeit von Dokumenten, nicht Modellierung o Weitgehend homogene Behandlung von Elementen und Attributen (Konzept des Pattern) o Keine Transformationen o Mächtigkeit und Effizienz o Reguläre Baumsprachen (Boolesche Operationen) o Reguläre Baumautomaten als Assemblersprache … Steckbrief Relax NG …
13.Dezember 2006–4Elektronisches Publizieren: Schemasprachen — Relax NG o Schema besteht aus Typdefinitionen (Pattern) o Pattern definiert Sequenzen von Element- und Textknoten und Mengen von Attributen o Weitgehend homogene Behandlung von Elementen und Attributen bei Typdefinition in Pattern o Relax NG am Beispiel (Relax NG Tutorial) [ … Steckbrief Relax NG …
13.Dezember 2006–5Elektronisches Publizieren: Schemasprachen — Relax NG o Pattern definiert Sequenzen von Element- und Textknoten und Mengen von Attributen o lokal und anonym, am Platz innerhalb eines Pattern o mit Namen als Hilfskonstrukt zur Referenzierung „Interleaving“-Operator o Weitgehend uniforme Behandlung von Elementen und Attributen bei Typdefinition in Pattern [Auswirkungen auf Komplexität des Parsens? Angemessenes Prozessmodell für Parsen?] … Steckbrief Relax NG …
13.Dezember 2006–6Elektronisches Publizieren: Schemasprachen — Relax NG o Kodierung alternativ als XML-Instanz oder in kompakter, grammatikähnlicher Syntax o Entkopplung von Elementnamen und Typ: volle Mächtigkeit von Baumgrammatiken/Baumautomaten o Namensklassen o Keine eigene Definition, sondern Import von Datentypen o Datentypen aus XML Schema als Quasi-Standard o Parametrisierung (z.B. für Restriktion) in Relax NG o Aufzählungen und Listen o Unterstützung von XML Namespaces o Management von Schemata, auch Annotierbarkeit … Steckbrief Relax NG
13.Dezember 2006–7Elektronisches Publizieren: Schemasprachen — Relax NG Bewertungskriterien für Schemasprachen o Anwendungsbereiche o syntaktische Kombinationen von Elementen und Attributen in XML-Dokumenten o Datentypen für Textknoten o Integritätsbedingungen o Semantik (Business Rules), z.B. Vererbungsbeziehungen o Einfachheit o Mächtigkeit, auch Abgeschlossenheitseigenschaften o Verfügbarkeit und Effizienz von Implementierungen
13.Dezember 2006–8Elektronisches Publizieren: Schemasprachen — Relax NG Hausaufgabe (Abgabe ) Überlegen Sie sich Vergleichskriterien für Schemasprachen und diskutieren Sie, inwieweit DTDs, XML Schema und Relax NG die Kriterien erfüllen.
13.Dezember 2006–9Elektronisches Publizieren: Schemasprachen — Relax NG Schemasprachen als formale Sprachen o Schemata wie eine XML DTD, ein XML Schema oder ein Relax NG Schema als Beschreibung einer formalen Sprache von (markierten) Bäumen [ohne Attribute und Text] o Schema : Instanz Regulärer Ausdruck : Wort Endlicher Automat : Wort kontextfreie Sprache : Wort Syntaxdiagramm für Programmiersprache : Programm Baumautomat : Baum Bildungsgesetze für zulässige Strukturen o Aus der Theorie der Formalen Sprachen: Was sind geeignete Bildungsgesetze und natürliche Sprachklassen? [Baumgrammatiken und Baumautomaten]
13.Dezember 2006–10Elektronisches Publizieren: Schemasprachen — Relax NG Formalisierungen von Schemasprachen Baumgrammatiken: Terminalzeichen wie a für Elementnamen (Knotenmarkierungen) Variablen wie X als Hilfssymbole o (Erweiterte) Baumgrammatik (Relax NG):X a : E o Eindeutige Baumgrammatik (ECFGs): das homomorphe Bild von E muß eindeutig sein [Einfache Generierung von validierenden Baumautomaten] o Begrenzt-lokale Baumgrammatik (XML Schema): Variablen in E mit eindeutigen Knotenmarkierungen o Lokale Baumgrammatik (DTD):X a a : E 1:1-Abbildung zwischen Variablen und Knotenmarkierungen; E selbst muß eindeutig sein [Lokalitätsbedingung an Sprache]
13.Dezember 2006–11Elektronisches Publizieren: Schemasprachen — Relax NG Mächtigkeit von Schemasprachen o Strikt absteigende Expressivität: allgemeine, eindeutige, begrenzt-lokale und lokale Baumgrammatiken o Abschlußeigenschaften o Alle vier Formalismen führen zu Klassen von Bäumen, die gegen Durchschnitt abgeschlossen sind o Nur die allgemeinen Baumgrammatiken führen zu Klassen von Bäumen, die gegen Vereinigung abgeschlossen sind o Nur die allgemeinen Baumgrammatiken führen zu Klassen von Bäumen, die gegen Differenz abgeschlossen sind
13.Dezember 2006–12Elektronisches Publizieren: Schemasprachen — Relax NG Literatur o o Relax NG Tutorial o Relax NG Specification o Eric van der Vlist: Comparing XML Schema Languages. o M. Murata, D. Lee, M. Mani: Taxonomy of XML Schema Languages using Formal Language Theory. Extreme Markup Languages o Eve Maler, Jeanne el Andaloussi: Developing SGML DTDS. Prentice Hall 1996.