1 <?xml version=
"1.0" encoding=
"UTF-8"?>
2 <xs:schema attributeFormDefault=
"unqualified" elementFormDefault=
"qualified" targetNamespace=
"http://appengine.google.com/ns/1.0" xmlns:
xs=
"http://www.w3.org/2001/XMLSchema">
3 <xs:element name=
"appengine-web-app" type=
"ns:appengine-web-appType" xmlns:
ns=
"http://appengine.google.com/ns/1.0"/>
4 <xs:complexType name=
"env-varType">
6 <xs:extension base=
"xs:string">
7 <xs:attribute type=
"xs:string" name=
"name" use=
"required"/>
8 <xs:attribute type=
"xs:string" name=
"value" use=
"required"/>
12 <xs:complexType name=
"system-propertiesType">
14 <xs:element type=
"ns:propertyType" name=
"property" maxOccurs=
"unbounded" minOccurs=
"0" xmlns:
ns=
"http://appengine.google.com/ns/1.0"/>
17 <xs:complexType name=
"propertyType">
19 <xs:extension base=
"xs:string">
20 <xs:attribute type=
"xs:string" name=
"name" use=
"required"/>
21 <xs:attribute type=
"xs:string" name=
"value" use=
"required"/>
25 <xs:complexType name=
"vm-settingsType">
27 <xs:element type=
"ns:settingType" name=
"setting" maxOccurs=
"unbounded" minOccurs=
"0" xmlns:
ns=
"http://appengine.google.com/ns/1.0"/>
30 <xs:complexType name=
"settingType">
32 <xs:extension base=
"xs:string">
33 <xs:attribute type=
"xs:string" name=
"name" use=
"required"/>
34 <xs:attribute type=
"xs:string" name=
"value" use=
"required"/>
38 <xs:complexType name=
"asyncSessionPersistenceType">
40 <xs:extension base=
"xs:string">
41 <xs:attribute type=
"xs:boolean" name=
"enabled" use=
"required"/>
42 <xs:attribute type=
"xs:string" name=
"queue-name" use=
"optional"/>
46 <xs:complexType name=
"appengine-web-appType">
48 <xs:element type=
"xs:string" name=
"application"/>
49 <xs:element type=
"xs:string" name=
"version" minOccurs=
"0"/>
50 <xs:element type=
"xs:string" name=
"source-language" minOccurs=
"0"/>
51 <xs:element type=
"xs:string" name=
"module" minOccurs=
"0"/>
52 <xs:element type=
"xs:string" name=
"instance-class" minOccurs=
"0"/>
53 <xs:element type=
"ns:automatic-scaling-type" name=
"automatic-scaling" minOccurs=
"0" xmlns:
ns=
"http://appengine.google.com/ns/1.0"/>
54 <xs:element type=
"ns:manual-scaling-type" name=
"manual-scaling" minOccurs=
"0" xmlns:
ns=
"http://appengine.google.com/ns/1.0"/>
55 <xs:element type=
"ns:basic-scaling-type" name=
"basic-scaling" minOccurs=
"0" xmlns:
ns=
"http://appengine.google.com/ns/1.0"/>
56 <xs:element type=
"ns:static-filesType" name=
"static-files" minOccurs=
"0" xmlns:
ns=
"http://appengine.google.com/ns/1.0"/>
57 <xs:element type=
"ns:resource-filesType" name=
"resource-files" minOccurs=
"0" xmlns:
ns=
"http://appengine.google.com/ns/1.0"/>
58 <xs:element type=
"ns:system-propertiesType" name=
"system-properties" minOccurs=
"0" xmlns:
ns=
"http://appengine.google.com/ns/1.0"/>
59 <xs:element type=
"ns:vm-settingsType" name=
"vm-settings" minOccurs=
"0" xmlns:
ns=
"http://appengine.google.com/ns/1.0"/>
60 <xs:element type=
"ns:env-variablesType" name=
"env-variables" minOccurs=
"0" xmlns:
ns=
"http://appengine.google.com/ns/1.0"/>
61 <xs:element type=
"xs:boolean" name=
"ssl-enabled" minOccurs=
"0" xmlns:
ns=
"http://appengine.google.com/ns/1.0"/>
62 <xs:element type=
"xs:boolean" name=
"sessions-enabled" minOccurs=
"0" xmlns:
ns=
"http://appengine.google.com/ns/1.0"/>
63 <xs:element type=
"ns:asyncSessionPersistenceType" name=
"async-session-persistence" minOccurs=
"0" xmlns:
ns=
"http://appengine.google.com/ns/1.0"/>
64 <xs:element type=
"ns:userPermissionsType" name=
"user-permissions" minOccurs=
"0" xmlns:
ns=
"http://appengine.google.com/ns/1.0"/>
65 <xs:element type=
"xs:string" name=
"public-root" minOccurs=
"0"/>
66 <xs:element type=
"ns:inboundServicesType" name=
"inbound-services" minOccurs=
"0" xmlns:
ns=
"http://appengine.google.com/ns/1.0"/>
67 <xs:element type=
"xs:boolean" name=
"precompilation-enabled" minOccurs=
"0" xmlns:
ns=
"http://appengine.google.com/ns/1.0"/>
68 <xs:element type=
"ns:admin-console" name=
"admin-console" minOccurs=
"0" xmlns:
ns=
"http://appengine.google.com/ns/1.0"/>
69 <xs:element type=
"ns:static-error-handlers" name=
"static-error-handlers" minOccurs=
"0" xmlns:
ns=
"http://appengine.google.com/ns/1.0"/>
70 <xs:element type=
"xs:boolean" name=
"warmup-requests-enabled" minOccurs=
"0" xmlns:
ns=
"http://appengine.google.com/ns/1.0"/>
71 <xs:element type=
"xs:boolean" name=
"threadsafe" minOccurs=
"0" xmlns:
ns=
"http://appengine.google.com/ns/1.0"/>
72 <xs:element type=
"xs:string" name=
"auto-id-policy" minOccurs=
"0" xmlns:
ns=
"http://appengine.google.com/ns/1.0"/>
73 <xs:element type=
"xs:boolean" name=
"code-lock" minOccurs=
"0" xmlns:
ns=
"http://appengine.google.com/ns/1.0"/>
74 <xs:element type=
"xs:boolean" name=
"vm" minOccurs=
"0" xmlns:
ns=
"http://appengine.google.com/ns/1.0"/>
75 <xs:element type=
"ns:pagespeedType" name=
"pagespeed" minOccurs=
"0" xmlns:
ns=
"http://appengine.google.com/ns/1.0"/>
76 <xs:element type=
"ns:classLoaderConfigType" name=
"class-loader-config" minOccurs=
"0" xmlns:
ns=
"http://appengine.google.com/ns/1.0"/>
77 <xs:element type=
"ns:urlStreamHandlerType" name=
"url-stream-handler" minOccurs=
"0" xmlns:
ns=
"http://appengine.google.com/ns/1.0"/>
78 <xs:element type=
"xs:boolean" name=
"use-google-connector-j" minOccurs=
"0" xmlns:
ns=
"http://appengine.google.com/ns/1.0"/>
81 <xs:complexType name=
"env-variablesType">
83 <xs:element type=
"ns:env-varType" name=
"env-var" maxOccurs=
"unbounded" minOccurs=
"0" xmlns:
ns=
"http://appengine.google.com/ns/1.0"/>
86 <xs:complexType name=
"includeType">
87 <xs:attribute type=
"xs:string" name=
"path" use=
"required"/>
89 <!-- Adds two things to includeType: expiration attribute, and http-header children -->
90 <xs:complexType name=
"staticIncludeType">
92 <xs:extension base=
"ns:includeType" xmlns:
ns=
"http://appengine.google.com/ns/1.0">
94 <xs:element type=
"ns:http-headerType" name=
"http-header" minOccurs=
"0" maxOccurs=
"unbounded" xmlns:
ns=
"http://appengine.google.com/ns/1.0"/>
96 <xs:attribute type=
"ns:expirationType" name=
"expiration" use=
"optional" xmlns:
ns=
"http://appengine.google.com/ns/1.0"/>
100 <!-- See RFC 2616 for what constitutes valid HTTP header names and values. -->
101 <xs:complexType name=
"http-headerType">
102 <xs:attribute type=
"xs:string" name=
"name" use=
"required"/>
103 <xs:attribute type=
"xs:string" name=
"value" use=
"required"/>
105 <xs:complexType name=
"resource-filesType">
107 <xs:element type=
"ns:includeType" name=
"include" maxOccurs=
"unbounded" minOccurs=
"0" xmlns:
ns=
"http://appengine.google.com/ns/1.0"/>
108 <xs:element type=
"ns:excludeType" name=
"exclude" maxOccurs=
"unbounded" minOccurs=
"0" xmlns:
ns=
"http://appengine.google.com/ns/1.0"/>
111 <xs:complexType name=
"automatic-scaling-type">
113 <xs:element type=
"xs:string" name=
"min-pending-latency" minOccurs=
"0"/>
114 <xs:element type=
"xs:string" name=
"max-pending-latency" minOccurs=
"0"/>
115 <xs:element type=
"xs:string" name=
"min-idle-instances" minOccurs=
"0"/>
116 <xs:element type=
"xs:string" name=
"max-idle-instances" minOccurs=
"0"/>
117 <xs:element type=
"xs:string" name=
"max-concurrent-requests" minOccurs=
"0"/>
120 <xs:complexType name=
"manual-scaling-type">
122 <xs:element type=
"xs:string" name=
"instances"/>
125 <xs:complexType name=
"basic-scaling-type">
127 <xs:element type=
"xs:string" name=
"max-instances"/>
128 <xs:element type=
"xs:string" name=
"idle-timeout" minOccurs=
"0"/>
131 <xs:complexType name=
"static-filesType">
133 <xs:element type=
"ns:staticIncludeType" name=
"include" maxOccurs=
"unbounded" minOccurs=
"0" xmlns:
ns=
"http://appengine.google.com/ns/1.0"/>
134 <xs:element type=
"ns:excludeType" name=
"exclude" maxOccurs=
"unbounded" minOccurs=
"0" xmlns:
ns=
"http://appengine.google.com/ns/1.0"/>
137 <xs:complexType name=
"excludeType">
138 <xs:attribute type=
"xs:string" name=
"path" use=
"required"/>
140 <xs:complexType name=
"userPermissionsType">
142 <xs:element type=
"ns:permissionType" name=
"permission" maxOccurs=
"unbounded" minOccurs=
"0" xmlns:
ns=
"http://appengine.google.com/ns/1.0"/>
145 <xs:complexType name=
"permissionType">
147 <xs:extension base=
"xs:string">
148 <xs:attribute type=
"xs:string" name=
"class" use=
"required"/>
149 <xs:attribute type=
"xs:string" name=
"name" use=
"required"/>
150 <xs:attribute type=
"xs:string" name=
"actions" use=
"optional"/>
154 <xs:complexType name=
"inboundServicesType">
156 <xs:element type=
"xs:string" name=
"service" maxOccurs=
"unbounded" minOccurs=
"0" xmlns:
ns=
"http://appengine.google.com/ns/1.0"/>
159 <xs:simpleType name=
"expirationType">
160 <xs:restriction base=
"xs:string">
161 <xs:pattern value=
"\s*(([0-9]+)([DdHhMm]|[sS]?))(\s+([0-9]+)([DdHhMm]|[sS]?))*\s*"/>
164 <xs:complexType name=
"admin-console">
166 <xs:element type=
"ns:admin-console-pageType" name=
"page" maxOccurs=
"unbounded" minOccurs=
"0" xmlns:
ns=
"http://appengine.google.com/ns/1.0"/>
169 <xs:complexType name=
"admin-console-pageType">
171 <xs:extension base=
"xs:string">
172 <xs:attribute type=
"xs:string" name=
"name" use=
"required"/>
173 <xs:attribute type=
"xs:string" name=
"url" use=
"required"/>
177 <xs:complexType name=
"static-error-handlers">
179 <xs:element type=
"ns:static-error-handlers-handler" name=
"handler" maxOccurs=
"unbounded" minOccurs=
"0" xmlns:
ns=
"http://appengine.google.com/ns/1.0"/>
182 <xs:complexType name=
"static-error-handlers-handler">
184 <xs:extension base=
"xs:string">
185 <xs:attribute type=
"xs:string" name=
"file" use=
"required"/>
186 <xs:attribute type=
"xs:string" name=
"error-code" use=
"optional"/>
190 <xs:complexType name=
"pagespeedType">
191 <xs:choice maxOccurs=
"unbounded" minOccurs=
"0">
192 <xs:element type=
"xs:string" name=
"url-blacklist"/>
193 <xs:element type=
"xs:string" name=
"domain-to-rewrite"/>
194 <xs:element type=
"xs:string" name=
"enabled-rewriter"/>
195 <xs:element type=
"xs:string" name=
"disabled-rewriter"/>
198 <xs:complexType name=
"classLoaderConfigType">
200 <xs:element type=
"ns:prioritySpecifierType" name=
"priority-specifier" maxOccurs=
"unbounded" minOccurs=
"1"/>
203 <xs:complexType name=
"prioritySpecifierType">
205 <xs:extension base=
"xs:string">
206 <xs:attribute type=
"xs:string" name=
"filename" use=
"required"/>
207 <xs:attribute type=
"xs:double" name=
"priority" use=
"optional"/>
211 <xs:simpleType name=
"urlStreamHandlerType">
212 <xs:restriction base=
"xs:string">
213 <xs:pattern value=
"urlfetch|native"/>