File: CTD_0_3.xsd

package info (click to toggle)
ctdopts 1.2-3
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 224 kB
  • sloc: python: 784; makefile: 10; sh: 9
file content (168 lines) | stat: -rw-r--r-- 7,594 bytes parent folder | download | duplicates (3)
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
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Mit XMLSpy v2007 sp1 bearbeitet (http://www.altova.com) von Oliver Kohlbacher (Universität Tübingen) -->
<!-- Draft-Version 0.3 -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
	<xs:include schemaLocation="Param_1_6_2.xsd"/>
	<xs:element name="tool">
		<xs:complexType>
			<xs:sequence>
				<xs:element name="manual" type="xs:string" minOccurs="0">
					<xs:annotation>
						<xs:documentation>More detailed description of the tool (about 10 lines).</xs:documentation>
					</xs:annotation>
				</xs:element>
				<xs:element name="description" type="xs:string" minOccurs="0">
					<xs:annotation>
						<xs:documentation>One line description of the tool.</xs:documentation>
					</xs:annotation>
				</xs:element>
				<xs:element name="executableName" type="xs:string" minOccurs="0">
					<xs:annotation>
						<xs:documentation>Optionally a separate name for the executable can be specified here.</xs:documentation>
					</xs:annotation>
				</xs:element>
				<xs:element name="executablePath" type="xs:anyURI" minOccurs="0">
					<xs:annotation>
						<xs:documentation>Contains the path were the tool can be found using either the name element or (if set) the executableName.</xs:documentation>
					</xs:annotation>
				</xs:element>
				<xs:element name="cli" type="cliType" minOccurs="0"/>
				<xs:element name="logs" type="logCollectionType" minOccurs="0"/>
				<xs:element name="relocators" type="relocatorCollectionType" minOccurs="0">
					<xs:annotation>
						<xs:documentation>Defines rules to find the output of the tool and move it to the originally desired location.</xs:documentation>
					</xs:annotation>
				</xs:element>
				<xs:element name="PARAMETERS" type="PARAMETERSType"/>
			</xs:sequence>
			<xs:attribute name="version" type="xs:string" use="required"/>
			<xs:attribute name="name">
				<xs:annotation>
					<xs:documentation>Name of the tool. Needs to pass following regex [[A-Z]|[a-z]][[0-9]|[A-Z]|[a-z]]+ i.e.\w</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:pattern value="\w*"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
			<xs:attribute name="docurl" type="xs:anyURI">
				<xs:annotation>
					<xs:documentation>URL to further documentation (WWW).</xs:documentation>
				</xs:annotation>
			</xs:attribute>
			<xs:attribute name="category" type="xs:string">
				<xs:annotation>
					<xs:documentation>The category gives information on the task the associated tool performs. It can be used to categorize different tools in a GUI.</xs:documentation>
				</xs:annotation>
			</xs:attribute>
		</xs:complexType>
	</xs:element>
	<xs:complexType name="cliType">
		<xs:annotation>
			<xs:documentation>Wraps the information necessary to construct a command line call for the tool.</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="clielement" type="cliElementType" maxOccurs="unbounded"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="mappingType">
		<xs:annotation>
			<xs:documentation>Defines which ITEM from the parameter part is associated to cliElement.</xs:documentation>
		</xs:annotation>
		<xs:attribute name="referenceName" type="xs:string"/>
		<xs:attribute name="referenceID" type="xs:IDREF"/>
	</xs:complexType>
	<xs:complexType name="cliElementType">
		<xs:annotation>
			<xs:documentation>Wraps a single element of a command line call (e.g., the -v flag for verbosity) and it's associated arguments. To model a non-option argument just leave the optionIdentifier empty. </xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="mapping" type="mappingType" minOccurs="0" maxOccurs="unbounded">
				<xs:annotation>
					<xs:documentation>The mapping defines the association between the cliElement and the PARAM part. Note: If the mapped parameter is boolean, the optionIdentifier will be added to the CLI only if the mapped value is true.</xs:documentation>
				</xs:annotation>
			</xs:element>
		</xs:sequence>
		<xs:attribute name="optionIdentifier" type="xs:string" use="optional">
			<xs:annotation>
				<xs:documentation>A string used to prefix any associated values (e.g., "-v" for a boolean flag to turn on verbosity).</xs:documentation>
			</xs:annotation>
		</xs:attribute>
		<xs:attribute name="isList" type="xs:boolean" use="optional">
			<xs:annotation>
				<xs:documentation>A boolean attribute indicating whether or not the given cliElement can be expended to occur more then once on the command line.</xs:documentation>
			</xs:annotation>
		</xs:attribute>
		<xs:attribute name="required" type="xs:boolean" use="optional">
			<xs:annotation>
				<xs:documentation>Defines if the cliElement is required to build the full command line, i.e., if required is set to false and the mapped parameter was not set the complete element will not be used on the final cli.</xs:documentation>
			</xs:annotation>
		</xs:attribute>
	</xs:complexType>
	<xs:complexType name="logCollectionType">
		<xs:annotation>
			<xs:documentation>Wraps the log informations from the call of the tool.</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="log" type="logType" maxOccurs="unbounded">
				<xs:annotation>
					<xs:documentation>...</xs:documentation>
				</xs:annotation>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="logType">
		<xs:annotation>
			<xs:documentation>Wraps the log informations from the call of the tool.</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="executionWarnings" type="xs:string" minOccurs="0" maxOccurs="unbounded">
				<xs:annotation>
					<xs:documentation>...</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="executionErrors" type="xs:string" minOccurs="0" maxOccurs="unbounded">
				<xs:annotation>
					<xs:documentation>...</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="executionMessage" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
		</xs:sequence>
		<xs:attribute name="executionTimeStart" type="xs:dateTime" use="required"/>
		<xs:attribute name="executionTimeStop" type="xs:dateTime" use="required"/>
		<xs:attribute name="executionStatus" type="xs:int" use="required"/>
	</xs:complexType>
	<xs:complexType name="logMessageType">
		<xs:sequence>
			<xs:element name="logMessage" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
		</xs:sequence>
		<xs:attribute name="NODEref" type="xs:IDREF"/>
	</xs:complexType>
	<xs:complexType name="relocatorCollectionType">
		<xs:sequence>
			<xs:element name="relocator" type="relocatorType"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="relocatorType">
		<xs:sequence>
			<xs:annotation>
				<xs:documentation>Defines a relocation rule using a pattern to find the file and the targeted output file where the found file should be moved to.</xs:documentation>
			</xs:annotation>
			<xs:element name="reference" type="xs:string">
				<xs:annotation>
					<xs:documentation>The referenced parameter which should be relocated.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="location" type="xs:string">
				<xs:annotation>
					<xs:documentation>The location of the output file defined using following variables:
%TEMP% - the temporary directory while executing
%PWD% - the working directory while executing
%BASENAME[PARAM]% - the base name of PARAM
    		</xs:documentation>
				</xs:annotation>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
</xs:schema>