How to check for Trackback-enabled syndication feed?

Topics: Argotic.Common, Argotic.Core, Argotic.Extensions
Dec 13, 2007 at 12:52 PM
I'm looking for using the Argotic framework to send pingbacks and trackbacks, but I can't find what to use to check if a syndication feed item can be trackbacked.
There is an IsPingbackEnabled utility method that handles the problem for pingbacks, but not for trackbacks.

The only way I thought it can be done is by checking if the feed item has a Trackback extension. That's ok and it is perfectly clear how to do it, but I'm not sure if that handles all cases.
Coordinator
Dec 13, 2007 at 3:54 PM
Emil,

Per the Trackback specification, auto-discovery of trackback notification endpoints is enabled through embedded RDF elements in the web resource. I have added a IsTrackbackEnabled(Uri) method for the next release of the framework. For now you would need to request the web resource, get the response stream, and parse it for one or more <rdf:RDF> elements that match the identifier of the resource. For more information on trackback auto-discovery, see http://www.sixapart.com/pronet/docs/trackback_spec.

The specification provides the following as an example embedded RDF element you would need to parse for:

<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/"
>
<rdf:Description
rdf:about="http://www.foo.com/archive.html#foo"
dc:identifier="http://www.foo.com/archive.html#foo"
dc:title="Foo Bar"
trackback:ping="http://www.foo.com/tb.cgi/5"
/>
</rdf:RDF>
Dec 14, 2007 at 1:37 PM
Thank you, Oppositional.

I've implemented a IsTrackbackEnabled and LocateTrackbackServer by my own and they seems to work properly.