[Home] [By Thread] [By Date] [Recent Entries]
oops realized what i did on the way home, so that won't work either, basically the only way i can see would be if you used xsi:type in your instance, but you would probably be loathe to do that as well. in other words the first element would have xsi type of one:fooelement > > > Quoting Bryan Rasmussen <bry@i...>: > > > well couldn't you do > > > > > > > > <xs:complexType name="blah"> > > <xs:sequence> > > <xs:element name="element" type="one:footype" minOccurs="1" > > maxOccurs="1"/> > > <xs:element ref="one:element" minOccurs="0" > > maxOccurs="unbounded"/></xs:sequence> > > </xs:complexType> > > <xs:complexType name="footype"> > > ... > > </xs:complexType> > > <xs:element name="element"> > > ... > > </xs:element> > > > > > > to specify particular constraints on different 'element' elements, and > still > > use > > the unique to constrain the attributes in their final state, which i > > believe > > should work if we elementFormDefault is qualified because all the various > > 'element' elements will be in the same namespace, thus satisfying the > > xs:selector xpath. > > -- > > Bryan Rasmussen > > > > > > Citat Robert Soesemann <rsoesemann@s...>: > > > > > Thanks a lot for this example. But it won't work as I need to put > > > additional constraints on the XSD. There might be <element type="foo"> > > > that must appear inside the XML and <element type="bar"> that is > > > optional. > > > I guess there is no way to express that with your solution. > > > > > > Robert > > > > > > -----Original Message----- > > > From: Bryan Rasmussen [mailto:bry@i...] > > > Sent: Dienstag, 11. Januar 2005 15:00 > > > To: xml-dev@l... > > > Subject: RE: Duplicate element decl in the same scope > > > > > > > > > I forgot to cc xml-dev, to make sure it gets to you (since I've been > > > having some problems with my web-based mail i will send this there now) > > > > > > the following fragment > > > <xs:element name="root" type="one:blah"> > > > <xs:unique name="element1"> > > > <xs:selector xpath="one:element"></xs:selector> > > > <xs:field xpath="@name"></xs:field> > > > </xs:unique> > > > </xs:element> > > > <xs:complexType name="blah"> > > > <xs:sequence> > > > <xs:element name="element" minOccurs="0" > > > maxOccurs="unbounded"> > > > <xs:complexType> > > > <xs:attribute name="name" > > > type="xs:string"/> > > > </xs:complexType> > > > </xs:element> > > > </xs:sequence> > > > </xs:complexType> > > > > > > without a specific type for the name attribute does the uniqueness > > > constraint. > > > -- > > > Bryan Rasmussen > > > > > > > > > Citat Robert Soesemann <rsoesemann@s...>: > > > > > > > Could you please give a short example. I don't understand exactely > how > > > > > > > this could solve my problem. > > > > > > > > -----Original Message----- > > > > From: Bryan Rasmussen [mailto:bry@i...] > > > > Sent: Dienstag, 11. Januar 2005 14:13 > > > > To: Robert Soesemann > > > > Cc: xml-dev@l... > > > > Subject: Re: Duplicate element decl in the same scope > > > > > > > > > > > > How about the following hack, you specify a pattern for what the > > > > attributes have to have as a possible value, then you use xsd:unique > > > > to make sure that an attribute value does not repeat. > > > > -- > > > > Bryan Rasmussen > > > > > > > > > > > > Citat Robert Soesemann <rsoesemann@s...>: > > > > > > > > > Hello, > > > > > > > > > > For the XML format of my application I need to store semantics > > > > > inside > > > > > attribute value: > > > > > > > > > > So instead of (A) I need (B): > > > > > (A) > > > > > <root> > > > > > <ELEM1/> > > > > > <ELEM2/> > > > > > </root> > > > > > (B) > > > > > <root> > > > > > <top name="ELEM1"/> > > > > > <top name="ELEM2"/> > > > > > </root> > > > > > > > > > > The problem I face is how to validate this with XMLSchema as e.g. > > > > > two > > > > > <top> elements are different only regarding an attribute value. You > > > > > > find a simple example of an XSD snippet where I test the above XML > > > > > with xs:all. > > > > > > > > > > <xs:element name="root"> > > > > > <xs:complexType> > > > > > <xs:all> > > > > > <xs:element name="element"> > > > > > <xs:complexType> > > > > > <xs:attribute name="name" type="xs:string" fixed="ELEM1"/> > > > > > </xs:complexType> > > > > > </xs:element> > > > > > <xs:element name="element"> > > > > > <xs:complexType> > > > > > <xs:attribute name="name" type="xs:string" fixed="ELEM2"/> > > > > > </xs:complexType> > > > > > </xs:element> > > > > > </xs:all> > > > > > </xs:complexType> > > > > > </xs:element> > > > > > > > > > > When I validate this XSD *itself* I get the following error inside > > > > > my > > > > > XML Suite: "Duplicate element decl in the same scope: element > > > > > 'element' and 'element' violate the Unique Particle Attribution > > > rule" > > > > > > > > > > Any solutions. Is this not solveable in XSD? > > > > > > > > > > Robert > > > > > > > > > > ----------------------------------------------------------------- > > > > > 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://www.oasis-open.org/mlmanage/index.php> > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > ----------------------------------------------------------------- > > > 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://www.oasis-open.org/mlmanage/index.php> > > > > > > > > > ----------------------------------------------------------------- > > > 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://www.oasis-open.org/mlmanage/index.php> > > > > > > > > > > > > > > ----------------------------------------------------------------- > > 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://www.oasis-open.org/mlmanage/index.php> > > > > > > >
|

Cart



