OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

 


 

   RE: [xml-dev] Optional elements and restrictions

[ Lists Home | Date Index | Thread Index ]

Thanks, Pete.  This is very helpful.

-----Original Message-----
From: Pete Cordell [mailto:petexmldev@tech-know-ware.com] 
Sent: Thursday, November 10, 2005 1:30 PM
To: Lawson, Marc; xml-dev@lists.xml.org
Subject: Re: [xml-dev] Optional elements and restrictions

Hi Marc,

The behaviour you describe is correct.  As you know, 
<DESTINATION_SYSTEM_ID/> is equivalent to
<DESTINATION_SYSTEM_ID></DESTINATION_SYSTEM_ID> and none of the
specified 
enumerations match "".

I personally don't see how an "empty element" can be considered
equivalent 
to an "omitted element",  (e.g. consider <br /> in (early) (X)HTML), so 
changing the data source seems the correct thing.  If reality does not
allow 
that, you could add an additional enumeration of the form:

<xs:enumeration value=""/>

But that would probably require additional application layer processing
to 
fix it up!

HTH,

Pete.
--
=============================================
Pete Cordell
for XML to C++ data binding visit
http://www.tech-know-ware.com/lmx
=============================================

----- Original Message ----- 
From: "Lawson, Marc" <mlawson@relico.com>
To: <xml-dev@lists.xml.org>
Sent: Thursday, November 10, 2005 5:47 PM
Subject: [xml-dev] Optional elements and restrictions


Hi,

In my schema, I have an "optional" element that looks like this:

<xs:element name="DESTINATION_SYSTEM_ID" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="TRUST_PROD"/>
<xs:enumeration value="TRUST_TEST"/>
<xs:enumeration value="PENSION_PROD"/>
<xs:enumeration value="PENSION_TEST"/>
</xs:restriction>
</xs:simpleType>
</xs:element>


My instance document will fail validation if the element is provided
without any data, as in...

<DESTINATION_SYSTEM_ID/>

However, the instance document will pass validation if the element is
omitted altogether.

I am hearing that it is best practice to allow both scenarios - the
"empty element" and the "omitted element" - in documents that are
provided.  Do I need to tell the company that is sending the file to
omit the element if it doesn't have data, or can I restructure the
schema to only validate elements that have data?

Any input is appreciated!
Marc Lawson







 

News | XML in Industry | Calendar | XML Registry
Marketplace | Resources | MyXML.org | Sponsors | Privacy Statement

Copyright 2001 XML.org. This site is hosted by OASIS