Altova Mailing List Archives>Archive Index >xmlschema-dev Archive Home >Recent entries >Thread Prev - redefining or restricting children of a predefined element >Thread Next - Canonical lexical representation of a value for a type derived by restriction RE: redefining or restricting children of a predefined elementTo: "'Mario Madunic'" <hajduk@----.--->, <xmlschema-dev@--.---> Date: 8/20/2007 11:30:00 PM The only way you can do this within XML Schema 1.0 is to have a local element emphasis within the content model of web, whose own content model is a restriction of the content model of the global web element. Yes, that's not a very attractive proposition. In XML Schema 1.1 you can have the complex type of web contain <xs:assert test="not(.//web)"/> Michael Kay http://www.saxonica.com/ > -----Original Message----- > From: xmlschema-dev-request@w... > [mailto:xmlschema-dev-request@w...] On Behalf Of Mario Madunic > Sent: 20 August 2007 16:51 > To: xmlschema-dev@w... > Subject: redefining or restricting children of a predefined element > > > Any help with the following will be greatly apreciated. > > I would like to change the emphasis child of web to not > contain an instance of web itself. This is the sort of > recursion I want to avoid. I've looked at redefine and > restriction but seem to be missing something. I do not want > to define a new emphasis element within web as it is already > defined and want to do the restriction within web itself > (<xs:element ref="emphasis" /> and used throughout the schema). > > > Here is a copy of the elements in question without the > include statements. The child model is much bigger, children > have been removed for brevity :) > > <xs:element name="web" id="web"> > <xs:complexType mixed="true"> > <xs:choice minOccurs="0" maxOccurs="unbounded"> > <xs:element ref="emphasis" /> > <xs:element ref="imageInline" /> > <xs:element ref="strong" /> > </xs:choice> > <xs:attributeGroup ref="attributeStandardInlineGroup" /> > <xs:attribute name="uri" type="xs:anyURI" use="optional" /> > <xs:attribute ref="target" use="optional" /> > </xs:complexType> > </xs:element> > > <xs:element name="emphasis" id="emphasis"> > <xs:complexType mixed="true"> > <xs:choice minOccurs="0" maxOccurs="unbounded"> > <xs:element ref="email" /> > <xs:element ref="strong" /> > <xs:element ref="web" /> > </xs:choice> > <xs:attributeGroup ref="attributeInlineGroup" /> > </xs:complexType> > </xs:element> > > Marijan (Mario) Madunic > > > From hajduk@i... Mon Aug 20 22:33:04 2007 Received: from aji.w3.org ([133.27.228.225]) by frink.w3.or | ||||||
| Company | Legal | Press | Partners | Careers | Sitemap | Contact Us | Altova Blog | Mobile | Full Site | |||
|
