Re: help - Writing schema
Hi Pradeep, > I need to write XML schema for the following XML It's best to direct questions about XML Schema to xmlschema-dev@w... rather than XML-Dev. > <Attribute> > <AttributeName> > <id /> > </AttributeName> > <TagName> > <emp/> > </TagName> > </Attribute> > > The element under AttributeName and TagName is unknown but it should > contain only one element. > The tags AttributeName and TagName should not be empty. To indicate an 'unknown' element, you need to use the wildcard xs:any. xs:any takes minOccurs and maxOccurs attributes to indicate how many unknown elements should occur; in your case, you just want one and only one unknown element, so you can leave those to default (they both default to 1). xs:any also takes a namespace attribute to indicate which namespaces the element(s) can belong to. If you want to allow elements in any namespace, you can use the keyword '##any'; again, that's the default, so you don't have to add a namespace attribute to allow any element in any namespace. Finally, xs:any takes a processContents attribute to indicate what should be done about validating the 'unknown' element. Probably in this case you should just skip them or use lax validation (whereby they're validated if they're declared, and not if they aren't). The default is 'strict' (it's an error if the elements aren't declared), so probably you should change that. So a complex type that allows a single unknown element would be: <xs:complexType name="unknownElement"> <xs:sequence> <xs:any processContents="lax" /> </xs:sequence> </xs:complexType> The Attribute element contains an AttributeName element followed by a TagName element, both of which are of the type 'unknownElement': <xs:element name="Attribute"> <xs:complexType> <xs:sequence> <xs:element name="AttributeName" type="unknownElement" /> <xs:element name="TagName" type="unknownElement" /> </xs:sequence> </xs:complexType> </xs:element> Cheers, Jeni --- Jeni Tennison http://www.jenitennison.com/
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