First draft approved by the XMPP Council.
First draft.
Currently, XHTML-IM (XEP-0071)
These approaches have several drawbacks, including but not limited to:
OPTIONAL.
Inline markup is declared with the <span/> element.
The following child elements are defined for <span/>:
The start and end attributes define the range at which the span is applied. They are in units of unicode code points in the character data if the body element. The first affected codepoint is the one at start (where the first codepoint of a message has index 0) and the last affected codepoint is the one just before end. The above example could render in HTML as:
There is really no reason to worry.
Code blocks are declared with the <bcode/> element:
The start and end attributes work just like for <span/>.
The suggested rendering of code blocks is as block-level elements with monospaced font. The above example could render in HTML as:
Just run this command:
$ cowsay XMPP is awesome.
Itemized lists are declared with the <list/> and <li/> elements:
The start and end attributes of <list/> define the scope of the list. The start of the <li/> elements denote the start of a new list item. A list item continues until the end of the list or the start of the next list item. The first <li/> in a <list/> MUST have a start value equal to the start value of the <list/>.
The above example could render in HTML as:
This XEP supports many things:
A block quote is declared with a <bquote/> element:
In addition, References (XEP-0372)
He said:
> Thou shalt not pass!
and raised his hand.
A nested quotation can be created by adding two <bquote/> elements where the start/end range is nested. If plain text quotation markers are used, the start of the blockquote MUST be placed at the first quotation marker of the outer quote.
The above example could render in HTML as:
> He said:>> Thou shalt not pass!> and raised his hand.
Isn't this from some famous movie?
OPTIONAL.
Entities are encouraged use the semantic information to make the presentation of the textual content more precise, for example by applying spoken emphasis to passages marked with an <emphasis/> <span/>.
Since a message may have multiple <body/> elements in different languages, there MAY be multiple <markup/> elements, one for each of the <body/> elements. There is no requirement to include a <markup/> element for each language.
REQUIRED.
This document requires no interaction with the Internet Assigned Numbers Authority (IANA)
This specification defines the following XML namespaces:
REQUIRED for protocol specifications.
Thanks to Georg Lukas and Emmanuel Gil Peyrot for feedback on the initial idea of this XEP.