[rdfweb-dev] Re: [syndication] seeAlso

Dan Brickley danbri at w3.org
Wed Jul 23 07:58:53 UTC 2003


copying foaf list for interest (and non-yahoo archival :)


* Julian Bond <julian_bond at voidstar.com> [2003-07-23 08:00+0100]
> One of the powerful ideas in FOAF is the widespread use of rdfs:seeAlso
> 
> Could this be usefully applied in RSS?

It can be used in any RDF-based format whenever you've mentioned
something and want to reference more (typically machine-processable, RDF) 
info about it elsewhere in the Web. 

In non-RDF formats, you could copy the basic idea, just as you could 
copy aspects of RDF's approach to namespace composition and
extensibility. The idea is of course little more than the old-fashioned 
notion of a hyperlink, so no rocket science here.

If you wanted to use it in RSS, you could do it this way:

Starting with a Movable Type RSS 1.0 feed, http://rdfweb.org/index.rdf

<item rdf:about="http://rdfweb.org/mt/foaflog/archives/000043.html">
<title>nearestAirport documentation in Japanese</title>
<link>http://rdfweb.org/mt/foaflog/archives/000043.html</link>
<description>From kota&apos;s weblog, details on using
&apos;nearestAirport&apos; in FOAF files. Thanks kota! The
&apos;contact:nearestAirport&apos; property is a way of
indicating...</description>
<dc:subject>Documentation</dc:subject>
<dc:creator>danbri</dc:creator>
<dc:date>2003-07-13T11:54:58+00:00</dc:date>
</item>

Let's try augmenting this with more seeAlso'd info about the creator 
of this item.

Aside: There has been some discussion in FOAF-land (and for years previously 
in Dublin Core too) about whether pointing dc:creator at a bunch of 
structure is appropriate/useful/feasible. Currently I've decided to 
use a different property instead, with a defined mapping to simple
textual use of dc:creator. See
http://rdfweb.org/topic/UsingDublinCoreCreator for details on this.

Anyway the rewritten RSS:

<item rdf:about="http://rdfweb.org/mt/foaflog/archives/000043.html">
<title>nearestAirport documentation in Japanese</title>
<link>http://rdfweb.org/mt/foaflog/archives/000043.html</link>
<description>From kota&apos;s weblog, details on using
&apos;nearestAirport&apos; in FOAF files. Thanks kota! The
&apos;contact:nearestAirport&apos; property is a way of
indicating...</description>
<dc:subject>Documentation</dc:subject>
<dc:creator>danbri</dc:creator>
<dc:date>2003-07-13T11:54:58+00:00</dc:date>

<foaf:maker>
  <foaf:Person>
    <!-- some properties about the Person that made the item; we could
         omit most of these, should just leave one identifying property, 
	 such as a mailbox, homepage or mbox_sha1sum or chatID -->
    <foaf:name>Dan Brickley</foaf:name>
    <foaf:mbox rdf:resource="mailto:danbri at rdfweb.org"/>
    <foaf:homepage rdf:resource="http://rdfweb.org/people/danbri/"/>
    
    <!-- a seeAlso pointer, where we can look up more info about the
    Person just mentioned -->
    <rdfs:seeAlso rdf:resource="http://rdfweb.org/people/danbri/rdfweb/danbri-foaf.rdf"/>
  </foaf:Person>
</foaf:maker>  
</item>

As mentioned inline, this is more verbose than it need be. You really
need to mention just enough 'at this end of the link' to identify the
thing described in more detail at the other end. So just a homepage URL
would be fine, for eg.

Other examples could be Geo/mapping:

an item might be about a place. Here's a nice way of seeAlso'ing to some
more context, in this case GeoURL's big database of info relating URLs
to locations:

<item>
<!-- blah blah blah, more rss here -->
<title>the iCite net</title> 
<foaf:topic rdf:parseType="Resource">
  <geo:lat>37.75135</geo:lat>
  <geo:long>-122.43144</geo:long>
  <rdfs:seeAlso rdf:resource="http://geourl.org/rdf/?lat=37.75&lon=-122.45"/>
</foaf:topic>
</item>


Other things to seeAlso -- topics of pages. An item, or channel, could
be about a particular thing (such as a person, or organisation). Or
could seeAlso admin/contact info for maintainer of a channel.


The main impact I expect seeAlso to have on RSS isn't, despite all this, 
inline in the RSS markup. Rather I think we'll see it emerge as a
discovery mechanism. Crawlers can scutter around following seeAlso links
between RDF (FOAF etc) files, and just keep note of RSS (or Atom etc) feeds that
those files mention or link to. There is significant precedent for this
in the way that 'normal' search engines work, so I don't think we're too
much out on a limb here...

Dan











More information about the foaf-dev mailing list