Book a Demo

Author Topic: XSD association  (Read 3697 times)

sunvem

  • EA Novice
  • *
  • Posts: 1
  • Karma: +0/-0
    • View Profile
XSD association
« on: June 11, 2009, 07:02:14 am »
Hi,
   Example : Two XSDComplexTypes EntityA, EntityB.
EntityA has elements id int.
EntityB has element name string.
EntityA is associated to EntityB with a role relatedToEntityB.
The xsd generated for the above scenario would be thus:

<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
      <xs:element name="EntityA" type="EntityA"/>
      <xs:complexType name="EntityA">
            <xs:sequence>
                  <xs:element name="id" type="xs:int" minOccurs="0" maxOccurs="1"/>
                  <xs:element name="associatedToB">
                        <xs:complexType>
                              <xs:sequence>
                                    <xs:element ref="EntityB" minOccurs="0" maxOccurs="unbounded"/>
                              </xs:sequence>
                        </xs:complexType>
                  </xs:element>
            </xs:sequence>
      </xs:complexType>
      <xs:element name="EntityB" type="EntityB"/>
      <xs:complexType name="EntityB">
            <xs:sequence>
                  <xs:element name="name" type="xs:string" minOccurs="1" maxOccurs="1"/>
            </xs:sequence>
      </xs:complexType>
</xs:schema>
How can I get something like this for the same scenario
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
      <xs:element name="EntityA" type="EntityA"/>
      <xs:complexType name="EntityA">
            <xs:sequence>
                  <xs:element name="id" type="xs:int" minOccurs="0" maxOccurs="1"/>
                  <xs:element name="associatedToB" minoccurs="0">
                        <xs:complexType>
                              <xs:sequence>
                                    <xs:element ref="EntityB" minOccurs="0" maxOccurs="unbounded"/>
                              </xs:sequence>
                        </xs:complexType>
                  </xs:element>
            </xs:sequence>
      </xs:complexType>
      <xs:element name="EntityB" type="EntityB"/>
      <xs:complexType name="EntityB">
            <xs:sequence>
                  <xs:element name="name" type="xs:string" minOccurs="1" maxOccurs="1"/>
            </xs:sequence>
      </xs:complexType>
</xs:schema>