src/Extra/org/objectweb/proactive/extra/gcmdeployment/schema/ApplicationDescriptorSchema.xsd - scheduling in OW2 ProActive - Gitorious

#

eg. 'wrapper', 'category:python' or '"document database"'

- Blob contents
- Blob history
- Raw blob data

This file looks large and may slow your browser down if we attempt to syntax highlight it, so we are showing it without any pretty colors. Highlight it anyway.

1

    <?xml version="1.0" encoding="UTF-8"?>

2

    <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"

3

    	targetNamespace="urn:gcm:application:1.0"

4

    	xmlns="urn:gcm:application:1.0"

5

    	elementFormDefault="qualified">

6

7

    	<xsd:include schemaLocation="CommonTypes.xsd"/>

8

9

    	<xsd:attribute name="OSAttr">

10

    		<xsd:simpleType>

11

    			<xsd:restriction base="xsd:string">

12

    				<xsd:enumeration value="Unix"></xsd:enumeration>

13

    				<xsd:enumeration value="Windows"></xsd:enumeration>

14

    			</xsd:restriction>

15

    		</xsd:simpleType>

16

    	</xsd:attribute>

17

18

    	<xsd:attribute name="PriorityAttr">

19

    		<xsd:simpleType>

20

    			<xsd:restriction base="xsd:string">

21

    				<xsd:enumeration value="Low"></xsd:enumeration>

22

    				<xsd:enumeration value="Normal"></xsd:enumeration>

23

    				<xsd:enumeration value="High"></xsd:enumeration>

24

    			</xsd:restriction>

25

    		</xsd:simpleType>

26

    	</xsd:attribute>

27

28

29

    	<xsd:simpleType name="parameterType">

30

    		<xsd:restriction base="xsd:string"></xsd:restriction>

31

    	</xsd:simpleType>

32

33

34

    	<xsd:complexType name="jreType">

35

    		<xsd:sequence>

36

    			<xsd:element name="parameter" type="parameterType" />

37

    		</xsd:sequence>

38

    		<xsd:attribute name="path" type="xsd:string"></xsd:attribute>

39

    	</xsd:complexType>

40

41

    	<xsd:complexType name="valueType">

42

    		<xsd:attribute name="value" type="xsd:string" />

43

    	</xsd:complexType>

44

45

46

    	<xsd:complexType name="nodeProviderType">

47

    		<xsd:sequence>

48

    			<xsd:element name="file" maxOccurs="unbounded">

49

    				<xsd:complexType>

50

    					<xsd:attribute name="path"

51

    						type="pathElementGeneralType">

52

    					</xsd:attribute>

53

    				</xsd:complexType>

54

    			</xsd:element>

55

    			<xsd:element name="fileTransfer" type="fileTransferType"

56

    				minOccurs="0" maxOccurs="unbounded">

57

    			</xsd:element>

58

    		</xsd:sequence>

59

    		<xsd:attribute name="id" type="idType"></xsd:attribute>

60

    	</xsd:complexType>

61

62

    	<xsd:complexType name="virtualNodeType">

63

    		<xsd:sequence>

64

    			<xsd:element name="fileTranfer" type="fileTransferType"

65

    				minOccurs="0" maxOccurs="unbounded">

66

    			</xsd:element>

67

    			<xsd:element name="nodeProvider" minOccurs="0"

68

    				maxOccurs="unbounded">

69

    				<xsd:complexType>

70

    					<xsd:attribute name="refid" type="idType"></xsd:attribute>

71

    					<xsd:attribute name="capacity" type="capacityType" />

72

    				</xsd:complexType>

73

    			</xsd:element>

74

    		</xsd:sequence>

75

    		<xsd:attribute name="id" type="xsd:string" use="required"></xsd:attribute>

76

    		<xsd:attribute name="capacity" type="capacityType"></xsd:attribute>

77

    	</xsd:complexType>

78

79

    	<xsd:complexType name="commandType">

80

    		<xsd:sequence>

81

    			<xsd:element name="path" type="pathElementType"

82

    				minOccurs="0" />

83

    			<xsd:element name="arg" type="xsd:string" minOccurs="0"

84

    				maxOccurs="unbounded" />

85

    			<xsd:element name="filetransfer" type="fileTransferType"

86

    				minOccurs="0" />

87

    		</xsd:sequence>

88

    		<xsd:attribute name="name" type="parameterType"></xsd:attribute>

89

    	</xsd:complexType>

90

91

    	<xsd:complexType name="applicationNodeType" abstract="true"></xsd:complexType>

92

93

    	<xsd:complexType name="proactiveType">

94

    		<xsd:complexContent>

95

    			<xsd:extension base="applicationNodeType">

96

    				<xsd:sequence>

97

    					<xsd:element name="configuration" minOccurs="0">

98

    						<xsd:complexType>

99

    							<xsd:all>

100

    								<xsd:element name="bootClasspath"

101

    									type="pathType" minOccurs="0" />

102

    								<xsd:element name="java"

103

    									type="pathElementType" minOccurs="0" maxOccurs="1" />

104

    								<xsd:element name="jvmarg" minOccurs="0" maxOccurs="1">

105

    									<xsd:complexType>

106

    										<xsd:attribute name="value" type="xsd:string"/>

107

    									</xsd:complexType>

108

    								</xsd:element>

109

    								<xsd:element name="applicationClasspath"

110

    									type="classpathType" minOccurs="0" maxOccurs="1" />

111

    								<xsd:element name="proactiveClasspath"

112

    									type="classpathType" minOccurs="0" maxOccurs="1" />

113

    								<xsd:element name="securityPolicy"

114

    									type="pathElementType" minOccurs="0" maxOccurs="1" />

115

    								<xsd:element name="log4jProperties"

116

    									type="pathElementType" minOccurs="0" maxOccurs="1" />

117

    								<xsd:element name="userProperties"

118

    									type="pathElementType" minOccurs="0" maxOccurs="1" />

119

    							</xsd:all>

120

    						</xsd:complexType>

121

    					</xsd:element>

122

123

    					<xsd:element name="virtualNode"

124

    						type="virtualNodeType" maxOccurs="unbounded">

125

    						<xsd:unique name="nodeProviderConstraint">

126

    							<xsd:selector xpath="nodeProvider"></xsd:selector>

127

    							<xsd:field xpath="@refid"></xsd:field>

128

    						</xsd:unique>

129

    					</xsd:element>

130

131

    				</xsd:sequence>

132

    				<xsd:attribute name="relpath"

133

    					type="pathElementGeneralType" use="optional">

134

    				</xsd:attribute>

135

    			</xsd:extension>

136

    		</xsd:complexContent>

137

    	</xsd:complexType>

138

139

    	<xsd:complexType name="executableType">

140

    		<xsd:complexContent>

141

    			<xsd:extension base="applicationNodeType">

142

    				<xsd:sequence>

143

    					<xsd:element name="nodeProvider"

144

    						maxOccurs="unbounded">

145

    						<xsd:complexType>

146

    							<xsd:attribute name="refid" type="xsd:string"></xsd:attribute>

147

    						</xsd:complexType>

148

    					</xsd:element>

149

    					<xsd:element name="command" type="commandType"></xsd:element>

150

    				</xsd:sequence>

151

    				<xsd:attribute name="instances">

152

    					<xsd:simpleType>

153

    						<xsd:restriction base="xsd:string">

154

    							<xsd:enumeration value="onePerHost"></xsd:enumeration>

155

    							<xsd:enumeration value="onePerVM"></xsd:enumeration>

156

    							<xsd:enumeration value="onePerCapacity"></xsd:enumeration>

157

    						</xsd:restriction>

158

    					</xsd:simpleType>

159

    				</xsd:attribute>

160

    			</xsd:extension>

161

    		</xsd:complexContent>

162

    	</xsd:complexType>

163

164

    	<xsd:element name="abstractApplicationElement"

165

    		type="applicationNodeType" />

166

167

    	<xsd:element name="executable" type="executableType"

168

    		substitutionGroup="abstractApplicationElement" />

169

    	<xsd:element name="proactive" type="proactiveType"

170

    		substitutionGroup="abstractApplicationElement" />

171

172

173

    	<xsd:complexType name="applicationType">

174

    		<xsd:sequence>

175

    			<xsd:element ref="abstractApplicationElement" maxOccurs="1"

176

    				minOccurs="1">

177

    			</xsd:element>

178

    		</xsd:sequence>

179

    	</xsd:complexType>

180

181

    	<xsd:complexType name="resourcesType">

182

    		<xsd:sequence>

183

    			<xsd:element name="nodeProvider" type="nodeProviderType"

184

    				minOccurs="0" maxOccurs="unbounded">

185

    			</xsd:element>

186

    		</xsd:sequence>

187

    	</xsd:complexType>

188

189

    	<xsd:complexType name="GCMApplicationType">

190

    		<xsd:sequence>

191

    			<xsd:element name="environment" type="environmentType"

192

    				minOccurs="0" />

193

    			<xsd:element name="application" type="applicationType"

194

    				minOccurs="1" maxOccurs="1">

195

    			</xsd:element>

196

    			<xsd:element name="resources" type="resourcesType"

197

    				minOccurs="1" maxOccurs="1">

198

    			</xsd:element>

199

    		</xsd:sequence>

200

    	</xsd:complexType>

201

202

    	<xsd:element name="GCMApplication" type="GCMApplicationType">

203

    		<!-- resource providers refid/id key correctness -->

204

    		<!--  -->

205

    		<xsd:key name="idnodeProviders">

206

    			<xsd:selector xpath="resources/nodeProvider" />

207

    			<xsd:field xpath="@id" />

208

    		</xsd:key>

209

    		<xsd:keyref name="refIdKeynodeProvider"

210

    			refer="idnodeProviders">

211

    			<xsd:selector

212

    				xpath="application/executable/nodeProvider">

213

    			</xsd:selector>

214

    			<xsd:field xpath="@refid"></xsd:field>

215

    		</xsd:keyref>

216

    		<xsd:keyref name="refIdKeynodeProvider2"

217

    			refer="idnodeProviders">

218

    			<xsd:selector

219

    				xpath="application/proactive/virtualNode/nodeProvider">

220

    			</xsd:selector>

221

    			<xsd:field xpath="@refid"></xsd:field>

222

    		</xsd:keyref>

223

    	</xsd:element>

224

225

    </xsd:schema>