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 list of the direct children that the container has. A node that points to another resource. The identifier for the object that the LinkNode points to. A container element for a list of properties. A reference to a property description. A container element for a list of property references. 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. 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. Any additional capability specific parameters required to use the endpoint. For example, the user name or password to use for access. The capability identifier. A container element for a list of capabilities. A container element for search responses. 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 transfer operations. The target of a transfer operation - the node to/from which data is to be transferred. The direction of a data transfer - either a URI or one of the specified directions The requested view for the transfer. The transfer protocol(s) to use. Indicates whether the source object is to be kept in an internal transfer, i.e., distinguishes between a move and a copy.