NOTE:
These slides have not been updated since 2003. They have been superseded by the book
Anders Møller and Michael Schwartzbach, February 2006 |
THE XML REVOLUTION - TECHNOLOGIES FOR THE FUTURE WEB |
An example document john_doe.xml:
<card xmlns="http://businesscard.org"> <name>John Doe</name> <title>CEO, Widget Inc.</title> <email>john.doe@widget.com</email> <phone>(202) 456-1414</phone> <logo url="widget.gif"/> </card> |
To describe the syntax of our new language, we write a schema business_card.xsd:
<schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:b="http://businesscard.org" targetNamespace="http://businesscard.org"> <element name="card" type="b:card_type"/> <element name="name" type="string"/> <element name="title" type="string"/> <element name="email" type="string"/> <element name="phone" type="string"/> <element name="logo" type="b:logo_type"/> <complexType name="card_type"> <sequence> <element ref="b:name"/> <element ref="b:title"/> <element ref="b:email"/> <element ref="b:phone" minOccurs="0"/> <element ref="b:logo" minOccurs="0"/> </sequence> </complexType> <complexType name="logo_type"> <attribute name="url" type="anyURI"/> </complexType> </schema> |
The XML Schema language is recognized by the namespace http://www.w3.org/2001/XMLSchema.
A document may refer to a schema with the schemaLocation (or the noNamespaceSchemaLocation) attribute:
<card xmlns="http://businesscard.org" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://businesscard.org business_card.xsd"> ... </card> |
By inserting this, the author claims that the document is intended to be valid with respect to the schema.
COPYRIGHT © 2000-2003 ANDERS MØLLER & MICHAEL I. SCHWARTZBACH |