Using W3C XML Schema
An
XML Schema document (XSD), like an XSLT stylesheet, is itself an XML
document. It may contain an XML declaration, and must contain a
namespace declaration for the URI
http://www.w3.org/2001/XMLSchema
. This namespace
is traditionally mapped to the prefix xs
. The
document element of an XSD is xs:schema
; the
simplest possible XSD, therefore, is the following:
<?xml version="1.0"?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" />
Of course, this XSD defines no structure, so it is mostly useless. To be more useful, it should include at least one element, representing the document element of the XML document it describes:
<?xml version="1.0"?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:element name="Customer" /> </xs:schema>
The xs:element
element is called a particle. A particle can be
thought of as representing a single unit of markup, or a grouping of
such units. Other particles include xs:attribute
,
xs:choice
, and xs:sequence
,
among others. xs:all
,
xs:sequence
and xs:choice
are
also compositors, elements that define groups of
particles.
A document using this schema would need to have the following content in order to be valid:
<Customer />
Tip
You may have already noticed that I’ve deviated from
the style used in earlier parts of this book by capitalizing the
first letter of the Customer
element. I’ll be capitalizing the first letter of every element and attribute name in this XSD. Hold that thought! I’ll explain the different ...
Get .NET & XML now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.