OPML
This article relies largely or entirely on a single source. (May 2017) |
Filename extension | .opml |
---|---|
Internet media type |
application/xml, text/xml, text/x-opml |
Uniform Type Identifier (UTI) | org.opml.opml |
UTI conformation | public.xml |
Developed by | UserLand |
Type of format | Outliner |
Extended from | XML |
Website | dev |
OPML (Outline Processor Markup Language) is an
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[3] and in most other RSS reader web sites and applications.[2]
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 RFC 822. 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
This article needs additional citations for verification. (December 2013) |
- The RFC 3339.
- 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 +xmlsuffix.
Validation
Dave Winer, the founder and CEO of Userland, has made a request for comments on a proposal for validating OPML and released a beta OPML validator.
Katy Ginger[clarification needed] from DLESE[clarification needed] has published an XML Schema Document for validating OPML 2.0. There is also a DTD available for OPML 1.0.
Alternative specifications
Alternative specifications have been proposed, notably these include OML, XOXO and XBEL.
- OML – Outline Markup Language
- XOXO – Extensible Open XHTML Outlines
- XBEL – XML Bookmark Exchange Language
See also
- Data portability
- APML – Attention Profiling Mark-up Language
- Feed icon
- Share icon
References
- ^ "OPML 2.0 Specification". Retrieved 18 March 2014.
- ^ a b Fisher, Tim (12 March 2022). "How to Open, Edit, and Convert OPML Files". Lifewire. Retrieved 5 July 2023.
- ^ "How to Subscribe to News Feeds and Blogs | Thunderbird Help". support.mozilla.org. Retrieved 11 June 2019.
- ^ "RFC 5322". RFC editor. Retrieved 21 September 2023.
External links
- OPML 1.0 Specification at the Wayback Machine (archived 2016-03-04)
- OPML 2.0 Specification
- OPML Editor app
- OPML Icon Files
- OPML Viewer-Editor
- OPML Viewer