1 <?xml version="1.0" encoding="UTF-8"?>
2 <!-- DTD for TaskJuggler 2.0 XML Files -->
3 <!-- Valid TaskJuggler files have the extension ".tjx" and are
4 compressed according to RFC1951 and RFC1952 (zlib). -->
5 <!-- (c) 2003, 2004, 2005, 2006, 2007, 2008 Chris Schlaeger <cs@kde.org> -->
6 <!-- This file is licensed under the GNU GPL Version 2.0 -->
7 <!-- $Id: TaskJuggler-2.0.dtd 75 2005-02-20 15:55:38Z cs $ -->
9 <!-- The DTD has been stable for quite a while now, so it's probably
10 save to use. As TaskJuggler evolves, there will certainly be new
11 elments added, but the existing ones will not change anymore. -->
13 <!-- For a documentation of these elements, please see the TaskJuggler
14 manual at http://www.taskjuggler.org/docs.php -->
16 <!DOCTYPE taskjuggler [
17 <!ELEMENT taskjuggler (project, vacationList?, shiftList?,
18 resourceList?, accountList?, taskList, bookingList?)>
20 <!ELEMENT project (start, end, extend*, now?, currencyFormat,
21 workingHours, scenario?)>
25 version CDATA #REQUIRED
26 timezone CDATA #IMPLIED
27 timingResolution CDATA "3600"
28 dailyWorkingHours CDATA "8"
29 yearlyWorkingDays CDATA "260.714"
30 weekStartMonday (0|1) "1"
31 timeFormat CDATA "%Y-%m-%d %H:%M"
32 shortTimeFormat CDATA "%H:%M"
35 <!ELEMENT start (#PCDATA)>
37 humanReadable CDATA #IMPLIED>
39 <!ELEMENT end (#PCDATA)>
41 humanReadable CDATA #IMPLIED>
43 <!ELEMENT now (#PCDATA)>
45 humanReadable CDATA #IMPLIED>
47 <!ELEMENT extend (extendAttributeDefinition*)>
49 property CDATA #REQUIRED>
51 <!ELEMENT extendAttributeDefinition EMPTY>
52 <!ATTLIST extendAttributeDefinition
55 type (text|reference) #REQUIRED
59 <!ELEMENT currencyFormat EMPTY>
60 <!ATTLIST currencyFormat
61 signPrefix CDATA #REQUIRED
62 signSuffix CDATA #REQUIRED
63 thousandSep CDATA #REQUIRED
64 fractionSep CDATA #REQUIRED
65 fracDigits CDATA #REQUIRED
68 <!ELEMENT workingHours (weekdayWorkingHours*)>
70 <!-- 0 means Sunday, 1 Monday, ... -->
71 <!ELEMENT weekdayWorkingHours (timeInterval+)>
72 <!ATTLIST weekdayWorkingHours
73 weekday (0|1|2|3|4|5|6) #REQUIRED
76 <!ELEMENT timeInterval (start, end)>
78 <!ELEMENT scenario (scenario*)>
83 projectionMode (0|1) "0"
86 <!ELEMENT flag (#PCDATA)>
88 <!ELEMENT vacationList (vacation+)>
90 <!ELEMENT vacation (start, end)>
95 <!ELEMENT shiftList (shift*)>
97 <!ELEMENT shift (workingHours, shift*)>
103 <!ELEMENT shiftSelection (start, end)>
104 <!ATTLIST shiftSelection
105 shiftId CDATA #REQUIRED
108 <!ELEMENT resourceList (resource*)>
110 <!ELEMENT resource (flag*, vacationList?, workingHours, shiftSelection*,
117 <!ELEMENT accountList (account*)>
119 <!ELEMENT account (customAttribute*, account*)>
123 type (cost|revenue) #IMPLIED
126 <!ELEMENT taskList (task+)>
128 <!ELEMENT task (depends*, precedes*, customAttribute*, flag*, task*,
129 taskScenario*, note?, reference?,
130 shiftSelection*, allocate*)>
134 projectId CDATA #REQUIRED
135 milestone (0|1) #REQUIRED
136 asapScheduling (0|1) #REQUIRED
137 priority CDATA #REQUIRED
138 responsible CDATA #IMPLIED
139 account CDATA #IMPLIED
142 <!ELEMENT depends (dependencyGapScenario*)>
148 <!ELEMENT precedes (dependencyGapScenario)*>
154 <!ELEMENT dependencyGapScenario EMPTY>
156 <!ATTLIST dependencyGapScenario
157 scenarioId CDATA #REQUIRED
158 gapduration CDATA #IMPLIED
159 gaplength CDATA #IMPLIED
162 <!ELEMENT note (#PCDATA)>
164 <!ELEMENT statusNote (#PCDATA)>
166 <!ELEMENT reference (#PCDATA)>
171 <!ELEMENT allocate (candidate+)>
173 <!ELEMENT candidate EMPTY>
175 resourceId CDATA #REQUIRED
178 <!ELEMENT taskScenario (start?, end?, maxEnd?, maxStart?, minEnd?,
179 minStart?, startCredit*, endCredit*)>
180 <!-- Possible 'complete' status values:
182 2 In progress but late
183 3 In progress (only for enclosing tasks)
185 5 In progress but ahead of schedule
187 <!ATTLIST taskScenario
188 scenarioId CDATA #REQUIRED
189 effort CDATA #IMPLIED
190 duration CDATA #IMPLIED
191 length CDATA #IMPLIED
192 criticalpath (0|1) "0"
194 complete CDATA #IMPLIED
195 status CDATA #IMPLIED
196 statusNote CDATA #IMPLIED
199 <!ELEMENT minStart (#PCDATA)>
201 humanReadable CDATA #IMPLIED
204 <!ELEMENT maxStart (#PCDATA)>
206 humanReadable CDATA #IMPLIED
209 <!ELEMENT minEnd (#PCDATA)>
211 humanReadable CDATA #IMPLIED
214 <!ELEMENT maxEnd (#PCDATA)>
216 humanReadable CDATA #IMPLIED
219 <!ELEMENT startCredit (#PCDATA)>
221 <!ELEMENT endCredit (#PCDATA)>
223 <!ELEMENT customAttribute (textAttribute|referenceAttribute)>
224 <!ATTLIST customAttribute
228 <!ELEMENT textAttribute EMPTY>
229 <!ATTLIST textAttribute
233 <!ELEMENT referenceAttribute EMPTY>
234 <!ATTLIST referenceAttribute
236 label CDATA #REQUIRED
239 <!ELEMENT bookingList (resourceBooking*)>
241 <!ELEMENT resourceBooking (booking*)>
242 <!ATTLIST resourceBooking
243 resourceId CDATA #REQUIRED
244 scenarioId CDATA #REQUIRED
247 <!ELEMENT booking (start, end)>
249 taskId CDATA #REQUIRED
252 <taskjuggler></taskjuggler>