OPML
From BC$ MobileTV Wiki
Outline Processor Markup Language (commonly abbreviated as OPML) is an XML-based data exchange language intended for aggregation of lists of feeds and other similar items. It is particularly adept at exchanging Atom, RSS and Media RSS reading lists amongst users and applications. [1]
Contents
Specification
- OPML 2.0 spec: http://dev.opml.org/spec2.html
- OPML 1.0 spec: http://dev.opml.org/spec1.html
EXAMPLES
<?xml version="1.0" encoding="ISO-8859-1"?> <opml version="2.0"> <head> <title>mySubscriptions.opml</title> <dateCreated>Sat, 18 Jun 2005 12:11:52 GMT</dateCreated> <dateModified>Tue, 02 Aug 2005 21:42:48 GMT</dateModified> <ownerName>Dave Winer</ownerName> <ownerEmail>dave@scripting.com</ownerEmail> <expansionState></expansionState> <vertScrollState>1</vertScrollState> <windowTop>61</windowTop> <windowLeft>304</windowLeft> <windowBottom>562</windowBottom> <windowRight>842</windowRight> </head> <body> <outline text="CNET News.com" description="Tech news and business reports by CNET News.com. Focused on information technology, core topics include computers, hardware, software, networking, and Internet media." htmlUrl="http://news.com.com/" language="unknown" title="CNET News.com" type="rss" version="RSS2" xmlUrl="http://news.com.com/2547-1_3-0-5.xml"/> <outline text="washingtonpost.com - Politics" description="Politics" htmlUrl="http://www.washingtonpost.com/wp-dyn/politics?nav=rss_politics" language="unknown" title="washingtonpost.com - Politics" type="rss" version="RSS2" xmlUrl="http://www.washingtonpost.com/wp-srv/politics/rssheadlines.xml"/> <outline text="Scobleizer: Microsoft Geek Blogger" description="Robert Scoble's look at geek and Microsoft life." htmlUrl="http://radio.weblogs.com/0001011/" language="unknown" title="Scobleizer: Microsoft Geek Blogger" type="rss" version="RSS2" xmlUrl="http://radio.weblogs.com/0001011/rss.xml"/> <outline text="Yahoo! News: Technology" description="Technology" htmlUrl="http://news.yahoo.com/news?tmpl=index&cid=738" language="unknown" title="Yahoo! News: Technology" type="rss" version="RSS2" xmlUrl="http://rss.news.yahoo.com/rss/tech"/> <outline text="Workbench" description="Programming and publishing news and comment" htmlUrl="http://www.cadenhead.org/workbench/" language="unknown" title="Workbench" type="rss" version="RSS2" xmlUrl="http://www.cadenhead.org/workbench/rss.xml"/> <outline text="Christian Science Monitor | Top Stories" description="Read the front page stories of csmonitor.com." htmlUrl="http://csmonitor.com" language="unknown" title="Christian Science Monitor | Top Stories" type="rss" version="RSS" xmlUrl="http://www.csmonitor.com/rss/top.rss"/> <outline text="Dictionary.com Word of the Day" description="A new word is presented every day with its definition and example sentences from actual published works." htmlUrl="http://dictionary.reference.com/wordoftheday/" language="unknown" title="Dictionary.com Word of the Day" type="rss" version="RSS" xmlUrl="http://www.dictionary.com/wordoftheday/wotd.rss"/> <outline text="The Motley Fool" description="To Educate, Amuse, and Enrich" htmlUrl="http://www.fool.com" language="unknown" title="The Motley Fool" type="rss" version="RSS" xmlUrl="http://www.fool.com/xml/foolnews_rss091.xml"/> <outline text="InfoWorld: Top News" description="The latest on Top News from InfoWorld" htmlUrl="http://www.infoworld.com/news/index.html" language="unknown" title="InfoWorld: Top News" type="rss" version="RSS2" xmlUrl="http://www.infoworld.com/rss/news.xml"/> <outline text="NYT > Business" description="Find breaking news & business news on Wall Street, media & advertising, international business, banking, interest rates, the stock market, currencies & funds." htmlUrl="http://www.nytimes.com/pages/business/index.html?partner=rssnyt" language="unknown" title="NYT > Business" type="rss" version="RSS2" xmlUrl="http://www.nytimes.com/services/xml/rss/nyt/Business.xml"/> <outline text="NYT > Technology" description="" htmlUrl="http://www.nytimes.com/pages/technology/index.html?partner=rssnyt" language="unknown" title="NYT > Technology" type="rss" version="RSS2" xmlUrl="http://www.nytimes.com/services/xml/rss/nyt/Technology.xml"/> <outline text="Scripting News" description="It's even worse than it appears." htmlUrl="http://www.scripting.com/" language="unknown" title="Scripting News" type="rss" version="RSS2" xmlUrl="http://www.scripting.com/rss.xml"/> <outline text="Wired News" description="Technology, and the way we do business, is changing the world we know. Wired News is a technology - and business-oriented news service feeding an intelligent, discerning audience. What role does technology play in the day-to-day living of your life? Wired News tells you. How has evolving technology changed the face of the international business world? Wired News puts you in the picture." htmlUrl="http://www.wired.com/" language="unknown" title="Wired News" type="rss" version="RSS" xmlUrl="http://www.wired.com/news_drop/netcenter/netcenter.rdf"/> </body> </opml>
- Bryan's Reading List on BC$: http://bcmoney-mobiletv.com/bryan/opml
- What Is OPML?: http://opmlviewer.com/Pages/WhatIsOpml (lots of examples)
- RSS feed list for Top 22 Major US Newspapers (as OPML): https://www.quod.us/article/rss-feeds-for-major-us-newspapers
- E-Learning 3.0 course list: https://el30.mooc.ca/course_feeds.xml
- OPML of all Guardian newspaper RSS feeds: http://rss2.io/lists/guardian.opml
Tools
- OPML validator: http://validator.opml.org/ | DEMO
- OPML Editor: http://home.opml.org/ (desktop app for authoring/visualizing OPML)
- OPML Builder: http://reader.feedshow.com/goodies/opml/OPMLBuilder-create-opml-from-rss-list.php (create an OPML outline from a list of RSS feeds)
- OPML Genarator: http://opml-gen.ovh/
- OPML Viewer: http://opmlviewer.com/ (web-based OPML reader) | DEMO
- CodeBeautify - OPML Viewer: https://codebeautify.org/opmlviewer
- BeautifyTools - OPML Viewer: http://beautifytools.com/opml-beautifier.php
- OPML XSL (Browser-based) Translation: http://www.netcrucible.com/xslt/opml.html
- Convert OPML to PDF with a Bash/Shell Script: https://willinspire.us/2018/10/25/convert-opml-to-pdf-with-a-bash-script/
- Twitter Followers' -- OPML Export: https://opml.glitch.me/
Resources
- OPML icon: http://loadaveragezero.com/app/drx/Data_Formats/Markup_Languages/XML/OPML
- OPML DTD: http://dev.opml.org/examples/opmlDtd.txt
- OPML XML Feed list from O'Reilly (previously powered Meerkat, their Blog wire service): http://www.oreillynet.com/pub/q/1247?x-mimetype=text/xml
- OPML Parser (Java): https://github.com/mdewilde/opml-parser[3][4]
- OPML Parser (PHP): http://www.mt-soft.com.ar/2007/12/21/opml-parser-php-class/
- OPML Parser example (C#): https://argotic.svn.codeplex.com/svn/Argotic/Documentation/Microsoft%20.NET%203.5/CodeExamplesLibrary/Core/Opml/OpmlDocumentExample.cs
- Example code to parse ‘Share your OPML’ (Perl): http://nozell.com/blog/2004/01/21/example-perl-code-to-parse-share-your-opml/
- OPML-to-JS: https://github.com/scripting/opmlToJs
- Reading OPML into a structure in NodeJS: https://github.com/scripting/opml
- checkFeedsInOpml: https://github.com/scripting/checkFeedsInOpml (utility that checks if the RSS/Atom feeds in an OPML list are accessible)
Tutorials
- Outliner how to guide: http://fargo.io/docs/outlinerHowto.html
- Introduction – what is the OPML Editor?: http://andysylvester.com/2009/08/12/developing-opml-editor-tools/
- Import an OPML File into Feedly: http://blog.feedly.com/feedlimport/
- Import/Export OPML in Google Reader: http://support.google.com/reader/bin/answer.py?hl=en&answer=69982[5]
- Import OPML RSS Feed Subscription lists (outlines) into Google Reader: http://www.tech-recipes.com/rx/1018/google-reader-how-to-import-opml-files/
- How to export Google Reader feeds into OPML: http://isiria.wordpress.com/2009/01/10/how-to-export-google-reader-feeds-into-opml/[6]
- Export iGoogle Feeds to OPML: http://googlesystem.blogspot.com/2008/07/export-igoogle-feeds-to-opml.html
- Import/Export Feeds in Miro (using OPML): https://develop.participatoryculture.org/index.php/OPML
- RSS and Newsreader Tutorial, Part 5: Using the OPML to load and export multiple feeds in Bloglines: http://www.pajamamarket.com/pajama_market_small_busin/2007/03/rss_and_newsrea_4.html
- How to make an online OPML podcast directory for Nokia's Podcasting app: http://www.allaboutsymbian.com/features/item/How_to_make_an_online_podcast_directory_for_Nokias_Podcasting_app.php
- Finding RSS Feeds on the Internet: http://rss-tutorial.com/rss-finding-feeds-on-the-internet.htm
- What is OPML?: http://chris.pirillo.com/what-is-opml/
- Advice for newbie OPML programmers: http://scripting.com/stories/2011/03/23/adviceForNewbieOpmlProgram.html
- Generating OPML XML: https://techtips101.wordpress.com/2018/09/03/generating-opml-xml/
External Links
- wikipedia: OPML
- OPML explainer: https://indieweb.org/OPML
- Scripting News in OPML: http://backend.userland.com/stories/storyReader$134
- How (and Why) to Create an OPML File: http://marshallk.com/how-to-create-an-opml-file
- Get your podcasts out of iTunes (with OPML): http://www.tuaw.com/2006/02/07/tuaw-tip-get-your-podcasts-out-of-itunes/
- What If You Could Search All Analysts Blogs?: http://mikeg.typepad.com/perceptions/2007/01/what_if_you_cou.html
- Stateful OPML Extensions: http://atnan.com/blog/2007/01/12/stateful-opml-extensions/
- OPML Validator Beta: http://nick.typepad.com/blog/2005/10/opml_validator_.html
- OPML validators round-up: http://www.intertwingly.net/blog/2005/10/31/OPML-validators
- (Thoughts on Dave Winer's) OPML Validator: http://medium.com/pito-s-blog/geek-opml-validator-75c88b7644f3
- What's Wrong with OPML: http://fishbowl.pastiche.org/2005/10/02/whats_wrong_with_opml/
- OPML is coming, again!: http://www.thedigitaledgeblog.com/2007/01/17/opml-is-coming-again
- The Guardian RSS Feeds -- OPML-based feed availability/staleness checker: http://scripting.com/2017/02/12/theGuardiansFeeds.html | [ SRC]
- Linking and the World Outline, Inclusion: worldoutlineinclusion.opml.org/#gettingStarted
- Bloglines (now shutdown) announces support for APML: https://web.archive.org/web/20071122231816/http://www.bloglines.com/about/news#147
References
- ↑ OPML main site: http://opml.org/
- ↑ RSS subscription list example: http://hosting.opml.org/dave/spec/subscriptionList.opml(the primary use of OPML)
- ↑ Java OPML Parser: http://wiki.java.net/bin/view/Javawsxml/OPML
- ↑ More RSS for Java: http://today.java.net/pub/a/today/2003/10/30/rss.html
- ↑ Google Reader - How to Import OPML Files: http://www.tech-recipes.com/rx/1018/google-reader-how-to-import-opml-files/
- ↑ OPML export in Google Reader: http://www.clipotech.com/2007/06/opml-export-in-google-reader.html
See Also
Data Portability | APML | XSPF | XML | RSS | Podcast | ActivityStreams | News