Login | Register
My pages Projects Community openCollabNet

argouml
Wiki: XSD/Complex Data Types

On Friday, May 18, the normal maintenance window (17:00 Pacific time) will be extended for data center maintenance until 23:00 Pacific. No extended down-time is planned, but brief delays and interruptions are possible throughout the period.

Edit this page | XSD | Links to this page | Page information | Attachments | Refresh page

 

Complex Data Types or Classes

Class Structures

Classes in ArgoUML are analogous to XSD complex data type declarations and their associated elements. It is common in the schema development community to use the keyword/suffix “Type” to differentiate complex data type names from their element cousins.

Class Definition


<xsd:complexType name=”BusinessType”>
  <xsd:element name=”LegalName” type=”xsd:string”/>
  <xsd:element name=”DateOriginated” type=”xsd:date”/>
</xsd:complexType>

<xsd:element name=”Business” type=”BusinessType”/>


Class Generalization/Specialization


<xsd:complexType name=”BusinessType”>
  <xsd:element name=”LegalName” type=”xsd:string”/>
  <xsd:element name=”DateOriginated” type=”xsd:date”/>
</xsd:complexType>

<xsd:complexType name=”RetailBusinessType”>
  <xsd:complexContent>
    <xsd:extension base=”BusinessType”>
      <xsd:sequence>
        <xsd:element name=”CommoditySold” type=”xsd:string”/>
      </xsd:sequence>
    </xsd:extension>
  </xsd:complexContent>
</xsd:complexType>

<xsd:element name=”Business” type=”BusinessType”/>
<xsd:element name=”RetailBusiness” type=”RetailBusinessType”/>


Double Inheritance

  • <!> As in Java, double inheritance is not allowed in schema.

XSD/Complex Data Types (last edited 2008-12-19 19:18:57 -0700 by ?mathco)