Re: Empty @typeof

Hi Micah/Toby,

I haven't had chance to check the wording, but Micah is right. :)

A similar issue came up in relation to @rel and @rev (spotted by Ben
and Ivan, I believe), which we fixed. It's a shame that we didn't spot
the related @typeof issue at the same time.

Anyway, the core idea is that there are a number of different ways
that you might end up with an 'empty' value, not just one that is
literally empty.

For example, if you have @typeof="foo", and "foo" is not a known
token, then the default graph will contain no representation of the
type of the bnode. To all intents and purposes, the @typeof is
'empty'.

But since the specification allows other graphs to be created, there
may be some other graph that contains:

  _:bnode a <whatever foo is> .

So if we want to tie two graphs together, we need to know the bonde value.

This means that when we see a @typeof we need to create the bnode,
regardless of whether the @typeof itself contains anything for our
graph, because we cannot tell the difference when parsing between
this:

  typeof=""

and this:

  typeof="notforus"

I.e., we need to unconditionally create the bnode.

Regards,

Mark

On Sun, Sep 7, 2008 at 6:36 PM, Micah Dubinko
<Micah.Dubinko@marklogic.com> wrote:
>
> This is an interesting case.
>
> My impl produces this:
>
> _:bnode dc:title "xyzzy"
>
> Which I think might actually be right.
>
> The mere presence of @typeof triggers creating a new bnode.
> But since it doesn't have a valid CURIE, there is no generated triple with
> rdf:type.
>
> Agree that a minor editorial clarification would be nice.
>
> -m
>
>
> On 9/7/08 2:30 AM, "Toby A Inkster" <tai@g5n.co.uk> wrote:
>
>>
>> What is the meaning of this?
>>
>>    <div about="#foo">
>>      <div typeof="">
>>        <span property="dc:title">xyzzy</span>
>>      </div>
>>    </div>
>>
>> Is "xyzzy" the title of "#foo" or the title of a BNode created by the
>> second <div>?
>>
>> Step #4 and #5 in the processing sequence say "if @typeof is present"
>> then typeof sets a new subject. However, step #6 says of @typeof: "if
>> present, the attribute must contain one or more URIs" (i.e. not zero
>> or more).
>>
>> Can an empty typeof set a new subject, or is it invalid and thus
>> ignored? It would be nice if the syntax document could be clarified.
>>
>> Yes, I know it would be helpful if I'd raised this issue before RDFa
>> reached PR stage, but I've only just noticed it.
>
>
>



-- 
Mark Birbeck, webBackplane

mark.birbeck@webBackplane.com

http://webBackplane.com/mark-birbeck

webBackplane is a trading name of Backplane Ltd. (company number
05972288, registered office: 2nd Floor, 69/85 Tabernacle Street,
London, EC2A 4RR)

Received on Sunday, 7 September 2008 19:49:12 UTC