RFC Errata
RFC 6120, "Extensible Messaging and Presence Protocol (XMPP): Core", March 2011
Note: This RFC has been updated by RFC 7590, RFC 8553
Source of RFC: xmpp (rai)
Errata ID: 4228
Status: Reported
Type: Technical
Publication Format(s) : TEXT
Reported By: Georg Sauthoff
Date Reported: 2015-01-10
Section A.6. says:
<xs:element name='subject'> <xs:complexType> <xs:simpleContent> <xs:extension base='xs:string'> <xs:attribute ref='xml:lang' use='optional'/> </xs:extension> </xs:simpleContent> </xs:complexType> </xs:element> <xs:element name='thread'> <xs:complexType> <xs:simpleContent> <xs:extension base='xs:NMTOKEN'> <xs:attribute name='parent' type='xs:NMTOKEN' use='optional'/> </xs:extension> </xs:simpleContent> </xs:complexType> </xs:element> Saint-Andre Standards Track [Page 202] RFC 6120 XMPP Core March 2011 <xs:element name='subject'> <xs:complexType> <xs:simpleContent> <xs:extension base='xs:NMTOKEN'> <xs:attribute name='parent' type='xs:NMTOKEN' use='optional'/> </xs:extension> </xs:simpleContent> </xs:complexType> </xs:element>
It should say:
<xs:element name='subject'> <xs:complexType> <xs:simpleContent> <xs:extension base='xs:string'> <xs:attribute ref='xml:lang' use='optional'/> </xs:extension> </xs:simpleContent> </xs:complexType> </xs:element> <xs:element name='thread'> <xs:complexType> <xs:simpleContent> <xs:extension base='xs:NMTOKEN'> <xs:attribute name='parent' type='xs:NMTOKEN' use='optional'/> </xs:extension> </xs:simpleContent> </xs:complexType> </xs:element> Saint-Andre Standards Track [Page 202] RFC 6120 XMPP Core March 2011
Notes:
The issue is that the definition of the referenced element 'subject' is duplicated.
This can be easily tested via a command like:
$ xmllint --schema XMLSchema_1.1.xsd server.xsd --noout
server.xsd:84: element element: Schemas validity error : Element '{http://www.w3.org/2001/XMLSchema}element': Duplicate key-sequence ['subject'] in key identity-constraint '{http://www.w3.org/2001/XMLSchema}element'.
server.xsd fails to validate
The corrected text contains one possible edit how to make the XSD of the server namespace valid again. Of course, another possibility would be to remove the first definition of the 'subject' element.
I've eliminated the second definition because the first one equals the one from section A.5. (Client Namespace).