XEP-50 § 4.3 states about the note's element 'type' attribute:
This attribute is OPTIONAL, and implies "info" if not present.
while the Schema in § 8 makes the 'type' attribute required:
<xs:element name='note'>
<xs:complexType>
<xs:simpleContent>
<xs:extension base='xs:string'>
<xs:attribute name='type' use='required'>
For me as library developer, it's easier to implement the non-optional
case that the schema describes, as it doesn't require an extra case if
the attribute is missing.
Pointed out in https://community.igniterealtime.org/thread/53776
- Florian