RSS, OPML and the XML platform.
Copyright 2003-5 Randy Charles Morin
type is a string, it says how the other attributes of the <outline> are interpreted.
Type and text are the two most common attributes. The type is used to describe the type of current <outline>. For instance, if the <outline> is a container of other outlines, the type attribute is most often missing. Whereas, when the OPML editor identifies a link to another Web document, the <outline> type is often set to "link". RSS readers that import and export blogrolls and reading list, often set the type to "rss". The capitalization of type attribute is not standard and is often written "RSS". I suggest OPML readers treat the type attribute as case insensitive and publishers avoid confusion by using lower-case "link" and "rss". On a rare occasion, I've seen the type set to 'atom' when the <outline> points to an external atom feed, but the convention has been to set the type to 'rss', even when the <outline> is an external atom feed.
text is the string of characters that's displayed when the outline is being browsed or edited. There is no specific limit on the length of the text attribute.
As I'll explain later, some authors have chosen to use title in place of text. The definition of text from the spec, I believe is obvious and doesn't warrant further explanation.
isBreakpoint is a string, either "true" or "false", indicating whether a breakpoint is set on this outline. This attribute is mainly necessary for outlines used to edit scripts that execute. If it's not present, the value is false.
isComment is a string, either "true" or "false", indicating whether the outline is commented or not. By convention if an outline is commented, all subordinate outlines are considered to be commented as well. If it's not present, the value is false.
The isComment and isBreakpoint attributes are IMHO very rare and I can't add any detail beyond the spec.
Following are the <outline> attributes, not described in the OPML spec, but often found in the wilderness of the Web.
A very common mistake in OPML is to use the title attribute instead of text attribute when giving the outline a title. This mistake was made by the implementers of the first RSS readers that imported and exported OPML. The error has propagated as most OPML programmers simply copied these initial implementations, without reading the specification. The mistake is confusing OPML authors. I suggest OPML readers should check for both text and title and publishers should avoid title entirely, or publish both title and text identically.
The OPML editor and many RSS readers use the url to indicate the external location of the <outline>. In the OPML editor, this may be a simple Webpage, Weblog, PDF or any document addressable on the Web. RSS readers usually use the url attribute to indicate the homepage of the blog or RSSified resource.
Although many RSS readers use url to indicate the blog or RSSified resources, others use htmlUrl to indicate the same. I would treat them as the same and suggest OPML readers check for both.
The xmlUrl is usually set to an RSS, Atom or OPML file. For instance, RSS readers will often set the type to "rss", the url to the Webpage and the xmlUrl to the RSS feed URL.
The OPML editor uses the created attribute in an RFC 822 date format to indicate when the <outline> node was created (I guess that was obvious).