Schema for .NET My Services Infrastructure types including security-related types, system document, message headers, etc. Copyright (c) 2001 Microsoft Corporation. All rights reserved. This attribute indicates the status of the method.
success
The corresponding method was completed successfully.
failure
The corresponding method was not completed successfully.
rollback
The method failed, but was rolled back to its pre-updateBlock status.
notAttempted
The corresponding method was not attempted. This occurs when a previous operation failed.
This element indicates a request to insert an xdb:blue or xdb:red into the specified xdb:blue. The select attribute must always select an xdb:blue. This element selects a node-set within the specified document relative to the externally established current context. TBD. This element is a placeholder that indicates where the content being inserted is to be specified. This attribute must always select an xdb:blue. This element specifies the response to the insertRequest. This element exists once for each xdb:blue item that was successfully inserted. This attribute returns the changeNumber resulting from the insert operation. This attribute is not returned when contained within an updateResponse because in that message, the root contains the changeNumber. This element is typically found in the body of an HSDL response message. It indicates a changed item (insert, replace) and supplies the server-generated ID, the related localTag, and the change number. The granularity of this element is an xdb:blue item. When used in a changeQuery, this element returns the content of the specified ID. This element is a placeholder that indicates where the content of the changed node xdb:blue item is returned. This element is typically found in the body of an HSDL response message. It indicates a deleted item and supplies the server-generated ID of the deleted item. The granularity of this element is an xdb:blue item. This attribute specifies the ID of the deleted item. This element is typically found in the body of an insertResponse, updateResponse, or replaceResponse to indicate that a new ID value was generated by the corresponding request operation. Applications must, in response, walk through their changes in order and apply the returned ID to any cached value of the node they just inserted. Only new ID generation triggers this. So in the case of an ID-preserving replaceRequest, the root of the replacement never generates one of these, but an inner xdb:blue does. This attribute specifies the ID of the deleted item. This element indicates a request to delete the selected xdb:blue or xdb:red items from the specified XML document. This element selects a node-set within the specified document relative to the externally established current context. TBD. This attribute must always select an xdb:blue or an xdb:red. This element specifies the response to the deleteRequest. This attribute returns the changeNumber resulting from the delete operation. This attribute is not returned when contained within an updateResponse, because in that message, the root contains the changeNumber. This element indicates a request to replace an existing xdb:blue or xdb:red with the XML document fragment contained within this message. This element selects a node-set within the specified document relative to the externally established current context. The selected node must be an xdb:blue or an xdb:red.

The message first selects a node set, and then for each node, replaces the selected node with the content of this message. For xdb:blue nodes, the node's ID is preserved. TBD. This element is a placeholder that indicates where the content of the item being replaced is to be specified. This attribute must always select an xdb:blue or an xdb:red. This element specifies the response to the replaceRequest. This element exists once for each xdb:blue item that was successfully inserted. This attribute returns the changeNumber resulting from the replace operation. This attribute is not returned when contained within an updateResponse, because in that message, the root contains the changeNumber. The update request is designed to take a set of individual insert, replace, and delete requests and apply them to the specified document. The message is designed to contain a series of updateBlocks that share a common document context and common failure semantics. A sequence of operations grouped by a common context in the XML document sharing the same failure semantics. This item specifies an XPath expression that establishes global context for this updateBlock. The selection must specify an xdb:blue. With this context established, the enclosed operation's select attributes select nodes within this global context. It is not an error to match zero nodes with this select attribute. The empty node set is simply the context for the enclosed operations, and their minOccurs and maxOccurs attributes dictate success or failure. This attribute controls how error conditions raised by individual operations within an updateBlock affect the entire updateRequest message. Error conditions can trigger one of the following actions:

rollbackBlockAndFail
If any operation within the updateBlock fails, all enclosed operations are rolled back to their initial state and the updateRequest ends in a failure condition.
rollbackBlockAndContinue
If any operation within the updateBlock fails, all enclosed operations are rolled back to their initial state and execution proceeds to the next updateBlock.
ignore
Failures within an individual updateBlock do not trigger a rollback or a failure in the updateRequest. A failure simply terminates execution of the updateBlock. Successful operations are tagged in the updateResponse. Execution continues at the next updateBlock.
This message contains the results of an updateRequest message. It may appear as a response to an updateRequest, or, in the case of a fault during the processing of an updateRequest, may appear in a SOAP Fault element.

The updateResponse message contains multiple updateBlockStatus elements. One of these elements exists for each updateBlock in the updateRequest message. Each of these contains a status element for each operation in the updateBlock. Additionally, because the changes alter all ancestor change numbers, a newChangeNumber attribute is present so that clients can update their caches. This element contains status information for the updateBlock. This element indicates the status of the entire updateBlock. It can be one of the following: success, failure, rollback, or notAttempted.

If the status is rollback or notAttempted, the .NET service data was not affected by the corresponding updateBlock. A value of success means that the updateBlock did the specified work, which may or may not have side effects. A value of failure means that the updateBlock was partially executed and the updateOperationStatus elements have additional information. This attribute returns the changeNumber resulting from the entire updateRequest. A given updateRequest changes only a single changeNumber value and the application must update affected nodes in its own cache. The purpose of the queryRequest message is to return, in the queryResponse message, information from the specified document. The message is designed to carry multiple query operations in a single request message. This allows applications to specify efficient queries and address different pieces of the document in a single message transmission.

The queryRequest message may contain zero or more xpQuery elements. These elements specify data queries on the specified document. They contain an XPath expression that selects a set of nodes, and by using minOccurs and maxOccurs, they can control how many nodes are returned in a given operation.

The queryRequest message may contain zero or more changeQuery elements. The purpose of this element is to aid client software in building caches populated with .NET My Services data. These elements are designed to issue a query relative to a changeNumber, and instead of returning simply content, they return a summary of changed or deleted blue items.

The .NET My Services effort is likely to evolve to include support for XML Query. In anticipation of this, plans include support for zero or more xmQuery elements that will be used to encapsulate the XML Query language. This element specifies an XPath query against the data contained within the specified document. The element is contains an XPath expression that selects the nodes the client needs to extract from .NET My Services, and constraints on how many nodes the selection must match. This element is used to request a list of updates relative to a single selected node and a changeNumber value on that node. It is designed specifically to support client-side caching of .NET My Services content. Any xdb:blue node can be selected with the select attribute. It is an error condition to select more than a single node. While this element does not support minOccurs/maxOccurs attributes, it is as if minOccurs=0 and maxOccurs=1. The response to this message is an updateRequest message that contains the insert, replace, and delete operations that should be processed by the client software to bring its cache up to date with respect to the change number specified in this element.

There will be times when the .NET My Services system will be unable to return a changeQueryResponse that is complete enough bring a client cache in sync. This can occur when the client is way out of date and numerous delete operations have occurred. In these situations, a changeQuery will simply fail with a fault condition and, in response to this message, the client should discard and rebuild its cache. TBD This item specifies an XPath expression that specifies the nodes that are to be selected and returned in the response for this operation. The selected nodes are encapsulated in the xqQueryResponse element whose operation id attribute matched the operation id attribute of this element. TBD This attribute specifies an XPath expression that specifies the single node that the change query is relative to. This node, in conjunction with the specified changeNumber attribute, controls the change computation. The selected node is located, and all nodes containing id attributes (of type idType) are examined. Any nodes that have changed relative to the specified changeNumber are returned in the updateRequest. This attribute specifies the changeNumber value that the client has in its cache for the node specified by the select attribute. As explained above, this value establishes the synchronization base used to compute the changes underneath this node. The queryResponse element contains the response data for a given queryRequest. This element contains both xpQueryResponse elements and changeQueryResponse elements. These elements contain operation id attributes that correlate to the matching xpQuery and changeQuery elements in the queryRequest message. This element contains the node set selected by the matching xpQuery. If the selected node set matches zero nodes, and minOccurs is zero, this element is still present but contains empty content indicating that there were no matching nodes. This element is a placeholder that indicates where the content of the item being queried is returned. This element contains the response to the associated changeQuery. The content of this element is a single, optional changeSummary element in the form of an updateRequest that describes the changes for the selected node set, relative to the synchronization base specified by the changeNumber attribute. The client software maintaining a cache of .NET My Services data should process this updateRequest into its own cache, bringing that cache up to date. This element contains the base change number for this changeQuery. On request, the baseChangeNumber is supplied and is associated with a subtree in the document. This attribute returns the new value for the change number in that subtree. It is assumed that the client software will easily know where to place this. This attribute specifies that, if an xdb:blue item is created during an insert or replace operation, and an ID would normally be generated, the ID specified in the request content should be used instead of having .NET My Services generate an ID. Applications using this option must ensure that they are properly generating unique IDs in the form of UUIDs. They must also ensure that they do not assign the same ID to multiple xdb:blue items; this can happen if the insert select attribute selects multiple nodes. This item specifies an XPath expression that selects a set of nodes relative to the externally established context. The expression can never travel outside the node-set established by this externally established current context. The expression can match zerio or more nodes, and the operation manipulates all selected nodes. The minOccurs and maxOccurs attributes are optional and place restrictions and limitations on the number of nodes selected. This optional attribute specifies the minimum number of nodes that must be selected by the select operation in order for this operation to be successfully attempted. The default value is zero, meaning that if no nodes are selected, the operation silently succeeds as a "NOP." A value of one means that a minimum of one node must be selected. In that case, if no nodes are selected, the operation fails with an error. This optional attribute specifies the maximum number of nodes that may be selected by the select operation in order for this operation to be successfully attempted. The default value is unbounded. If the number of nodes selected by the select attribute is greater than this value, an error condition occurs. This attribute is used to return the number of selected nodes, selected by the corresponding HSDL operation. This element is used to specify a single attribute to be manipulated by the .NET My Services data-manipulation primitives. For example, when used in an insertRequest, this element specifies an attribute to be inserted at the specified node. TBD. TBD. TBD. TBD: Direction of sorting (ascending or descending). TBD: Sort key (for example, subject or @size). TBD: Position of element that will be first in the resulting node-set (like '1', 'count()' or 'position-of(.[@id='93247519328475']). Note: Only a subset of XPath will work here. TBD: Positive number of elements. TBD: Is there any way to specify in schema that this number should be positive? TBD This element defines the format of subscription response message. The message is delivered when a subscription's trigger fires. This element contains the data in the form of changedBlue nodes and in the form of deletedBlue nodes for the data that has changed relative to the trigger. This element returns the context element from the original subscription. Applications should use this element and only this element to correlate the subscription response with one of their subscriptions. This attribute specifies the URI value chosen by the subscriber that is associated with this subscription.