ind2uceParameter.xsd 3.77 KB
Newer Older
Raj Shah's avatar
Raj Shah committed
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
<?xml version="1.0" encoding="UTF-8"?>
<schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.iese.fraunhofer.de/ind2uce/3.2.46/parameter" xmlns:tns="http://www.iese.fraunhofer.de/ind2uce/3.2.46/parameter"
	xmlns:event="http://www.iese.fraunhofer.de/ind2uce/3.2.46/event" xmlns:constant="http://www.iese.fraunhofer.de/ind2uce/3.2.46/constant" xmlns:language="http://www.iese.fraunhofer.de/ind2uce/3.2.46/ind2uceLanguage"
	xmlns:pip="http://www.iese.fraunhofer.de/ind2uce/3.2.46/pip" xmlns:variable="http://www.iese.fraunhofer.de/ind2uce/3.2.46/variable" elementFormDefault="qualified">

	<import namespace="http://www.iese.fraunhofer.de/ind2uce/3.2.46/constant" schemaLocation="ind2uceConstant.xsd" />
	<import namespace="http://www.iese.fraunhofer.de/ind2uce/3.2.46/pip" schemaLocation="ind2ucePIP.xsd" />
	<import namespace="http://www.iese.fraunhofer.de/ind2uce/3.2.46/ind2uceLanguage" schemaLocation="ind2uceLanguage.xsd" />
	<import namespace="http://www.iese.fraunhofer.de/ind2uce/3.2.46/event" schemaLocation="ind2uceEvent.xsd" />
	<import namespace="http://www.iese.fraunhofer.de/ind2uce/3.2.46/variable" schemaLocation="ind2uceVariable.xsd" />


	<!-- <complexType name="ParamType"> -->

	<complexType name="ParamMatchType">
		<attribute name="name" type="string" use="required" />
	</complexType>

	<complexType name="ParamStringType">
		<complexContent>
			<extension base="tns:ParamMatchType">
				<choice minOccurs="0" maxOccurs="1">
					<group ref="event:eventGroup" />
					<group ref="pip:pipGroup" />
					<group ref="language:FunctionGroup" />
					<group ref="variable:ReferenceVariableGroup" />
				</choice>
				<attribute name="value" type="string" use="optional" />
			</extension>
		</complexContent>
	</complexType>

	<complexType name="ParamBoolType">
		<complexContent>
			<extension base="tns:ParamMatchType">
				<choice minOccurs="0" maxOccurs="1">
					<element ref="pip:boolean" />
					<element ref="event:boolean" />
					<group ref="language:BooleanFunctionGroup" />
					<element ref="variable:boolean" />
				</choice>
				<attribute name="value" type="boolean" use="optional" />
			</extension>
		</complexContent>
	</complexType>

	<complexType name="ParamNumberType">
		<complexContent>
			<extension base="tns:ParamMatchType">
				<choice minOccurs="0" maxOccurs="1">
					<element ref="pip:number" />
					<element ref="event:number" />
					<group ref="language:NumberFunctionGroup" />
					<element ref="variable:number" />
					
				</choice>
				<attribute name="value" type="double" use="optional" />
			</extension>
		</complexContent>
	</complexType>

	<complexType name="ParamListType">
		<complexContent>
			<extension base="tns:ParamMatchType">
				<choice minOccurs="0" maxOccurs="1">
					<element ref="pip:list" />
					<element ref="event:list" />
					<element ref="variable:list" />
				</choice>
				<attribute name="value" use="optional">
					<simpleType>
						<restriction base="string">
							<!-- comma seperated array, e.g., [1,2.0,'adf'] String in '', floating point with x.y -->
							<pattern value="\[([0-9](\.([0-9])+){0,1}|&quot;[A-Za-z0-9()+,-.=@;$_!*]*&quot;)(\s*,\s*([0-9](\.([0-9])+){0,1}|&quot;[A-Za-z0-9()+,-.=@;$_!*]*&quot;)+)*\]|\[\]"></pattern>
						</restriction>
					</simpleType>
				</attribute>
			</extension>
		</complexContent>
	</complexType>

	<element name="string" type="tns:ParamStringType" />
	<element name="boolean" type="tns:ParamBoolType" />
	<element name="number" type="tns:ParamNumberType" />
	<element name="object" type="tns:ParamStringType" />
	<element name="list" type="tns:ParamListType" />

	<group name="ParamTypeGroup">
		<choice>
			<element ref="tns:string" />
			<element ref="tns:number" />
			<element ref="tns:boolean" />
			<element ref="tns:object" />
			<element ref="tns:list" />
		</choice>
	</group>

</schema>