ibm-ws-bnd_1_0.xsd 15 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <xsd:schema targetNamespace="http://websphere.ibm.com/xml/ns/javaee"
  3. xmlns:ws="http://websphere.ibm.com/xml/ns/javaee"
  4. xmlns:xsd="http://www.w3.org/2001/XMLSchema"
  5. elementFormDefault="qualified" attributeFormDefault="unqualified"
  6. version="1.0" >
  7. <xsd:import namespace="http://www.w3.org/XML/1998/namespace"
  8. schemaLocation="http://www.w3.org/2001/xml.xsd"/>
  9. <!-- ******************************************************* -->
  10. <xsd:annotation>
  11. <xsd:documentation>
  12. Copyright (c) 2013 IBM Corporation and others.
  13. All rights reserved. This program and the accompanying materials
  14. are made available under the terms of the Eclipse Public License v1.0
  15. which accompanies this distribution, and is available at
  16. http://www.eclipse.org/legal/epl-v10.html
  17. Contributors:
  18. IBM Corporation - initial API and implementation
  19. </xsd:documentation>
  20. </xsd:annotation>
  21. <!-- ******************************************************* -->
  22. <xsd:element name="webservices-bnd" type="ws:webservicesBndType" />
  23. <xsd:complexType name="webservicesBndType">
  24. <xsd:annotation>
  25. <xsd:documentation>
  26. The root of the ibm-ws-bnd deployment descriptor.
  27. </xsd:documentation>
  28. </xsd:annotation>
  29. <xsd:sequence>
  30. <xsd:element name="webservice-endpoint-properties" type="ws:webserviceEndpointPropertiesType" minOccurs="0" maxOccurs="1" />
  31. <xsd:element name="webservice-endpoint" type="ws:webserviceEndpointType" minOccurs="0" maxOccurs="unbounded" />
  32. <xsd:element name="http-publishing" type="ws:httpPublishingType" minOccurs="0" maxOccurs="1" />
  33. <xsd:element name="service-ref" type="ws:serviceRefType" minOccurs="0" maxOccurs="unbounded" />
  34. </xsd:sequence>
  35. <xsd:attribute name="version" type="xsd:string" use="required" fixed="1.0" />
  36. <xsd:attribute name="id" type="xsd:ID" />
  37. </xsd:complexType>
  38. <xsd:complexType name="webserviceEndpointType">
  39. <xsd:annotation>
  40. <xsd:documentation>
  41. Defines the Web service endpoint configurations.
  42. There may be multiple webservice-endpoint elements defined within a module.
  43. The port-component-name attribute specifies a port component's name.
  44. The attribute is required.
  45. The address attribute specifies the overridden address of a Web service endpoint.
  46. </xsd:documentation>
  47. </xsd:annotation>
  48. <xsd:sequence>
  49. <xsd:element name="properties" minOccurs="0" type="ws:propertiesType" />
  50. </xsd:sequence>
  51. <xsd:attribute name="port-component-name" type="xsd:string" use="required" />
  52. <xsd:attribute name="address" type="xsd:string" />
  53. </xsd:complexType>
  54. <xsd:complexType name="httpPublishingType">
  55. <xsd:annotation>
  56. <xsd:documentation>
  57. Defines the publishing configurations using HTTP protocol for all the Web service endpoints.
  58. There are at most one http-publishing element within a module.
  59. The context-root attribute specifies the context root for EJB based Web service.
  60. The attribute is optional.
  61. </xsd:documentation>
  62. </xsd:annotation>
  63. <xsd:sequence>
  64. <xsd:element name="webservice-security" type="ws:webserviceSecurityType" minOccurs="0" maxOccurs="1" />
  65. </xsd:sequence>
  66. <xsd:attribute name="context-root" type="xsd:string" />
  67. </xsd:complexType>
  68. <xsd:complexType name="webserviceSecurityType">
  69. <xsd:annotation>
  70. <xsd:documentation>
  71. Defines the role-based authorization for the Web services.
  72. There are at most one webservice-security element within a module.
  73. Note, the ibm-ws-bnd.xml file only supports BASIC and CLIENT_CERT as auth-method type,
  74. and the login-config element is ignored when the binding file is in a web application.
  75. </xsd:documentation>
  76. </xsd:annotation>
  77. <xsd:choice minOccurs="0" maxOccurs="unbounded">
  78. <xsd:element name="security-constraint" type="ws:security-constraintType"/>
  79. <xsd:element name="login-config" type="ws:login-configType"/>
  80. <xsd:element name="security-role" type="ws:security-roleType"/>
  81. </xsd:choice>
  82. </xsd:complexType>
  83. <!-- ******************************************************* -->
  84. <xsd:complexType name="string">
  85. <xsd:simpleContent>
  86. <xsd:extension base="xsd:token">
  87. <xsd:attribute name="id"
  88. type="xsd:ID"/>
  89. </xsd:extension>
  90. </xsd:simpleContent>
  91. </xsd:complexType>
  92. <xsd:complexType name="display-nameType">
  93. <xsd:simpleContent>
  94. <xsd:extension base="ws:string">
  95. <xsd:attribute ref="xml:lang"/>
  96. </xsd:extension>
  97. </xsd:simpleContent>
  98. </xsd:complexType>
  99. <xsd:complexType name="xsdStringType">
  100. <xsd:simpleContent>
  101. <xsd:extension base="xsd:string">
  102. <xsd:attribute name="id"
  103. type="xsd:ID"/>
  104. </xsd:extension>
  105. </xsd:simpleContent>
  106. </xsd:complexType>
  107. <xsd:complexType name="auth-constraintType">
  108. <xsd:sequence>
  109. <xsd:element name="description"
  110. type="ws:descriptionType"
  111. minOccurs="0"
  112. maxOccurs="unbounded"/>
  113. <xsd:element name="role-name"
  114. type="ws:string"
  115. minOccurs="0"
  116. maxOccurs="unbounded"/>
  117. </xsd:sequence>
  118. <xsd:attribute name="id"
  119. type="xsd:ID"/>
  120. </xsd:complexType>
  121. <xsd:complexType name="transport-guaranteeType">
  122. <xsd:simpleContent>
  123. <xsd:restriction base="ws:string">
  124. <xsd:enumeration value="NONE"/>
  125. <xsd:enumeration value="INTEGRAL"/>
  126. <xsd:enumeration value="CONFIDENTIAL"/>
  127. </xsd:restriction>
  128. </xsd:simpleContent>
  129. </xsd:complexType>
  130. <xsd:complexType name="user-data-constraintType">
  131. <xsd:sequence>
  132. <xsd:element name="description"
  133. type="ws:descriptionType"
  134. minOccurs="0"
  135. maxOccurs="unbounded"/>
  136. <xsd:element name="transport-guarantee"
  137. type="ws:transport-guaranteeType"/>
  138. </xsd:sequence>
  139. <xsd:attribute name="id"
  140. type="xsd:ID"/>
  141. </xsd:complexType>
  142. <xsd:complexType name="descriptionType">
  143. <xsd:simpleContent>
  144. <xsd:extension base="ws:xsdStringType">
  145. <xsd:attribute ref="xml:lang"/>
  146. </xsd:extension>
  147. </xsd:simpleContent>
  148. </xsd:complexType>
  149. <xsd:complexType name="security-constraintType">
  150. <xsd:sequence>
  151. <xsd:element name="display-name"
  152. type="ws:display-nameType"
  153. minOccurs="0"
  154. maxOccurs="unbounded"/>
  155. <xsd:element name="web-resource-collection"
  156. type="ws:web-resource-collectionType"
  157. maxOccurs="unbounded"/>
  158. <xsd:element name="auth-constraint"
  159. type="ws:auth-constraintType"
  160. minOccurs="0"/>
  161. <xsd:element name="user-data-constraint"
  162. type="ws:user-data-constraintType"
  163. minOccurs="0"/>
  164. </xsd:sequence>
  165. <xsd:attribute name="id"
  166. type="xsd:ID"/>
  167. </xsd:complexType>
  168. <xsd:simpleType name="http-methodType">
  169. <xsd:restriction base="xsd:token">
  170. <xsd:pattern value="[!-~-[\(\)&#60;&#62;@,;:&#34;/\[\]?=\{\}\\\p{Z}]]+"/>
  171. </xsd:restriction>
  172. </xsd:simpleType>
  173. <xsd:complexType name="web-resource-collectionType">
  174. <xsd:sequence>
  175. <xsd:element name="web-resource-name"
  176. type="ws:string">
  177. </xsd:element>
  178. <xsd:element name="description"
  179. type="ws:descriptionType"
  180. minOccurs="0"
  181. maxOccurs="unbounded"/>
  182. <xsd:element name="url-pattern"
  183. type="xsd:string"
  184. maxOccurs="unbounded"/>
  185. <xsd:choice minOccurs="0"
  186. maxOccurs="1">
  187. <xsd:element name="http-method"
  188. type="ws:http-methodType"
  189. minOccurs="1"
  190. maxOccurs="unbounded">
  191. </xsd:element>
  192. <xsd:element name="http-method-omission"
  193. type="ws:http-methodType"
  194. minOccurs="1"
  195. maxOccurs="unbounded">
  196. </xsd:element>
  197. </xsd:choice>
  198. </xsd:sequence>
  199. <xsd:attribute name="id"
  200. type="xsd:ID"/>
  201. </xsd:complexType>
  202. <xsd:complexType name="security-roleType">
  203. <xsd:sequence>
  204. <xsd:element name="role-name"
  205. type="ws:string"/>
  206. </xsd:sequence>
  207. </xsd:complexType>
  208. <xsd:complexType name="login-configType">
  209. <xsd:sequence>
  210. <xsd:element name="auth-method"
  211. type="ws:string"
  212. minOccurs="0"/>
  213. <xsd:element name="realm-name"
  214. type="ws:string"
  215. minOccurs="0">
  216. </xsd:element>
  217. <xsd:element name="form-login-config"
  218. type="ws:form-login-configType"
  219. minOccurs="0"/>
  220. </xsd:sequence>
  221. <xsd:attribute name="id"
  222. type="xsd:ID"/>
  223. </xsd:complexType>
  224. <xsd:complexType name="form-login-configType">
  225. <xsd:sequence>
  226. <xsd:element name="form-login-page"
  227. type="ws:war-pathType">
  228. </xsd:element>
  229. <xsd:element name="form-error-page"
  230. type="ws:war-pathType">
  231. </xsd:element>
  232. </xsd:sequence>
  233. <xsd:attribute name="id"
  234. type="xsd:ID"/>
  235. </xsd:complexType>
  236. <xsd:complexType name="war-pathType">
  237. <xsd:simpleContent>
  238. <xsd:restriction base="ws:string">
  239. <xsd:pattern value="/.*"/>
  240. </xsd:restriction>
  241. </xsd:simpleContent>
  242. </xsd:complexType>
  243. <!-- ******************************************************* -->
  244. <xsd:complexType name="serviceRefType">
  245. <xsd:annotation>
  246. <xsd:documentation>
  247. Defines the Web service reference configuration for a Web service client.
  248. There may be multiple service-ref elements defined within a module.
  249. The name attribute specifies the name of a Web service reference.
  250. The attribute is required.
  251. The component-name attribute specifies the the EJB bean name if the service
  252. reference is used in an EJB.
  253. The port-address attribute specifies the default port address in the web
  254. service reference.
  255. The wsdl-location specifies a URI of a WSDL document to override.
  256. </xsd:documentation>
  257. </xsd:annotation>
  258. <xsd:sequence>
  259. <xsd:element name="port" type="ws:portType" minOccurs="0" maxOccurs="unbounded" />
  260. <xsd:element name="properties" minOccurs="0" type="ws:propertiesType" />
  261. </xsd:sequence>
  262. <xsd:attribute name="name" type="xsd:string" use="required" />
  263. <xsd:attribute name="component-name" type="xsd:string" />
  264. <xsd:attribute name="port-address" type="xsd:string" />
  265. <xsd:attribute name="wsdl-location" type="xsd:string" />
  266. </xsd:complexType>
  267. <xsd:complexType name="portType">
  268. <xsd:annotation>
  269. <xsd:documentation>
  270. Defines port configurations associated with the Web service reference.
  271. There may be multiple port elements defined within a service-ref element.
  272. The name attribute specifies the name of Web service port.
  273. The attribute is required.
  274. The namespace attribute specifies the namespace of the Web service port.
  275. The attribute is optional. If the namespace attribute is present, then the
  276. binding will be applied to the port that has the exact name and namespace.
  277. If not, then applied to the ports have the same name no matter what their
  278. namespace are.
  279. The address attribute specifies the address for the Web service port.
  280. This attribute is optional. If it is present, then it will override the value
  281. of the port-address attribute defined in the service-ref element.
  282. The username attribute specifies the user name for the basic authentication.
  283. The password attribute specifies the password for the basic authentication,
  284. the password could be encoded.
  285. The ssl-ref attribute references to the ssl element configured in server.xml.
  286. This attribute is optional. If the attribute is not specified but the server
  287. enabled the application security feature, the service client will try to use
  288. the server's default ssl configuration.
  289. The key-alias attribute specifies the alias of a client certificate in the keystore.
  290. This attribute is optional. If the attribute is specified, the attribute will override
  291. the clientKeyAlias attribute of the ssl element defined in server.xml. If the attribute
  292. is not specified, and the Web service support the client certificate, then the client
  293. will try to use the first certificate in the client keystore.
  294. </xsd:documentation>
  295. </xsd:annotation>
  296. <xsd:sequence>
  297. <xsd:element name="properties" minOccurs="0" type="ws:propertiesType" />
  298. </xsd:sequence>
  299. <xsd:attribute name="name" type="xsd:string" use="required" />
  300. <xsd:attribute name="namespace" type="xsd:string" />
  301. <xsd:attribute name="address" type="xsd:string" />
  302. <xsd:attribute name="username" type="xsd:string" />
  303. <xsd:attribute name="password" type="xsd:string" />
  304. <xsd:attribute name="ssl-ref" type="xsd:string" />
  305. <xsd:attribute name="key-alias" type="xsd:string" />
  306. </xsd:complexType>
  307. <xsd:complexType name="propertiesType">
  308. <xsd:annotation>
  309. <xsd:documentation>
  310. Defines the properties for Web service endpoint or client.
  311. The attributes can be any name and any value.
  312. </xsd:documentation>
  313. </xsd:annotation>
  314. <xsd:anyAttribute namespace="##local" processContents="skip"/>
  315. </xsd:complexType>
  316. <xsd:complexType name="webserviceEndpointPropertiesType">
  317. <xsd:annotation>
  318. <xsd:documentation>
  319. Defines the default properties for all the Web service endpoints in the same module.
  320. There are at most one webservice-endpoint-properties element within a module.
  321. The attributes can be any name and any value, but only the properties for Web service endpoints.
  322. </xsd:documentation>
  323. </xsd:annotation>
  324. <xsd:anyAttribute namespace="##local" processContents="skip"/>
  325. </xsd:complexType>
  326. </xsd:schema>