The vCloud API represents objects as XML documents in which object properties appear as elements and attributes with typed values. The object hierarchy is defined by an XML schema.

XML representations of first-class vCloud API objects, such as the objects in vCloud API Object Taxonomy, include these attributes.


The object identifier, expressed in URN format. The value of the id attribute uniquely identifies the object, persists for the life of the object, and is never reused. The id attribute value is intended to provide a context-free identifier that can be used with the vCloud API entityResolver (see Retrieve an Object as an Entity).


The object type, specified as a MIME content type.


An object reference, expressed in URL format. This reference includes the object identifier portion of the id attribute value, and supplies additional information, including the current location of the object when accessed in a specific view. Although URLs have a well-known syntax and a well-understood interpretation, a client should treat each href as an opaque string. The rules that govern how the server constructs href strings might change in future releases.

This abbreviated request and response example shows the id, type, and href attributes in the XML representation of a tenant's organization VDC in an instance in the vCloud Air Virtual Private Cloud OnDemand. The instance is located in the Virginia region.





The value of the id attribute is a permanent, unique object identifier. The value of the href attribute is an object locator that refers to a specific view of the object in its current location. Unlike the value of the id attribute, object location and view context can change during the life of an object. The example in Example: Using the entityResolver URL shows how to retrieve this object as entity.

When a client application must keep a persistent reference to an object, the best practice is to keep a reference to the id and the href (URL) that was most recently used to access the object. When the application needs to access the object in the future, it should first try using the saved href. If that fails, use the id with the entity resolver to obtain a valid reference to the object, then replace the saved href with that valid reference.