]> err.no Git - sope/blob - sope-ical/NGiCal/NGiCal.xmap
import of overhauled version of versitSaxDriver
[sope] / sope-ical / NGiCal / NGiCal.xmap
1 {
2   "http://www.ietf.org/internet-drafts/draft-ietf-calsch-many-xcal-01.txt" = {
3
4     // components
5     
6     iCalendar = {
7       class  = NSMutableDictionary; // "ICalXRoot";
8       tagKey = "tag";
9       
10       ToManyRelationships = {
11         "subcomponents" = ( vcalendar );
12       };
13     };
14     
15     vcalendar = {
16       class  = iCalCalendar; // ICalVCalendar;
17
18       attributes = {
19         prodid   = prodId;
20         version  = version;
21         calscale = calscale;
22       };
23       
24       ToManyRelationships = {
25         events    = ( vevent    );
26         todos     = ( vtodo     );
27         journals  = ( journals  );
28         freeBusys = ( vfreebusy );
29         timezones = ( vtimezone );
30       };
31     };
32     
33     vevent = {
34       class  = iCalEvent;
35       
36       ToManyRelationships = {
37         "alarms"    = ( valarm   );
38         "attendees" = ( attendee );
39       };
40     };
41     
42     vtodo = {
43       class = "iCalToDo";
44       
45       ToManyRelationships = {
46         "alarms"    = ( valarm   );
47         "attendees" = ( attendee );
48       };
49     };
50     
51     valarm = {
52       class = "iCalAlarm";
53     };
54     
55     vfreebusy = {
56       class = "iCalFreeBusy";
57       
58       ToManyRelationships = {
59         "entries" = ( freebusy );
60       };
61     };
62     
63     vtimezone = {
64       class = NSMutableDictionary;
65       
66       attributes = {
67         tzid             = timeZoneID;
68         "X-LIC-LOCATION" = location;
69         daylight         = daylightInfo;
70         standard         = standardInfo;
71       };
72     };
73     daylight = {
74       class = NSMutableDictionary;
75       
76       attributes = {
77         tzoffsetfrom = tzOffsetFrom;
78         tzoffsetto   = tzOffsetTo;
79         tzname       = tzName;
80         dtstart      = startDate;
81         rrule        = recurrenceRule;
82       };
83     };
84     standard = {
85       class = NSMutableDictionary;
86       
87       attributes = {
88         tzoffsetfrom = tzOffsetFrom;
89         tzoffsetto   = tzOffsetTo;
90         tzname       = tzName;
91         dtstart      = startDate;
92         rrule        = recurrenceRule;
93       };
94     };
95     
96     // attributes
97     
98     dtstamp = {
99       class      = iCalDateHolder;
100       key        = "timeStampAsDate";
101       tagKey     = "tag";
102       contentKey = "string";
103     };
104     created = {
105       class      = iCalDateHolder;
106       key        = "created";
107       tagKey     = "tag";
108       contentKey = "string";
109     };
110     "last-modified" = {
111       class      = iCalDateHolder;
112       key        = "lastModified";
113       tagKey     = "tag";
114       contentKey = "string";
115     };
116     
117     dtstart = {
118       class = iCalDateHolder;
119       key   = "startDate";
120       attributes = {
121         tzid = tzid;
122       };
123       tagKey     = "tag";
124       contentKey = "string";
125     };
126     dtend = {
127       class = iCalDateHolder;
128       key   = "endDate";
129       attributes = {
130         tzid = tzid;
131       };
132       tagKey     = "tag";
133       contentKey = "string";
134     };
135     due = {
136       class = iCalDateHolder;
137       attributes = {
138         tzid = tzid;
139       };
140       tagKey     = "tag";
141       contentKey = "string";
142     };
143     completed = {
144       class = iCalDateHolder;
145       attributes = {
146         tzid = tzid;
147       };
148       tagKey     = "tag";
149       contentKey = "string";
150     };
151     
152     duration = {
153       class = NSString;
154     };
155     
156     summary     = { class = NSString; };
157     description = { class = NSString; key = comment; };
158     uid         = { class = NSString; };
159     action      = { class = NSString; };
160     priority    = { class = NSString; };
161     status      = { class = NSString; };
162     transp      = { class = NSString; };
163     sequence    = { class = NSString; };
164     categories  = { class = NSString; };
165     class       = { class = NSString; key = accessClass; };
166     percent-complete = { class = NSString; key = "percentComplete"; };
167     
168     attendee = {
169       class = iCalPerson;
170       attributes = {
171         cn = cn;
172         rsvp = rsvp;
173         role = role;
174         partstat = partStat;
175       };
176       contentKey = "email";
177     };
178     organizer = {
179       class      = iCalPerson;
180       attributes = {
181         cn = cn;
182       };
183       contentKey = "email";
184     };
185     
186     freebusy = {
187       class = NSString;
188     };
189     url = {
190       class = NSString;
191     };
192     
193     trigger = {
194       class = iCalTrigger;
195       attributes = {
196         value = valueType;
197       };
198       contentKey = "value";
199     };
200     attach = {
201       class = iCalAttachment;
202       attributes = {
203         value = valueType;
204       };
205       contentKey = "value";
206     };
207
208     tzid = {
209       class = NSString;
210     };
211     tzname = {
212       class = NSString;
213     };
214     tzoffsetfrom = {
215       class = NSString;
216     };
217     tzoffsetto = {
218       class = NSString;
219     };
220     rrule = {
221       class = NSString;
222     };
223     location = {
224       class = NSString;
225     };
226     
227     // extra tags
228
229     "X-LIC-LOCATION" = {
230       class = NSString;
231     };
232     
233     "X-WR-TIMEZONE" = {
234       rejectWithContent = YES;
235     };
236     "X-WR-CALNAME" = {
237       rejectWithContent = YES;
238     };
239     "X-WR-RELCALID" = {
240       rejectWithContent = YES;
241     };
242
243     "X-MICROSOFT-CDO-TZID" = {
244       rejectWithContent = YES;
245     };
246     "X-MICROSOFT-CDO-BUSYSTATUS" = {
247       rejectWithContent = YES;
248     };
249     "X-MICROSOFT-CDO-INSTTYPE" = {
250       rejectWithContent = YES;
251     };
252     "X-MICROSOFT-CDO-INTENDEDSTATUS" = {
253       rejectWithContent = YES;
254     };
255     "X-MICROSOFT-CDO-ALLDAYEVENT" = {
256       rejectWithContent = YES;
257     };
258     "X-MICROSOFT-CDO-IMPORTANCE" = {
259       rejectWithContent = YES;
260     };
261
262     "X-PILOTID" = {
263       rejectWithContent = YES;
264     };
265     "X-PILOTSTAT" = {
266       rejectWithContent = YES;
267     };
268   };
269 }