vCloud API Programming Guide
142 VMware, Inc.
Schema Validation
ThisreleaseofCloudDirectorusesavalidatingXMLparserthatrequireselementsinXMLdocumentstoagree
inbothorderandnumberwiththeschema.Requiredelementsmustappearinrequestbodies.Allelements
thatappearinrequestbodiesmustappearintheorderestablishedbytheschema,andwith
contentthat
conformstothetypeconstraintspecifiedintheschema.Defaultvalues,wheredefined,aresuppliedfor
elementsthatareempty.
IfarequestcontainselementsfrommultipleXMLnamespaces,namespaceidentifiersmustbesuppliedin
requestbodiesandprependedtoelementnames.See“XMLNamespaceIdentifiers”onpage 145.
Content Type
AllrequeststhathaveabodymustincludeanHTTPContent‐Typeheaderthatspecifiesthecontenttypeof
thebody.Contenttypeshavebeendefinedforanyelementthatcanbeusedasarequestbody,andareshown
alongwiththeschemaandotherreferenceinformationfortheelement.
Object Reference Prototype
EveryobjectinavCloudisuniquelyidentifiedbyaURL.ThisURLisconstructedbytheserverandreturned
inthevalueofthehrefattributeoftheXMLelementthatrepresentstheobject.ItalsoappearsinvariousLink
andReferenceTypeelementsthatprovidereferencestotheobject.This
URLservesasauniqueidentifierthat
persistsforthelifeoftheobjectandisneverre‐used.WhenaclientmakesanHTTPGETrequesttoanobject
href,theserverreturnsthecurrentXMLrepresentationofthatobject.
AlthoughURLshaveawell‐knownsyntaxanda
well‐understoodinterpretation,aclientshouldtreateach
hrefasanopaquestring.Therulesthatgovernconstructionofhrefstringsbytheserverarenotguaranteed
toremainineffectinfuturereleases.Inthisrelease,theyyieldpredictablecontentthatconformstooneoftwo
prototypes:
Objectssuchasorganizations,vDCs,networks,andcatalogshavehrefvaluesoftheform
API‐URL/object‐type/id
ObjectssuchasvApptemplates,vApps,andVmshavehrefvaluesoftheformAPI‐URL/xxxxxx/yyy‐id
Foreachprototype,API‐URLhastheformhttp://vcloud.example.com/api/v1.0,andidisaninteger.An
objecthrefprototypeisincludedinthereferenceinformationforeachobjecttypethathasanhrefattribute.
Common Datatypes
ThevCloud APIusesanumberofprimitiveXMLdatatypes,asdefinedinW3CRecommendation28
(http://www.w3.org/TR/xmlschema‐2/).Italsodefinesanumberofcomplextypes,ofwhichvCloud API
elementsareinstances.
Primitive XML Datatypes
AttributesandsomeelementcontentarerepresentedbyprimitiveXMLdatatypes,whichareshownin
Table 8‐2.
N
OTEInthereferencematerial,elementsthataresimplycontainersarelistedbyname,alongwithan
explanationofthepurposeofthecontainer,butdonotincludeaschemareference.
Table 8-2. Primitive XML Data Types Used by the vCloud API
Value Description
xs:boolean Alogicalvalue,includingtrue,false,0,and1.
xs:date Datevalues.
xs:dateTime Date/timevalues(timestamps).
xs:double NumericvaluethatcorrespondstotheIEEEdouble‐precision64‐bitfloatingpointtype
definedinIEEE754‐1985.