A container element for a list of properties. A reference to a property description, used in getProperties() A container element for a list of property references. A list of identifiers for the properties that the service accepts and understands. A list of identifiers for the properties that the service provides. A list of identifiers for all the properties currently used by nodes within the service. A view or protocol parameter. An element describing a view of a data-set. A view may just provide the original data, or it could be server generated. Examples of server generated views could include a votable view of data in a database table, or a conversion from one image format to another. A list of parameters for the view. The view URI. This should point to a resource describing the view format and what parameters it requires. A flag to indicate if the view provides access to the original data content or a derived form. A container element for a list of views. A list of identifiers for the views that the service can accept. A simple file based system may accept data in 'any' format. A list of identifiers for the views that the service can provide. A simple file based system may only provide data in the original format. A protocol element, containing the protocol URI, the endpoint and any protocol specific parameters. The target endpoint to use for a data transfer. Any additional protocol specific parameters required to use the endpoint. For example, the user name or password to use for ftp access. The protocol identifier. A container element for a list of protocols. A list of identifiers for the protocols that the service can accept. This means that the service can act as a client for the protocol. A list of identifiers for the protocols that the service can provide. This means that the service can act as a server for the protocol. A capability element, containing the capability URI, the endpoint and any capability specific parameters(?). The target endpoint to use for the third-part interface. The protocol identifier. A container element for a list of capabilities. A list of identifiers for the capabilities that the service can provide. The base class for all nodes. The list of node properties. The node identifier URI. The base class for data nodes. The list of views or data formats that this node can accept. A simple unstructured node may accept data in any format. A structured node may only accept data in specific formats. The list of views or data formats that this node can provide. A simple unstructured node may only provide access to the data in the original format. A structured node may provide different views of the data generated by the service. The list of capabilities that this node can support. A flag to indicate if the node content is available. This will be set to false while the data is being imported, or if the underlying service is busy. An unstructured data node, containing unspecified content. The service does not need to understand or interpret the content. This type of node can accept any format, and only provides one view returning the original data. A structured data node, containing a specific data format that the service has understands. This type of node may only accept specific data formats, and provide different views of the data generated by the service. A container node containing any type of node. A node that points to another node. The identifier for the data object to which the LinkNode points. The base class for all faults. The base class for service faults. Fault to indicate an internal error in the service. The base class for operation faults. Fault to indicate that an expected node did not exist. Fault to indicate that node already exists with a given URI. Fault to indicate that the user does not have permission to perform an operation. Fault to indicate an invalid URI. Fault to indicate an invalid continuation token. Fault to indicate an invalid argument for an operation. Fault to indicate the service does not support the requested node type. Fault to indicate the service does not support the requested view. An extension to the protocol type to include an error message. Fault to indicate the service does not support any of the requested protocols. Fault to indicate a data transfer has failed. Fault to indicate an attempt to import invalid data into a Structured node . Fault to indicate that a Container node did not exist. Fault to indicate that a Link node has been found. Fault to indicate that an expected property did not exist. A template for the new node. This can include values for any of the user modifiable node properties. If the node identifier URI is set to 'vos://null', then the service will generate a new name for the node. The client cannot use this method to set the list of views accepted or provided by the node. Details of the new node. For extended node types this will be replaced by the full element for the extended type, using xsi:type to indicate the node type. The target node identifier. The source node identifier. A template for the new node. This can include values for any of the user modifiable node properties. If the node identifier is set to 'vos://null', then the service will generate a new name for the node. The client cannot use this method to set the list of views accepted or provided by the node. Details of the new node. For extended node types this will be replaced by the full element for the extended type, using xsi:type to indicate the node type. The source node identifier. A template for the new node. This can include values for any of the user modifiable node properties. If the node identifier is set to 'vos://null', then the service will generate a new name for the node. The client cannot use this method to set the list of views accepted or provided by the node. Details of the new node. For extended node types this will be replaced by the full element for the extended type, using xsi:type to indicate the node type. The target node identifier. Details of the node. For extended node types this will be replaced by the full element for the extended type, using xsi:type to indicate the node type. A node element containing a list of properties to change with their new values. A property with no value will empty the property. To remove a property, set the xsi:nill attribute to true. The client cannot use this method to modify the node type. The client cannot use this method to modify the list of views accepted or provided by the node. Updated details of the node. For extended node types this will be replaced by the full element for the extended type, using xsi:type to indicate the node type. A container element for the ListNodes request and response messages. An optional continuation token from a previous request. An optional limit indicating the maximum number of results in a response. If no limit is specified, the service may return all the results in one list, or it may impose its own internal limit. An enumeration indicating the level of detail required. The minimum level of detail, returning simple node elements with no child elements. An intermediate level of detail, returning basic node elements including the node properties. Note - this hides the underlying node type. The maximum level of detail, returning complex node elements, including the full details of any extended node types. This uses the xsi:type attribute to include the type specific elements of any extended node types. The list of nodes. At the maximum level of detail this will be replaced by the full element for the extended type, using xsi:type to indicate the node type. A container element for the FindNodes request and response messages. An optional continuation token from a previous request. An optional limit indicating the maximum number of results in a response. If no limit is specified, the service may return all the results in one list, or it may impose its own internal limit. An enumeration indicating the level of detail required. The minimum level of detail, returning simple node elements with no child elements. An intermediate level of detail, returning basic node elements including the node properties. Note - this hides the underlying node type. The maximum level of detail, returning complex node elements, including the full details of any extended node types. This uses the xsi:type attribute to include the type specific elements of any extended node types. The list of properties to be matched against. The list of properties to be matched against. A disjunct combination of matches. A conjunct combination of matches. The list of nodes. At the maximum level of detail this will be replaced by the full element for the extended type, using xsi:type to indicate the node type. The class representing a match. The property identifier URI. A disjunct (or) operation. The list of properties to be matched against. A conjunct combination of matches. A conjunct (and) operation. The list of properties to be matched against. A disjunct combination of matches. A container element for transfer information. For an import message, this indicates the data type being sent. For an export message, this indicates which view to request the data from. A list of protocols to use for the transfer. In a request, this should contain a list of the protocols that the client can use. In a response, this should contain the subset of requested protocols that the service can support. The service should fill in the endpoint and parameters for each protocol. If the property has been registered, then the URI should point to the registration document. Third party tools may use the urn:xxxx syntax to add unregistered properties. A flag to indicate if the property is considered read-only. Attempting to modify a read-only property should generate a PermissionDenied fault.