blob: 3738da590f7a3293a037cad777860d2a5192afe4 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
<!-- This XSD recasts the properties of employee to elements in order to allow the SN property to be nillable -->
<xsd:schema
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:sdo="commonj.sdo"
xmlns:sdoxml="commonj.sdo/xml"
xmlns:company="companyNS"
targetNamespace="companyNS">
<xsd:element name="company" type="company:CompanyType"/>
<xsd:complexType name="CompanyType">
<xsd:sequence>
<xsd:element name="departments" type="company:DepartmentType" maxOccurs="unbounded"/>
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string"/>
<xsd:attribute name="employeeOfTheMonth" type="xsd:IDREF"
sdoxml:propertyType="company:EmployeeType"/> </xsd:complexType>
<xsd:complexType name="DepartmentType">
<xsd:sequence>
<xsd:element name="employees" type="company:EmployeeType" maxOccurs="unbounded"/>
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string"/>
<xsd:attribute name="location" type="xsd:string"/>
<xsd:attribute name="number" type="xsd:int"/>
</xsd:complexType>
<xsd:complexType name="EmployeeType">
<xsd:element name="name" type="xsd:string"/>
<xsd:element name="SN" type="xsd:ID" nillable="true"/>
<xsd:element name="manager" type="xsd:boolean"/>
</xsd:complexType>
</xsd:schema>
|