OPML
   HOME

TheInfoList



OR:

OPML (Outline Processor Markup Language) is an
XML Extensible Markup Language (XML) is a markup language and file format for storing, transmitting, and reconstructing arbitrary data. It defines a set of rules for encoding documents in a format that is both human-readable and machine-readable. T ...
format for
outlines Outline or outlining may refer to: * Outline (list), a document summary, in hierarchical list format * Code folding, a method of hiding or collapsing code or text to see content in outline form * Outline drawing, a sketch depicting the outer edg ...
(defined as "a tree, where each node contains a set of named attributes with string values"). Originally developed by UserLand as a native file format for the outliner application in its Radio UserLand product, it has since been adopted for other uses, the most common being to exchange lists of web feeds between web feed aggregators. The OPML specification defines an outline as a hierarchical, ordered list of arbitrary elements. The specification is fairly open which makes it suitable for many types of list data. Support for importing and exporting RSS feed lists in OPML format is available in
Mozilla Thunderbird Mozilla Thunderbird is a free and open-source cross-platform email client, personal information manager, news client, RSS and chat client developed by the Mozilla Foundation and operated by subsidiary MZLA Technologies Corporation. The projec ...
, and many other RSS reader web sites and applications.


XML format

The XML elements in an OPML document are: ; <opml version="1.0"> : This is the root element. It must contain the version attribute and one ''head'' and one ''body'' element. ; <head> : Contains
metadata Metadata is "data that provides information about other data", but not the content of the data, such as the text of a message or the image itself. There are many distinct types of metadata, including: * Descriptive metadata – the descriptive ...
. May include any of these optional elements: ''title'', ''dateCreated'', ''dateModified'', ''ownerName'', ''ownerEmail'', ''expansionState'', '' vertScrollState'', ''windowTop'', ''windowLeft'', ''windowBottom'', ''windowRight''. Each element is a simple text element. ''dateCreated'' and ''dateModified'' contents conform to the date-time format specified in . ''expansionState'' contains a comma-separated list of line numbers that should be expanded on display. The ''windowXXX'' elements define the position and size of the display window. An OPML processor may ignore all the ''head'' sub-elements. If the outline is opened inside another outline then the processor must ignore the window elements. ; <body> : Contains the content of the outline. Must have at least one ''outline'' element. ; <outline> : Represents a line in the outline. May contain any number of arbitrary attributes. Common attributes include ''text'' and ''type''. The outline element may contain any number of ''outline'' sub-elements.


Criticism

# The RFC 822 date format is considered obsolete, and amongst other things permits the representation of years as two digits. (RFC 822 has been superseded by RFC 2822 then RFC 5322.) In general, date and time formats should be represented according to
RFC 3339 ISO 8601 is an international standard covering the worldwide exchange and communication of date and time-related data. It is maintained by the Geneva-based International Organization for Standardization (ISO) and was first published in 1988, wit ...
. # Due to the semantics of the "expansionState" attribute: #* The expansion state of the children of collapsed nodes cannot be stored #* When an outline element is expanded, collapsed, added, deleted or moved, the expansion state of all elements below it must be recalculated # Due to the arbitrary nature of the "type" attribute, and the acceptance of arbitrary attributes on "outline" elements, interoperability of OPML documents relies almost entirely on the undocumented conventions of content producers. # MIME types aren't clear; text/xml usually merely identifies the document as having XML content, while text/x-opml does not specify that the document is XML since it lacks the +xml suffix (see
XML and MIME There are two MIME assignments for XML data. These are: *application/xml (RFC 7303, previously RFC 3023) *text/xml (RFC 7303, previously RFC 3023) However, since the introduction of RFC 7303, these are to be regarded as the same in all aspects exce ...
).


Validation

Dave Winer Dave Winer (born May 2, 1955, in Queens, New York City) is an American software developer, entrepreneur, and writer who resides in New York City. Winer is noted for his contributions to outliners, scripting, content management, and web servi ...
has made a request for comments on
proposal for validating OPML
and released a bet
OPML validator
Katy Ginger from DLESE has publishe

for validating OPML 2.0. There is also
DTD available for OPML 1.0


Alternative specifications

Alternative specifications have been proposed, notably these include OML, XOXO and
XBEL The XML Bookmark Exchange Language (XBEL), is an open XML standard for sharing Internet URIs, also known as ''bookmarks'' (or ''favorites'' in Internet Explorer). An example of XBEL use is thXBELiciousapplication, which stores Del.icio.us bookmar ...
. * OML * XOXO – Extensible Open XHTML Outlines *
XBEL The XML Bookmark Exchange Language (XBEL), is an open XML standard for sharing Internet URIs, also known as ''bookmarks'' (or ''favorites'' in Internet Explorer). An example of XBEL use is thXBELiciousapplication, which stores Del.icio.us bookmar ...
– XML Bookmark Exchange Language


See also

*
Data portability Data portability is a concept to protect users from having their data stored in "silos" or "walled gardens" that are incompatible with one another, i.e. closed platforms, thus subjecting them to vendor lock-in and making the creation of data backups ...
* APML – Attention Profiling Mark-up Language *
Feed icon On the World Wide Web, a web feed (or news feed) is a data format used for providing users with frequently updated content. Content distributors ''Web syndication, syndicate'' a web feed, thereby allowing users to ''subscribe'' a channel to it b ...
*
Share icon A share icon is a user interface icon intended to convey to the user a button for performing a share action. Content platforms such as YouTube often include a share icon so that users can forward the content onto social media platforms or embed vi ...


References


External links

*
OPML 2.0 Specification

OPML Editor app

OPML Icon Files

OPML Viewer-Editor


{{DEFAULTSORT:Opml Web syndication formats XML-based standards 2000 software