XML Schema types and equivalence classes

Size: px
Start display at page:

Download "XML Schema types and equivalence classes"

Transcription

1 XML Schema types and equivalence classes reconstructing DTD best practice Henry S. Thompson HCRC Language Technology Group, Edinburgh, Scotland Abstract: Eve L. Maler and Jeanne El Andaloussi in their book "Developing SGML DTDs" describe a flexible and powerful methodology for DTD design and development which is widely used in a range of application environments, and is generally recognised as constituting best practice in this area. It makes heavy use of parameter entities to define and exploit a class hierarchy of element types. XML Schema is a W3C-sponsered effort to define an alternative to DTDs for defining the structure of XML documents, using XML instance syntax. Not surprisingly therefore, it defines element types for declaring elements and attributes. Despite an official requirement to at least reproduce the functionality of DTDs, XML Schema nonethe-less contains no text macro facility, which might be expected to reproduce the functionality of parameter entities. How then is best practice to be carried forward from DTDs to XML Schemas? The answer lies in two powerful mechanisms which XML Schema introduces: user-defined types (distinct from element types, but crucially involved in their declaration) and element equivalence classes. This paper describes in detail XML Schema s concepts of complex type, type definition by derivation and element equivalence class, shows how they relate to one another, and illustrates their use to define type hierarchies and element class hierarchies without recourse to parameter entities. Introduction Eve L. Maler and Jeanne El Andaloussi in their book "Developing SGML DTDs" describe a flexible and powerful methodology for DTD design and development which is widely used in a range of application environments, and is generally recognised as constituting best practice in this area. It makes heavy use of parameter entities to define and exploit a class hierarchy of element types. Our understanding of formal language design has progressed since SGML was born, and text substitution macros, which is what parameter entities are, have come to be recognised as a less-than-ideal mechanism for enabling re-use and sharing of structure in formal definitions. Accordingly in the design of the XML Schema document type definition language, no text-substitution macro mechanism is supplied, but rather explicit provision is made for a hierarchically-structured approach to the definition of document types and their component parts. This paper explores the utility of these mechanisms in reconstructing best practice in structured DTD design without recourse to text substitution. Document structure definition in XML Schema The XML Schema language distinguishes between element declarations and type definitions. A type definition is a collection of constraints on the names and forms of attributes and children which an element may have, for example: <xs:complextype name="meeting"> <xs:all> <xs:element ref="venue"/> <xs:element ref="organiser"/> 1

2 <xs:element ref="participants"/> </xs:all> <xs:attribute name="when" type="xs:date" use="required"/> Note: The above example uses the xs prefix for names taken from XML Schema, as do all the subsequent XML Schema examples, without providing a namespace declaration. In practice, of course, any prefix could be used (or none), given the correct namespace declaration, which as of this writing should use as the namespace URI. An element declaration associates a tag with a type definition, thereby requiring elements in instances with that tag to conform to the definition, for example: <xs:element name="appointment" type="meeting"/> Taken together the above pair of definition and declaration is similar in effect to the following SGML declarations: <!ELEMENT appointment (venue & organiser & participants)> <!ATTLIST meeting when CDATA #REQUIRED> XML Schema differs from SGML or XML DTDs in separating type definitions from element declarations, thereby providing a mechanism for re-use which in DTDs would have necessarily involved parameter entities. Structuring the type space: type definition derivation in XML Schema We observe that many uses of parameter entities in well-structured DTDs imply some sort of family relationship between element types. Whenever a parameter entity is used, for instance, to add one or more attribute declarations to an ATTLIST, every instance of an element type with such an ATTLIST is a member of a larger set, that is, the set of all elements which have, or may have, the relevant attributes. XML Schema makes explicit provision for defining types which specifically contain exactly what such families have in common, and then allowing other type definitions to be derived from the shared core. Consider the following fragment from the XHTML strict DTD: <!ENTITY % cellhalign "align (left center right justify char) #IMPLIED char %Character; #IMPLIED charoff %Length; #IMPLIED" > This defines the cellhalign parameter entity with text for three attribute declarations. Virtually all the table-related element types then use this parameter entity, for example: <!ATTLIST thead %attrs; %cellhalign; %cellvalign; > 2

3 In fact all the element types in XHTML which allow the cellhalign attributes allow the others referenced here as well, so in an XML Schema schema for XHTML, we would probably want to provide an abstract type definition with all these attributes, for example: <xs:complextype name="tabular" content="empty"> <xs:attribute name="align" type="halignpos"/> <xs:attribute name="char" type="character"/>... Then all the relevant elements would have type definitions derived from this one, for example: <xs:complextype name="tableblock" content="elementonly" base="tabular" derivedby="extension"> <xs:element ref="tr" minoccurs="1" maxoccurs="unbounded"/> <xs:element name="thead" type="tableblock"/> <xs:element name="tbody" type="tableblock"/> <xs:element name="tfoot" type="tableblock"/> Several new bits of XML Schema syntax are introduced above. The type definition for tableblock identifies itself as derived from that for tabular using the base attribute, and furthermore specifies that its relation to that definition is one of extension. What this means is that the attributes allowed and content model enforced by the derived definition is the union and concatenation respectively of those specified explicitly and those inherited from the base definition. In the example above, this has the desired effect, in that thead, tbody and tfoot are all declared with reference to a type definition which by the definition of derivation by extension allows all the tabular attributes as well as having an appropriate list-of-rows content model. Equally important to the economy and transparency of the syntactic aspects of this approach to re-use, there is a parallel gain in semantic transparency: It is now manifest that the similarity of the content models and attribute inventory of the three elements is not accidental. The most straightforward approach to changing one of them would change them all, which is probably what is wanted. Applications which find it appropriate can treat them all similarly, by dealing with them at the level of type definition. To facilitate this, XML Schema-compliant processors must record the identity of the type definition used in schema-validating every element and attribute in instance documents. Type definition derivation details: extension A complex type definition (one constraining an element s content and attribute inventory) may be derived by extension from another type definition, called the base type definition. If the base is a simple type definition (constraining text content), then the only allowed extension is to add attribute declarations. If the base is itself a complex type definition, then not only may attribute declarations be added, but also the base s content model may be extended, if it is allows this. It follows that an important relationship holds between the members of a type defined by extension (that is, the element instances which satisfy its definition): every member of a type defined by extension contains within it a member of its base, where in version 1 of XML Schema we understand within to mean subset for attributes and prefix for content model. 3

4 Consider the following two type definitions: <xs:complextype name= name > <xs:element name= title minoccurs= 0 /> <xs:element name= forename minoccurs= 0 maxoccurs= unbounded /> <xs:element name= surname /> <xs:complextype name= fullname base= name derivedby= extension > <xs:element name= suffix minoccurs= 0 /> Now consider members of the two types defined above: <...> <forename>george</forename> <forename>w</forename> <surname>bush</surname> </...> <...> <forename>albert</forename> <surname>gore</surname> <suffix>jr.</suffix> </...> The second, a member of the derived type, contains as a prefix a member of the base type. Type definition derivation details: restriction A complex type definition (one constraining an element s content and attribute inventory) may also be derived by restriction from its base type definition, which must be a complex type definition. Restriction amounts to closing down flexibility allowed in the base definition: Eliminating optional attributes; Removing members of choice groups; Reducing allowed occurrence ranges on content model particles (perhaps all the way to elimination, if minoccurs is 0 in the base); Restricting the type definitions of attributes or content. A different important relationship holds between the members of a type defined by restriction.: every member of a type defined by restriction is necessarily also a member of its base. Simple types may also be defined by restricting other simple type definitions, for instance be reducing the membership of an enumerated type or narrowing a value range. 4

5 Consider the following three type definitions, a simplified version of definitions from the schema for schemas: <xs:complextype name="group"> <xs:element ref="particle" minoccurs="0" maxoccurs="unbounded"/> <xs:attribute name="name" use="optional" type="xs:ncname"/> <xs:attribute name="ref" use="optional" type="xs:qname"/> <xs:complextype name="toplevelgroup" base="group" derivedby="restriction"> <xs:element ref="particle" minoccurs="1" maxoccurs="unbounded"/> <xs:attribute name="name" use="required" type="xs:ncname"/> <xs:attribute name="ref" use="prohibited" type="xs:qname"/> <xs:complextype name="reftogroup" base="group" derivedby="restriction"> <xs:element ref="particle" minoccurs="0" maxoccurs="0"/> <xs:attribute name="name" use="prohibited" type="xs:ncname"/> <xs:attribute name="ref" use="required" type="xs:qname"/> The first definition defines a group as having optional name and ref attributes and any number of <particle> as content. The second restricts this for use at the top level, to define a group, in which case the name and at least one <particle> are required, while the ref is prohibited. For use within content models, the third restricts in the other direction, requiring a ref (to a top-level defined group, by name and namespace), and forbidding either name or content. It should be clear that any member of either of the two derived types is a member of the more general base. Element equivalence classes The mechanism of type definition derivation described above allows XML Schema authors to reconstruct usages of parameter entities which reflect commonality of structure: Elements with the same structure can be declared using the same type definition; Elements with the similar structure can be declared with one using a type definition derived from that the other is declared to have, or both can be declared with definitions derived from a common base. But elements may also be related because they appear in the same context. The following (slightly simplified) extracts from the XML specification DTD illustrates how this is annotated and exploited in the Maler and El Andaloussi style: <!ENTITY % local.list.class ""> <!ENTITY % list.class "ulist olist slist glist %local.list.class;">... <!ELEMENT div1 (head, (... %list.class;...)*, div2*)> References to %list.class; appear elsewhere in other content models in the DTD as well, and no member of the class appears anywhere _else_ on its own. XML Schema provides for reflecting this kind of element commonality using the notion of (asymmetric) equivalence class: any top-level element declaration can nominate another top-level declaration as one it is equivalent to. The set of all declarations which identify (perhaps via several steps) another declaration as their equivalence class (using the equivclass attribute) form its equivalence class. Whereever it appears in content models, isntances may contain not only it, but 5

6 also any member of its equivalence class. One possible XML Schema reconstruction of the above example would look like this: <xs:element name="div1"> <xs:complextype> <xs:element ref="head"/> <xs:choice minoccurs="0" maxoccurs="unbounded">... <xs:element ref="list"/>... </xs:choice> <xs:element ref="div2" minoccurs="0" maxoccurs="unbounded"/> </xs:element> <xs:element name="list" abstract="true" type="listtype"/> <xs:element name="slist" equivclass="list" type="simplelisttype"/> <xs:element name="flaggedlist" abstract="true" equivclass="list"/> <xs:element name="ulist" equivclass="flaggedlist" type="bulletedlisttype"/> <xs:element name="olist" equivclass="flaggedlist" type="enumeratedlisttype"/> <xs:element name="glist" equivclass="list" type="glossarylisttype"/> Via one or two steps, all four of glist, olist, slist and ulist are declared as part of list s equivalence class, so all of them may occur within <div1> in the indicated place. list itself and flaggedlist are declared as abstract, meaning they can t themselves actually appear in documents they are included in the schema simply to provide a potentially useful layer of structuring. Two further aspects of this design disserve mention. No special provision for subsequent extension of the membership of the classes involved is required (this is what the local.list.class entity is for in the original DTD). Another XML Schema document which includes one with the above definitions by reference (by one of several mechanisms provided for modular and/or multi-namespace schema specification, see ) can add its own elements to one or the other class simply by referring to them via the equivclass attribute in its own declarations. Also, in order to enforce a degree of coherency, XML Schema does require that the type definition of elements declared as equivalent to others must be derived from its type definition. In the above example, this means that, for instance, enumeratedlisttype would have to be derived from listtype (the type definition of flaggedlist, by default). Conclusion The above examples have introduced two distinct but related mechanisms which the XML Schema language provides for reconstructing some common uses of parameter entities in structured DTD design. By bringing these constructs inside the language, rather than relegating them to the status of conventions for the use of text substitution, XML Schema has endorsed and facilitated an approach to structured document type definition of recognised power and generality. Bibliography 6

7 [MA 1996] [MA 1999] [XHTML 2000] Maler, Eve L. and Jeanne El Andaloussi, Developing SGML DTDs, Prentice Hall PTR, New Jersey, USA. ISBN Maler, Eve L., XML specification DTD, W3C, Cambridge, MA, USA. Available online as Stephen Pemberton et al., XHTML 1.0: The Extensible HyperText Markup Language, W3C, Cambridge, MA, USA. Strict DTD also available as [TH 2000] Thompson, Henry S., David Beech, Murray Maloney and Noah Mendelsohn, eds, XML Schema part 1: Structures, W3C, Cambridge, MA, USA. Also available as 7

8 Author Henry S. Thompson HCRC Language Technology Group Division of Informatics University of Edinburgh Postal Address: 2 Buccleuch Place EH8 9LW Edinburgh Scotland ht@cogsci.ed.ac.uk Henry S. Thompson - Henry S. Thompson is Reader in Artificial Intelligence and Cognitive Science at the University, where he currently holds a World Wide Web Consortium Fellowship. He was a member of the W3C SGML Working Group, and is a member of the W3C XSL and XML Schema Working Groups. He is the author of DSC, the only publicly available implementation of the DSSSL transformation language, and of XED, the first free XML instance editor. He is editor of the Structures part of the XML Schema draft W3C recommendation. Henry S. Thompson has presented many papers and tutorials on SGML, DSSSL, XML, XSL and XML Schemas in both industrial and public settings over the last five years. 8

XML Schema Part 1: Structures Second Edition

XML Schema Part 1: Structures Second Edition Page 1 of 210 XML Schema Part 1: Structures Second Edition W3C Recommendation 28 October 2004 This version: http://www.w3.org/tr/2004/rec-xmlschema-1-20041028/ Latest version: Previous version: http://www.w3.org/tr/2004/per-xmlschema-1-20040318/

More information

[MS-MSL]: Mapping Specification Language File Format. Intellectual Property Rights Notice for Open Specifications Documentation

[MS-MSL]: Mapping Specification Language File Format. Intellectual Property Rights Notice for Open Specifications Documentation [MS-MSL]: Intellectual Property Rights Notice for Open Specifications Documentation Technical Documentation. Microsoft publishes Open Specifications documentation ( this documentation ) for protocols,

More information

No Trade Secrets. Microsoft does not claim any trade secret rights in this documentation.

No Trade Secrets. Microsoft does not claim any trade secret rights in this documentation. [MS-MSL]: Intellectual Property Rights Notice for Open Specifications Documentation Technical Documentation. Microsoft publishes Open Specifications documentation for protocols, file formats, languages,

More information

Introduction Syntax and Usage XML Databases Java Tutorial XML. November 5, 2008 XML

Introduction Syntax and Usage XML Databases Java Tutorial XML. November 5, 2008 XML Introduction Syntax and Usage Databases Java Tutorial November 5, 2008 Introduction Syntax and Usage Databases Java Tutorial Outline 1 Introduction 2 Syntax and Usage Syntax Well Formed and Valid Displaying

More information

ISO/IEC TR TECHNICAL REPORT

ISO/IEC TR TECHNICAL REPORT TECHNICAL REPORT ISO/IEC TR 22250-1 First edition 2002-02-15 Information technology Document description and processing languages Regular Language Description for XML (RELAX) Part 1: RELAX Core Technologies

More information

Information Systems. DTD and XML Schema. Nikolaj Popov

Information Systems. DTD and XML Schema. Nikolaj Popov Information Systems DTD and XML Schema Nikolaj Popov Research Institute for Symbolic Computation Johannes Kepler University of Linz, Austria popov@risc.uni-linz.ac.at Outline DTDs Document Type Declarations

More information

XML BASED DICTIONARIES FOR MXF/AAF APPLICATIONS

XML BASED DICTIONARIES FOR MXF/AAF APPLICATIONS XML BASED DICTIONARIES FOR MXF/AAF APPLICATIONS D. Beenham, P. Schmidt and G. Sylvester-Bradley Sony Broadcast & Professional Research Laboratories, UK ABSTRACT Both the Advanced Authoring Format (AAF)

More information

Modelling XML Applications

Modelling XML Applications Modelling XML Applications Patryk Czarnik XML and Applications 2013/2014 Lecture 2 14.10.2013 XML application (recall) XML application (zastosowanie XML) A concrete language with XML syntax Typically defined

More information

Structured documents

Structured documents Structured documents An overview of XML Structured documents Michael Houghton 15/11/2000 Unstructured documents Broadly speaking, text and multimedia document formats can be structured or unstructured.

More information

EMERGING TECHNOLOGIES. XML Documents and Schemas for XML documents

EMERGING TECHNOLOGIES. XML Documents and Schemas for XML documents EMERGING TECHNOLOGIES XML Documents and Schemas for XML documents Outline 1. Introduction 2. Structure of XML data 3. XML Document Schema 3.1. Document Type Definition (DTD) 3.2. XMLSchema 4. Data Model

More information

XML Information Set. Working Draft of May 17, 1999

XML Information Set. Working Draft of May 17, 1999 XML Information Set Working Draft of May 17, 1999 This version: http://www.w3.org/tr/1999/wd-xml-infoset-19990517 Latest version: http://www.w3.org/tr/xml-infoset Editors: John Cowan David Megginson Copyright

More information

Using UML To Define XML Document Types

Using UML To Define XML Document Types Using UML To Define XML Document Types W. Eliot Kimber ISOGEN International, A DataChannel Company Created On: 10 Dec 1999 Last Revised: 14 Jan 2000 Defines a convention for the use of UML to define XML

More information

Intellectual Property Rights Notice for Open Specifications Documentation

Intellectual Property Rights Notice for Open Specifications Documentation [MS-MSL-Diff]: Intellectual Property Rights Notice for Open Specifications Documentation Technical Documentation. Microsoft publishes Open Specifications documentation for protocols, file formats, languages,

More information

Altova XMLSpy 2007 Tutorial

Altova XMLSpy 2007 Tutorial Tutorial All rights reserved. No parts of this work may be reproduced in any form or by any means - graphic, electronic, or mechanical, including photocopying, recording, taping, or information storage

More information

XML. Part II DTD (cont.) and XML Schema

XML. Part II DTD (cont.) and XML Schema XML Part II DTD (cont.) and XML Schema Attribute Declarations Declare a list of allowable attributes for each element These lists are called ATTLIST declarations Consists of 3 basic parts The ATTLIST keyword

More information

(One) Layer Model of the Semantic Web. Semantic Web - XML XML. Extensible Markup Language. Prof. Dr. Steffen Staab Dipl.-Inf. Med.

(One) Layer Model of the Semantic Web. Semantic Web - XML XML. Extensible Markup Language. Prof. Dr. Steffen Staab Dipl.-Inf. Med. (One) Layer Model of the Semantic Web Semantic Web - XML Prof. Dr. Steffen Staab Dipl.-Inf. Med. Bernhard Tausch Steffen Staab - 1 Steffen Staab - 2 Slide 2 Extensible Markup Language Purpose here: storing

More information

SDMX self-learning package XML based technologies used in SDMX-IT TEST

SDMX self-learning package XML based technologies used in SDMX-IT TEST SDMX self-learning package XML based technologies used in SDMX-IT TEST Produced by Eurostat, Directorate B: Statistical Methodologies and Tools Unit B-5: Statistical Information Technologies Last update

More information

XML extensible Markup Language

XML extensible Markup Language extensible Markup Language Eshcar Hillel Sources: http://www.w3schools.com http://java.sun.com/webservices/jaxp/ learning/tutorial/index.html Tutorial Outline What is? syntax rules Schema Document Object

More information

Last week we saw how to use the DOM parser to read an XML document. The DOM parser can also be used to create and modify nodes.

Last week we saw how to use the DOM parser to read an XML document. The DOM parser can also be used to create and modify nodes. Distributed Software Development XML Schema Chris Brooks Department of Computer Science University of San Francisco 7-2: Modifying XML programmatically Last week we saw how to use the DOM parser to read

More information

Software Engineering Methods, XML extensible Markup Language. Tutorial Outline. An Example File: Note.xml XML 1

Software Engineering Methods, XML extensible Markup Language. Tutorial Outline. An Example File: Note.xml XML 1 extensible Markup Language Eshcar Hillel Sources: http://www.w3schools.com http://java.sun.com/webservices/jaxp/ learning/tutorial/index.html Tutorial Outline What is? syntax rules Schema Document Object

More information

DCMI Abstract Model - DRAFT Update

DCMI Abstract Model - DRAFT Update 1 of 7 9/19/2006 7:02 PM Architecture Working Group > AMDraftUpdate User UserPreferences Site Page Actions Search Title: Text: AttachFile DeletePage LikePages LocalSiteMap SpellCheck DCMI Abstract Model

More information

Information Technology Document Schema Definition Languages (DSDL) Part 1: Overview

Information Technology Document Schema Definition Languages (DSDL) Part 1: Overview ISO/IEC JTC 1/SC 34 Date: 2008-09-17 ISO/IEC FCD 19757-1 ISO/IEC JTC 1/SC 34/WG 1 Secretariat: Japanese Industrial Standards Committee Information Technology Document Schema Definition Languages (DSDL)

More information

Delivery Options: Attend face-to-face in the classroom or remote-live attendance.

Delivery Options: Attend face-to-face in the classroom or remote-live attendance. XML Programming Duration: 5 Days Price: $2795 *California residents and government employees call for pricing. Discounts: We offer multiple discount options. Click here for more info. Delivery Options:

More information

XML: Extensible Markup Language

XML: Extensible Markup Language XML: Extensible Markup Language CSC 375, Fall 2015 XML is a classic political compromise: it balances the needs of man and machine by being equally unreadable to both. Matthew Might Slides slightly modified

More information

TS SIGNATURE VALIDATION REPORT

TS SIGNATURE VALIDATION REPORT TS 119 102 2 SIGNATURE VALIDATION REPORT An introduction Presented by Peter Lipp for the esignature and eseal validation workshop, Jan 10 2018 Agenda Scope Relation to EN 319 102 1 Approach Report structure

More information

[MS-ASNOTE]: Exchange ActiveSync: Notes Class Protocol. Intellectual Property Rights Notice for Open Specifications Documentation

[MS-ASNOTE]: Exchange ActiveSync: Notes Class Protocol. Intellectual Property Rights Notice for Open Specifications Documentation [MS-ASNOTE]: Intellectual Property Rights Notice for Open Specifications Documentation Technical Documentation. Microsoft publishes Open Specifications documentation ( this documentation ) for protocols,

More information

XML. Objectives. Duration. Audience. Pre-Requisites

XML. Objectives. Duration. Audience. Pre-Requisites XML XML - extensible Markup Language is a family of standardized data formats. XML is used for data transmission and storage. Common applications of XML include business to business transactions, web services

More information

Copyright 2007 Ramez Elmasri and Shamkant B. Navathe. Slide 27-1

Copyright 2007 Ramez Elmasri and Shamkant B. Navathe. Slide 27-1 Slide 27-1 Chapter 27 XML: Extensible Markup Language Chapter Outline Introduction Structured, Semi structured, and Unstructured Data. XML Hierarchical (Tree) Data Model. XML Documents, DTD, and XML Schema.

More information

extensible Markup Language

extensible Markup Language What is XML? The acronym means extensible Markup Language It is used to describe data in a way which is simple, structured and (usually) readable also by humans Developed at the end of the ninenties by

More information

[MS-SSDL]: Store Schema Definition Language File Format. Intellectual Property Rights Notice for Open Specifications Documentation

[MS-SSDL]: Store Schema Definition Language File Format. Intellectual Property Rights Notice for Open Specifications Documentation [MS-SSDL]: Intellectual Property Rights Notice for Open Specifications Documentation Technical Documentation. Microsoft publishes Open Specifications documentation ( this documentation ) for protocols,

More information

Semistructured Content

Semistructured Content On our first day Semistructured Content 1 Structured data : database system tagged, typed well-defined semantic interpretation Semi-structured data: tagged - (HTML?) some help with semantic interpretation

More information

On why C# s type system needs an extension

On why C# s type system needs an extension On why C# s type system needs an extension Wolfgang Gehring University of Ulm, Faculty of Computer Science, D-89069 Ulm, Germany wgehring@informatik.uni-ulm.de Abstract. XML Schemas (XSD) are the type

More information

SDPL : XML Basics 2. SDPL : XML Basics 1. SDPL : XML Basics 4. SDPL : XML Basics 3. SDPL : XML Basics 5

SDPL : XML Basics 2. SDPL : XML Basics 1. SDPL : XML Basics 4. SDPL : XML Basics 3. SDPL : XML Basics 5 2 Basics of XML and XML documents 2.1 XML and XML documents Survivor's Guide to XML, or XML for Computer Scientists / Dummies 2.1 XML and XML documents 2.2 Basics of XML DTDs 2.3 XML Namespaces XML 1.0

More information

COMP9321 Web Application Engineering

COMP9321 Web Application Engineering COMP9321 Web Application Engineering Semester 2, 2015 Dr. Amin Beheshti Service Oriented Computing Group, CSE, UNSW Australia Week 4 http://webapps.cse.unsw.edu.au/webcms2/course/index.php?cid=2411 1 Extensible

More information

extensible Markup Language

extensible Markup Language What is XML? The acronym means extensible Markup Language It is used to describe data in a way which is simple, structured and (usually) readable also by humans Developed at the end of the ninenties by

More information

No Trade Secrets. Microsoft does not claim any trade secret rights in this documentation.

No Trade Secrets. Microsoft does not claim any trade secret rights in this documentation. [MS-OXSHRMSG]: Intellectual Property Rights Notice for Open Specifications Documentation Technical Documentation. Microsoft publishes Open Specifications documentation for protocols, file formats, languages,

More information

extensible Markup Language

extensible Markup Language extensible Markup Language XML is rapidly becoming a widespread method of creating, controlling and managing data on the Web. XML Orientation XML is a method for putting structured data in a text file.

More information

D-Cinema Packaging Caption and Closed Subtitle

D-Cinema Packaging Caption and Closed Subtitle SMPTE STANDARD SMPTE 429-12-2008 D-Cinema Packaging Caption and Closed Subtitle Page 1 of 11 pages Table of Contents Page Foreword... 2 Intellectual Property... 2 1 Scope... 3 2 Conformance Notation...

More information

Semistructured Content

Semistructured Content On our first day Semistructured Content 1 Structured data : database system tagged, typed well-defined semantic interpretation Semi-structured data: tagged - XML (HTML?) some help with semantic interpretation

More information

saml requesting attributes v1.1 wd01 Working Draft January 2016 Standards Track Draft Copyright OASIS Open All Rights Reserved.

saml requesting attributes v1.1 wd01 Working Draft January 2016 Standards Track Draft Copyright OASIS Open All Rights Reserved. Standards Track Draft Copyright OASIS Open 2015. All Rights Reserved. Page 1 of 10 SAML v2.0 Protocol Extension for Requesting Attributes in AuthnRequest Version 1.1 Working Draft 02 19 January 2016 Technical

More information

Delivery Options: Attend face-to-face in the classroom or via remote-live attendance.

Delivery Options: Attend face-to-face in the classroom or via remote-live attendance. XML Programming Duration: 5 Days US Price: $2795 UK Price: 1,995 *Prices are subject to VAT CA Price: CDN$3,275 *Prices are subject to GST/HST Delivery Options: Attend face-to-face in the classroom or

More information

XML and Web Services

XML and Web Services XML and Web Services Lecture 8 1 XML (Section 17) Outline XML syntax, semistructured data Document Type Definitions (DTDs) XML Schema Introduction to XML based Web Services 2 Additional Readings on XML

More information

Session [2] Information Modeling with XSD and DTD

Session [2] Information Modeling with XSD and DTD Session [2] Information Modeling with XSD and DTD September 12, 2000 Horst Rechner Q&A from Session [1] HTML without XML See Code HDBMS vs. RDBMS What does XDR mean? XML-Data Reduced Utilized in Biztalk

More information

Introducing our First Schema

Introducing our First Schema 1 di 11 21/05/2006 10.24 Published on XML.com http://www.xml.com/pub/a/2000/11/29/schemas/part1.html See this if you're having trouble printing code examples Using W3C XML By Eric van der Vlist October

More information

Copyright 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley. Chapter 7 XML

Copyright 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley. Chapter 7 XML Chapter 7 XML 7.1 Introduction extensible Markup Language Developed from SGML A meta-markup language Deficiencies of HTML and SGML Lax syntactical rules Many complex features that are rarely used HTML

More information

Chapter 2 XML, XML Schema, XSLT, and XPath

Chapter 2 XML, XML Schema, XSLT, and XPath Summary Chapter 2 XML, XML Schema, XSLT, and XPath Ryan McAlister XML stands for Extensible Markup Language, meaning it uses tags to denote data much like HTML. Unlike HTML though it was designed to carry

More information

QosPolicyHolder 1.0. For UPnP Version Date: March 10th, 2005

QosPolicyHolder 1.0. For UPnP Version Date: March 10th, 2005 QosPolicyHolder 1.0 For UPnP Version 1.0 2 Date: March 10th, 2005 This Standardized DCP has been adopted as a Standardized DCP by the Steering Committee of the UPnP Forum, pursuant to Section 2.1(c)(ii)

More information

XML Metadata Standards and Topic Maps

XML Metadata Standards and Topic Maps XML Metadata Standards and Topic Maps Erik Wilde 16.7.2001 XML Metadata Standards and Topic Maps 1 Outline what is XML? a syntax (not a data model!) what is the data model behind XML? XML Information Set

More information

CSI 3140 WWW Structures, Techniques and Standards. Markup Languages: XHTML 1.0

CSI 3140 WWW Structures, Techniques and Standards. Markup Languages: XHTML 1.0 CSI 3140 WWW Structures, Techniques and Standards Markup Languages: XHTML 1.0 HTML Hello World! Document Type Declaration Document Instance Guy-Vincent Jourdan :: CSI 3140 :: based on Jeffrey C. Jackson

More information

XML Schema. Mario Alviano A.Y. 2017/2018. University of Calabria, Italy 1 / 28

XML Schema. Mario Alviano A.Y. 2017/2018. University of Calabria, Italy 1 / 28 1 / 28 XML Schema Mario Alviano University of Calabria, Italy A.Y. 2017/2018 Outline 2 / 28 1 Introduction 2 Elements 3 Simple and complex types 4 Attributes 5 Groups and built-in 6 Import of other schemes

More information

ASSESSMENT SUMMARY XHTML 1.1 (W3C) Date: 27/03/ / 6 Doc.Version: 0.90

ASSESSMENT SUMMARY XHTML 1.1 (W3C) Date: 27/03/ / 6 Doc.Version: 0.90 ASSESSMENT SUMMARY XHTML 1.1 (W3C) Date: 27/03/2017 1 / 6 Doc.Version: 0.90 TABLE OF CONTENTS 1. INTRODUCTION... 3 2. ASSESSMENT SUMMARY... 3 3. ASSESSMENT RESULTS... 5 4. ASSESSMENT OBSERVATIONS... 5

More information

Altova XMLSpy 2013 Tutorial

Altova XMLSpy 2013 Tutorial Tutorial All rights reserved. No parts of this work may be reproduced in any form or by any means - graphic, electronic, or mechanical, including photocopying, recording, taping, or information storage

More information

CLIENT-SIDE XML SCHEMA VALIDATION

CLIENT-SIDE XML SCHEMA VALIDATION Factonomy Ltd The University of Edinburgh Aleksejs Goremikins Henry S. Thompson CLIENT-SIDE XML SCHEMA VALIDATION Edinburgh 2011 Motivation Key gap in the integration of XML into the global Web infrastructure

More information

XML Structures. Web Programming. Uta Priss ZELL, Ostfalia University. XML Introduction Syntax: well-formed Semantics: validity Issues

XML Structures. Web Programming. Uta Priss ZELL, Ostfalia University. XML Introduction Syntax: well-formed Semantics: validity Issues XML Structures Web Programming Uta Priss ZELL, Ostfalia University 2013 Web Programming XML1 Slide 1/32 Outline XML Introduction Syntax: well-formed Semantics: validity Issues Web Programming XML1 Slide

More information

BEAWebLogic. Integration. Transforming Data Using XQuery Mapper

BEAWebLogic. Integration. Transforming Data Using XQuery Mapper BEAWebLogic Integration Transforming Data Using XQuery Mapper Version: 10.2 Document Revised: March 2008 Contents Introduction Overview of XQuery Mapper.............................................. 1-1

More information

[MS-ESREST]: Excel Services REST Protocol. Intellectual Property Rights Notice for Open Specifications Documentation

[MS-ESREST]: Excel Services REST Protocol. Intellectual Property Rights Notice for Open Specifications Documentation [MS-ESREST]: Intellectual Property Rights Notice for Open Specifications Documentation Technical Documentation. Microsoft publishes Open Specifications documentation for protocols, file formats, languages,

More information

7.1 Introduction. extensible Markup Language Developed from SGML A meta-markup language Deficiencies of HTML and SGML

7.1 Introduction. extensible Markup Language Developed from SGML A meta-markup language Deficiencies of HTML and SGML 7.1 Introduction extensible Markup Language Developed from SGML A meta-markup language Deficiencies of HTML and SGML Lax syntactical rules Many complex features that are rarely used HTML is a markup language,

More information

2006 Martin v. Löwis. Data-centric XML. XML Schema (Part 1)

2006 Martin v. Löwis. Data-centric XML. XML Schema (Part 1) Data-centric XML XML Schema (Part 1) Schema and DTD Disadvantages of DTD: separate, non-xml syntax very limited constraints on data types (just ID, IDREF, ) no support for sets (i.e. each element type

More information

COMP9321 Web Application Engineering. Extensible Markup Language (XML)

COMP9321 Web Application Engineering. Extensible Markup Language (XML) COMP9321 Web Application Engineering Extensible Markup Language (XML) Dr. Basem Suleiman Service Oriented Computing Group, CSE, UNSW Australia Semester 1, 2016, Week 4 http://webapps.cse.unsw.edu.au/webcms2/course/index.php?cid=2442

More information

[MS-SSDL]: Store Schema Definition Language File Format. Intellectual Property Rights Notice for Open Specifications Documentation

[MS-SSDL]: Store Schema Definition Language File Format. Intellectual Property Rights Notice for Open Specifications Documentation [MS-SSDL]: Intellectual Property Rights Notice for Open Specifications Documentation Technical Documentation. Microsoft publishes Open Specifications documentation for protocols, file formats, languages,

More information

PART. Oracle and the XML Standards

PART. Oracle and the XML Standards PART I Oracle and the XML Standards CHAPTER 1 Introducing XML 4 Oracle Database 10g XML & SQL E xtensible Markup Language (XML) is a meta-markup language, meaning that the language, as specified by the

More information

XML: Introduction. !important Declaration... 9:11 #FIXED... 7:5 #IMPLIED... 7:5 #REQUIRED... Directive... 9:11

XML: Introduction. !important Declaration... 9:11 #FIXED... 7:5 #IMPLIED... 7:5 #REQUIRED... Directive... 9:11 !important Declaration... 9:11 #FIXED... 7:5 #IMPLIED... 7:5 #REQUIRED... 7:4 @import Directive... 9:11 A Absolute Units of Length... 9:14 Addressing the First Line... 9:6 Assigning Meaning to XML Tags...

More information

extensible Markup Language (XML) Basic Concepts

extensible Markup Language (XML) Basic Concepts (XML) Basic Concepts Giuseppe Della Penna Università degli Studi di L Aquila dellapenna@univaq.it http://www.di.univaq.it/gdellape This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike

More information

XML Support for Annotated Language Resources

XML Support for Annotated Language Resources XML Support for Annotated Language Resources Nancy Ide Department of Computer Science Vassar College Poughkeepsie, New York USA ide@cs.vassar.edu Laurent Romary Equipe Langue et Dialogue LORIA/CNRS Vandoeuvre-lès-Nancy,

More information

- What we actually mean by documents (the FRBR hierarchy) - What are the components of documents

- What we actually mean by documents (the FRBR hierarchy) - What are the components of documents Purpose of these slides Introduction to XML for parliamentary documents (and all other kinds of documents, actually) Prof. Fabio Vitali University of Bologna Part 1 Introduce the principal aspects of electronic

More information

Level of Assurance Authentication Context Profiles for SAML 2.0

Level of Assurance Authentication Context Profiles for SAML 2.0 2 3 4 5 Level of Assurance Authentication Context Profiles for SAML 2.0 Draft 01 01 April 2008 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 Specification URIs: This

More information

A tutorial report for SENG Agent Based Software Engineering. Course Instructor: Dr. Behrouz H. Far. XML Tutorial.

A tutorial report for SENG Agent Based Software Engineering. Course Instructor: Dr. Behrouz H. Far. XML Tutorial. A tutorial report for SENG 609.22 Agent Based Software Engineering Course Instructor: Dr. Behrouz H. Far XML Tutorial Yanan Zhang Department of Electrical and Computer Engineering University of Calgary

More information

No Trade Secrets. Microsoft does not claim any trade secret rights in this documentation.

No Trade Secrets. Microsoft does not claim any trade secret rights in this documentation. [MS-OTPCE]: Intellectual Property Rights Notice for Open Specifications Documentation Technical Documentation. Microsoft publishes Open Specifications documentation for protocols, file formats, languages,

More information

XML Query Requirements

XML Query Requirements XML Query Requirements Page 1 of 10 XML Query Requirements W3C Working Draft 15 February 2001 This version: http://www.w3.org/tr/2001/wd-xmlquery-req-20010215 Latest version: http://www.w3.org/tr/xmlquery-req

More information

[MS-TMPLDISC]: Template Discovery Web Service Protocol. Intellectual Property Rights Notice for Open Specifications Documentation

[MS-TMPLDISC]: Template Discovery Web Service Protocol. Intellectual Property Rights Notice for Open Specifications Documentation [MS-TMPLDISC]: Intellectual Property Rights Notice for Open Specifications Documentation Technical Documentation. Microsoft publishes Open Specifications documentation for protocols, file formats, languages,

More information

Tutorial 2: Validating Documents with DTDs

Tutorial 2: Validating Documents with DTDs 1. One way to create a valid document is to design a document type definition, or DTD, for the document. 2. As shown in the accompanying figure, the external subset would define some basic rules for all

More information

DTD MIGRATION TO W3C SCHEMA

DTD MIGRATION TO W3C SCHEMA Chapter 1 Schema Introduction The XML technical specification identified a standard for writing a schema (i.e., an information model) for XML called a document type definition (DTD). 1 DTDs were a carryover

More information

The XML Metalanguage

The XML Metalanguage The XML Metalanguage Mika Raento mika.raento@cs.helsinki.fi University of Helsinki Department of Computer Science Mika Raento The XML Metalanguage p.1/442 2003-09-15 Preliminaries Mika Raento The XML Metalanguage

More information

Chapter 3 Brief Overview of XML

Chapter 3 Brief Overview of XML Slide 3.1 Web Serv vices: Princ ciples & Te echno ology Chapter 3 Brief Overview of XML Mike P. Papazoglou & mikep@uvt.nl Slide 3.2 Topics XML document structure XML schemas reuse Document navigation and

More information

[MS-WORDSSP]: Word Automation Services Stored Procedures Protocol Specification

[MS-WORDSSP]: Word Automation Services Stored Procedures Protocol Specification [MS-WORDSSP]: Word Automation Services Stored Procedures Protocol Specification Intellectual Property Rights Notice for Open Specifications Documentation Technical Documentation. Microsoft publishes Open

More information

[MS-OXWSMSHR]: Folder Sharing Web Service Protocol. Intellectual Property Rights Notice for Open Specifications Documentation

[MS-OXWSMSHR]: Folder Sharing Web Service Protocol. Intellectual Property Rights Notice for Open Specifications Documentation [MS-OXWSMSHR]: Intellectual Property Rights Notice for Open Specifications Documentation Technical Documentation. Microsoft publishes Open Specifications documentation ( this documentation ) for protocols,

More information

Information technology Document Schema Definition Languages (DSDL) Part 8: Document Semantics Renaming Language (DSRL)

Information technology Document Schema Definition Languages (DSDL) Part 8: Document Semantics Renaming Language (DSRL) INTERNATIONAL STANDARD ISO/IEC 19757-8:2008 TECHNICAL CORRIGENDUM 1 Published 2011-12-01 INTERNATIONAL ORGANIZATION FOR STANDARDIZATION МЕЖДУНАРОДНАЯ ОРГАНИЗАЦИЯ ПО СТАНДАРТИЗАЦИИ ORGANISATION INTERNATIONALE

More information

[MS-SSISPARAMS-Diff]: Integration Services Project Parameter File Format. Intellectual Property Rights Notice for Open Specifications Documentation

[MS-SSISPARAMS-Diff]: Integration Services Project Parameter File Format. Intellectual Property Rights Notice for Open Specifications Documentation [MS-SSISPARAMS-Diff]: Intellectual Property Rights Notice for Open Specifications Documentation Technical Documentation. Microsoft publishes Open Specifications documentation ( this documentation ) for

More information

XML Security Derived Keys

XML Security Derived Keys http://www.w3.org/tr/2009/wd-xmlsec-deriv... 1 3/28/2009 11:33 AM XML Security Derived Keys W3C Working Draft 26 February 2009 This version: http://www.w3.org/tr/2009/wd-xmlsec-derivedkeys-20090226/ Latest

More information

Chapter 7: XML Namespaces

Chapter 7: XML Namespaces 7. XML Namespaces 7-1 Chapter 7: XML Namespaces References: Tim Bray, Dave Hollander, Andrew Layman: Namespaces in XML. W3C Recommendation, World Wide Web Consortium, Jan 14, 1999. [http://www.w3.org/tr/1999/rec-xml-names-19990114],

More information

[MS-OXSHRMSG]: Sharing Message Attachment Schema. Intellectual Property Rights Notice for Open Specifications Documentation

[MS-OXSHRMSG]: Sharing Message Attachment Schema. Intellectual Property Rights Notice for Open Specifications Documentation [MS-OXSHRMSG]: Intellectual Property Rights Notice for Open Specifications Documentation Technical Documentation. Microsoft publishes Open Specifications documentation for protocols, file formats, languages,

More information

Comp 336/436 - Markup Languages. Fall Semester Week 4. Dr Nick Hayward

Comp 336/436 - Markup Languages. Fall Semester Week 4. Dr Nick Hayward Comp 336/436 - Markup Languages Fall Semester 2017 - Week 4 Dr Nick Hayward XML - recap first version of XML became a W3C Recommendation in 1998 a useful format for data storage and exchange config files,

More information

CHAPTER 2 MARKUP LANGUAGES: XHTML 1.0

CHAPTER 2 MARKUP LANGUAGES: XHTML 1.0 WEB TECHNOLOGIES A COMPUTER SCIENCE PERSPECTIVE CHAPTER 2 MARKUP LANGUAGES: XHTML 1.0 Modified by Ahmed Sallam Based on original slides by Jeffrey C. Jackson reserved. 0-13-185603-0 HTML HELLO WORLD! Document

More information

XML Schema for Job Definition Format. Graham Mann Internet Printing Group, Adobe Systems Inc

XML Schema for Job Definition Format. Graham Mann Internet Printing Group, Adobe Systems Inc XML Schema for Job Definition Format Graham Mann Internet Printing Group, Adobe Systems Inc gmann@adobe.com Agenda! Why use XML schema! Summary of XML schema capability! Limitations of XML schema! JDF

More information

Marker s feedback version

Marker s feedback version Two hours Special instructions: This paper will be taken on-line and this is the paper format which will be available as a back-up UNIVERSITY OF MANCHESTER SCHOOL OF COMPUTER SCIENCE Semi-structured Data

More information

Test Assertions Part 2 - Test Assertion Markup Language Version 1.0

Test Assertions Part 2 - Test Assertion Markup Language Version 1.0 Test Assertions Part 2 - Test Assertion Markup Language Version 1.0 Draft 1.0.2 6 January 2010 Specification URIs: This Version: Previous Version: [NA] Latest Version: http://docs.oasis-open.org/tag/taml/v1.0/testassertionmarkuplanguage-1.0.html

More information

Intellectual Property Rights Notice for Open Specifications Documentation

Intellectual Property Rights Notice for Open Specifications Documentation [MS-SSISPARAMS-Diff]: Intellectual Property Rights tice for Open Specifications Documentation Technical Documentation. Microsoft publishes Open Specifications documentation for protocols, file formats,

More information

Introduction to XML. XML: basic elements

Introduction to XML. XML: basic elements Introduction to XML XML: basic elements XML Trying to wrap your brain around XML is sort of like trying to put an octopus in a bottle. Every time you think you have it under control, a new tentacle shows

More information

Semantic Web Tools. Federico Chesani 18 Febbraio 2010

Semantic Web Tools. Federico Chesani 18 Febbraio 2010 Semantic Web Tools Federico Chesani 18 Febbraio 2010 Outline A unique way for identifying concepts How to uniquely identified concepts? -> by means of a name system... SW exploits an already available

More information

XML. XML Namespaces, XML Schema, XSLT

XML. XML Namespaces, XML Schema, XSLT XML XML Namespaces, XML Schema, XSLT Contents XML Namespaces... 2 Namespace Prefixes and Declaration... 3 Multiple Namespace Declarations... 4 Declaring Namespaces in the Root Element... 5 Default Namespaces...

More information

Chapter 10: Understanding the Standards

Chapter 10: Understanding the Standards Disclaimer: All words, pictures are adopted from Learning Web Design (3 rd eds.) by Jennifer Niederst Robbins, published by O Reilly 2007. Chapter 10: Understanding the Standards CSc2320 In this chapter

More information

SDMX self-learning package No. 5 Student book. Metadata Structure Definition

SDMX self-learning package No. 5 Student book. Metadata Structure Definition No. 5 Student book Metadata Structure Definition Produced by Eurostat, Directorate B: Statistical Methodologies and Tools Unit B-5: Statistical Information Technologies Last update of content December

More information

CSLDSSSL - An Annotatable DSSSL Stylesheet

CSLDSSSL - An Annotatable DSSSL Stylesheet Table of Contents CSLDSSSL - An Annotatable DSSSL Stylesheet 1. Introduction... 1 1.1. Assumptions... 2 1.1.1. Print Rendering... 2 1.1.2. HTML Rendering... 2 1.2. Sample Windows Environment... 2 1.2.1.

More information

Semantic Web. XML and XML Schema. Morteza Amini. Sharif University of Technology Fall 94-95

Semantic Web. XML and XML Schema. Morteza Amini. Sharif University of Technology Fall 94-95 ه عا ی Semantic Web XML and XML Schema Morteza Amini Sharif University of Technology Fall 94-95 Outline Markup Languages XML Building Blocks XML Applications Namespaces XML Schema 2 Outline Markup Languages

More information

XML. Document Type Definitions XML Schema. Database Systems and Concepts, CSCI 3030U, UOIT, Course Instructor: Jarek Szlichta

XML. Document Type Definitions XML Schema. Database Systems and Concepts, CSCI 3030U, UOIT, Course Instructor: Jarek Szlichta XML Document Type Definitions XML Schema 1 XML XML stands for extensible Markup Language. XML was designed to describe data. XML has come into common use for the interchange of data over the Internet.

More information

DSD: A Schema Language for XML

DSD: A Schema Language for XML DSD: A Schema Language for XML Nils Klarlund, AT&T Labs Research Anders Møller, BRICS, Aarhus University Michael I. Schwartzbach, BRICS, Aarhus University Connections between XML and Formal Methods XML:

More information

Chapter 1: Getting Started. You will learn:

Chapter 1: Getting Started. You will learn: Chapter 1: Getting Started SGML and SGML document components. What XML is. XML as compared to SGML and HTML. XML format. XML specifications. XML architecture. Data structure namespaces. Data delivery,

More information

Java EE 7: Back-end Server Application Development 4-2

Java EE 7: Back-end Server Application Development 4-2 Java EE 7: Back-end Server Application Development 4-2 XML describes data objects called XML documents that: Are composed of markup language for structuring the document data Support custom tags for data

More information

Expires: January 15, 2005 July 17, Extensible Markup Language (XML) Formats for Representing Resource Lists draft-ietf-simple-xcap-list-usage-03

Expires: January 15, 2005 July 17, Extensible Markup Language (XML) Formats for Representing Resource Lists draft-ietf-simple-xcap-list-usage-03 SIMPLE J. Rosenberg Internet-Draft dynamicsoft Expires: January 15, 2005 July 17, 2004 Extensible Markup Language (XML) Formats for Representing Resource Lists draft-ietf-simple-xcap-list-usage-03 Status

More information

FROM XML SCHEMA TO OBJECT-RELATIONAL DATABASE AN XML SCHEMA-DRIVEN MAPPING ALGORITHM

FROM XML SCHEMA TO OBJECT-RELATIONAL DATABASE AN XML SCHEMA-DRIVEN MAPPING ALGORITHM FROM XML SCHEMA TO OBJECT-RELATIONAL DATABASE AN XML SCHEMA-DRIVEN MAPPING ALGORITHM Irena Mlynkova, Jaroslav Pokorny Charles University, Faculty of Mathematics and Physics, Department of Software Engineering

More information