It’s just data

Value of Uniform Interfaces

The first usage of RSS was to flow data from news producer to portals.  Over time, this evolved into a flow from weblog servers to aggregators.

One of the first truly novel uses of RSS is as a weblog archive format.  In the case of Radio, this required the addition of some tool specific elements, but that is not a problem as RSS 2.0 is extensible through namespaces.  Now, we have a flow from weblog servers to weblog servers.

With the SOAP interface to the RSS validator, we have RSS (with some optional wrapper elements) flowing from weblog software to a validator.  Dave already demonstrated that weblog archives validate as RSS.  This is the beginnings of the network effects that can be possible if common exchange formats are adopted - no new validator needed to be written.

I have suggested that Wouldn't It Be Nice If a converged pingback / trackback mechanism were to focus on a simple POSTing of an RSS fragment (i.e., with perhaps some of the unnecessary RSS wrapper elements removed).  If such a suggestion were adopted, I would gladly modify the existing RSS validator to be able to validate such requests.

At the moment, there is a schism between the Blogger API and the MetaWeblog API.  These both may have their place, but I would like to suggest that weblogging software consider support of the dramatically simpler RESTLog API, possibly in addition to one or both of the above.

Why do I say it is dramatically simpler?  Let's propose a challenge.  In the spirit of the BDG to SOAP 1.1 which exposed all of the machinery of SOAP, I'd like to request that proponents of either the Blogger API or the MetaWeblog API produce a similar BDG for their protocols, and would like to request that it include the first item from the Radio Weblog Post Module example.  I'll start by providing a sample for RESTLogPost.

Any takers?


Speaking of uniform interfaces, I'd like to see a uniform API for posting comments to blogs. Reading items in a news aggregator then posting responses via a browser (even if it is embedded in the aggregator) is lame.

I'd really hate to resort to comment posting "plugins" for various blogs just to get this feature.

Posted by Dare Obasanjo at

Dare: Take a wild guess what I'd propose? Hint: POST /blog/1104.html

P.S. Don't try it... yet. ;-)

Posted by Sam Ruby at

When reading through the RESTLog API, it is obvious that there is a hole as far as comments and threading(e.g. pingback/trackback) are concerned. Sam is definitely on the right path here. What I'd like to see, however, is a convergence of Comments, Pingbacks and Trackbacks. When someone responds to a post on my blog by posting an entry on their blog, that is essentially a comment. Why should there be two separate ways to do threading in blogs (one by clicking on the comment button and another by posting on a blog)?

To accomplish this, simply do what Sam suggests and add a POST verb to the Item URL. What you're POSTing is the RSS fragment of the blog entry.

Posted by James Snell at

RESTLog++

A discussion over on Sam's blog got me thinking about the completeness of the RESTLog API. From what I see,... [more]

Trackback from snellspace

at

Could Dare's request by supplied by TrackBack? Particularly if you provide a browser form interface? Isn't a comment is a comment is a comment[1]? ;) <tim/>

[1] http://www.intertwingly.net/blog/1089.html

Posted by Timothy Appnel at

Don't we have this already?

Jeremy Allaire is points to an RFC to extend the MetaWeblog API to handle binary media. I thought the RFC that he highlights is generally misguided and reinvents the wheel. Hear me out. UPDATE: Sam Ruby makes some likeminded comments and issues a challenge to the MetaWeblog and Blogger API advocates.... [more]

Trackback from tima thinking outloud.

at

I actually provide a browser form interface to trackback too... in my implementation, the differences are very subtle... person's name vs blog_name. comment vs excerpt. e-mail doesn't have a match. title can be overridden on trackback. url of blog vs url of blog entry. All are small details.

See What does a Trackback URI identify? for more information.

Posted by Sam Ruby at

Exactly my point Sam. :) Great work.

Posted by Timothy Appnel at

Sam: After future review of your sample RESTLog POST I realized it isn't entirely correct as I understand Joe's work. You declare the Dublin core module and dc namespace and don't use it. There is no really harm other some the loss of some extra bytes. The bigger issues are the tags you used in the item block. When Joe first introduced RESTLog, I commented on my weblog that "the interface needs to be more specific by setting very clear constraints and guidelines particularly when it comes to RSS 2.0. Interoperability and the reliable expectation of elements are issues without additional constraints because the RSS 2.0 format is too loose and ambiguous otherwise." Joe agreed and bought into most of the concepts (we disagreed on the use of a RSS namespace) in the XSS profile I proposed -- a simple reliable core with extensions in namespaces. (Sound familar?) Tags such as <source> and <pubdate> are considered depreciated in favor of <link> (or perhaps annotate:reference) and <dc:date>. Since Joe's use of RSS structures is clearly outside of its common use, I think these added restrictions are reasonable and legal within RSS 2.0.

Posted by Timothy Appnel at

OK, I've removed the unnecessary namespace declaration.

While I'd love to see RSS tightened up, I see nothing in the RESTLog API that precludes the use of elements you consider deprecated.

I'm still waiting for someone to notice that one of those "deprecated" elements - despite being in RSS 2.0's "core" - has no defined way of being transported using the MetaWeblog API.

Posted by Sam Ruby at

http://wellformedweb.org/news/5

Under RSS Fragment:
"All the actions that deal with content type 'xml' are transporting items. Items are formatted
as 'item' elements from RSS 2.0. The items
must additionally conform to the RSS 2.0/XSS-extensible profile with the exception of defining the default namespace."

Posted by Timothy Appnel at

I've a posted partial XML RPC and a hypothetical full SOAP version of this API.

Posted by Sam Ruby at

RSS has no verbs

  Mark Baker:  Excellent.  Organized roughly from least controversial to most controversial.  I agree with more than half of this list.  This means that there is much common ground. Rather than dwelling on details, what I believe is that the Internet i... [more]

Trackback from Sam Ruby

at

RSS has no verbs - again

Now that I have read more on Sam Ruby's site - particularly value of uniform interfaces and the RESTlog API, I see now that I misread his take on RSS not having any verbs. I find myself in violent agreement with Sam.Isn't this just beautiful?....

Excerpt from Sean McGrath, CTO, Propylon at

RESTlog vs. XML-RPC weblog protocols.

Sam Ruby: Any takers? Me! That is, I'm conviced that RESTlog should be the primary weblog interface. The idea of using RSS fragments to do the posting is very compelling. Its already extensible via namespaces so we don't have to wait on RFCs to...

Excerpt from OpenWeblog.info at

Slightly uniform interfaces

There's a lot of power in uniform interfaces, for one, it means I can write a single tool that should work with any server that implements that uniform interface. In reality, it seems that the various XML-RPC based blogging API's are slightly ...

Pingback from Simon Fell > Its just code : Saturday, March 22, 2003

at

Slightly uniform interfaces

There's a lot of power in uniform interfaces, for one, it means I can write a single tool that should work with any server that implements that uniform interface. In reality, it seems that the various XML-RPC based blogging API's are slightly...

Excerpt from Simon Fell at

MetaWeblog API support in Roller

Turns out, I didn't have to steal much code from Blojsom to get MetaWeblog API support going in Roller. I ended up only stealing method signatures, Javadocs, and logging statements (thanks guys!). Roller and Blojsom are so different and the Blogger...

Excerpt from Blogging Roller at

Add your comment