RE: [xml-dev] converting XML Schema to DTD
by Banerjee, Saurabh other posts by this author
Jan 28 2002 8:23PM messages near this date
RE: [xml-dev] DOM Level 3 Abstract Schema and Load & Save
|
Re: [xml-dev] converting XML Schema to DTD
Thanks John! Actually the question was what is the equivalent of the
following schema definition in DTD terms?
SCHEMA:
<xs:element name="personnel">
<xs:complexType>
<xs:all>
<xs:element name="lname" minOccurs="0"/>
<xs:element name="fname" minOccurs="0"/>
</xs:all>
</xs:complexType>
XML Spy created the following DTD:
<!ELEMENT fname (#PCDATA)>
<!ELEMENT lname (#PCDATA)>
<!ELEMENT personnel (lname?, fname?)>
This is not correct because the DTD will not validate the following:
<personnel>
<fname> George</fname>
<lname> Bush<lname>
</personnel>
The schema will validate both
<personnel>
<fname> George</fname>
<lname> Bush<lname>
</personnel>
and
<personnel>
<lname> Bush<lname>
<fname> George</fname>
</personnel>
-----Original Message-----
From: John Cowan [mailto:jcowan@[...].com]
Sent: Monday, January 28, 2002 2:50 PM
To: Banerjee, Saurabh
Cc: 'xml-dev@lists.xml.org'
Subject: Re: [xml-dev] converting XML Schema to DTD
Banerjee, Saurabh wrote:
> this is not correct because the XML below is INVALID with the DTD but
valid
> with the SCHEMA.
>
> <?xml version="1.0" encoding="UTF-8"?>
> <!--Sample XML file generated by XML Spy v4.2 U (http://www.xmlspy.com)-->
> <personnel xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> xsi:noNamespaceSchemaLocation="D:\dtd2xs\try.xsd">
> <fname>String1</fname>
> <lname>String2</lname>
> </personnel>
That is because DTDs do not know about namespace prefixes,
or the magic properties of xsi:* to Schema. You must declare these
attributes in your DTD by adding the following (at minimum):
<!ATTLIST personnel
xmlns:xsi CDATA #IMPLIED
xsi:noNamespaceSchemaLocation CDATA #IMPLIED>
--
John Cowan <jcowan@[...].com> http://www.reutershealth.com
I amar prestar aen, han mathon ne nen, http://www.ccil.org/~cowan
han mathon ne chae, a han noston ne 'wilith. --Galadriel, _LOTR:FOTR_
-----------------------------------------------------------------
The xml-dev list is sponsored by XML.org <http://www.xml.org> , an
initiative of OASIS <http://www.oasis-open.org>
The list archives are at http://lists.xml.org/archives/xml-dev/
To subscribe or unsubscribe from this list use the subscription
manager: <http://lists.xml.org/ob/adm.pl>
Thread:
Banerjee, Saurabh
John Cowan
|