blob: ef3de41be40f06ad3d8816d7a69e24626a3c22bd (
plain)
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
|
<!-- This is the Document Type Definition for The KDE Planning Tool.
Version 0.epsilon. 20020401 (no, no joke).
Written by Bo Thorsen <[email protected]>
-->
<!-- A KPlato document consists of a projects, relations and
resources. TODO: It should probably also remember settings
for stuff like printing etc.
A node in a project can be a project, task, milestone or terminalnode.
Each node is given a unique identifier.
A relation is a time restraint on the correlation between two
nodes. These are identified by their identifier.
A resource is one of the resources available and needed for the
project. These could be persons, hardware, money etc.
-->
<!ELEMENT kplato (project)>
<!ATTLIST kplato author CDATA #IMPLIED
email CDATA #IMPLIED
editor CDATA #IMPLIED
mime CDATA "application/x-vnd.kde.kplato">
<!-- The project description. This has the following fields:
name Name of the project
leader Person or group in charge of the project
description Text describing the project briefly
-->
<!ELEMENT project (project|task|endnode|startnode|relation|resource-group|appointment)*>
<!ATTLIST project id CDATA #REQUIRED
name CDATA #IMPLIED
leader CDATA #IMPLIED
description CDATA #IMPLIED
project-start CDATA #IMPLIED
project-end CDATA #IMPLIED>
<!-- Terminalnodes
-->
<!ELEMENT startnode EMPTY>
<!ATTLIST startnode
earlieststart CDATA #IMPLIED
latestfinish CDATA #IMPLIED>
<!ELEMENT endnode EMPTY>
<!ATTLIST endnode
earlieststart CDATA #IMPLIED
latestfinish CDATA #IMPLIED>
<!-- Resource group
-->
<!ELEMENT resource-group (resource)*>
<!ATTLIST resource-group id CDATA #REQUIRED
type (work|material)
name CDATA #IMPLIED>
<!-- Resource
-->
<!ELEMENT resource EMPTY
<!ATTLIST resource id CDATA #REQUIRED
name CDATA #IMPLIED>
<!-- Tasks can also be milestones (zero duration) or summary tasks (have children)
-->
<!ELEMENT task (project|task|terminalnode|resource-request)*>
<!ATTLIST task id CDATA #REQUIRED
name CDATA #IMPLIED
leader CDATA #IMPLIED
description CDATA #IMPLIED
earlieststart CDATA #IMPLIED
latestfinish CDATA #IMPLIED
scheduling="0"
start CDATA #IMPLIED
end CDATA #IMPLIED
duration CDATA #IMPLIED>
<!-- Resource requests are made by tasks and referes to
the number of resources needed from a resource group
-->
<!ELEMENT resource-request EMPTY>
<!ATTLIST resource-request group-id CDATA #REQUIRED
limit CDATA #IMPLIED>
<!-- Relations are described by the two IDs and the type of constraint
The ids are references to tasks, so all tasks must have been loaded
-->
<!ELEMENT relation EMPTY>
<!ATTLIST relation parent-id CDATA #REQUIRED
child-id CDATA #REQUIRED
type ("Finish-Start" | "Finish-Finish" | "Start-Start")
"Start-Start">
<!-- Appointments between resources and tasks
-->
<!ELEMENT appointment EMPTY>
<!ATTLIST appointment resource-id CDATA #REQUIRED
task-id CDATA #REQUIRED
start CDATA #IMPLIED
duration CDATA #IMPLIED>
|