<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE xep SYSTEM 'xep.dtd' [
  <!ENTITY % ents SYSTEM 'xep.ent'>
%ents;
]>
<?xml-stylesheet type='text/xsl' href='xep.xsl'?>
<xep>
<header>
  <title>XMPP Compliance Suites 2012</title>
  <abstract>This document defines XMPP protocol compliance levels for 2012.</abstract>
  &LEGALNOTICE;
  <number>0302</number>
  <status>Obsolete</status>
  <type>Standards Track</type>
  <sig>Standards</sig>
  <dependencies>
    <spec>RFC 6120</spec>
    <spec>RFC 6121</spec>
    <spec>RFC 6122</spec>
    <spec>XEP-0030</spec>
    <spec>XEP-0045</spec>
    <spec>XEP-0054</spec>
    <spec>XEP-0085</spec>
    <spec>XEP-0114</spec>
    <spec>XEP-0115</spec>
    <spec>XEP-0124</spec>
    <spec>XEP-0163</spec>
    <spec>XEP-0184</spec>
    <spec>XEP-0191</spec>
    <spec>XEP-0198</spec>
    <spec>XEP-0206</spec>
  </dependencies>
  <supersedes>
    <spec>XEP-0270</spec>
  </supersedes>
  <supersededby>
    <spec>XEP-0387</spec>
  </supersededby>
  <shortname>N/A</shortname>
  &stpeter;
  <revision>
    <version>0.1</version>
    <date>2011-07-21</date>
    <initials>psa</initials>
    <remark><p>Initial published version.</p></remark>
  </revision>
  <revision>
    <version>0.0.2</version>
    <date>2011-07-17</date>
    <initials>psa</initials>
    <remark><p>Added RFC 6122, XEP-0184, and XEP-0198.</p></remark>
  </revision>
  <revision>
    <version>0.0.1</version>
    <date>2011-07-06</date>
    <initials>psa</initials>
    <remark><p>Rough draft, copied and modified from XEP-0270.</p></remark>
  </revision>
</header>
<section1 topic='Introduction' anchor='intro'>
  <p>The &XSF; defines protocol suites for the purpose of compliance testing and software certification. This document specifies the 2012 compliance levels for XMPP clients and servers. <note>The XSF neglected to publish compliance suites for 2011; therefore the predecessor to this document is &xep0270;.</note> Unless qualified where explicitly noted, support for the listed specifications is REQUIRED for compliance purposes.</p>
</section1>
<section1 topic='Compliance Levels' anchor='levels'>
  <table caption='XMPP Compliance Levels for 2012'>
    <tr>
      <th>Spec</th>
      <th>Core Server</th>
      <th>Core Client</th>
      <th>Advanced Server</th>
      <th>Advanced Client</th>
    </tr>
    <tr>
      <td>&rfc6120;</td>
      <td align='center'>&#10003;</td>
      <td align='center'>&#10003;</td>
      <td align='center'>&#10003;</td>
      <td align='center'>&#10003;</td>
    </tr>
    <tr>
      <td>&rfc6121;</td>
      <td align='center'>&#10003;</td>
      <td align='center'>&#10003;</td>
      <td align='center'>&#10003;</td>
      <td align='center'>&#10003;</td>
    </tr>
    <tr>
      <td>&rfc6122;</td>
      <td align='center'>&#10003;</td>
      <td align='center'>&#10003;</td>
      <td align='center'>&#10003;</td>
      <td align='center'>&#10003;</td>
    </tr>
    <tr>
      <td>&xep0030;</td>
      <td align='center'>&#10003;</td>
      <td align='center'>&#10003;</td>
      <td align='center'>&#10003;</td>
      <td align='center'>&#10003;</td>
    </tr>
    <tr>
      <td>&xep0115;</td>
      <td align='center'>&#10005;</td>
      <td align='center'>&#10003;</td>
      <td align='center'>&#10003; *</td>
      <td align='center'>&#10003;</td>
    </tr>
    <tr>
      <td>&xep0114;</td>
      <td align='center'>&#10003;</td>
      <td align='center'>N/A</td>
      <td align='center'>&#10003;</td>
      <td align='center'>N/A</td>
    </tr>
    <tr>
      <td>&xep0191;</td>
      <td align='center'>&#10005;</td>
      <td align='center'>&#10005;</td>
      <td align='center'>&#10003;</td>
      <td align='center'>&#10005;</td>
    </tr>
    <tr>
      <td>&xep0124;</td>
      <td align='center'>&#10005;</td>
      <td align='center'>&#10005;</td>
      <td align='center'>&#10003; **</td>
      <td align='center'>&#10005;</td>
    </tr>
    <tr>
      <td>&xep0206;</td>
      <td align='center'>&#10005;</td>
      <td align='center'>&#10005;</td>
      <td align='center'>&#10003; **</td>
      <td align='center'>&#10005;</td>
    </tr>
    <tr>
      <td>&xep0054;</td>
      <td align='center'>&#10005;</td>
      <td align='center'>&#10005;</td>
      <td align='center'>&#10003;</td>
      <td align='center'>&#10003;</td>
    </tr>
    <tr>
      <td>&xep0163;</td>
      <td align='center'>&#10005;</td>
      <td align='center'>&#10005;</td>
      <td align='center'>&#10003;</td>
      <td align='center'>&#10003;</td>
    </tr>
    <tr>
      <td>&xep0045;</td>
      <td align='center'>&#10005;</td>
      <td align='center'>&#10005;</td>
      <td align='center'>&#10003; **</td>
      <td align='center'>&#10003; ***</td>
    </tr>
    <tr>
      <td>&xep0085;</td>
      <td align='center'>N/A</td>
      <td align='center'>&#10005;</td>
      <td align='center'>N/A</td>
      <td align='center'>&#10003;</td>
    </tr>
    <tr>
      <td>&xep0184;</td>
      <td align='center'>N/A</td>
      <td align='center'>&#10005;</td>
      <td align='center'>N/A</td>
      <td align='center'>&#10003;</td>
    </tr>
    <tr>
      <td>&xep0198;</td>
      <td align='center'>&#10005;</td>
      <td align='center'>&#10005;</td>
      <td align='center'>&#10003;</td>
      <td align='center'>&#10003;</td>
    </tr>
  </table>
  <p>* Necessary to support Personal Eventing Protocol (PEP).</p>
  <p>** Support can be enabled via an external component or an internal server module/plugin.</p>
  <p>*** Support for the Entity Use Cases and Occupant Use Cases is REQUIRED; support for the remaining use cases is RECOMMENDED.</p>
</section1>
<section1 topic='Implementation Notes' anchor='impl'>
  <p>Some of the protocol specifications referenced herein have their own dependencies; developers need to consult the relevant specifications for further information.</p>
  <p>Developers are advised to refer to &xep0178; regarding proper implementation of the SASL EXTERNAL mechanism in XMPP.</p>
</section1>
<section1 topic='Security Considerations' anchor='security'>
  <p>This document introduces no additional security considerations above and beyond those defined in the documents on which it depends.</p>
</section1>
<section1 topic='IANA Considerations' anchor='iana'>
  <p>This document requires no interaction with &IANA;.</p>
</section1>
<section1 topic='XMPP Registrar Considerations' anchor='registrar'>
  <p>This document requires no interaction with the &REGISTRAR;.</p>
</section1>
<section1 topic='Acknowledgements' anchor='ack'>
  <p>Thanks to Dave Cridland, Waqas Hussain, Kevin Smith, and Matthew Wild for their feedback.</p>
</section1>
</xep>
