|
[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: DTD Entity
From: Richard Knapp <warped_user@y...> >You might elaborate all the combinations: > ><!ELEMENT Base ( First, > ( Second? | Third? | Fourth? > | (Second, Third) | (Third, Second) > | (Third, Fourth) | (Fourth, Third) > | (Second, Third, Fourth) > | (Fourth, Second, Third) > | (Third, Fourth, Second) > | (Third, Second, Fourth) > | ... you get the idea ... > ) > ) Another way to do this is to use specializing attributes: <!ELEMENT Base ( First, Next, Next, Next, Next, Next, Next)> If you have many Base elements, you can require them to be subclassed. This gives you a correct number and the correct label but does not guarantee uniqueness (must be checked another way) <!ATTLIST Next type ( Second | Third | Fourth | Fifth | Sixth ) #REQUIRED > On the other hand, if you only have one Base element, and you really need to check uniqueness, you might try <!ATTLIST Next type ID #REQUIRED > Then the external check would be needed to make sure the IDs were spelled correctly as "Second" etc. In XML Schemas you might be able to get what you need using something like <element name="Base"> ... <sequence> <element name="First" > <element name="Next" abstract="true" minOccurs="5" maxOccurs="5"> </sequence> ... </element> <element name="Second" substitutionGroup="Next"> <attribute name="uniqueDummy" value="Second" fixed="true" /> </element> ... and then declare some uniqueness constraint on the "uniqueDummy" attribute scoped to the Base element. I have not tried it, so I cannot be sure. Cheers Rick Jelliffe
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Cast Your Vote
We need your help – Vote for DataDirect XML Products!
Winners and finalists announced at SOA World Conference in November. 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
|
|||||||||







