- From: Michael Burns <Michael.Burns@sas.com>
- Date: Tue, 5 Dec 2000 15:27:46 -0500
- To: xmlschema-dev@w3.org, "'xmlsupport@tibco.com'" <xmlsupport@tibco.com>
- Message-ID: <764CA2FF49EC054BA086FC8253A52DD7624DF3@merc09.us.sas.com>
I am still struggling with a schema I generated from a UML model. I have posted this before and gotten some help with it but have not made significant progress. Thinking I was using the spec elements in ways they were not intended, I have rewritten the schema from scratch using XML Authority to see how it chooses to code the schema. XMLAuthority v2 validates this schema as OK, so does XMLSpy v3.5. I am trying to imlement UML type one to many associations with elements that can be subclassed. Frustrated at the progress I made with even a fairly simple model, I have reduced it to an extremely simple model: one class (Vertebrate) that can prey on a list of other Vertebrates via an association called PreyList. Here is the schema (Vertebrate.xsd): <?xml version = "1.0" encoding = "UTF-8"?> <!--Generated by XML Authority. Conforms to w3c http://www.w3.org/2000/10/XMLSchema-- <http://www.w3.org/2000/10/XMLSchema--> > <xsd:schema xmlns:critters = " http://www.sas.com/Critters <http://www.sas.com/Critters> " targetNamespace = " http://www.sas.com/Critters <http://www.sas.com/Critters> " xmlns:xsd = " http://www.w3.org/2000/10/XMLSchema <http://www.w3.org/2000/10/XMLSchema> " version = "" elementFormDefault = "unqualified" attributeFormDefault = "unqualified"> <!-- edited with XML Spy v3.5 NT beta 2 build Dec 1 2000 ( http://www.xmlspy.com <http://www.xmlspy.com> ) by Michael Burns (SAS Institute, Inc.) --> <xsd:complexType name = "VertebrateType"> <xsd:sequence> <xsd:element name = "PreyList" minOccurs = "0"> <xsd:complexType> <xsd:sequence> <xsd:element ref = "critters:Vertebrate" minOccurs = "0" maxOccurs = "unbounded"/> </xsd:sequence> </xsd:complexType> </xsd:element> </xsd:sequence> <xsd:attribute name = "Name" use = "required" type = "xsd:Name"/> <xsd:attribute name = "Bones" type = "xsd:boolean"/> <xsd:attribute name = "NLimbs" type = "xsd:nonNegativeInteger"/> <xsd:attribute name = "LimbType" use = "required"> <xsd:simpleType> <xsd:restriction base = "xsd:string"> <xsd:enumeration value = "leg"/> <xsd:enumeration value = "wing"/> <xsd:enumeration value = "fin"/> <xsd:enumeration value = "none"/> <xsd:enumeration value = "mixed"/> </xsd:restriction> </xsd:simpleType> </xsd:attribute> </xsd:complexType> <xsd:element name = "Vertebrate" > <xsd:complexType> <xsd:complexContent> <xsd:extension base = "critters:VertebrateType"> <xsd:sequence/> </xsd:extension> </xsd:complexContent> </xsd:complexType> </xsd:element> </xsd:schema> Here is the very simple instance (VertPreysOnVert.xml): <?xml version="1.0" encoding="UTF-8"?> <!-- edited with XML Spy v3.5 NT beta 2 build Dec 1 2000 ( http://www.xmlspy.com <http://www.xmlspy.com> ) by Michael Burns (SAS Institute, Inc.) --> <Vertebrate xmlns="http://www.sas.com/Critters" xmlns:xsi="http://www.w3.org/2000/10/XMLSchema-instance" xsi:schemaLocation="http://www.sas.com/Critters Vertebrate.xsd" Name="MarshHawk" LimbType="wing"> <PreyList> <Vertebrate Name="Mickey"/> </PreyList> </Vertebrate> Like I said, XMLSpy and XMLAuthority both validate the schema fine. However, XMLSpy, XSV and Oracle's schema validating parser all agree that <PreyList> does not belong as a contained element inside <Vertebrate>. XSV says: - - - - - - - - - - - - Problems with the schema-validity of the target file:/C:/ModelCompilerTestPen/test/critters/XMLauthority/VertPreysOnVert.xml:4:2: Invalid per cvc-complex-type.1.2.4 <http://www.w3.org/TR/xmlschema-1/#cvc-complex-type> : element {http://www.sas.com/Critters}:PreyList not allowed here in element {http://www.sas.com/Critters}:Vertebrate: file:/C:/ModelCompilerTestPen/test/critters/XMLauthority/VertPreysOnVert.xml:4:2: Invalid per src-resolve <http://www.w3.org/TR/xmlschema-1/#src-resolve> : undeclared element {http://www.sas.com/Critters}:PreyList - - - - - - - - - - - - Oracle validator says: - - - - - - - - - - - - -------------------------------------------------------------------------------------------- Michael Burns email: Michael.Burns@sas.com Principal Systems Developer home: mburns@bga.com Metadata Integration Technology voice: (512)258-5171x3264 SAS Institute, Inc. fax: (512)258-3906 11920 Wilson Parke Ave. www: http://www.realtime.net/~mburns Austin, TX 78726-4052 sww: http://sww.sas.com/~sasmkb "choose for yourselves today whom you will serve;... but as for me and my house, we will serve the Lord." Joshua 24:15
Received on Tuesday, 5 December 2000 15:28:24 UTC