[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] RE: Fruitbasket schema question for both W3C/RelaxNG
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@n...] >Sent: Thursday, January 22, 2004 7:26 AM >To: XML Dev >Subject: 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> > > >
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|