8a7f051108
fixes bug 1154702 Change-Id: I78b1d2c9975a1a4f32b0785cce45f1e471783d8c
533 lines
17 KiB
XML
533 lines
17 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<?xml-stylesheet type="text/xsl" href="../xslt/schema.xsl"?>
|
|
|
|
<!-- (C) 2011 OpenStack Foundation., All Rights Reserved -->
|
|
|
|
|
|
<schema
|
|
elementFormDefault="qualified"
|
|
attributeFormDefault="unqualified"
|
|
xmlns="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:csapi="http://docs.openstack.org/compute/api/v1.1"
|
|
xmlns:xsdxt="http://docs.rackspacecloud.com/xsd-ext/v1.0"
|
|
targetNamespace="http://docs.openstack.org/compute/api/v1.1">
|
|
|
|
<annotation>
|
|
<xsd:appinfo
|
|
xml:lang="EN"
|
|
xmlns="http://www.w3.org/1999/xhtml">
|
|
<xsdxt:title>Faults</xsdxt:title>
|
|
<xsdxt:link rel="index" href="api.xsd" />
|
|
</xsd:appinfo>
|
|
<xsd:documentation
|
|
xml:lang="EN"
|
|
xmlns="http://www.w3.org/1999/xhtml">
|
|
<p>
|
|
This schema file defines faults that may be raised by the
|
|
OpenStack Compute API. These faults are derived from the <a
|
|
href="#type_ComputeAPIFault" title="See definition of
|
|
ComputeAPIFault">ComputeAPIFault</a>. Most faults extend this
|
|
type without adding any additional attributes or elements.
|
|
The only exceptions is the <a href="#type_OverLimitAPIFault"
|
|
title="See definition of
|
|
OverLimitAPIFault">OverLimitAPIFault</a> which adds a
|
|
<strong>retryAt</strong> attribute and the <a
|
|
href="#type_AsyncAPIFault" title="See definition of
|
|
AsyncAPIFault">AsyncAPIFault</a> which adds a
|
|
<strong>created</strong> timestamp. Because all faults extend
|
|
a standard base type, it should be possible to capture all API
|
|
faults with a single <code>catch</code> statement.
|
|
</p>
|
|
<p>
|
|
Faults are associated with a default HTTP status code that
|
|
corresponds to the particular fault type. For example an <a
|
|
href="#element_itemNotFound" title="see definition of
|
|
itemNotFound"><itemNotFound></a> element is associated
|
|
with the HTTP status code 404. Some elements, the <a
|
|
href="#element_computeFault" title="see definition of
|
|
computeFault"><computeFault></a> element for
|
|
example, may be associated with multiple status codes. It is
|
|
also possible for multiple fault elements to be associated
|
|
with the same default code. The examples below showcase the
|
|
default status codes for each element type. Note that these
|
|
default codes are not part of the formal schema. In practice,
|
|
however, an element type will likely be associated with its
|
|
corresponding default status code.
|
|
</p>
|
|
</xsd:documentation>
|
|
</annotation>
|
|
|
|
<!-- Faults -->
|
|
<element name="computeFault" type="csapi:ComputeAPIFault">
|
|
<annotation>
|
|
<xsd:documentation
|
|
xml:lang="EN"
|
|
xmlns="http://www.w3.org/1999/xhtml">
|
|
<p>
|
|
A generic Cloud Servers API fault.
|
|
</p>
|
|
</xsd:documentation>
|
|
<xsd:appinfo>
|
|
<xsdxt:samples>
|
|
<xsdxt:sample>
|
|
<xsdxt:code type="application/xml" href="../samples/fault.xml" />
|
|
</xsdxt:sample>
|
|
<xsdxt:sample>
|
|
<xsdxt:code type="application/json" href="../samples/fault.json" />
|
|
</xsdxt:sample>
|
|
</xsdxt:samples>
|
|
</xsd:appinfo>
|
|
</annotation>
|
|
</element>
|
|
<element name="itemNotFound" type="csapi:ItemNotFoundAPIFault">
|
|
<annotation>
|
|
<xsd:documentation
|
|
xml:lang="EN"
|
|
xmlns="http://www.w3.org/1999/xhtml">
|
|
<p>
|
|
The item or resource could not be found.
|
|
</p>
|
|
</xsd:documentation>
|
|
<xsd:appinfo>
|
|
<xsdxt:samples>
|
|
<xsdxt:sample>
|
|
<xsdxt:code type="application/xml" href="../samples/notfound.xml" />
|
|
</xsdxt:sample>
|
|
<xsdxt:sample>
|
|
<xsdxt:code type="application/json" href="../samples/notfound.json" />
|
|
</xsdxt:sample>
|
|
</xsdxt:samples>
|
|
</xsd:appinfo>
|
|
</annotation>
|
|
</element>
|
|
<element name="buildInProgress" type="csapi:BuildInProgressAPIFault">
|
|
<annotation>
|
|
<xsd:documentation
|
|
xml:lang="EN"
|
|
xmlns="http://www.w3.org/1999/xhtml">
|
|
<p>
|
|
The operation is not allowed because the corresponding
|
|
server is in a build state.
|
|
</p>
|
|
</xsd:documentation>
|
|
<xsd:appinfo>
|
|
<xsdxt:samples>
|
|
<xsdxt:sample>
|
|
<xsdxt:code type="application/xml" href="../samples/build.xml" />
|
|
</xsdxt:sample>
|
|
<xsdxt:sample>
|
|
<xsdxt:code type="application/json" href="../samples/build.json" />
|
|
</xsdxt:sample>
|
|
</xsdxt:samples>
|
|
</xsd:appinfo>
|
|
</annotation>
|
|
</element>
|
|
<element name="serverCapacityUnavailable" type="csapi:ServerCapacityUnavailableAPIFault">
|
|
<annotation>
|
|
<xsd:documentation
|
|
xml:lang="EN"
|
|
xmlns="http://www.w3.org/1999/xhtml">
|
|
<p>
|
|
There is not enough capacity to honor the request.
|
|
</p>
|
|
</xsd:documentation>
|
|
<xsd:appinfo>
|
|
<xsdxt:samples>
|
|
<xsdxt:sample>
|
|
<xsdxt:code type="application/xml" href="../samples/serverCap.xml" />
|
|
</xsdxt:sample>
|
|
<xsdxt:sample>
|
|
<xsdxt:code type="application/json" href="../samples/serverCap.json" />
|
|
</xsdxt:sample>
|
|
</xsdxt:samples>
|
|
</xsd:appinfo>
|
|
</annotation>
|
|
</element>
|
|
<element name="backupOrResizeInProgress" type="csapi:BackupOrResizeInProgressAPIFault">
|
|
<annotation>
|
|
<xsd:documentation
|
|
xml:lang="EN"
|
|
xmlns="http://www.w3.org/1999/xhtml">
|
|
<p>
|
|
The operation is not allowed because the corresponding
|
|
server is being re-sized or backed up.
|
|
</p>
|
|
</xsd:documentation>
|
|
<xsd:appinfo>
|
|
<xsdxt:samples>
|
|
<xsdxt:sample>
|
|
<xsdxt:code type="application/xml" href="../samples/backupInProgress.xml" />
|
|
</xsdxt:sample>
|
|
<xsdxt:sample>
|
|
<xsdxt:code type="application/json" href="../samples/backupInProgress.json" />
|
|
</xsdxt:sample>
|
|
</xsdxt:samples>
|
|
</xsd:appinfo>
|
|
</annotation>
|
|
</element>
|
|
<element name="resizeNotAllowed" type="csapi:ResizeNotAllowedAPIFault">
|
|
<annotation>
|
|
<xsd:documentation
|
|
xml:lang="EN"
|
|
xmlns="http://www.w3.org/1999/xhtml">
|
|
<p>
|
|
The re-size operation is not permitted.
|
|
</p>
|
|
</xsd:documentation>
|
|
<xsd:appinfo>
|
|
<xsdxt:samples>
|
|
<xsdxt:sample>
|
|
<xsdxt:code type="application/xml" href="../samples/resizeNotAllowed.xml" />
|
|
</xsdxt:sample>
|
|
<xsdxt:sample>
|
|
<xsdxt:code type="application/json" href="../samples/resizeNotAllowed.json" />
|
|
</xsdxt:sample>
|
|
</xsdxt:samples>
|
|
</xsd:appinfo>
|
|
</annotation>
|
|
</element>
|
|
<element name="serviceUnavailable" type="csapi:ServiceUnavailableAPIFault">
|
|
<annotation>
|
|
<xsd:documentation
|
|
xml:lang="EN"
|
|
xmlns="http://www.w3.org/1999/xhtml">
|
|
<p>
|
|
The API service is currently unavailable.
|
|
</p>
|
|
</xsd:documentation>
|
|
<xsd:appinfo>
|
|
<xsdxt:samples>
|
|
<xsdxt:sample>
|
|
<xsdxt:code type="application/xml" href="../samples/serviceNotAvailable.xml" />
|
|
</xsdxt:sample>
|
|
<xsdxt:sample>
|
|
<xsdxt:code type="application/json" href="../samples/serviceNotAvailable.json" />
|
|
</xsdxt:sample>
|
|
</xsdxt:samples>
|
|
</xsd:appinfo>
|
|
</annotation>
|
|
</element>
|
|
<element name="unauthorized" type="csapi:UnauthorizedAPIFault">
|
|
<annotation>
|
|
<xsd:documentation
|
|
xml:lang="EN"
|
|
xmlns="http://www.w3.org/1999/xhtml">
|
|
<p>
|
|
Insufficient privileges to honor the request, perhaps an
|
|
authentication token needs to be obtained or renewed.
|
|
</p>
|
|
</xsd:documentation>
|
|
<xsd:appinfo>
|
|
<xsdxt:samples>
|
|
<xsdxt:sample>
|
|
<xsdxt:code type="application/xml" href="../samples/unauth.xml" />
|
|
</xsdxt:sample>
|
|
<xsdxt:sample>
|
|
<xsdxt:code type="application/json" href="../samples/unauth.json" />
|
|
</xsdxt:sample>
|
|
</xsdxt:samples>
|
|
</xsd:appinfo>
|
|
</annotation>
|
|
</element>
|
|
<element name="forbidden" type="csapi:ForbiddenAPIFault">
|
|
<annotation>
|
|
<xsd:documentation
|
|
xml:lang="EN"
|
|
xmlns="http://www.w3.org/1999/xhtml">
|
|
<p>
|
|
Authentication has been validated, however the operation is unauthorized.
|
|
</p>
|
|
</xsd:documentation>
|
|
<xsd:appinfo>
|
|
<xsdxt:samples>
|
|
<xsdxt:sample>
|
|
<xsdxt:code type="application/xml" href="../samples/forbidden.xml" />
|
|
</xsdxt:sample>
|
|
<xsdxt:sample>
|
|
<xsdxt:code type="application/json" href="../samples/forbidden.json" />
|
|
</xsdxt:sample>
|
|
</xsdxt:samples>
|
|
</xsd:appinfo>
|
|
</annotation>
|
|
</element>
|
|
<element name="overLimit" type="csapi:OverLimitAPIFault">
|
|
<annotation>
|
|
<xsd:documentation
|
|
xml:lang="EN"
|
|
xmlns="http://www.w3.org/1999/xhtml">
|
|
<p>
|
|
An <a href="limits.xsd#type_AbsoluteLimit" title="See
|
|
definition of AbsoluteLimit">absolute</a> or <a
|
|
href="limits.xsd#type_RateLimit" title="See definition of
|
|
RateLimit">rate</a> limit has been exceeded.
|
|
</p>
|
|
</xsd:documentation>
|
|
<xsd:appinfo>
|
|
<xsdxt:samples>
|
|
<xsdxt:sample>
|
|
<xsdxt:code type="application/xml" href="../samples/overlimit.xml" />
|
|
</xsdxt:sample>
|
|
<xsdxt:sample>
|
|
<xsdxt:code type="application/json" href="../samples/overlimit.json" />
|
|
</xsdxt:sample>
|
|
</xsdxt:samples>
|
|
</xsd:appinfo>
|
|
</annotation>
|
|
</element>
|
|
<element name="badRequest" type="csapi:BadRequestAPIFault">
|
|
<annotation>
|
|
<xsd:documentation
|
|
xml:lang="EN"
|
|
xmlns="http://www.w3.org/1999/xhtml">
|
|
<p>
|
|
The request is malformed.
|
|
</p>
|
|
</xsd:documentation>
|
|
<xsd:appinfo>
|
|
<xsdxt:samples>
|
|
<xsdxt:sample>
|
|
<xsdxt:code type="application/xml" href="../samples/badrequest.xml" />
|
|
</xsdxt:sample>
|
|
<xsdxt:sample>
|
|
<xsdxt:code type="application/json" href="../samples/badrequest.json" />
|
|
</xsdxt:sample>
|
|
</xsdxt:samples>
|
|
</xsd:appinfo>
|
|
</annotation>
|
|
</element>
|
|
<element name="badMediaType" type="csapi:BadMediaTypeAPIFault">
|
|
<annotation>
|
|
<xsd:documentation
|
|
xml:lang="EN"
|
|
xmlns="http://www.w3.org/1999/xhtml">
|
|
<p>
|
|
The Content Type of the request is not supported.
|
|
</p>
|
|
</xsd:documentation>
|
|
<xsd:appinfo>
|
|
<xsdxt:samples>
|
|
<xsdxt:sample>
|
|
<xsdxt:code type="application/xml" href="../samples/badmediatype.xml" />
|
|
</xsdxt:sample>
|
|
<xsdxt:sample>
|
|
<xsdxt:code type="application/json" href="../samples/badmediatype.json" />
|
|
</xsdxt:sample>
|
|
</xsdxt:samples>
|
|
</xsd:appinfo>
|
|
</annotation>
|
|
</element>
|
|
<element name="badMethod" type="csapi:BadMethodAPIFault">
|
|
<annotation>
|
|
<xsd:documentation
|
|
xml:lang="EN"
|
|
xmlns="http://www.w3.org/1999/xhtml">
|
|
<p>
|
|
The HTTP method (or <a href="limits.xsd#type_HTTPVerb"
|
|
title="See definition of HTTPVerb">verb</a>) is not
|
|
supported by the corresponding resource.
|
|
</p>
|
|
</xsd:documentation>
|
|
<xsd:appinfo>
|
|
<xsdxt:samples>
|
|
<xsdxt:sample>
|
|
<xsdxt:code type="application/xml" href="../samples/badmethod.xml" />
|
|
</xsdxt:sample>
|
|
<xsdxt:sample>
|
|
<xsdxt:code type="application/json" href="../samples/badmethod.json" />
|
|
</xsdxt:sample>
|
|
</xsdxt:samples>
|
|
</xsd:appinfo>
|
|
</annotation>
|
|
</element>
|
|
<element name="notImplemented" type="csapi:NotImplementedAPIFault">
|
|
<annotation>
|
|
<xsd:documentation
|
|
xml:lang="EN"
|
|
xmlns="http://www.w3.org/1999/xhtml">
|
|
<p>
|
|
The operation is currently not implemented.
|
|
</p>
|
|
</xsd:documentation>
|
|
<xsd:appinfo>
|
|
<xsdxt:samples>
|
|
<xsdxt:sample>
|
|
<xsdxt:code type="application/xml" href="../samples/notimplemented.xml" />
|
|
</xsdxt:sample>
|
|
<xsdxt:sample>
|
|
<xsdxt:code type="application/json" href="../samples/notimplemented.json" />
|
|
</xsdxt:sample>
|
|
</xsdxt:samples>
|
|
</xsd:appinfo>
|
|
</annotation>
|
|
</element>
|
|
|
|
<!-- Complex Types -->
|
|
<complexType name="ComputeAPIFault">
|
|
<sequence>
|
|
<element name="message" type="xsd:string">
|
|
<annotation>
|
|
<xsd:documentation
|
|
xml:lang="EN"
|
|
xmlns="http://www.w3.org/1999/xhtml">
|
|
<p>
|
|
A human readable message that is appropriate for display
|
|
to the end user.
|
|
</p>
|
|
</xsd:documentation>
|
|
</annotation>
|
|
</element>
|
|
<element name="details" type="xsd:string" minOccurs="0">
|
|
<annotation>
|
|
<xsd:documentation
|
|
xml:lang="EN"
|
|
xmlns="http://www.w3.org/1999/xhtml">
|
|
<p>
|
|
The optional <details> element may contain useful
|
|
information for tracking down errors (e.g a stack
|
|
trace). This information may or may not be appropriate
|
|
for display to an end user.
|
|
</p>
|
|
</xsd:documentation>
|
|
</annotation>
|
|
</element>
|
|
<any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded" />
|
|
</sequence>
|
|
<attribute name="code" type="xsd:int" use="required">
|
|
<annotation>
|
|
<xsd:documentation
|
|
xml:lang="EN"
|
|
xmlns="http://www.w3.org/1999/xhtml">
|
|
<p>
|
|
The HTTP status code associated with the current fault.
|
|
</p>
|
|
</xsd:documentation>
|
|
</annotation>
|
|
</attribute>
|
|
<anyAttribute namespace="##other" processContents="lax"/>
|
|
</complexType>
|
|
|
|
<complexType name="ItemNotFoundAPIFault">
|
|
<complexContent>
|
|
<extension base="csapi:ComputeAPIFault">
|
|
</extension>
|
|
</complexContent>
|
|
</complexType>
|
|
|
|
<complexType name="BuildInProgressAPIFault">
|
|
<complexContent>
|
|
<extension base="csapi:ComputeAPIFault">
|
|
</extension>
|
|
</complexContent>
|
|
</complexType>
|
|
|
|
<complexType name="ServerCapacityUnavailableAPIFault">
|
|
<complexContent>
|
|
<extension base="csapi:ComputeAPIFault">
|
|
</extension>
|
|
</complexContent>
|
|
</complexType>
|
|
|
|
<complexType name="BackupOrResizeInProgressAPIFault">
|
|
<complexContent>
|
|
<extension base="csapi:ComputeAPIFault">
|
|
</extension>
|
|
</complexContent>
|
|
</complexType>
|
|
|
|
<complexType name="ResizeNotAllowedAPIFault">
|
|
<complexContent>
|
|
<extension base="csapi:ComputeAPIFault">
|
|
</extension>
|
|
</complexContent>
|
|
</complexType>
|
|
|
|
<complexType name="ServiceUnavailableAPIFault">
|
|
<complexContent>
|
|
<extension base="csapi:ComputeAPIFault">
|
|
</extension>
|
|
</complexContent>
|
|
</complexType>
|
|
|
|
<complexType name="UnauthorizedAPIFault">
|
|
<complexContent>
|
|
<extension base="csapi:ComputeAPIFault">
|
|
</extension>
|
|
</complexContent>
|
|
</complexType>
|
|
|
|
<complexType name="ForbiddenAPIFault">
|
|
<complexContent>
|
|
<extension base="csapi:ComputeAPIFault">
|
|
</extension>
|
|
</complexContent>
|
|
</complexType>
|
|
|
|
<complexType name="OverLimitAPIFault">
|
|
<complexContent>
|
|
<extension base="csapi:ComputeAPIFault">
|
|
<attribute name="retryAt" type="xsd:dateTime" use="optional">
|
|
<annotation>
|
|
<xsd:documentation
|
|
xml:lang="EN"
|
|
xmlns="http://www.w3.org/1999/xhtml">
|
|
<p>
|
|
An optional dateTime denoting when an operation should
|
|
be retried.
|
|
</p>
|
|
</xsd:documentation>
|
|
</annotation>
|
|
</attribute>
|
|
</extension>
|
|
</complexContent>
|
|
</complexType>
|
|
|
|
<complexType name="AsyncAPIFault">
|
|
<complexContent>
|
|
<extension base="csapi:ComputeAPIFault">
|
|
<attribute name="created" type="xsd:dateTime" use="optional">
|
|
<annotation>
|
|
<xsd:documentation
|
|
xml:lang="EN"
|
|
xmlns="http://www.w3.org/1999/xhtml">
|
|
<p>
|
|
An optional dateTime denoting when the fault
|
|
was created.
|
|
</p>
|
|
</xsd:documentation>
|
|
</annotation>
|
|
</attribute>
|
|
</extension>
|
|
</complexContent>
|
|
</complexType>
|
|
|
|
<complexType name="BadRequestAPIFault">
|
|
<complexContent>
|
|
<extension base="csapi:ComputeAPIFault">
|
|
</extension>
|
|
</complexContent>
|
|
</complexType>
|
|
|
|
<complexType name="BadMediaTypeAPIFault">
|
|
<complexContent>
|
|
<extension base="csapi:ComputeAPIFault">
|
|
</extension>
|
|
</complexContent>
|
|
</complexType>
|
|
|
|
<complexType name="BadMethodAPIFault">
|
|
<complexContent>
|
|
<extension base="csapi:ComputeAPIFault">
|
|
</extension>
|
|
</complexContent>
|
|
</complexType>
|
|
|
|
<complexType name="NotImplementedAPIFault">
|
|
<complexContent>
|
|
<extension base="csapi:ComputeAPIFault">
|
|
</extension>
|
|
</complexContent>
|
|
</complexType>
|
|
|
|
</schema>
|