root/trunk/resources/exsynchwsdefs/iCalendar-valtypes.xsd

Revision 3063 (checked in by douglm, 2 years ago)

Changes to schema allow for update

Line 
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!-- edited with XMLSpy v2010 rel. 3 sp1 (x64) (http://www.altova.com) by Toby Considine (TC9) -->
3 <!--non-normative, to support development of WS-Calendar - 2010/10/30. Refer to rfc5545 and xCal in the IETF for normative description-->
4 <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
5            xmlns:xcal="urn:ietf:params:xml:ns:icalendar-2.0"
6            targetNamespace="urn:ietf:params:xml:ns:icalendar-2.0"
7            elementFormDefault="qualified">
8          
9   <!-- =====================================================================
10        3.3 Property Value Data Types
11        ===================================================================== -->
12          
13         <!-- 3.3.1 BINARY -->
14         <xs:element name="binary" type="xs:string"/>
15  
16         <!-- 3.3.2 BOOLEAN -->
17         <xs:element name="boolean" type="xcal:booleanType" />
18  
19   <xs:simpleType name="booleanType">
20     <xs:restriction base="xs:token">
21       <xs:enumeration value="TRUE"/>
22       <xs:enumeration value="FALSE"/>
23     </xs:restriction>
24   </xs:simpleType>
25  
26         <!-- 3.3.3 CAL-ADDRESS -->
27   <xs:simpleType name="cal-addressType">
28     <xs:restriction base="xs:string"/>
29   </xs:simpleType>
30  
31   <xs:element name="cal-address" type="xcal:cal-addressType" /> 
32  
33         <!-- 3.3.4 DATE -->
34         <xs:element name="date" type="xs:string"/>
35  
36         <!-- 3.3.5 DATE-TIME -->
37         <xs:element name="date-time" type="xs:string"/>
38  
39         <!-- 3.3.6 DURATION
40         <xs:element name="duration" type="xs:string"/>-->
41  
42         <!-- 3.3.7 FLOAT -->
43         <xs:element name="float" type="xs:string"/>
44  
45         <!-- 3.3.8 INTEGER -->
46         <xs:element name="integerType" type="xs:string"/>
47  
48         <!-- 3.3.9 PERIOD -->
49         <xs:element name="period" type="xs:string"/>
50  
51   <!-- 3.3.10 RECUR -->
52   <xs:element name="recur" type="xcal:recurType"/>
53   <xs:complexType name="recurType">
54     <xs:sequence>
55       <xs:element name="freq" type="xcal:freqRecurType"/>
56       <xs:sequence>
57         <xs:choice>
58           <xs:element ref="xcal:until" />
59           <xs:element ref="xcal:count" />
60         </xs:choice>
61       </xs:sequence>
62       <xs:element name="interval" type="xs:string"/>
63       <xs:element name="bysecond" type="xs:string" maxOccurs="unbounded"/>
64       <xs:element name="byminute" type="xs:string" maxOccurs="unbounded"/>
65       <xs:element name="byhour" type="xs:string" maxOccurs="unbounded"/>
66       <xs:element name="byday" type="xs:string" maxOccurs="unbounded"/>
67       <xs:element name="byyearday" type="xs:string" maxOccurs="unbounded"/>
68       <xs:element name="bymonthday" type="xcal:bymonthdayRecurType" maxOccurs="unbounded"/>
69       <xs:element name="byweekno" type="xs:string" maxOccurs="unbounded"/>
70       <xs:element name="bymonth" type="xcal:bymonthRecurType" maxOccurs="unbounded"/>
71       <xs:element name="bysetpos" type="xs:integer" maxOccurs="unbounded"/>
72       <xs:element name="wkst" type="xcal:weekdayRecurType" />
73     </xs:sequence>
74   </xs:complexType>
75  
76         <xs:simpleType name="freqRecurType">
77                 <xs:restriction base="xs:token">
78                         <xs:enumeration value="SECONDLY"/>
79                         <xs:enumeration value="MINUTELY"/>
80                         <xs:enumeration value="HOURLY"/>
81                         <xs:enumeration value="DAILY"/>
82                         <xs:enumeration value="WEEKLY"/>
83                         <xs:enumeration value="MONTHLY"/>
84                         <xs:enumeration value="YEARLY"/>
85                 </xs:restriction>
86         </xs:simpleType>
87  
88   <xs:element name="until" type="xcal:untilRecurType"/>
89   <xs:complexType name="untilRecurType" >
90     <xs:sequence>
91       <xs:choice>
92         <xs:element ref="xcal:date" />
93         <xs:element ref="xcal:date-time" />
94       </xs:choice>
95     </xs:sequence>
96   </xs:complexType>
97
98   <xs:element name="count" type="xs:integer"/>
99  
100         <xs:simpleType name="weekdayRecurType">
101                 <xs:restriction base="xs:token">
102                         <xs:enumeration value="SU"/>
103                         <xs:enumeration value="MO"/>
104                         <xs:enumeration value="TU"/>
105                         <xs:enumeration value="WE"/>
106                         <xs:enumeration value="TH"/>
107                         <xs:enumeration value="FR"/>
108                         <xs:enumeration value="SA"/>
109                 </xs:restriction>
110         </xs:simpleType>
111  
112   <xs:simpleType name="bymonthdayRecurType">
113     <xs:restriction base="xs:integer">
114       <xs:minInclusive value="-31"/>
115       <xs:maxInclusive value="31"/>
116     </xs:restriction>
117   </xs:simpleType>
118  
119   <xs:simpleType name="bymonthRecurType">
120     <xs:restriction base="xs:integer">
121       <xs:minInclusive value="1"/>
122       <xs:maxInclusive value="12"/>
123     </xs:restriction>
124   </xs:simpleType>
125  
126         <!-- 3.3.11 TEXT -->
127         <xs:element name="text" type="xs:string"/>
128  
129         <!-- 3.3.12 TIME -->
130         <xs:element name="time" type="xs:string"/>
131  
132         <!-- 3.3.13 URI -->
133         <xs:simpleType name="uriType">
134     <xs:restriction base="xs:string"/>
135   </xs:simpleType>
136  
137   <xs:element name="uri" type="xcal:uriType" /> 
138  
139         <!-- 3.3.14 UTC-OFFSET -->
140   <xs:simpleType name="utc-offsetType">
141     <xs:restriction base="xs:string"/>
142   </xs:simpleType>
143  
144   <xs:element name="utc-offset" type="xcal:utc-offsetType" /> 
145  
146 </xs:schema>
Note: See TracBrowser for help on using the browser.