User`s guide
Objects, References, and Representations
The vCloud API represents objects as XML documents in which object properties are encoded as elements and
attributes with typed values and an explicit object hierarchy defined by an XML schema.
XML representations of first-class vCloud API objects, such as the objects in Figure 1-1, include these attributes.
id
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 and is also suitable for
use by clients that need to access the object using a different API.
type
The object type, specified as a MIME content type.
href
An object reference, expressed in URL format. Because this URL includes the
object identifier portion of the id attribute value, it uniquely identifies the
object, persists for the life of the object, and is never reused. The value of the
href attribute is a reference to a view of the object, and can be used to access a
representation of the object that is valid in a particular context. 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.
Example: Object id, type, and href Attributes
This XML fragment, extracted from the representation of a vApp, shows its id, type, and href attributes.
<VApp
...
id="urn:vcloud:vapp:490af534-1491-452e-8ed6-a5eb54447dac"
type="application/vnd.vmware.vcloud.vApp+xml"
href="https://vcloud.example.com/api/vApp/vapp-490af534-1491-452e-8ed6-a5eb54447dac"
... >
...
</VApp>
Links and Link Relations
The vCloud API makes extensive use of Link elements to provide references to objects and the actions that
they support. These elements are the primary mechanism by which a server tells a client how to access and
operate on an object.
The server creates Link elements in a response body. They are read-only at the client. If a request body includes
a Link element, the server ignores it.
Attributes of a Link Element
In the XML representation of a vCloud object, each Link element has the following form:
<Link rel="
relationship
"
type="application/vnd.vmware.vcloud.
object_type
+xml"
href="
URL
"
name="
string
"/>
vCloud SDK for PHP Developer's Guide
10 VMware, Inc.