W3C home > Mailing lists > Public > public-rdf-in-xhtml-tf@w3.org > June 2007

Re: Blank nodes & classes

From: Ben Adida <ben@adida.net>
Date: Fri, 22 Jun 2007 08:36:38 -0700
Message-ID: <467BEC86.8090605@adida.net>
To: CÚdric Mesnage <cedric.mesnage@lu.unisi.ch>
CC: public-rdf-in-xhtml-tf@w3.org


CÚdric,

Great discussion with Mark on all of this. Just to reiterate a point
that Mark made in case it was lost in the longer debate: your examples,
including the last one, are all supported by RDFa as it stands. In fact,
your last example *should* work with current RDFa GetN3 bookmarklet.
Have you tried it?

-Ben

CÚdric Mesnage wrote:
> Hi Ben, Mark, all,
> 
> First of all, thank you for your answers, I used Ben's practice to solve
> the problem.
> 
> I am strongly against using URIs to identify resources, one should use
> URLs where you can get more info... so I'll use
> http://amazon.com/ISBN:0091808189 instead of urn:ISBN:0091808189 even if
> amazon do not provide this service yet...
> 
> according to your example, to get the rdfs:label triple, the right
> markup would be:
> 
> <span about="http://amazon.com/ISBN:0091808189" property="rdfs:label">
> Canteen Cuisine
> </span>
> 
> The question seems not to be what is the minimum markup that should give
> a triple but more :
> 
> what is the minimum markup to generate the maximum triples...
> 
> Can we have :
> 
> <span about="http://amazon.com/ISBN:0091808189" property="rdfs:label"
> class="bib:book">
> Canteen Cuisine
> </span>
> 
> which would give:
> 
> <http://amazon.com/ISBN:0091808189> rdf:type bib:book.
> <http://amazon.com/ISBN:0091808189> rdfs:label "Canteen Cuisine".
> 
> and to go back to my example with Ben's solution:
> 
> <div class="foaf:Person" rel="rdf:li">
> some things about the person
> </div>
> 
> which gives the triples :
> 
> <> rdf:li _:whatever.
> _:whatever rdf:type foaf:Person.
> 
> Can we go further than that and do :
> 
> <div class="foaf:Person" rel="rdf:li" property="foaf:name">
> CÚdric Mesnage
> </div>
> 
> or even :
> 
> <div class="foaf:Person" rel="rdf:li" property="foaf:name"
> content="CÚdric Mesnage"/>
> 
> and get:
> 
> <> rdf:li _:whatever.
> _:whatever rdf:type foaf:Person.
> _:whatever foaf:name "CÚdric Mesnage".
> 
> 
> ---
> CÚdric Mesnage
> PhD Student
> cedric.mesnage@lu.unisi.ch <mailto:cedric.mesnage@lu.unisi.ch>
> http://www.cedricmesnage.org
> http://blog.cedricmesnage.org/
> 
> 
> On Jun 21, 2007, at 12:10 PM, Mark Birbeck wrote:
> 
>> Hi Ben/CÚdric,
>>
>> [I'm not proposing a resolution to this question in this version of
>> RDFa, but I think it's useful to collect use-cases.]
>>
>> I had a use-case the other day that is related to the ones you are
>> describing. Essentially the question we all seem to be converging on
>> is what is the minimum amount of mark-up that should give us a triple?
>>
>> So, the following feels quite natural, as a way of marking up the
>> mention of something like a book in my blog:
>>
>>  Today I bought a copy of
>>  <span about="urn:ISBN:0091808189" class="bib:book">
>>    Canteen Cuisine
>>  </span>
>>  from my local bookshop.
>>
>> Since my system uses the URI to retrieve some data about the book from
>> a book site like Amazon, I don't actually need any further triples
>> like title, price, publisher, author, or whatever. But there is a an
>> interesting question as to whether the following should be enough to
>> get an entry in the triple store:
>>
>>  <span about="urn:ISBN:0091808189">
>>    Canteen Cuisine
>>  </span>
>>
>> The system could still do the same thing, and retrieve additional
>> triples based on the resource, but the question is what are the
>> parsing rules that get from this mark-up to a triple?
>>
>> The only way I can think of to achieve this from the mark-up I've
>> shown is be automatically generate labels from the content of
>> elements. The mark-up would therefore generate this:
>>
>>  <urn:ISBN:0091808189> rdfs:label "Canteen Cuisine" .
>>
>> and we would now have the URI for the book in our triple-store, and
>> can make use of it to retrieve further information.
>>
>> Regards,
>>
>> Mark
>>
>> On 13/06/07, Ben Adida <ben@adida.net <mailto:ben@adida.net>> wrote:
>>>
>>>
>>> Cedric,
>>>
>>> This is an interesting question. I had to deal with this with the RDFa
>>> clipboard [1], and I chose to use the predicate rel="rdf:li" on any
>>> bnode I wanted to appear on the page, effectively saying "this bnode is
>>> an item of the current page." For example, in your code below:
>>>
>>> <span class="foaf:Person" rel="rdf:li">
>>> some things about the person
>>> </span>
>>>
>>> which yields:
>>>
>>> <> rdf:li
>>>      [a foaf:Person; ...things about the person...]
>>>
>>> I'm pretty sure this is not a "best practice", but it's the work-around
>>> I came up with for precisely this issue, and it's not all that wrong in
>>> terms of semantics: after all, that *is* an item on the page.
>>>
>>> -Ben
>>>
>>> CÚdric Mesnage wrote:
>>> > Hi all,
>>> >
>>> > I have a question regarding blank nodes in RDFa, I don't know if the
>>> > issue has been raised already and I apologize if it has. In the RDFa
>>> > Primer I saw that you can create unnamed blank nodes using the 'rel'
>>> > attribute as in the example:
>>> >
>>> > <dl class="foaf:Person" about="#card" id="card">
>>> > ...
>>> >  <dt>Address</dt>
>>> >  <dd rel="foaf:address">
>>> >   <span property="foaf:address_line_1">77 Massachusetts
>>> Ave.</span><br />
>>> >     <span property="foaf:address_line_2">MIT Room 32-G524</span><br />
>>> >   <span property="foaf:city">Cambridge</span> MA 02139<br />
>>> >   <span property="foaf:country">USA</span>
>>> >  </dd>
>>> > ...
>>> > </dl>
>>> >
>>> > This works for predicates layered in an instance definition, do you
>>> plan
>>> > having a similar principle for classes? I'd like to have:
>>> >
>>> > <span class="foaf:Person" >
>>> > some things about the person
>>> > </span>
>>> >
>>> > to be considered as a blank node, currently in RDFa On
>>> > Rails(http://rdfa.rubyforge.org/) I generate blank node names this way:
>>> >
>>> > <span class="foaf:Person" about="#BNode1">
>>> > some things about the person
>>> > </span>
>>> >
>>> > incrementing the number through the page generation, but this is ugly.
>>> > The other solution is that I can just forbidden the use of classes
>>> if no
>>> > uri or explicit blank node name is given.
>>> >
>>> > Hope this does make some sense and look forward to get you point of
>>> view.
>>> >
>>> > Best Regards!
>>> > ---
>>> > CÚdric Mesnage
>>> > PhD Student
>>> > cedric.mesnage@lu.unisi.ch <mailto:cedric.mesnage@lu.unisi.ch>
>>> > http://www.inf.unisi.ch/phd/mesnage/
>>> > http://myunderstanding.wordpress.com/
>>> >
>>> >
>>>
>>>
>>>
>>>
>>
>>
>> -- 
>>  Mark Birbeck, formsPlayer
>>
>>  mark.birbeck@x-port.net <mailto:mark.birbeck@x-port.net> | +44 (0) 20
>> 7689 9232
>>  http://www.formsPlayer.com | http://internet-apps.blogspot.com
>>
>>  standards. innovation.
> 
Received on Friday, 22 June 2007 15:36:49 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Tuesday, 8 January 2008 14:15:05 GMT