ConsolidateAddress.xsd Sample
This topic inludes the source code for the ConsolidateAddress.xsd Sample.
Sample Location
This sample is located in the following directory in your WebLogic Workshop installation:
BEA_HOME/weblogic81/samples/workshop/SamplesApp/Schemas/
Sample Source Code
01 <?xml version="1.0" encoding="UTF-8"?>
02 <xs:schema targetNamespace="http://openuri.org/bea/samples/workshop/xmlmap/consolidateAddress" xmlns:ca="http://openuri.org/bea/samples/workshop/xmlmap/consolidateAddress" xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
03 <xs:complexType name="addressType">
04 <xs:sequence>
05 <xs:element name="street" type="xs:string"/>
06 <xs:element name="city" type="xs:string"/>
07 <xs:element name="state" type="xs:string"/>
08 <xs:element name="zip" type="xs:string"/>
09 </xs:sequence>
10 <xs:attribute name="location" use="required">
11 <xs:simpleType>
12 <xs:restriction base="xs:NMTOKEN">
13 <xs:enumeration value="home"/>
14 <xs:enumeration value="work"/>
15 </xs:restriction>
16 </xs:simpleType>
17 </xs:attribute>
18 </xs:complexType>
19 <xs:complexType name="employeeType">
20 <xs:sequence>
21 <xs:element name="name" type="xs:string"/>
22 <xs:element name="address" type="ca:addressType" maxOccurs="unbounded"/>
23 <xs:element name="phone" type="ca:phoneType" maxOccurs="unbounded"/>
24 </xs:sequence>
25 </xs:complexType>
26 <xs:element name="setEmployees">
27 <xs:complexType>
28 <xs:sequence>
29 <xs:element ref="ca:employees" maxOccurs="unbounded"/>
30 </xs:sequence>
31 </xs:complexType>
32 </xs:element>
33 <xs:element name="employees">
34 <xs:complexType>
35 <xs:sequence>
36 <xs:element name="employee" type="ca:employeeType" maxOccurs="unbounded"/>
37 </xs:sequence>
38 </xs:complexType>
39 </xs:element>
40 <xs:complexType name="phoneType">
41 <xs:simpleContent>
42 <xs:extension base="xs:string">
43 <xs:attribute name="location" use="required">
44 <xs:simpleType>
45 <xs:restriction base="xs:NMTOKEN">
46 <xs:enumeration value="home"/>
47 <xs:enumeration value="mobile"/>
48 <xs:enumeration value="work"/>
49 </xs:restriction>
50 </xs:simpleType>
51 </xs:attribute>
52 </xs:extension>
53 </xs:simpleContent>
54 </xs:complexType>
55 </xs:schema>
|