Specification
September 25th, 2007Please refer to the following pages for information regarding the process of extending RSS:
- http://www.rssboard.org/rss-specification#extendingRss
- http://www.disobey.com/detergent/2002/extendingrss2/
RSSOFX namespace and elements
The proper method for extending RSS to include additional elements to scope the new elements within a namespace (this article does a good job of explaining why). The RSSOFX namespace is quite expectedly called rssofx, with the full path being http://www.rssofx.com). The RSSOFX namespace is declared as part of the rss root element of the RSS XML document:
- <rss version=”2.0″ xmlns:rssofx=”http://www.rssofx.com”>
RSSOFX currently defines 7 additional elements as children of the existing rss item element:
- accountName: the name of the account (like primary credit card)
- accountType: the type of the account (like checking, savings, credit, debit)
- accountInstitution: the institution (like American Express)
- accountBalance: the balance of the account (after this transaction, negative if you owe)
- transactionAmount: the amount of this transaction (debits are negative)
- transactionDescription: the description of this transaction
- transactionCategory: the category of this transaction (like groceries, dining out)
Example Documents
Example RSS document without RSSOFX extensions:
<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
<channel>
<description>American Express Transaction History</description>
<link>http://www.financial-company-site.com</link>
<ttl>30</ttl>
<language>en-us</language>
<item>
<title>$-26.44 - HEB GROCERY #096 AUSTIN - 2 days ago</title>
<description></description>
<pubDate>Sun, 23 Sep 2007 00:00:00 -0500</pubDate>
<link>http://www.financial-company-site.com/?uuid=unique_transaction_id</link>
<guid>unique_transaction_id</guid>
</item>
<item>
<title>$-4.18 - MCDONALDS F14122 00AUSTIN - 2 days ago</title>
<description></description>
<pubDate>Sun, 23 Sep 2007 00:00:00 -0500</pubDate>
<link>http://www.financial-company-site.com/?uuid=unique_transaction_id</link>
<guid>unique_transaction_id</guid>
</item>
</channel>
</rss>
Example RSS document with RSSOFX extensions (note the addition of the rssofx namespace in the rss root element, and the rssofx elements inside the item element):
<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:rssofx="http://www.rssofx.com">
<channel>
<description>AMEX Transaction Historys </description>
<link>http://www.financial-company-site.com</link>
<ttl>30</ttl>
<language>en-us</language>
<item>
<title>$-26.44 - HEB GROCERY #096 AUSTIN - 2 days ago</title>
<description></description>
<pubDate>Sun, 23 Sep 2007 00:00:00 -0500</pubDate>
<link>http://www.financial-company-site.com/?uuid=unique_transaction_id</link>
<guid>unique_transaction_id</guid>
<rssofx:accountName>primary credit<rssofx:accountName>
<rssofx:accountType>credit<rssofx:accountType>
<rssofx:accountInstitution>American Express<rssofx:accountInstitution>
<rssofx:accountBalance>-1048.92<rssofx:accountBalance>
<rssofx:transactionAmount>-26.44<rssofx:transactionAmount>
<rssofx:transactionDescription>HEB GROCERY #096 AUSTIN<rssofx:transactionDescription>
<rssofx:transactionCategory>Groceries<rssofx:transactionCategory>
</item>
<item>
<title>$-4.18 - MCDONALDS F14122 00AUSTIN - 2 days ago</title>
<description></description>
<pubDate>Sun, 23 Sep 2007 00:00:00 -0500</pubDate>
<link>http://www.financial-company-site.com/?uuid=unique_transaction_id</link>
<guid>unique_transaction_id</guid>
<rssofx:accountName>primary credit<rssofx:accountName>
<rssofx:accountType>credit<rssofx:accountType>
<rssofx:accountInstitution>American Express<rssofx:accountInstitution>
<rssofx:accountBalance>-1022.48<rssofx:accountBalance>
<rssofx:transactionAmount>-4.18<rssofx:transactionAmount>
<rssofx:transactionDescription>MCDONALDS F14122 00AUSTIN<rssofx:transactionDescription>
<rssofx:transactionCategory>Dining Out<rssofx:transactionCategory>
</item>
</channel>
</rss>