root/trunk/src/xml/schema/generic-cms.xsd

Revision 1011, 7.0 kB (checked in by amandel, 4 years ago)

Aligned svn keyword settings.

  • Property svn:mime-type set to text/xml
  • Property svn:eol-style set to native
Line 
1<?xml version="1.0" encoding="UTF-8"?>
2<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
3            xmlns:cms="http://jcoderz.org/generic-cms"
4            targetNamespace="http://jcoderz.org/generic-cms">
5           
6            <!--
7            raw structure:
8            - cms
9               - meta block
10                  - link root issue ID pattern 0 or more
11                    - text (TACI, EXT, TACE)
12                    - link root
13                  - generic configuration
14                     - parameter - values (pairs)
15           
16               - issues
17                  -issue
18                     - ID (string)
19                     - external ID (if separation of 2 cms/modules is necessary)
20                     - version (version planned for - fixVersion)
21                     - affects version (version bug was found)
22                     - state (generic states (draft/reported/verified/.........))
23                     - summary
24                     - type (Bug/FR-CR/Task)
25                     - Link
26                       - ID
27                       - type of link (generic string?)
28                     - effort
29                       - type
30                       - original estimate effort
31                       - remaining estimate effort
32                       - effort/time spent
33                     - priority (string?)
34                     - component/module
35                     - responsible/assignee
36           
37           
38             -->
39   <xsd:simpleType name="IssueStateType">
40      <xsd:restriction base="xsd:string">
41         <xsd:enumeration value="Draft" />
42         <xsd:enumeration value="Open" />
43         <xsd:enumeration value="Resolved" />
44         <xsd:enumeration value="Accepted" />
45         <xsd:enumeration value="Released" />
46         <xsd:enumeration value="Closed" />
47      </xsd:restriction>
48   </xsd:simpleType>
49   
50   <xsd:simpleType name="IssueType">
51      <xsd:restriction base="xsd:string">
52         <xsd:enumeration value="Bug" />
53         <xsd:enumeration value="Change Request" />
54         <xsd:enumeration value="Task" />
55      </xsd:restriction>
56   </xsd:simpleType>
57   
58   <xsd:simpleType name='VersionIdType'>
59      <xsd:restriction base='xsd:string'>
60         <xsd:pattern value='[0-9]{1,2}.[0-9]{1,2}|[0-9]{1,2}.[0-9]{1,2}.[0-9]{1,2}|[0-9]{1,2}.[0-9]{1,2}.[0-9]{1,2}.[0-9]{1,2}|[0-9]{1,2}.[0-9]{1,2}.[0-9]{1,2}.[0-9]{1,2}.[0-9]{1,2}'/>
61      </xsd:restriction>
62   </xsd:simpleType>
63   
64   <!-- elements within meta element -->
65   <xsd:element name="text"           type="xsd:string" />
66   <xsd:element name="url"            type="xsd:string" />
67   <xsd:element name="key"            type="xsd:string" />
68   <xsd:element name="value"          type="xsd:string" />
69   
70   <xsd:element name="linkroot">
71      <xsd:complexType>
72         <xsd:choice>
73            <xsd:element ref="cms:text"    minOccurs="1" maxOccurs="1"/>
74            <xsd:element ref="cms:url"     minOccurs="1" maxOccurs="1"/>
75         </xsd:choice>
76      </xsd:complexType>
77   </xsd:element>
78   
79   <xsd:element name="configuration">
80      <xsd:complexType>
81         <xsd:choice>
82            <xsd:element ref="cms:key"       minOccurs="1" maxOccurs="1"/>
83            <xsd:element ref="cms:value"     minOccurs="1" maxOccurs="1"/>
84         </xsd:choice>
85      </xsd:complexType>
86   </xsd:element>
87   
88   <!-- elements for issue element -->
89   <xsd:element name="id"               type="xsd:string" />
90   <xsd:element name="external-id"      type="xsd:string" />
91   <xsd:element name="type"             type="cms:IssueType" />
92   <xsd:element name="version"          type="cms:VersionIdType" />
93   <xsd:element name="affects-version"  type="cms:VersionIdType" />
94   <xsd:element name="state"            type="cms:IssueStateType" />
95   <xsd:element name="summary"          type="xsd:string" />
96   <xsd:element name="priority"         type="xsd:string" />
97   <xsd:element name="linktype"         type="xsd:string" />
98   <xsd:element name="efforttype"       type="xsd:string" />
99   <xsd:element name="original-effort"  type="xsd:decimal" />
100   <xsd:element name="remaining-effort" type="xsd:decimal" />
101   <xsd:element name="spent-effort"     type="xsd:decimal" />
102   <xsd:element name="module"           type="xsd:string" />
103   <xsd:element name="assignee"         type="xsd:string" />
104   
105   <xsd:element name="link">
106      <xsd:complexType>
107         <xsd:choice>
108            <xsd:element ref="cms:id"       minOccurs="1" maxOccurs="1"/>
109            <xsd:element ref="cms:linktype" minOccurs="1" maxOccurs="1"/>
110         </xsd:choice>
111      </xsd:complexType>
112   </xsd:element>
113   
114   <xsd:element name="effort">
115      <xsd:complexType>
116         <xsd:choice>
117            <xsd:element ref="cms:efforttype"        minOccurs="1" maxOccurs="1"/>
118            <xsd:element ref="cms:original-effort"   minOccurs="1" maxOccurs="1"/>
119            <xsd:element ref="cms:remaining-effort"  minOccurs="1" maxOccurs="1"/>
120            <xsd:element ref="cms:spent-effort"      minOccurs="1" maxOccurs="1"/>
121         </xsd:choice>
122      </xsd:complexType>
123   </xsd:element>
124   
125   <xsd:element name="meta">
126      <xsd:complexType>
127         <xsd:choice>
128            <xsd:element ref="cms:linkroot"      minOccurs="0" maxOccurs="unbounded"/>
129            <xsd:element ref="cms:configuration" minOccurs="0" maxOccurs="unbounded"/>
130         </xsd:choice>
131      </xsd:complexType>
132   </xsd:element>
133   
134   <xsd:element name="issue">
135      <xsd:complexType>
136         <xsd:sequence>
137            <xsd:element ref="cms:id"                minOccurs="1" maxOccurs="1"/>
138            <xsd:element ref="cms:external-id"       minOccurs="0" maxOccurs="unbounded"/>
139            <xsd:element ref="cms:type"              minOccurs="1" maxOccurs="1"/>
140            <xsd:element ref="cms:version"           minOccurs="1" maxOccurs="1"/>
141            <xsd:element ref="cms:affects-version"   minOccurs="1" maxOccurs="1"/>
142            <xsd:element ref="cms:state"             minOccurs="1" maxOccurs="1"/>
143            <xsd:element ref="cms:summary"           minOccurs="1" maxOccurs="1"/>
144            <xsd:element ref="cms:link"              minOccurs="0" maxOccurs="unbounded"/>
145            <xsd:element ref="cms:priority"          minOccurs="1" maxOccurs="1"/>
146            <xsd:element ref="cms:module"            minOccurs="0" maxOccurs="unbounded"/>
147            <xsd:element ref="cms:assignee"          minOccurs="0" maxOccurs="1"/>
148            <xsd:element ref="cms:effort"            minOccurs="1" maxOccurs="unbounded"/>
149         </xsd:sequence>
150      </xsd:complexType>
151   </xsd:element>
152   
153   <xsd:element name="issues">
154      <xsd:complexType>
155         <xsd:choice>
156            <xsd:element ref="cms:issue" minOccurs="0" maxOccurs="unbounded"/>
157         </xsd:choice>
158      </xsd:complexType>
159   </xsd:element>
160   
161   <xsd:element name="cms">
162      <xsd:complexType>
163         <xsd:sequence>
164            <xsd:element ref="cms:meta" minOccurs="1" maxOccurs="1"/>
165            <xsd:element ref="cms:issues" minOccurs="1" maxOccurs="1"/>
166         </xsd:sequence>
167      </xsd:complexType>
168   </xsd:element>
169           
170</xsd:schema>
Note: See TracBrowser for help on using the browser.