1
3
Web Services Resource Metadata 1.0 (WS-ResourceMetadataDescriptor)
4
Committee Specification 01, November 9, 2006
2
5 6
Document identifier:
7 8
Location:
9 10 11
Editors:
12 13 14 15 16 17 18
Abstract:
wsrf-ws_resource_metadata_descriptor-1.0-spec-cs-01
http://docs.oasis-open.org/wsrf/wsrf-ws_resource_metadata_descriptor-1.0-spec-cs-01.pdf
Dan Jemiolo, IBM – [email protected]
The components introduced by the WS Resource Framework (WSRF) address functional aspects of modeling stateful resources (such as systems resources) using Web services. WSRF uses WSDL (currently WSDL 1.1) as the form of service description. There is a need to be able to supplement the descriptive information available about a WS-Resource. The format of the information about the components of a WS-Resource is standardized by WSRF, most notably in the resource properties document [WS-ResourceProperties].
19 20 21 22 23 24
In the realm of resource properties, the loosely coupled operations for reading and writing of properties [WS-ResourceProperties] would benefit from metadata. An example of this type of metadata is the mutability constraints and an enumeration of possible values for resource property elements. This document explains the need for such metadata and proposes an information model representing it that would be applicable to Manageable Resources and WS-Resources in general.
25 26 27 28
Status: This document is published by this TC as a committee specification. Committee members should send comments on this specification to the [email protected] list. Others should subscribe
wsrf-ws_resource_metadata_descriptor-1.0-spec-cs-01.doc
Nov 9, 2006
Copyright © OASIS Open 2006. All Rights Reserved.
Page 1 of 46
29 30 31
to and send comments to the [email protected] list. To subscribe, send an email message to [email protected] with the word "subscribe" as the body of the message.
32 33 34 35
For information on whether any patents have been disclosed that may be essential to implementing this specification, and any offers of patent licensing terms, please refer to the Intellectual Property Rights section of the WSRF TC web page (http://www.oasis-open.org/committees/wsrf/).
wsrf-ws_resource_metadata_descriptor-1.0-spec-cs-01.doc
Nov 9, 2006
Copyright © OASIS Open 2006. All Rights Reserved.
Page 2 of 46
36
Table of Contents
37
1
38 39 40 41 42
INTRODUCTION ................................................................................................................................ 5 GOALS AND REQUIREMENTS ........................................................................................................... 6 1.1 1.1.1 Requirements .......................................................................................................................... 6 Non-Goals............................................................................................................................... 6 1.1.2 TERMINOLOGY ................................................................................................................................ 7 1.2 1.3 NAMESPACES .................................................................................................................................. 8
43
2
TERMINOLOGY AND CONCEPTS................................................................................................. 9
44
3
EXAMPLE ...........................................................................................................................................10
45 46 47 48 49 50
3.1 THE OPERATINGSYSTEM PORTTYPE...............................................................................................10 3.2 OPERATING SYSTEM PROPERTIES ...................................................................................................11 Operating System Resource Property definitions ..................................................................11 3.2.1 3.2.2 Identification Property definitions.........................................................................................11 3.2.3 MetadataDescriptor for Identification portType ...................................................................12 MetadataDescriptor for OperatingSystem portType .............................................................13 3.2.4
51
4
LOGICAL MODEL FOR METADATA...........................................................................................16
52
5
INFORMATION MODEL FOR WS-RESOURCE METADATA .................................................17
53
6
DEFINITIONS COMPONENT .........................................................................................................18
54 55
6.1 7
56 57
METADATADESCRIPTOR COMPONENT ..................................................................................20 7.1
8
58 59 60 61 62
METADATADESCRIPTOR COMPONENTS WITHIN A DEFINITIONS COMPONENT .................................19
PROPERTIES COMPONENT OF A METADATADESCRIPTOR ................................................................21
PROPERTY COMPONENT..............................................................................................................22 8.1 8.2 8.3 8.4 8.5
XML SCHEMA VALUE SPACE AND {VALIDVALUES} ......................................................................24 VALIDVALUES ...............................................................................................................................25 VALIDVALUERANGE ......................................................................................................................26 STATICVALUES ..............................................................................................................................28 INITIALVALUES ..............................................................................................................................29
63
9
DOCUMENTATION COMPONENT ...............................................................................................31
64
10
OBTAINING A METADATADESCRIPTOR DOCUMENT .....................................................31
65 66 67
10.1 10.2 11
EXTENDING WSDL 1.1 PORTTYPE.................................................................................................31 USING RESOURE PROPERTY ELEMENTS TO EXPOSE METADATADESCRIPTORS ...............................32 REFERENCES ................................................................................................................................34
wsrf-ws_resource_metadata_descriptor-1.0-spec-cs-01.doc
Nov 9, 2006
Copyright © OASIS Open 2006. All Rights Reserved.
Page 3 of 46
68 69
11.1 11.2
NORMATIVE ...................................................................................................................................34 NON-NORMATIVE...........................................................................................................................34
70
APPENDIX A. ACKNOWLEDGMENTS ................................................................................................35
71
APPENDIX B. XML SCHEMA FOR WS-RESOURCEMETADATADESCRIPTOR ........................36
72
APPENDIX C. REVISION HISTORY......................................................................................................45
73
APPENDIX D. NOTICES...........................................................................................................................46
74
wsrf-ws_resource_metadata_descriptor-1.0-spec-cs-01.doc
Nov 9, 2006
Copyright © OASIS Open 2006. All Rights Reserved.
Page 4 of 46
75
1 Introduction
76 77 78 79 80 81 82 83 84
In the WS-Resource Framework [WSRF], elements of a WS-Resource’s state are exposed to third party requestors through an XML document. The XML document associated with a WSResource is called a resource properties document. The resource properties document is a projection of the WS-Resource’s state (not all of the elements of a WS-Resource’s state are exposed through the resource properties document). An individual element of state contained in a resource properties document is called a resource property. Access to the resource properties document is governed by Web services operations defined in the WS-Resource Properties [WSResource Properties] specification. These operations generically allow for get, set and query of resource properties.
85 86 87 88 89 90 91 92 93 94
In many cases, some of the resource properties exposed through the resource properties document are not accessible through every operation defined in WS-ResourceProperties. The most common case of this is a resource property that is “read-only” implying that a requestor may not use Web services message exchanges (such as the WS-ResourceProperties SetResourceProperties operation) to change the value of the resource property. Clearly, an implementation of a WS-Resource is likely to return a fault message if a requestor attempts to change the value of a “read-only” resource property. However, in the absence of additional metadata, there is no standard means by which the requestor can determine a priori that the resource property was not modifiable.
95 96 97 98 99 100
We refer to the concept of a WS-Resource Metadata Descriptor to describe a unit of metadata information associated with the interface components of a WS-Resource. We describe an information model that outlines the components of metadata and their relationships to interface description artifacts such as WSDL 1.1 portTypes and resource properties document schema definitions.
101 102 103 104 105 106 107 108 109
A WS-Resource Metadata Descriptor serves multiple purposes. The first is to provide additional information about the resource properties of a WS-Resource. For instance, indicating whether a resource property is changeable using Web services message exchanges such as the SetResourceProperties operation described in the WS-ResourceProperties specification [WSResourceProperties]. This aspect of the MetadataDescriptor is associated with the interface of the WS-Resource, and would not vary between different implementations of the interface. Information in the MetadataDescriptor provides clients of a WS-Resource the potential for greater understanding of the behavior of that WS-Resource.
110 111 112 113 114
The second purpose is to provide information about the value restrictions of the resource properties in the resource properties document for the WS-Resource. This additional information may be associated with implementations of the interface as well as with the WSDL interface definition. wsrf-ws_resource_metadata_descriptor-1.0-spec-cs-01.doc
Nov 9, 2006
Copyright © OASIS Open 2006. All Rights Reserved.
Page 5 of 46
115 116 117 118 119 120 121
The single portType that describes the manageability interface for a manageable resource type is derived from various other manageability portTypes. With WSDL 1.1, physically including, using copy and paste, the operations from each of these portTypes into the definition of the most derived portType achieves this inheritance. Each of the portTypes from which a manageable resource’s portType is derived may also have a MetadataDescriptor to augment its description. Each of the portTypes may have an optional attribute information item that references a MetadataDescriptor component by its namespace qualified name (QName).
122 123 124 125 126
This document standardizes the form of the WS-Resource MetadataDescriptor that contains metadata information about a WS-Resource’s interface so that clients of that interface may reason about implementations of the interface at both design time and run time. The syntax of a preferred XML serialization of the information model is also described.
127 128 129
A portion of the Global Grid Forum’s “Open Grid Services Infrastructure (OGSI) Version 1.0” specification [OGSI] inspired many of the concepts expressed in this document.
130 131
1.1 Goals and Requirements
132 133 134
The goal of this document is to define the terminology, concepts, information model and XML definitions needed to express the metadata requirements of WS-Resources, as defined by the [WS-Resource] specification.
135 136
1.1.1 Requirements
137
In meeting this goal, the specification MUST address the following specific requirements:
138 139
•
Define an information model representing metadata about resource properties associated with a WS-Resource interface.
140 141 142
•
Define a standard annotation for associating metadata descriptions with other description artifacts of the WS-Resource, particularly its WSDL 1.1 portType and its resource properties document definition.
143 144
•
Define the standard schema for representing the aspects of the information model.
145
1.1.2 Non-Goals
146
The following topics are outside the scope of this specification:
147 148
•
It is not an objective of this specification to define new message exchanges required to access the metadata from a WS-Resource.
149 150
•
It is not an objective of this specification to describe the means required to store the metadata for a WS-Resource.
wsrf-ws_resource_metadata_descriptor-1.0-spec-cs-01.doc
Nov 9, 2006
Copyright © OASIS Open 2006. All Rights Reserved.
Page 6 of 46
151
1.2 Terminology
152 153 154
The keywords "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in [RFC 2119].
155 156 157 158
When describing abstract data models, this specification uses the notational convention used by the [XML Infoset]. Specifically, abstract property names always appear in square brackets (e.g., [some property]).
159 160 161 162
This specification uses a notational convention, refered to as “Pseudo-schemas” in a fashion similar to the WSDL 2.0 Part 1 specification [WSDL 2.0]. A Pseudo-schema uses a BNF-style convention to describe attributes and elements:
163
`?' denotes optionality (i.e. zero or one occurrences),
164
`*' denotes zero or more occurrences,
165
`+' one or more occurrences,
166
`[' and `]' are used to form groups,
167
`|' represents choice.
168 169 170
Attributes are conventionally assigned a value which corresponds to their type, as defined in the normative schema.
171 172 173 174 175 176 177 178 179 180
<!-- sample pseudo-schema --> <element required_attribute_of_type_QName="xs:QName" optional_attribute_of_type_string="xs:string"? > <required_element /> <optional_element />? <one_or_more_of_these_elements />+ [ <choice_1 /> | <choice_2 /> ]* </element>
181 182 183 184 185 186
wsrf-ws_resource_metadata_descriptor-1.0-spec-cs-01.doc
Nov 9, 2006
Copyright © OASIS Open 2006. All Rights Reserved.
Page 7 of 46
187
1.3 Namespaces
188
The following namespaces are used in this document: Prefix
Namespace
xs
http://www.w3.org/2001/XMLSchema
wsdl
http://schemas.xmlsoap.org/wsdl
wsrf-rp
http://docs.oasis-open.org/wsrf/rp-2
wsrmd
http://docs.oasis-open.org/wsrf/rmd-1
189
wsrf-ws_resource_metadata_descriptor-1.0-spec-cs-01.doc
Nov 9, 2006
Copyright © OASIS Open 2006. All Rights Reserved.
Page 8 of 46
190
2 Terminology and Concepts
191 192
The following definitions outline the terminology and usage in this specification. This section gives only brief description of these terms.
193 194
Metadata:
195 196 197 198
•
199 200 201 202 203 204 205 206
Data about data. In practice, metadata comprises a structured set of descriptive elements to describe an information resource. Currently, only a WS-Resource’s resource properties have metadata definitions.
MetadataDescriptor: •
A unit of containment for resource property metadata for a WS-Resource’s interface; property metadata is defined by zero or more Property elements.
MetadataDescriptor Document: •
An XML instance document whose root is a Definitions element from the wsrmd namespace. This document contains definitions for zero or more MetadataDescriptor components.
wsrf-ws_resource_metadata_descriptor-1.0-spec-cs-01.doc
Nov 9, 2006
Copyright © OASIS Open 2006. All Rights Reserved.
Page 9 of 46
207
3 Example
208 209
In the following example there are “Operating System” WS-Resources whose values are projected from the implementation of the OperatingSystem portType.
210
3.1 The OperatingSystem portType
211 212 213 214 215
The OperatingSystem portType defines operations and a resource properties document that describes the Web services interface to operating system resource instances. As well as providing a mechanism for interacting with the operating system itself, this portType also describes properties, which represent the hardware of the underlying machine on which the operating system is running.
216 217 218 219 220 221
The OperatingSystem portType is derived from various other manageability portTypes – these illustrations use some of the function from the Identification manageability portType. As is required with WSDL 1.1, this derivation is achieved by physically including the definitions from each of these portTypes in the definition of the OperatingSystem portType. This “cut-and-paste” system of derivation is discussed further in [AppNotes].
222 223
The OperatingSystem portType is sketched as follows:
224 225 226 227 228 229 230 231 232 233
(01)
… xmlns:os=”http://example.com/ns/OperatingSystem”
(02)
… xmlns:id=”http://example.com/ns/Identification”
(03)
…
(04)
<portType name="OperatingSystem"
(05)
wsrf-rp:ResourceProperties="os:OSResourceProperties"
(06)
..wsrmd:Descriptor=”os:OperatingSystemMetadataDescriptor”
(07)
..wsrmd:DescriptorLocation=”http://example.com/OperatingSystem.wsrmd” >
(08)
…
(09)
</portType>
234 235 236
Line (04) contains a portType declaration for a portType named OperatingSystem in the namespace corresponding to the os: namespace prefix declaration.
237 238 239 240
Line (05) indicates the global XML element declaration of the root element of the resource properties document associated with any WS-Resource whose Web service implements the os:OperatingSystem portType.
241 242 243
Line (06) identifies that a MetadataDescriptor has been defined for this interface identified by the QName os:OperatingSystemMetadataDescriptor. wsrf-ws_resource_metadata_descriptor-1.0-spec-cs-01.doc
Nov 9, 2006
Copyright © OASIS Open 2006. All Rights Reserved.
Page 10 of 46
244 245 246 247
Line (07) - (07) indicate that information about MetadataDescriptors in the namespace corresponding to the os: namespace prefix declaration can be found by dereferencing http://example.com/OperatingSystem.wsrmd.
248
3.2 Operating System Properties
249 250 251
In the following example we define a subset of the resource properties of the operating system. Following that are the MetadataDescriptors for the Identification and Operating System portTypes.
252
3.2.1 Operating System Resource Property definitions
253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272
(10) (11)
… xmlns:os="…
(12) (13)
<element name="OSResourceProperties">
(14)
<complexType>
(15)
<sequence>
(16)
<element ref="id:ResourceType" minOccurs="0" maxOccurs="1"/>
(17)
<element ref="id:ResourceID" minOccurs="0" maxOccurs="1"/>
(18)
<element ref="os:numberOfProcesses" minOccurs="0" maxOccurs="1"/>
(19)
<element ref="os:totalSwapSpaceSize" minOccurs="0" maxOccurs="1"/>
(20)
<element ref="os:processor" minOccurs="1" maxOccurs="unbounded"/>
(21)
</sequence>
(22)
</complexType>
(23)
</element>
(24) (25)
<element name="numberOfProcesses" type="xsd:int" />
(26)
<element name="totalSwapSpaceSize" type="xsd:unsignedLong" />
(27)
<element name="processor" type="xsd:string" />
(28)
3.2.2 Identification Property definitions
273 274 275 276 277 278 279 280 281
(29)
<element name="IdentificationResourceProperties">
(30)
<complexType>
(31)
<sequence>
(32) (33)
<element ref="ResourceType" minOccurs="0" maxOccurs="1"/> <element ref="ResourceID" minOccurs="0" maxOccurs="1"/>
(34)
</sequence>
(35)
</complexType>
(36)
</element>
wsrf-ws_resource_metadata_descriptor-1.0-spec-cs-01.doc
Nov 9, 2006
Copyright © OASIS Open 2006. All Rights Reserved.
Page 11 of 46
282 283 284
(37) (38)
<element name="ResourceType" type="xs:string" />
(39)
<element name="ResourceID" type="xs:string" />
285
3.2.3 MetadataDescriptor for Identification portType
286 287 288
An example MetatdataDescriptor document for the Identification portType is included below. For the purposes of this example, this MetadataDescriptor document will be located at the URL http://example.com/metadataDescriptors/Identification.wsrmd.
289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307
(40) (41)
<Definitions
(42)
xmlns=”http://docs.oasis-open.org/wsrf/rmd-1”
(43)
xmlns:id=”http://example.com/ns/Identification”
(44) (45)
targetNamespace=”http://example.com/ns/Identification”> <MetadataDescriptor
(46)
name=”IdentificationMetadataDescriptor”
(47)
interface=”id:Identification”
(48)
wsdlLocation=”http://example.com/ns/Identification
(49)
http://example.com/wsdl/Identification.wsdl” >
(50)
<Property name=”id:ResourceID”
(51)
mutability=”constant”
(52)
modifiability=”read-only” />
(53)
<Property name=”id:ResourceType”
(54)
mutability=”constant”
(55) (56) (57)
modifiability=”read-only” /> </MetadataDescriptor> </Definitions>
308 309 310
Line (41) contains a Definitions element defining MetadataDescriptor elements for the target namespace identified in line (44).
311 312
There is one MetadataDescriptor element child of this Definitions element (lines (45)–(56)).
313 314 315
The name of the MetadataDescriptor is contained in line (46). This together with the namespace prefix declaration in line (43) corresponding to the targetNamespace of the Definitions element means the QName of the MetadataDescriptor is id:IdentificationMetadataDescriptor.
316 317 318 319 320
Line (47) identifies the QName of the portType (interface) with which this MetadataDescriptor is associated. The location of WSDL for the Identification portType is expressed in the wsdlLocation attribute in lines (48)-(49). This follows the pattern of the wsdli:wsdlLocation attribute defined in the WSDL 2.0 specification [WSDL 2.0]. wsrf-ws_resource_metadata_descriptor-1.0-spec-cs-01.doc
Nov 9, 2006
Copyright © OASIS Open 2006. All Rights Reserved.
Page 12 of 46
321 322 323 324 325 326 327 328
Lines (50)-(55) show two Property elements containing metadata information about resource properties defined in the resource properties document for the Identification portType. Lines (50)(52) contain the first Property element that references the QName of the id:ResourceID resource property. Line (51) indicates that the id:ResourceID resource property element will always have a constant value. Line (52) states that the id:ResourceID resource property is read-only, meaning that it cannot be changed by a requestor using Web services message exchanges such as the SetResourceProperties operation as defined in WS-ResourceProperties.
329 330 331 332
The second Property element, in lines (53)-(55), references the QName of the id:ResourceType resource property in line (53). This resource property element has the same metadata attributes as id:ResourceIdentifier.
333
3.2.4 MetadataDescriptor for OperatingSystem portType
334 335 336
For the purposes of this example the MetadataDescriptor document for the OperatingSystem portType is found at http://example.com metadataDescriptors/OperatingSystem.wsrmd.
337
The contents of the MetadataDescriptor for the OperatingSystem portType appear as follows:
338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360
(58)
<Definitions
(59)
xmlns=”http://docs.oasis-open.org/wsrf/rmd-1”
(60)
xmlns:id=”http://example.com/ns/Identification”
(61)
xmlns:os=”http://example.com/ns/OperatingSystem”
(62) (63)
targetNamespace=”http://example.com/ns/OperatingSystem”> <MetadataDescriptor
(64)
name=”OperatingSystemMetadataDescriptor”
(65)
interface=”os:OperatingSystem”
(66)
wsdlLocation=”http://example.com/ns/OperatingSystem
(67) (68) (69) (70) (71) (72) (73) (74)
http://example.com/wsdl/OperatingSystem.wsdl”> <Property name=”id:ResourceID” mutability=”constant” modifiability=”read-only” /> <Property name=”id:ResourceType mutability=”constant” modifiability=”read-only”> <ValidValues>
(75)
<id:ResourceType>SuSELinux</id:ResourceType>
(76)
<id:ResourceType>IBMzOS</id:ResourceType>
(77) (78) (79)
<id:ResourceType>MicrosoftWindows_XP</id:ResourceType> </ValidValues> </Property>
wsrf-ws_resource_metadata_descriptor-1.0-spec-cs-01.doc
Nov 9, 2006
Copyright © OASIS Open 2006. All Rights Reserved.
Page 13 of 46
361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381
(80)
<Property name="os:numberOfProcesses"
(81)
mutability="mutable"
(82) (83)
modifiability="read-only" /> <Property name=”os:processor”
(84)
mutability=”constant”
(85) (86)
modifiability=”read-only”> <ValidValues>
(87)
<os:processor>Pentium Family</os:processor>
(88)
<os:processor>Power PC 750</os:processor>
(89)
<os:processor>68xxxx Family</os:processor>
(90)
<os:processor>PA-RISC Family</os:processor>
(91)
<os:processor>Alpha Family<os:processor>
(92)
<os:processor>IBM390 Family</os:processor>"
(93)
<os:processor>G5</os:processor>
(94) (95) (96) (97) (98)
<os:processor>AMD<os:processor> </ValidValues> </Property> </MetadataDescriptor> </Definitions>
Lines (58) to (98) contain a Definitions element for the http://example.com/ns/OperatingSystem namespace.
382 383 384
Lines (63) to (98) contain the definition of the MetadataDescriptor with QName os:OperatingSystem MetadataDescriptor.
385 386
Line (65) indicates that this MetadataDescriptor corresponds to the OperatingSystem portType.
387 388 389
Lines (66)-(67) gives the location of the WSDL document that defines elements associated with the namespace URI associated with the os: prefix (i.e. the WSDL definitions element that defines the OperatingSystem portType).
390 391
Lines (68)-(96) contains the four properties described in this MetadataDescriptor example.
392 393
Lines (68) –(70) contain the ResourceID Property element copied from the id:IdentificationMetadataDescriptor describing the Identification portType.
394 395 396
Lines (71)-(79) contain the Property element describing the id:ResourceType resource property from the Identification portType. Lines (74)-(78) contain the set of ValidValues that the id:ResourceType resource property may contain.
397 398 399 400
Lines (80)-(82) contain the os:numberOfProcesses Property element which references the QName of the os:numberOfProcesses resource property. Line (81) indicates that the value of the os:numberOfProcesses may change over time. Line (82) indicates that, the wsrf-ws_resource_metadata_descriptor-1.0-spec-cs-01.doc
Nov 9, 2006
Copyright © OASIS Open 2006. All Rights Reserved.
Page 14 of 46
401 402 403
os:numberOfProcesses can not be changed by a requestor using Web services message exchanges such as the SetResourceProperties operation as defined in WS-ResourceProperties [WS-ResourceProperties].
404 405 406
The next Property element references the os:processor. The modifiability and mutability values indicate that the property is static – it will not change during the resource’s lifetime. Lines (87)(94) describe valid values for the os:processor.
wsrf-ws_resource_metadata_descriptor-1.0-spec-cs-01.doc
Nov 9, 2006
Copyright © OASIS Open 2006. All Rights Reserved.
Page 15 of 46
407
4 Logical Model for Metadata
408 409
The following figure shows a logical model depicting the relationship between the various elements of metadata description and those elements the metadata describes.
410 411 412
Figure 1 Logical Model of WS-Resource MetadataDescriptor
413 414 415
In our model, the unit of metadata containment is referred to as a MetadataDescriptor. A MetadataDescriptor is used to describe aspects of a WS-Resource’s interface, particularly those elements associated with the WS-Resource’s WSDL 1.1 portType.
416 417 418 419 420
A MetadataDescriptor contains metadata describing and/or constraining resource property elements as contained within a WS-Resource’s Resource Properties document type definition. Each resource property element is defined as an XML Schema global element, in some namespace.
wsrf-ws_resource_metadata_descriptor-1.0-spec-cs-01.doc
Nov 9, 2006
Copyright © OASIS Open 2006. All Rights Reserved.
Page 16 of 46
421
5 Information Model for WS-Resource Metadata
422 423 424 425 426
This section describes the information model for metadata describing/constraining the resource properties of WS-Resources. The model is a simple hierarchy – each WSDL portType references a Resource Metadata Descriptor document, and that file contains a Definitions element, which contains MetadataDescriptors, which contain Property elements. A UML diagram of this model is shown in the following figure:
427 428 429 430 431
Figure 2 - Information Model for WS-Resource Metadata Descriptor
We describe the Definitions, MetadataDescriptor, and Property components in the following sections. wsrf-ws_resource_metadata_descriptor-1.0-spec-cs-01.doc
Nov 9, 2006
Copyright © OASIS Open 2006. All Rights Reserved.
Page 17 of 46
432
6 Definitions Component
433 434 435
The Definitions component is a container for a set of MetadataDescriptor components (see section 7). The Definitions component defines a targetNamespace which forms the {namespace} property of all components it contains.
436 437
The properties of a Definitions component are as follows:
438 439
•
{targetNamespace} a namespace URI that applies as the {namespace} property to all [child] components.
440 441
•
{metadataDescriptors} a set of zero or more MetadataDescriptor components.
442 443 444 445 446 447 448 449 450
The following is an XML representation of the Definitions component: <Definitions targetNamespace=”xs:anyURI” {anyAttribute}* > <documentation />? <MetadataDescriptor /> * </Definitions>
451 452
The Definitions element information item has the following Infoset properties:
453
•
A [local name] of “Definitions”.
454
•
A [namespace name] of "http://docs.oasis-open.org/wsrf/rmd-1".
455
•
one or more attribute information items amongst its [attributes] as follows:
456
o
A REQUIRED targetNamespace attribute information item
457 458
The value of this attribute information item contains a URI that defines the {namespace} property of all [child] components.
459
The type of the targetNamespace attribute information item is xs:anyURI.
460 461 462 463
o
•
Zero or more namespace qualified attribute information items. The [namespace name] of such attribute information items MUST NOT be "http://docs.oasisopen.org/wsrf/rmd-1".
Zero or more element information items amongst its [children], in order as follows:
464
o
An OPTIONAL documentation element information item (See section 7).
465 466
o
Zero or more MetadataDescriptor element information items (See section 6.1).
467 468 wsrf-ws_resource_metadata_descriptor-1.0-spec-cs-01.doc
Nov 9, 2006
Copyright © OASIS Open 2006. All Rights Reserved.
Page 18 of 46
470
6.1 MetadataDescriptor components within a Definitions component
471 472 473 474 475
All MetadataDescriptor components defined in a given namespace MUST appear as [children] of a Definitions component with {targetNamespace} value the same URI as that namespace. All MetadataDescriptor components MUST be uniquely named, implying that the {name} property of the MetadataDescriptor component MUST be unique amongst the {metadataDescriptors} of a Definitions component.
469
wsrf-ws_resource_metadata_descriptor-1.0-spec-cs-01.doc
Nov 9, 2006
Copyright © OASIS Open 2006. All Rights Reserved.
Page 19 of 46
476
7 MetadataDescriptor Component
477 478 479 480 481 482 483
The MetadataDescriptor component is a container for a set of metadata descriptions and constraints on a WS-Resource. The MetadataDescriptor component contains additional information that describes or constrains various aspects of a WS-Resource. For example, it provides additional information about the interface of the WS-Resource relevant to the management of the resource. In particular, it allows tools and applications, such as management applications, to be able to reason in detail about the WS-Resource both at runtime and at development time when no instances of the WS-Resource are available.
484 485
The properties of a MetadataDescriptor component are as follows:
486
•
{name} a name of a MetadataDescriptor component.
487
•
{namespace} a namespace URI of the MetadataDescriptor component.
488 489
•
{QName} a combination of the {name} and {namespace} of the MetadataDescriptor component.
490 491
•
{interface} a QName identifying a Web services interface definition with which this MetadataDescriptor is associated.
492 493 494
•
{wsdlLocation} a set of URI pairs, each pair associating a namespace URI with a URL of a document containing a WSDL definition of that namespace. This is a similar mechanism to that used in WSDL 2.0 [WSDL2.0].
495
•
{properties} A set of zero or more Property components
496 497
The following is an XML representation of the MetadataDescriptor component:
498 499 500 501 502 503 504 505 506 507
<MetadataDescriptor name=”xs:NCName” interface=”xs:QName” wsdlLocation=”list of xs:anyUri”? {anyAttribute}* > <documentation /> ? <Property /> * {any}* </MetadataDescriptor>
508 509 510
The MetadataDescriptor element information item has the following Infoset properties:
511
•
A [local name] of “MetadataDescriptor” .
512
•
A [namespace name] of "http://docs.oasis-open.org/wsrf/rmd-1".
wsrf-ws_resource_metadata_descriptor-1.0-spec-cs-01.doc
Nov 9, 2006
Copyright © OASIS Open 2006. All Rights Reserved.
Page 20 of 46
513
•
514
two or more attribute information items amongst its [attributes] as follows: o
A REQUIRED name attribute information item
515 516
The value of this attribute information item contains the name of this MetadataDescriptor component.
517
The type of the name attribute information item is xs:NCName.
518
o
A REQUIRED interface attribute information item
519 520 521
The value of this attribute information item contains a QName of a WSDL 1.1 portType element or WSDL 2.0 interface element associated with this MetadataDescriptor component.
522
The type of the interface attribute information item is xs:QName.
523
o
An OPTIONAL wsdlLocation attribute information item
524 525 526 527 528 529
The value of this attribute information item contains a list of pairs of URIs; where the first URI of the pair, which MUST be an absolute URI as defined in [URI], indicates a WSDL namespace name, and, the second a hint as to the location of a WSDL document defining WSDL components for that namespace name. The second URI of a pair MAY be absolute or relative.
530 531
The type of the wsdlLocation attribute information item is list of xs:anyURI.
532 533 534 535
o
•
Zero or more namespace qualified attribute information items. The [namespace name] of such attribute information items MUST NOT be "http://docs.oasisopen.org/wsrf/rmd-1".
Zero or more element information items amongst its [children], in order as follows:
536
o
An OPTIONAL documentation element information item (See section 9).
537
o
Zero or more Property element information items (See section 8)
538 539 540
o
Zero or more namespace-qualified element information items. The [namespace name] of such element information items MUST NOT be "http://docs.oasisopen.org/wsrf/rmd-1".
541
7.1 Properties component of a MetadataDescriptor
542 543 544 545
The {properties} of a MetadataDescriptor contains a set of Property components, defining additional metadata and constraints on resource property elements (and attributes) associated with a MetadataDescriptor. The definition of a Property component’s scope is contained in Section Error! Reference source not found..
wsrf-ws_resource_metadata_descriptor-1.0-spec-cs-01.doc
Nov 9, 2006
Copyright © OASIS Open 2006. All Rights Reserved.
Page 21 of 46
546
8 Property Component
547 548 549
The Property component is a container for a set of metadata descriptions and constraints on a specific Resource Property element or attribute thereof. The properties of a Property component are as follows:
550 551
•
{name} an identifier of the XML element to which the Property component applies. This is defined as a resource property’s QName.
552
•
{mutability} an xs:string enumeration of “constant”, “appendable”, or “mutable”.
553
•
{modifiability} an xs:string enumeration of “read-only” or “read-write”.
554 555
•
{subscribability} an xs:boolean indicating, if true, that the Resource Property element associated with the {name} can be the target of a subscription.
556 557
•
{validValues} optional choice of one ValidValues component or one ValidValueRange component.
558
•
{staticValues} optional choice of one StaticValues component.
559
•
{initialValues} optional choice of one InitialValues component.
560
•
{attributes} zero or more Attribute components.
561 562 563 564
A Property component MAY also contain additional “extension” components added using the extensibility mechanism defined by this specification.The following is an XML representation of the Property component:
565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581
<Property name=”xs:QName” mutability=”[constant|appendable|mutable]” ? modifiability=”[read-only|read-write]” ? subscribability=”xs:boolean” ? {anyAttribute}* > <documentation />? [ <ValidValues> {any}* </ValidValues> | <ValidValueRange lowerBound="xs:anySimpleType"? upperBound="xs:anySimpleType"? /> ] ? <StaticValues> {any}* </StaticValues> ? <InitialValues> {any}* </InitialValues> ? {any}* </Property>
582 583
The Property element information item has the following Infoset properties: wsrf-ws_resource_metadata_descriptor-1.0-spec-cs-01.doc
Nov 9, 2006
Copyright © OASIS Open 2006. All Rights Reserved.
Page 22 of 46
584
•
A [local name] of “Property” .
585
•
A [namespace name] of "http://docs.oasis-open.org/wsrf/rmd-1".
586
•
one or more attribute information items amongst its [attributes] as follows:
587
o
594
A REQUIRED name attribute information item
588 589 590 591 592 593 o
The value of this attribute information item MUST contain a QName of the Resource Property (an XML Schema global element definition) contained within the Resource Properties document associated with the portType or interface identified by {interface}. The Resource Property element MUST conform to the requirements specified for Resource Property declarations in WS-ResourceProperties.
An OPTIONAL mutability attribute information item
595 596
The value of this attribute information item expresses how the value of the {name} can change over time.
597 598
The type of the mutability attribute information item is an xs:string restricted to the following enumeration: •
599
“constant”
600 601
The values of the {name} MUST NOT change after WSResource creation. •
602
“mutable”
603 604 605
The values of the {name} MAY change at any time during the lifetime of the WS-Resource. Existing values MAY be removed and new values MAY be added. •
606
“appendable”
607 608 609
The values of the {name} MAY have new values added during the lifetime of the WS-Resource. Once added those values MUST NOT be removed.
610 611 612
o
If the mutability attribute information item is not defined, the value of the mutability property is “unknown”.
An OPTIONAL modifiability attribute information item
613 614
The value of this attribute information item indicates whether a requestor can modify the value of the {name}.
615 616
The type of the modifiability attribute information item is an xs:string restricted to the following enumeration:
617 618 619 620
•
“read-only” – The value of the {name} can not be changed by Web services message exchanges such as the SetResourceProperty message as defined in WSResourceProperties.
621 622
•
“read-write” – The value of the {name} MAY be changed by Web services message exchanges such as the SetResourceProperty
wsrf-ws_resource_metadata_descriptor-1.0-spec-cs-01.doc
Nov 9, 2006
Copyright © OASIS Open 2006. All Rights Reserved.
Page 23 of 46
623 624 625 626
message as defined in WS-ResourceProperties. Note - If the value of the modifiability attribute information item is “read-write” then the value of the mutability attribute information item MUST NOT be “constant”.
627 628 629
o
An OPTIONAL subscribability attribute information item
630 631 632 633 634 635 636 637 638 639
o
•
If the modifiability attribute information item is not defined, the value of the modifiability property is “unknown”. The value of this attribute information item expresses whether the Resource Property element associated with the {name} can be the target of a subscription. The default value is “false”. Note: The actual subscription semantics are dependent on whatever notification mechanism, if any, (such as WS-BaseNotification [WS-BaseNotification]) is supported.
Zero or more namespace qualified attribute information items. The [namespace name] of such attribute information items MUST NOT be "http://docs.oasisopen.org/wsrf/rmd-1".
Zero or more element information items amongst its [children], in order as follows:
640
o
An OPTIONAL documentation element information item (See section 9).
641
o
An OPTIONAL element information item from among the following:
642
o
A ValidValues element information item (See section 8.2)
643
o
A ValidValueRange element information item (See section 8.3)
644
o
An OPTIONAL StaticValues element information item (See section 8.4)
645
o
An OPTIONAL InitialValues element information item (See section 8.5)
646 647 648
o
Zero or more namespace-qualified element information items. The [namespace name] of such element information items MUST NOT be "http://docs.oasisopen.org/wsrf/rmd-1".
649
8.1 XML Schema value space and {validValues}
650 651 652 653 654 655 656 657 658 659
When creating a resource property (ie defining an XML Global Element), the XML Schema designer defines the semantic of the property and uses XML Schema to express the value space of the resource property (based on the semantics of the property) and all of its descendant element information items and attribute information items. This is a different concept from what is expressed by defining the {validValues}. When specifying {validValues} in a metadata description, one does not redefine the semantic of the {name} nor its value space. Specifying {validValues} expresses constraints on the value space that are appropriate for the specific use of the {name}. This distinction should guide designers in deciding whether to use XML Schema mechanisms or a metadata description to restrict value space of a {name}. The value space defined by {validValues} for a {name} MUST be contained within the XML Schema definition of the {name}.
wsrf-ws_resource_metadata_descriptor-1.0-spec-cs-01.doc
Nov 9, 2006
Copyright © OASIS Open 2006. All Rights Reserved.
Page 24 of 46
660
8.2 ValidValues
661 662
The purpose of the ValidValues component is to restrict the set of valid values that a [parent] Property component’s {name} may contain.
663 664 665 666 667
If the {validValues} of a Property component is not empty, and contains a ValidValues description, then any Web service that implements the portType or interface identified by {interface} MUST ensure that the value(s) of the {name} of the [parent] Property component MUST correspond to one of the values enumerated within the set of {validValues}.
668 669 670
Note: because the child element information items of a ValidValues element information item are XML fragments, it is not required that these fragments be validated (processContents is “skip”). .
671
The properties of a ValidValues component are as follows.
672 673 674 675 676 677 678 679 680 681 682
•
{values} zero or more XML fragments that correspond to the type of the [parent] Property component’s {name}.
The following is an XML representation of the ValidValues component: <ValidValues {anyAttribute}* > <documentation />? {any}* </ValidValues>
683 684
The ValidValues element information item has the following Infoset properties:
685
•
A [local name] of “ValidValues” .
686
•
A [namespace name] of "http://docs.oasis-open.org/wsrf/rmd-1".
687
•
zero or more attribute information items amongst its [attributes] as follows:
688 689 690 691
o
•
Zero or more namespace qualified attribute information items. The [namespace name] of such attribute information items MUST NOT be "http://docs.oasisopen.org/wsrf/rmd-1".
Zero or more element information items amongst its [children], either:
692
o
An OPTIONAL documentation element information item (See section 9).
693 694 695
o
Zero or more namespace-qualified element information items. The [namespace name] of such element information items MUST NOT be "http://docs.oasisopen.org/wsrf/rmd-1".
wsrf-ws_resource_metadata_descriptor-1.0-spec-cs-01.doc
Nov 9, 2006
Copyright © OASIS Open 2006. All Rights Reserved.
Page 25 of 46
696 697 698
Each element information item MUST be an XML fragment that corresponds to the type of the XML element identified by the [parent] Property component’s {name}
699 700 701
Note, because these are XML fragments, it is not expected that a processor of a MetadataDescriptor document would need to validate these element information items (processContents = “skip”).
702 703
o
Zero or more character information items.
704
8.3 ValidValueRange
705 706 707 708 709
The ValidValueRange component is an alternative mechanism to specify the set of ValidValues for the [parent] Property component’s {name}. Unlike the ValidValues component, which specifies an enumeration of values, the ValidValueRange restricts the set of valid values for a {name} by specifying a range of possible values. This mechanism can only be used when the {name} is an XML element of simpleType.
710 711 712 713 714 715 716
ValidValueRange defines an optional inclusive lower bound of the range and optional inclusive upper bound of the range. Both MAY be specified. At least one MUST be specified. The values of the lower bound and upper bound (if specified) MUST correspond to the value space definition of the {name}. If the {lowerBound} of this attribute information is NOT specified, its default value is defined by the lowest possible value defined for the value space of the {name} or “undefined”. Similarly the default value of {upperBound} is the largest value for the value space of the {name} or “undefined”.
717 718 719 720 721
If the {validValues} of a Property component is not empty and contains a ValidValueRange description, then any Web service that implements the portType or interface identified by {interface} MUST ensure that the value(s) of the resource property as identified by the {name} of the Property component MUST correspond to a value within the range specified by {validValues}.
722 723
The properties of a ValidValueRange component are as follows:
724 725
•
{lowerBound} the (inclusive) lower bound of the value space defined by this component for the [parent] Property component’s {name}.
726 727
•
{upperBound} the (inclusive) upper bound of the value space defined by this component for the [parent] Property component’s {name}.
728 729 730
•
{range} a range of values, bounded by the values of {lowerBound} and {upperBound}. The values within {range} MUST be compliant with any value space constraints specified on the type definition of the [parent] Property component’s {name}.
731 732
The following is an XML representation of the ValidValues component:
733
wsrf-ws_resource_metadata_descriptor-1.0-spec-cs-01.doc
Nov 9, 2006
Copyright © OASIS Open 2006. All Rights Reserved.
Page 26 of 46
734 735 736 737 738 739
<ValidValueRange lowerBound="xs:anySimpleType" ? upperBound="xs:anySimpleType" ? {anyAttribute}* > <documentation />? {any}* </ValidValueRange>
740 741
The ValidValueRange element information item has the following Infoset properties:
742
•
A [local name] of “ValidValueRange” .
743
•
A [namespace name] of "http://docs.oasis-open.org/wsrf/rmd-1".
744
•
one or more attribute information items amongst its [attributes] as follows:
745
o
one or more attribute information items amongst:
746
An OPTIONAL lowerBound attribute information item
747 748 749
•
The value of this attribute information item defines an inclusive lower bound on the range of valid values to apply to the [parent] Property component’s {name}.
750 751 752
•
The type of the lowerBound attribute information item is an xs:anySimpleType. This type MUST correspond to the type of the [parent] Property component’s {name}.
753 754 755
•
The value of this attribute information item MUST conform to any value space constraints specified on the type definition of the [parent] Property component’s {name}.
756
An OPTIONAL upperBound attribute information item
757 758 759
•
The value of this attribute information item defines an inclusive upper bound on the range of valid values to apply to the [parent] Property component’s {name}.
760 761 762
•
The type of the upperBound attribute information item is an xs:anySimpleType. This type MUST correspond to the type of the [parent] Property component’s {name}.
763 764 765
•
The value of this attribute information item MUST conform to any value space constraints specified on the type definition of the [parent] Property component’s {name}.
766 767 768 769 770
o
•
Zero or more namespace qualified attribute information items. The [namespace name] of such attribute information items MUST NOT be "http://docs.oasisopen.org/wsrf/rmd-1".
Zero or more element information items amongst its [children], in order as follows: o
An OPTIONAL documentation element information item (See section 9).
wsrf-ws_resource_metadata_descriptor-1.0-spec-cs-01.doc
Nov 9, 2006
Copyright © OASIS Open 2006. All Rights Reserved.
Page 27 of 46
771 772 773
o
Zero or more namespace-qualified element information items. The [namespace name] of such element information items MUST NOT be "http://docs.oasisopen.org/wsrf/rmd-1".
774 775
8.4 StaticValues
776 777
The purpose of the StaticValues component is to define the minimum set of values that a [parent] Property component’s {name} must contain.
778 779 780 781
If the {staticValues} of a Property component is not empty, any Web service that implements the portType or interface identified by {interface} MUST ensure that all the value(s) defined in {staticValues} appear in the {name}.
782 783 784 785 786
The values contained in a StaticValues component MUST conform to the XML Schema definition of the {name}. Note: because the child element information items of a StaticValues element information item are XML fragments, it is not required that these fragments be validated (processContents is “skip”).
787 788
The properties of a StaticValues component are as follows:
789 790
•
{values} zero or more XML fragments that correspond to the type of the [parent] Property component’s {name}.
791 792
•
The number of XML fragments within {values} MUST NOT be greater than the maxOccurs facet of the schema declaration target of the {name}.
793 794
The following is an XML representation of the StaticValues component:
795 796 797 798 799 800
<StaticValues {anyAttribute}* > <documentation />? {any}* </StaticValues>
801 802
The StaticValues element information item has the following Infoset properties:
803
•
A [local name] of “StaticValues” .
804
•
A [namespace name] of "http://docs.oasis-open.org/wsrf/rmd-1".
805
•
zero or more attribute information items amongst its [attributes] as follows:
wsrf-ws_resource_metadata_descriptor-1.0-spec-cs-01.doc
Nov 9, 2006
Copyright © OASIS Open 2006. All Rights Reserved.
Page 28 of 46
806 807 808 809
o
•
Zero or more namespace qualified attribute information items. The [namespace name] of such attribute information items MUST NOT be "http://docs.oasisopen.org/wsrf/rmd-1".
Zero or more element information items amongst its [children], either:
810
o
An OPTIONAL documentation element information item (See section 9).
811 812 813
o
Zero or more namespace-qualified element information items. The [namespace name] of such element information items MUST NOT be "http://docs.oasisopen.org/wsrf/rmd-1".
814 815 816
Each element information item MUST be an XML fragment that corresponds to the type of the XML element identified by the [parent] Property component’s {name}
817 818 819
Note, because these are XML fragments, it is not expected that a processor of a MetadataDescriptor document would need to validate these element information items (processContents = “skip”).
820 821
8.5 InitialValues
822 823 824 825 826 827 828
The purpose of the InitialValues component is to define the set of values that a [parent] Property component’s {name} will contain when a WS-Resource becomes available for the first time. If the {initialValues} of a Property component is not empty, any Web service that implements the portType or interface identified by {interface} MUST ensure that all the value(s) defined in {initialValues} appear in the {name} when the service comes online. There is no guarantee as to how long these values will be present before they are modified; they are different from values defined in {staticValues} because they are mutable.
829 830 831 832 833
The values contained in a InitialValues component MUST conform to the XML Schema definition of the {name}. Note: because the child element information items of a InitialValues element information item are XML fragments, it is not required that these fragments be validated (processContents is “skip”).
834 835
The properties of a InitialValues component are as follows:
836 837
•
{values} zero or more XML fragments that correspond to the type of the [parent] Property component’s {name}.
838 839
•
The number of XML fragments within {values} MUST NOT be greater than the maxOccurs facet of the schema declaration target of the {name}.
840 841
The following is an XML representation of the InitialValues component:
842 843 wsrf-ws_resource_metadata_descriptor-1.0-spec-cs-01.doc
Nov 9, 2006
Copyright © OASIS Open 2006. All Rights Reserved.
Page 29 of 46
844 845 846 847 848
<InitialValues {anyAttribute}* > <documentation />? {any}* </ InitialValues>
849 850
The InitialValues element information item has the following Infoset properties:
851
•
A [local name] of “InitialValues” .
852
•
A [namespace name] of "http://docs.oasis-open.org/wsrf/rmd-1".
853
•
zero or more attribute information items amongst its [attributes] as follows:
854 855 856 857
o
•
Zero or more namespace qualified attribute information items. The [namespace name] of such attribute information items MUST NOT be "http://docs.oasisopen.org/wsrf/rmd-1".
Zero or more element information items amongst its [children], either:
858
o
An OPTIONAL documentation element information item (See section 9).
859 860 861
o
Zero or more namespace-qualified element information items. The [namespace name] of such element information items MUST NOT be "http://docs.oasisopen.org/wsrf/rmd-1".
862 863 864
Each element information item MUST be an XML fragment that corresponds to the type of the XML element identified by the [parent] Property component’s {name}
865 866 867
Note, because these are XML fragments, it is not expected that a processor of a MetadataDescriptor document would need to validate these element information items (processContents = “skip”).
868
wsrf-ws_resource_metadata_descriptor-1.0-spec-cs-01.doc
Nov 9, 2006
Copyright © OASIS Open 2006. All Rights Reserved.
Page 30 of 46
869
9 Documentation Component
870 871 872 873 874 875
The WS-Resource Metadata MetadataDescriptor specification uses the documentation element information item as a container for human readable and/or machine processable documentation in a fashion similar to that defined for WSDL 2.0 [WSDL 2.0]. The content of the element information item is "mixed" content as defined in XML Schema [XML Schema]. The documentation element information item may be contained by any element information item defined in this specification.
876 877
The following is an XML representation of the Documentation component:
878 879 880 881
<documentation {anyAttribute}* > {any} * </documentation>
882 883
The documentation element information item contains the following:
884
•
A [local name] of “documentation”.
885
•
A [namespace name] of "http://docs.oasis-open.org/wsrf/rmd-1".
886
•
Zero or more attribute information items.
887 888 889 890
o
•
Zero or more namespace qualified attribute information items. The [namespace name] of such attribute information items MUST NOT be "http://docs.oasisopen.org/wsrf/rmd-1".
Zero or more child element information items amongst its [children].
891 892
10 Obtaining a MetadataDescriptor Document
893 894
There are two mechanisms that a requestor can use to obtain a WS-Resource MetadataDescriptor document:
895
1. A specific attribute extension to WSDL 1.1 portType definition
896 897
2. A specific Resource Property element.
898
10.1 Extending WSDL 1.1 PortType
899 900 901 902
A WS-Resource MetadataDescriptor document is associated with a WSDL 1.1 portType definition using an extension of the WSDL 1.1 portType element information item. If any aspect of the portType is associated with a MetadataDescriptor document, then the portType element MUST be extended in the manner described below. This extension is described as follows:
903 wsrf-ws_resource_metadata_descriptor-1.0-spec-cs-01.doc
Nov 9, 2006
Copyright © OASIS Open 2006. All Rights Reserved.
Page 31 of 46
904 905 906 907 908 909 910 911 912
<wsdl:definitions …> <wsdl:portType … wsrmd:Descriptor=”xs:QName”? wsrmd:DescriptorLocation=”xs:anyURI”? … > … </wsdl:portType>
913 914
This definition is further constrained as follows:
915
/wsdl:portType/@wsrmd:Descriptor
916 917 918 919 920 921 922 923 924 925 926 927
If this attribute appears on a WSDL 1.1 portType element its value MUST be a QName that corresponds to a MetadataDescriptor component. Further, the value of the MetadataDescriptor component contained in that document MUST have {interface} that matches the QName of the portType containing @wsrmd:Descriptor. Any service that implements this portType MUST be associated with a MetadataDescriptor that is identified by the value of this attribute. /wsdl:portType/@wsrmd:DescriptorLocation If this attribute appears on a WSDL 1.1 portType element its value MUST be a URI. The URI corresponds to a URL at which can be found more information about that MetadataDescriptor namespace, such as an XML document containing a Definitions element as its root element.
929
10.2 Using Resoure Property Elements to expose MetadataDescriptors
930 931 932 933 934
Clients may find and read the wsrmd:MetadataDescriptor of a WS-resource using a “metadata WS-resource” that is associated with the resource. The purpose of the metadata WS-resource is to expose a metadata document via its resource properties document. The endpoint reference of the metadata WS-resource is of type wsrmd:MetadataDescriptorReference and is exposed in the original WS-resource’s resource property document; the form of this resource property is:
928
935 936 937
<xsd:element name="MetadataDescriptorReference" type="wsrmd:MetadataDescriptorReferenceType"/>
938 939
The constraints on this element are as follows:
940 wsrf-ws_resource_metadata_descriptor-1.0-spec-cs-01.doc
Nov 9, 2006
Copyright © OASIS Open 2006. All Rights Reserved.
Page 32 of 46
941 942 943 944 945 946 947 948
/wsrmd:MetadataDescriptorReference This element is an wsa:EndpointReference to a "metadata WS-Resource" associated with the target WS-Resource. This metadata WS-Resource has a resource properties document that is equivalent in content to the metadata descriptor document of the target WS-Resource. The metadata WS-Resource MUST restrict its resource properties document such that the cardinality of the wsrmd:MetadataDescriptor child elements is one rather than zero-to-many. This allows for a single wsrmd:MetadataDescriptor to describe each WS-Resource instance.
949 950 951
wsrf-ws_resource_metadata_descriptor-1.0-spec-cs-01.doc
Nov 9, 2006
Copyright © OASIS Open 2006. All Rights Reserved.
Page 33 of 46
952
11 References
953
11.1 Normative
954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978
[RFC2119]
S. Bradner, Key words for use in RFCs to Indicate Requirement Levels, http://www.ietf.org/rfc/rfc2119.txt, IETF RFC 2119, March 1997. [URI] T. Berners-Lee, R. Fielding, L. Masinter, "Uniform Resource Identifiers (URI): Generic Syntax," RFC 2396, MIT/LCS, U.C. Irvine, Xerox Corporation, August 1998. [WS-Addressing] http://www.w3.org/2005/08/addressing.pdf [WS-BaseNotification] http://docs.oasis-open.org/wsn/wsn-ws_base_notification-1.3spec-pr-02.pdf [WS-Resource] http://docs.oasis-open.org/wsrf/wsrf-ws_resource-1.2-spec-pr02.pdf [WS-ResourceProperties] http://docs.oasis-open.org/wsrf/wsrf-ws_resource_properties-1.2spec-pr-02.pdf [XML-Infoset] W3C Recommendation “XML Information Set”. Available at http://www.w3.org/TR/xml-infoset/ [XML-Names] W3C Recommendation “Namespaces in XML”. Available at http://www.w3.org/TR/REC-xml-names/
11.2 Non-Normative [WSDL2.0]
W3C Recommendation “Web Services Description Language” Available at http://www.w3.org/TR/wsdl20/
[AppNotes]
http://www.oasisopen.org/apps/org/workgroup/wsrf/download.php/16355/wsrfapplication_notes-1.2-notes-pr-02.pdf
wsrf-ws_resource_metadata_descriptor-1.0-spec-cs-01.doc
Nov 9, 2006
Copyright © OASIS Open 2006. All Rights Reserved.
Page 34 of 46
979
Appendix A. Acknowledgments
980 981
The following individuals were members of the committee during the development of this specification:
982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998
Mario Antonioletti (EPCC, The University of Edinburgh), Akhil Arora (Sun Microsystems), Tim Banks (IBM), Jeff Bohren (OpenNetwork), Fred Carter (AmberPoint), Martin Chapman (Oracle), Glen Daniels (Sonic Software), David De Roure (University of Southampton), Thomas Freund (IBM), John Fuller (Individual), Stephen Graham (IBM), Anish Karmarkar (Oracle), Hideharu Kato (Hitachi), David Levine (IBM), Paul Lipton (Computer Associates), Mark Little (Arjuna Technologies Limited), Lily Liu (WebMethods, Inc.), Tom Maguire (IBM), Susan Malaika (IBM), Mark Mc Keown (University of Manchester), David Martin (IBM), Samuel Meder (Argonne National Laboratory), Jeff Mischkinsky (Oracle), Roger Menday (Forschungszentrum Jlich GmbH), Bryan Murray (Hewlett-Packard), Mark Peel (Novell), Alain Regnier (Ricoh Company, Ltd.), Ian Robinson (IBM), Tom Rutt (Fujitsu), Mitsunori Satomi (Hitachi), Igor Sedukhin (Computer Associates), Hitoshi Sekine (Ricoh Company, Ltd.), Frank Siebenlist (Argonne National Laboratory), Alex Sim (Lawrence Berkeley National Laboratory), David Snelling (Fujitsu), Latha Srinivasan (Hewlett-Packard), Rich Thompson (IBM), Jem Treadwell (Hewlett-Packard), Steve Tuecke (Argonne National Laboratory), William Vambenepe (Hewlett-Packard), Katy Warr (IBM), Alan Weissberger (NEC Corporation), Pete Wenzel (SeeBeyond Technology Corporation), Kirk Wilson (Computer Associates) and Umit Yalcinalp (SAP).
999 1000
wsrf-ws_resource_metadata_descriptor-1.0-spec-cs-01.doc
Nov 9, 2006
Copyright © OASIS Open 2006. All Rights Reserved.
Page 35 of 46
1002
Appendix B. XML Schema for WSResourceMetadataDescriptor
1003
The XML types and elements used in this specification are defined in the following XML Schema.
1001
1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029
<?xml version="1.0" encoding="UTF-8"?> <!--
OASIS takes no position regarding the validity or scope of any intellectual property or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; neither does it represent that it has made any effort to identify any such rights. Information on OASIS's procedures with respect to rights in OASIS specifications can be found at the OASIS website. Copies of claims of rights made available for publication and any assurances of licenses to be made available, or the result of an attempt made to obtain a general license or permission for the use of such proprietary rights by implementors or users of this specification, can be obtained from the OASIS Executive Director. OASIS invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights which may cover technology that may be required to implement this specification. Please address the information to the OASIS Executive Director. Copyright (C) OASIS Open (2005-2006). All Rights Reserved.
wsrf-ws_resource_metadata_descriptor-1.0-spec-cs-01.doc
Nov 9, 2006
Copyright © OASIS Open 2006. All Rights Reserved.
Page 36 of 46
1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072
This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to OASIS, except as needed for the purpose of developing OASIS specifications, in which case the procedures for copyrights defined in the OASIS Intellectual Property Rights document must be followed, or as required to translate it into languages other than English. The limited permissions granted above are perpetual and will not be revoked by OASIS or its successors or assigns. This document and the information contained herein is provided on an "AS IS" basis and OASIS DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
--> <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.w3.org/2001/XMLSchema" xmlns:wsa="http://www.w3.org/2005/08/addressing" xmlns:wsrf-rp="http://docs.oasis-open.org/wsrf/rp-2" targetNamespace="http://docs.oasis-open.org/wsrf/rmd-1" xmlns:wsrmd="http://docs.oasis-open.org/wsrf/rmd-1" elementFormDefault="qualified"> <xsd:import namespace="http://docs.oasis-open.org/wsrf/rp-2" schemaLocation="http://docs.oasis-open.org/wsrf/rp-2.xsd" /> <xsd:import namespace="http://www.w3.org/2005/08/addressing" schemaLocation="http://www.w3.org/2005/08/addressing.xsd" />
wsrf-ws_resource_metadata_descriptor-1.0-spec-cs-01.doc
Nov 9, 2006
Copyright © OASIS Open 2006. All Rights Reserved.
Page 37 of 46
1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115
<!-- ======================== Utility Types ======================= --> <xsd:simpleType name="PairsOfURIType"> <xsd:list itemType="xsd:anyURI" /> </xsd:simpleType> <!-- ================ PortType Attribute Extensions ================ -> <xsd:attribute name="Descriptor" type="xsd:QName" /> <xsd:attribute name="DescriptorLocation" type="xsd:anyURI" /> <!-- ================= Documentation Component ==================== --> <xsd:complexType name="DocumentationType" mixed="true" > <xsd:sequence> <xsd:any namespace="##any" minOccurs="0" maxOccurs="unbounded" processContents="lax" /> </xsd:sequence> <xsd:anyAttribute/> </xsd:complexType> <xsd:complexType name="DocumentedType"> <xsd:sequence> <xsd:element name="documentation" type="wsrmd:DocumentationType" minOccurs="0" maxOccurs="1" /> </xsd:sequence> </xsd:complexType> <!-- ================== Definitions Component ===================== --> <!-<Definitions targetNamespace=”xsd:anyURI” {anyAttribute}* > <documentation />? <MetadataDescriptor /> * {any}* </Definitions> --> <xsd:complexType name= "DefinitionsType" >
wsrf-ws_resource_metadata_descriptor-1.0-spec-cs-01.doc
Nov 9, 2006
Copyright © OASIS Open 2006. All Rights Reserved.
Page 38 of 46
1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135 1136 1137 1138 1139 1140 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 1157 1158
<xsd:complexContent> <xsd:extension base="wsrmd:DocumentedType"> <xsd:sequence> <xsd:element ref="wsrmd:MetadataDescriptor" minOccurs="0" maxOccurs="unbounded" /> <xsd:any namespace="##other" minOccurs="0" maxOccurs="unbounded" processContents="lax" /> </xsd:sequence> <xsd:attribute name="targetNamespace" type="xsd:anyURI" use="required"/> <xsd:anyAttribute namespace="##other" processContents="lax"/> </xsd:extension> </xsd:complexContent> </xsd:complexType> <xsd:element name="Definitions" type="wsrmd:DefinitionsType" > <xsd:key name="MetadataDescriptor"> <xsd:annotation> <xsd:documentation> To form a QName, the name of any MetadataDescriptor must be unique within a Definitions element. </xsd:documentation> </xsd:annotation> <xsd:selector xpath="wsrmd:MetadataDescriptor" /> <xsd:field xpath="@name" /> </xsd:key> </xsd:element> <!-- =============== MetadataDescriptor Component =================== -> <!-<MetadataDescriptor name=”xsd:NCName” interface=”xsd:QName” wsdlLocation=”list of xsd:anyUri”? {anyAttribute}* > <documentation />? <Property /> * {any}* </MetadataDescriptor>
wsrf-ws_resource_metadata_descriptor-1.0-spec-cs-01.doc
Nov 9, 2006
Copyright © OASIS Open 2006. All Rights Reserved.
Page 39 of 46
1159 1160 1161 1162 1163 1164 1165 1166 1167 1168 1169 1170 1171 1172 1173 1174 1175 1176 1177 1178 1179 1180 1181 1182 1183 1184 1185 1186 1187 1188 1189 1190 1191 1192 1193 1194 1195 1196 1197 1198 1199 1200 1201
--> <xsd:complexType name= "MetadataDescriptorType" > <xsd:complexContent> <xsd:extension base="wsrmd:DocumentedType"> <xsd:sequence> <xsd:element ref="wsrmd:Property" minOccurs="0" maxOccurs="unbounded" /> <xsd:any namespace="##other" minOccurs="0" maxOccurs="unbounded" processContents="lax" /> </xsd:sequence> <xsd:attribute name="name" type="xsd:NCName" use="required"/> <xsd:attribute name="interface" type="xsd:QName" use="required"/> <xsd:attribute name="wsdlLocation" type="wsrmd:PairsOfURIType" /> <xsd:anyAttribute namespace="##other" processContents="lax"/> </xsd:extension> </xsd:complexContent> </xsd:complexType> <xsd:element name="MetadataDescriptor" type="wsrmd:MetadataDescriptorType" /> <!-- ==================== Property Component ====================== --> <!-<Property name=”xsd:QName” mutability=”[constant|appendable|mutable]” ? modifiability=”[read-only|read-write]” ? subscribability=”xs:boolean” ? {anyAttribute}* > <documentation />? [ <ValidValues> {any}* </ValidValues> | <ValidValueRange lowerBound=’xsd:simpleType’ upperBound=’xsd:simpleType’> </ValidValueRange> ] ? <StaticValues> {any}* </StaticValues> ? {any} *
wsrf-ws_resource_metadata_descriptor-1.0-spec-cs-01.doc
Nov 9, 2006
Copyright © OASIS Open 2006. All Rights Reserved.
Page 40 of 46
1202 1203 1204 1205 1206 1207 1208 1209 1210 1211 1212 1213 1214 1215 1216 1217 1218 1219 1220 1221 1222 1223 1224 1225 1226 1227 1228 1229 1230 1231 1232 1233 1234 1235 1236 1237 1238 1239 1240 1241 1242 1243 1244
</Property> --> <xsd:complexType name= "PropertyType" > <xsd:complexContent> <xsd:extension base="wsrmd:DocumentedType"> <xsd:sequence> <xsd:choice> <xsd:element ref="wsrmd:ValidValues" minOccurs="0" maxOccurs="1" /> <xsd:element ref="wsrmd:ValidValueRange" minOccurs="0" maxOccurs="1" /> </xsd:choice> <xsd:element ref="wsrmd:StaticValues" minOccurs="0" maxOccurs="1" /> <xsd:any namespace="##other" minOccurs="0" maxOccurs="unbounded" processContents="lax" /> </xsd:sequence> <xsd:attribute name="name" type="xsd:QName” use="required"/> <xsd:attribute name="mutability" type="wsrmd:MutabilityType" /> <xsd:attribute name="modifiability" type="wsrmd:ModifiabilityType" /> <xsd:attribute name="subscribability" type="xsd:boolean" default="false" /> <xsd:anyAttribute namespace="##other" processContents="lax"/> </xsd:extension> </xsd:complexContent> </xsd:complexType> <xsd:element name="Property" type="wsrmd:PropertyType" /> <xsd:simpleType name="MutabilityType"> <xsd:restriction base="xsd:string" > <xsd:enumeration value="constant" /> <xsd:enumeration value="appendable" /> <xsd:enumeration value="mutable" /> </xsd:restriction> </xsd:simpleType> <xsd:simpleType name="ModifiabilityType">
wsrf-ws_resource_metadata_descriptor-1.0-spec-cs-01.doc
Nov 9, 2006
Copyright © OASIS Open 2006. All Rights Reserved.
Page 41 of 46
1245 1246 1247 1248 1249 1250 1251 1252 1253 1254 1255 1256 1257 1258 1259 1260 1261 1262 1263 1264 1265 1266 1267 1268 1269 1270 1271 1272 1273 1274 1275 1276 1277 1278 1279 1280 1281 1282 1283 1284 1285 1286 1287
<xsd:restriction base="xsd:string" > <xsd:enumeration value="read-only" /> <xsd:enumeration value="read-write" /> </xsd:restriction> </xsd:simpleType> <!-- ================= Valid Values Component ===================== --> <!-<ValidValues {anyAttribute}* > <documentation />? {any}* </ValidValues> --> <xsd:complexType name= "ValidValuesType" mixed="true"> <xsd:sequence> <xsd:element name="documentation" type="wsrmd:DocumentationType" minOccurs="0" maxOccurs="1" /> <xsd:any namespace="##other" minOccurs="0" maxOccurs="unbounded" processContents="lax" /> </xsd:sequence> <xsd:anyAttribute namespace="##other" processContents="lax"/> </xsd:complexType> <xsd:element name="ValidValues" type="wsrmd:ValidValuesType" /> <!-- ================= Valid Range Component ===================== --> <!-<ValidValueRange lowerBound="xs:anySimpleType" ? upperBound="xs:anySimpleType" ? {anyAttribute}* > <documentation />? {any}* </ValidValueRange> --> <xsd:complexType name= "ValidValueRangeType" mixed="true"> <xsd:sequence> <xsd:element name="documentation" type="wsrmd:DocumentationType" minOccurs="0" maxOccurs="1" /> <xsd:any namespace="##other"
wsrf-ws_resource_metadata_descriptor-1.0-spec-cs-01.doc
Nov 9, 2006
Copyright © OASIS Open 2006. All Rights Reserved.
Page 42 of 46
1288 1289 1290 1291 1292 1293 1294 1295 1296 1297 1298 1299 1300 1301 1302 1303 1304 1305 1306 1307 1308 1309 1310 1311 1312 1313 1314 1315 1316 1317 1318 1319 1320 1321 1322 1323 1324 1325 1326 1327 1328 1329 1330
minOccurs="0" maxOccurs="unbounded" processContents="lax" /> </xsd:sequence> <xsd:attribute name="lowerBound" type="xsd:anySimpleType" /> <xsd:attribute name="upperBound" type="xsd:anySimpleType" /> <xsd:anyAttribute namespace="##other" processContents="lax"/> </xsd:complexType> <xsd:element name="ValidValueRange" type="wsrmd:ValidValueRangeType" /> <!-- ================ Static Values Component ===================== --> <!-<StaticValues {anyAttribute}* > <documentation />? {any}* </StaticValues> --> <xsd:complexType name= "StaticValuesType" mixed="true"> <xsd:sequence> <xsd:element name="documentation" type="wsrmd:DocumentationType" minOccurs="0" maxOccurs="1" /> <xsd:any namespace="##other" minOccurs="0" maxOccurs="unbounded" processContents="lax" /> </xsd:sequence> <xsd:anyAttribute namespace="##other" processContents="lax"/> </xsd:complexType> <xsd:element name="StaticValues" type="wsrmd:StaticValuesType" /> <!-- ================ Initial Values Component ==================== --> <!-<InitialValues {anyAttribute}* > <documentation />? {any}* </InitialValues> --> <xsd:complexType name= "InitialValuesType" mixed="true"> <xsd:sequence>
wsrf-ws_resource_metadata_descriptor-1.0-spec-cs-01.doc
Nov 9, 2006
Copyright © OASIS Open 2006. All Rights Reserved.
Page 43 of 46
1331 1332 1333 1334 1335 1336 1337 1338 1339 1340 1341 1342 1343 1344 1345 1346 1347 1348 1349 1350 1351 1352 1353 1354 1355 1356 1357 1358 1359 1360 1361 1362 1363 1364 1365
<xsd:element name="documentation" type="wsrmd:DocumentationType" minOccurs="0" maxOccurs="1" /> <xsd:any namespace="##other" minOccurs="0" maxOccurs="unbounded" processContents="lax" /> </xsd:sequence> <xsd:anyAttribute namespace="##other" processContents="lax"/> </xsd:complexType> <xsd:element name="InitialValues" type="wsrmd:InitialValuesType" />
<!-- =========== MetadataDescriptorReference RP GED =============== --> <xsd:complexType name="MetadataDescriptorReferenceType"> <xsd:complexContent> <xsd:extension base="wsa:EndpointReferenceType"/> </xsd:complexContent> </xsd:complexType> <xsd:element name="MetadataDescriptorReference" type="wsrmd:MetadataDescriptorReferenceType" /> <!-Metadata Resource RP Doc This defines one property – MetadataDescriptor – which must have a cardinality of one. --> <xsd:element name=”MetadataResourceRP” type=”wsrmd:DefinitionsType”/> </xsd:schema>
wsrf-ws_resource_metadata_descriptor-1.0-spec-cs-01.doc
Nov 9, 2006
Copyright © OASIS Open 2006. All Rights Reserved.
Page 44 of 46
1366
Appendix C. Revision History Rev
Date
By Whom
What
wd-01
2004-10-07
Tom Maguire
Initial version created based on work in response to issue 10.
wd-04
2005-10-31
Dan Jemiolo
Updates to original based on TC revisions in summer/fall of 2005.
wd-06
2005-12-12
Dan Jemiolo
Clean up remaining revisions for public review. Re-inserted some features based on requests from WSDM TC.
wd-09
2006-06-04
Dan Jemiolo
Made changes related to MetadataDescriptorReference (an EPR exposed via WSRP that allows a client to read the MDD). Also (re-)added the InitialValues concept to Property.
wd-10
2006-06-19
Dan Jemiolo
Clarified nature of MetadataResourceRP and fixed some example text (T. Banks).
cd-01
2006-06-28
Dan Jemiolo
Changed status to CD.
cs-01
2006-11-13
Dan Jemiolo
Changed status to CS.
1367
wsrf-ws_resource_metadata_descriptor-1.0-spec-cs-01.doc
Nov 9, 2006
Copyright © OASIS Open 2006. All Rights Reserved.
Page 45 of 46
1368
Appendix D. Notices
1369 1370 1371 1372 1373 1374 1375 1376 1377
OASIS takes no position regarding the validity or scope of any intellectual property or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; neither does it represent that it has made any effort to identify any such rights. Information on OASIS's procedures with respect to rights in OASIS specifications can be found at the OASIS website. Copies of claims of rights made available for publication and any assurances of licenses to be made available, or the result of an attempt made to obtain a general license or permission for the use of such proprietary rights by implementors or users of this specification, can be obtained from the OASIS Executive Director.
1378 1379 1380 1381
OASIS invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights which may cover technology that may be required to implement this specification. Please address the information to the OASIS Executive Director.
1382 1383
Copyright (C) OASIS Open (2005). All Rights Reserved.
1384 1385 1386 1387 1388 1389 1390 1391 1392 1393
This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to OASIS, except as needed for the purpose of developing OASIS specifications, in which case the procedures for copyrights defined in the OASIS Intellectual Property Rights document must be followed, or as required to translate it into languages other than English.
1394 1395 1396
The limited permissions granted above are perpetual and will not be revoked by OASIS or its successors or assigns.
1397 1398 1399 1400 1401 1402
This document and the information contained herein is provided on an "AS IS" basis and OASIS DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
wsrf-ws_resource_metadata_descriptor-1.0-spec-cs-01.doc
Nov 9, 2006
Copyright © OASIS Open 2006. All Rights Reserved.
Page 46 of 46