| |
| <!-- |
| Copyright 2006 The Apache Software Foundation or its licensors, as applicable. |
| |
| Licensed under the Apache License, Version 2.0 (the "License"); |
| you may not use this file except in compliance with the License. |
| You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, software |
| distributed under the License is distributed on an "AS IS" BASIS, |
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| See the License for the specific language governing permissions and |
| limitations under the License. |
| --> |
| <!-- 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> |