<abstract>This specification describes a generic method whereby content in messages can be tagged as having a specific Internet Content Type. It also provides a method for sending the same content using different content types, as a fall-back mechanism when communicating between clients having different content type support.</abstract>
&LEGALNOTICE;
<number>xxxx</number>
<status>ProtoXEP</status>
<type>Standards Track</type>
<sig>Standards</sig>
<approver>Council</approver>
<dependencies>
<spec>XMPP Core</spec>
<spec>XEP-0030</spec>
</dependencies>
<supersedes/>
<supersededby/>
<shortname>content</shortname>
&peterwaher;
<revision>
<version>0.0.1</version>
<date>2016-01-15</date>
<initials>pw</initials>
<remark>
<p>First draft.</p>
</remark>
</revision>
</header>
<section1topic='Introduction'anchor='intro'>
<p>
Sometimes it is desirable for clients to communicate, or to send messages between each other, using a well defined Internet Content Type.
Reasons can vary between the purely esthetic to funcional data-exchange. While there are XEPs, such as &xep0071; that provides means for
sending richer content using a specific type, this extensions provides a similar mechanism, but for the general case of any content having
a defined Internet Content Type.
</p>
<p>
<strong>Note:</strong> While the examples in this extensions uses Markdown as an example, any other text-based content type can be used.
</p>
</section1>
<section1topic='Use Cases'anchor='usecases'>
<section2topic='Content type hint'anchor='hint'>
<p>
The simplest use case is hinting at the content type of the textual content presented in the message body. This is done by aggregating
a <strong>content</strong> element of namespace <strong>urn:xmpp:content</strong> to the message, with the attribute <strong>type</strong>
specifying the content type. If the element does not provide a value, it is understood that the body contains the textual body of the
content. This method should only be used if there's no risk of misunderstanding the message if the content type is not understood by
the receiver, and the textual representation is readable. Example:
The <linkurl="#schema">protocol schema</link> needs to be added to the list of <linkurl="http://xmpp.org/resources/schemas/">XMPP protocol schemas</link>.