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] Fruitbasket schema question for both W3C/RelaxNG

[ Lists Home | Date Index | Thread Index ]

I believe this solution allows only 2 possible elements ("orange" and
"apple") inside of "fruitbasket", instead of any element.

Kind Regards,
Joe Chiusano
Booz | Allen | Hamilton
Strategy and Technology Consultants to the World

Dare Obasanjo wrote:
> 
> SCHEMA:
> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema";
>    targetNamespace="http://www.example.com/fruitbasket";
>    xmlns:tns="http://www.example.com/fruitbasket";>
> 
>         <xs:element name="fruitbasket">
>           <xs:complexType>
>             <xs:sequence>
>               <xs:element ref="tns:placeHolder" minOccurs="0"
> maxOccurs="unbounded" />
>             </xs:sequence>
>           </xs:complexType>
>         </xs:element>
> 
>         <xs:element name="placeHolder" type="tns:hasColor"
> abstract="true" />
>         <xs:element name="orange" type="tns:hasColor"
> substitutionGroup="tns:placeHolder"  />
>         <xs:element name="apple" type="tns:hasColor"
> substitutionGroup="tns:placeHolder"  />
> 
>           <xs:complexType name="hasColor">
>             <xs:attribute name="color" type="tns:color" />
>           </xs:complexType>
> 
>           <xs:simpleType name="color">
>             <xs:restriction base="xs:string">
>               <xs:enumeration value="red" />
>               <xs:enumeration value="green" />
>               <xs:enumeration value="purple" />
>               <xs:enumeration value="yellow" />
>             </xs:restriction>
>           </xs:simpleType>
> </xs:schema>
> 
> INSTANCE:
> <fruitbasket xmlns="http://www.example.com/fruitbasket";>
>    <apple color="red"/>
>    <orange color="red"/>
> </fruitbasket>
> 
> --
> PITHY WORDS OF WISDOM
> Fairy tales: horror stories for children to get them used to reality.
> 
> This posting is provided "AS IS" with no warranties, and confers no
> rights.
> 
> >-----Original Message-----
> >From: Manos Batsis [mailto:mbatsis@netsmart.gr]
> >Sent: Thursday, January 22, 2004 7:26 AM
> >To: XML Dev
> >Subject: [xml-dev] Fruitbasket schema question for both W3C/RelaxNG
> >
> >[resending from the right email account this time]
> >
> >A good subject line would be "how to validate complex type
> >instance with uknown element name".
> >
> >Consider a fruitbasket element that may contain any number of
> >[fruit-name] elements:
> >
> ><fruitbasket>
> >   <apple taste="red"/>
> >   <orange taste="red"/>
> ></fruitbasket>
> >
> >
> >I short, I want to allow any element inside fruitbasket, as
> >long as it has an attribute with the name "color". I also want
> >to validate the attribute value, for erxample it should only
> >allow the colors in my enumeration.
> >
> >Can anyone please share his/her lights here? Using
> >
> ><xs:any namespace="##targetNamespace" processContents="strict"/>
> >
> >does not work, while
> >
> ><xs:any namespace="##targetNamespace" processContents="lax"/>
> >
> >does not signal for invalid elements inside the fruitbasket at all.
> >
> >Any advice or pointers welcome for both XSD/RNG, as I would
> >like to offer both in my application.
> >
> >Manos
> >
> >
> >
> >
> >
> >
> >-----------------------------------------------------------------
> >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>
> >
> >
> >
> 
> -----------------------------------------------------------------
> 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>




 

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

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