-
Notifications
You must be signed in to change notification settings - Fork 0
/
personal.xsd
137 lines (127 loc) · 5.21 KB
/
personal.xsd
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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:p="http://www.oxygenxml.com/ns/samples/personal"
targetNamespace="http://www.oxygenxml.com/ns/samples/personal">
<xs:element name="personnel">
<xs:annotation>
<xs:documentation>Defines the personnel as a collection of person elements.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element ref="p:person" minOccurs="1" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:unique name="unique1">
<xs:selector xpath="p:person"/>
<xs:field xpath="p:name/p:given"/>
<xs:field xpath="p:name/p:family"/>
</xs:unique>
<xs:key name="empid">
<xs:selector xpath="p:person"/>
<xs:field xpath="@id"/>
</xs:key>
<xs:keyref name="keyref1" refer="p:empid">
<xs:selector xpath="p:person"/>
<xs:field xpath="p:link/@manager"/>
</xs:keyref>
</xs:element>
<xs:element name="person">
<xs:annotation>
<xs:documentation>Specifies information about a person.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element ref="p:name"/>
<xs:element ref="p:email" minOccurs="0" maxOccurs="unbounded"/>
<xs:element ref="p:link" minOccurs="0" maxOccurs="1"/>
<xs:element ref="p:url" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="id" type="xs:ID" use="required">
<xs:annotation>
<xs:documentation>Specifies a required unique ID for this person.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="note" type="xs:string">
<xs:annotation>
<xs:documentation>If there is anything to note about this person.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="contr" default="false">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="true"/>
<xs:enumeration value="false"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="salary" type="xs:integer">
<xs:annotation>
<xs:documentation>Specifies the salary for this person.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="photo" type="xs:string"/>
</xs:complexType>
</xs:element>
<xs:element name="name">
<xs:annotation>
<xs:documentation>Specifies the person family and given name.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:all>
<xs:element ref="p:family"/>
<xs:element ref="p:given"/>
</xs:all>
</xs:complexType>
</xs:element>
<xs:simpleType name="normalizable">
<xs:restriction base="xs:string">
<xs:whiteSpace value="collapse"/>
</xs:restriction>
</xs:simpleType>
<xs:element name="family" type="p:normalizable">
<xs:annotation>
<xs:documentation>The person last name.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="given" type="p:normalizable">
<xs:annotation>
<xs:documentation>The person first name.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="email" type="p:normalizable">
<xs:annotation>
<xs:documentation>Email address for this person.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="url">
<xs:annotation>
<xs:documentation>Enter an URL for this person.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attribute name="href" type="xs:string" default="http://">
<xs:annotation>
<xs:documentation>Enter an URL for this person.</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:complexType>
</xs:element>
<xs:element name="link">
<xs:annotation>
<xs:documentation>Specifies who is the manager and who are the subordinates for this person.
</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attribute name="manager" type="xs:IDREF">
<xs:annotation>
<xs:documentation>The manager ID.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="subordinates" type="xs:IDREFS">
<xs:annotation>
<xs:documentation>Space separated list with the subordinates IDs.</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:complexType>
</xs:element>
<xs:notation name="gif" public="-//APP/Photoshop/4.0" system="photoshop.exe"/>
</xs:schema>