[uf-discuss] Proposal: Mandatory connection of a XFN to a "source" hCard and a "target" hCard

Costello, Roger L. costello at mitre.org
Wed Mar 19 04:36:31 PST 2008

Hi Folks,

Below is a proposal.  The proposal is based on the following assertion.


An expression of a relationship is useful only if you know who is the
source and who is the target of the relationship.  


??? is friends with ??? is not useful.  

But Alice is friends with Bob is useful.
     ^          ^          ^
     |          |          |
     |          |          |
   source   relationship target


XFN relationship information is useful only if an *application* (e.g.
robot) can dynamically determine who is the source and who is the
target of the relationship.


Today, an XFN relationship can be expressed without any indication of
who is the source and who is the target of the relationship.
Typically, the information about who is the source is present on the
web page containing the XFN.  But that information can be *anywhere*
and in *any form*.  Thus, given an *arbitrary web page* containing XFN,
it is not possible for a robot application to determine who is the
source individual.  Ditto for the target individual.  At best, the
source and target information is obtained with an extreme level of
coding effort which is unlikely to be successful with all web pages
(natural language processing is required).

Note: "The source is the person who created the web page that contains
the XFN."  That is not correct, as the following example illustrates.
Besides, even if it were true (which it's not), a robot application
would not know who "created the web page."  That information must be
embedded within the web page.  Ditto for the target.


Here's an example usage of XFN on a Flickr page:

<a href="/photos/24172116 at N08/" rel="contact">
03935044#24172116 at N08" 
         alt="Jolene_A" width="48" height="48" /><br />

Notice the use of XFN: >>> rel="contact" <<<

Also notice that there is no indication of who is stating this
relationship or who is the target of this relationship, i.e. to a robot
application this is what the XFN indicates ??? contact ??? which is


1. If XFN is used on a web page then that web page MUST contain an
hCard of the person that represents the source of the relationship.

Example: Consider a web page that uses XFN:
   <a href="..." rel="friend">

Suppose that the intended source individual is Alice, i.e. Alice is
friends with xxx  Then somewhere on the web page there MUST be an hCard
for Alice, e.g.

   <div id="vcard"> 
      <div class="fn">Alice</div>

2. There MUST be a mechanism that connects the XFN to the hCard that
represents the source individual.  Or, there MUST be a mechanism on the
hCard that connects it to the XFN.

3. The target of the XFN-bearing hyperlink MUST contain an hCard that
represents the target individual.  And there MUST be some mechanism
that connects the XFN to that target individual's hCard.

Exception: if the XFN is "me" then the hCard MAY not be repeated in
both the web page of the source and the web page of the target.


Are there any other requirements?  

Note: I am focusing just on the requirements at the present time. I'd
like to collect all of the requirements prior to thinking about how it
would be expressed in HTML.


More information about the microformats-discuss mailing list