[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: Fruitbasket schema question for both W3C/RelaxNG
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@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> > > > > > > > > ----------------------------------------------------------------- > 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
|