XOXO (A Semantic Weblog)

What Is XOXO?

Posted on

XOXO is a microformat for the storage and transmission of outline data. Outline data is any nested list information, where you have nodes with subnodes. The specification is similar in purpose to OPML, but has many advantages over that format, including :

  • XOXO can be embedded completely within any XHTML document. Since XOXO is really a subset of XHTML, it is 100% XHTML-compatible. It can be stored as an independant document, but this is not a requirement as it is with OPML.
  • XOXO has predefined fields for common uses. Unlike OPML where all fields are optional/arbitrary and up to individual implementations, XOXO has standardized markup for TEXT, TITLE, HREF, REL, REV, TYPE, and CLASS attributes. One may argue that feed readers have standardized some OPML elements (xmlUrl, for example), however this is not even wholly true (some feed readers use the rssUrl element instead).
  • XOXO can be viewed directly in a webbrowser without any need for extra stylesheets
  • XOXO can be used to make up the actual content of web pages so that those pages are nice to view, but are also easily read by other applications/scripts

For conveniance, XOXO is still fully extendable, with the ability to contain any number of arbitrary fields.

For more information, see the official XOXO specification and the official XOXO-faq.

4 Responses


So this is mainly a format for storing data to be used by applications, right? Similar to XML, but with different specifications?


XOXO is a subset of XHTML, and as such is a subset of XML. It’s purpose is actually more transfer than storage. It’s primary benefit over straight-XML is above : it has predefined fields that parsers can expect, unlike XML where all tag names/attributes are arbitrary.

Leave a Response