schemas/incidence.xsd
Christian Mollekopf
mollekopf at kolabsys.com
Thu Oct 13 17:45:40 CEST 2011
schemas/incidence.xsd | 147 ++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 147 insertions(+)
New commits:
commit 96d8c6cf164fd78b0986bedac001da1f8ed6c3a1
Author: Christian Mollekopf <chrigi_1 at fastmail.fm>
Date: Thu Oct 13 17:45:34 2011 +0200
First version of Incidence Schema
diff --git a/schemas/incidence.xsd b/schemas/incidence.xsd
new file mode 100644
index 0000000..abbf56b
--- /dev/null
+++ b/schemas/incidence.xsd
@@ -0,0 +1,147 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ targetNamespace="http://www.kolab.org/Kolab" xmlns="http://www.kolab.org/Kolab"
+ elementFormDefault="qualified">
+
+ <xs:include schemaLocation="base.xsd" />
+
+ <xs:complexType name="Incidence">
+ <xs:complexContent>
+ <xs:extension base="XMLBase">
+ <xs:sequence>
+ <xs:element name="summary" type="xs:string" />
+ <xs:element name="location" type="xs:string" />
+ <xs:element name="creator" type="SMTPContact">
+
+ </xs:element>
+ <xs:element name="organizer" type="SMTPContact"></xs:element>
+ <xs:element name="start-date" type="xs:dateTime"></xs:element>
+ <xs:element name="alarm" type="xs:string"></xs:element>
+ <xs:element name="recurrence" type="Recurrence"></xs:element>
+ <xs:element name="attendees">
+ <xs:complexType>
+ <xs:complexContent>
+ <xs:extension base="SMTPContact">
+ <xs:sequence>
+ <xs:element name="status" type="xs:string">
+ </xs:element>
+ <xs:element name="request-response" type="xs:string">
+ </xs:element>
+ <xs:element name="role" type="xs:string">
+ </xs:element>
+ </xs:sequence>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+
+ <xs:complexType name="SMTPContact">
+ <xs:sequence>
+ <xs:element name="display-name" type="xs:string"></xs:element>
+ <xs:element name="smtp-address" type="xs:string"></xs:element>
+ </xs:sequence>
+ </xs:complexType>
+
+ <xs:simpleType name="NewSimpleType">
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="daily"></xs:enumeration>
+ <xs:enumeration value="weekly"></xs:enumeration>
+ <xs:enumeration value="monthly"></xs:enumeration>
+ <xs:enumeration value="yearly"></xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+
+ <xs:complexType name="Recurrence" abstract="true">
+ <xs:sequence>
+ <xs:element name="interval" type="xs:string">
+ </xs:element>
+ <xs:element name="rangetype">
+ <xs:complexType>
+ <xs:attribute name="type" type="xs:string">
+ </xs:attribute>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="exclusion" type="xs:string" maxOccurs="unbounded"
+ minOccurs="0">
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+
+
+ <xs:complexType name="DailyRecurrence">
+ <xs:complexContent>
+ <xs:extension base="Recurrence">
+ <xs:attribute name="cycle" type="xs:string" fixed="daily"
+ use="required">
+ </xs:attribute>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+
+ <xs:complexType name="WeeklyRecurrence">
+ <xs:complexContent>
+ <xs:extension base="Recurrence">
+ <xs:attribute name="cycle" type="xs:string" fixed="weekly"
+ use="required">
+ </xs:attribute>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+
+ <xs:complexType name="MonthlyRecurrence">
+ <xs:complexContent>
+ <xs:extension base="Recurrence">
+ <xs:sequence>
+ <xs:element name="interval" type="xs:string">
+ </xs:element>
+ <xs:element name="day" type="xs:string">
+ </xs:element>
+ <xs:element name="daynumber" type="xs:string">
+ </xs:element>
+ </xs:sequence>
+ <xs:attribute name="cycle" type="xs:string" fixed="monthly"
+ use="required">
+ </xs:attribute>
+ <xs:attribute name="type" type="xs:string" use="required">
+ </xs:attribute>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+
+ <xs:complexType name="YearlyRecurrence">
+ <xs:complexContent>
+ <xs:extension base="Recurrence">
+ <xs:sequence>
+ <xs:element name="interval" type="xs:string">
+ </xs:element>
+ <xs:element name="day" type="xs:string">
+ </xs:element>
+ <xs:element name="daynumber" type="xs:string">
+ </xs:element>
+ <xs:element name="month" type="xs:string">
+ </xs:element>
+ </xs:sequence>
+ <xs:attribute name="cycle" type="xs:string" fixed="yearly"
+ use="required">
+ </xs:attribute>
+ <xs:attribute name="type" use="required">
+ <xs:simpleType>
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="monthday">
+ </xs:enumeration>
+ <xs:enumeration value="yearday">
+ </xs:enumeration>
+ <xs:enumeration value="weekday">
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+
+</xs:schema>
\ No newline at end of file
More information about the commits
mailing list