--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html>
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <body>
+ <h1>Storage Pool Capabilities XML format</h1>
+
+ <ul id="toc"></ul>
+
+ <h2><a id="Overview">Overview</a></h2>
+
+ <p>The Storage Pool Capabilities XML will provide the information
+ to determine what types of Storage Pools exist, whether the pool is
+ supported, and if relevant the source format types, the required
+ source elements, and the target volume format types. </p>
+
+ <p>The Storage Pool Capabilities XML provides more information than the
+ <a href="/html/libvirt-libvirt-host.html#virConnectGetCapabilities">
+ <code>virConnectGetCapabilities</code>
+ </a>
+ which only provides an enumerated list of supported pool types.</p>
+
+ <h2><a id="elements">Element and attribute overview</a></h2>
+
+ <p>A query interface was added to the virConnect API's to retrieve the
+ XML listing of the set of Storage Pool Capabilities
+ (<span class="since">Since 5.2.0</span>):</p>
+
+<pre>
+<a href="/html/libvirt-libvirt-domain.html#virConnectGetStoragePoolCapabilities">virConnectGetStoragePoolCapabilities</a>
+</pre>
+
+ <p>The root element that emulator capability XML document starts with is
+ named <code>storagepoolCapabilities</code>. There will be any number of
+ <code>pool</code> child elements with two attributes <code>type</code>
+ and <code>supported</code>. Each <code>pool</code> element may have
+ a <code>poolOptions</code> or <code>volOptions</code> subelements to
+ describe the available features. Sample XML output is:</p>
+
+<pre>
+<storagepoolCapabilities>
+ <pool type='dir' supported='yes'>
+ <volOptions>
+ <defaultFormat type='raw'</>
+ <enum name='targetFormatType'>
+ <value>none</value>
+ <value>raw</value>
+ ...
+ </enum>
+ </volOptions>
+ </pool>
+ <pool type='fs' supported='yes'>
+ <poolOptions>
+ <defaultFormat type='auto'</>
+ <enum name='sourceFormatType'>
+ <value>auto</value>
+ <value>ext2</value>
+ ...
+ </enum>
+ <enum name='requiredSourceElements'>
+ <value>device</value>
+ </enum>
+ </poolOptions>
+ <volOptions>
+ <defaultFormat type='raw'</>
+ <enum name='targetFormatType'>
+ <value>none</value>
+ <value>raw</value>
+ ...
+ </enum>
+ </volOptions>
+ </pool>
+ ...
+</storagepoolCapabilities>
+</pre>
+
+ <p>The following section decribes subelements of the
+ <code>poolOptions</code> and <code>volOptions</code> subelements </p>:
+
+ <dl>
+ <dt><code>defaultFormat</code></dt>
+ <dd>For the <code>poolOptions</code>, the <code>type</code> attribute
+ describes the default format name used for the pool source. For the
+ <code>volOptions</code>, the <code>type</code> attribute describes
+ the default volume name used for each volume.
+ </dd>
+ <dl>
+ <dt><code>enum</code></dt>
+ <dd>Each enum uses a name from the list below with any number of
+ <code>value</code> value subelements describing the valid values.
+ <dl>
+ <dt><code>sourceFormatType</code></dt>
+ <dd>Lists all the possible <code>poolOptions</code> source
+ pool format types.
+ </dd>
+ <dt><code>requiredSourceElements</code></dt>
+ <dd>Lists all the required <code>poolOptions</code> source
+ subelements required for a valid source pool element.
+ </dd>
+ <dt><code>targetFormatType</code></dt>
+ <dd>Lists all the possible <code>volOptions</code> target volume
+ format types.
+ </dd>
+ </dl>
+ </dd>
+ </dl>
+ </dl>
+ </body>
+</html>