Re: Rethinking @src in the context of chaining rules

Manu Sporny wrote:
> Ben Adida wrote:
>> I think we're going to have to bring this to a vote.
> 
> Before we do that, I'd like to make sure we all know what each other is
> talking about, as I see several comments that still show some amount of
> misunderstanding. I'm starting to get confused as well. I believe Mark
> is correct... we're talking about two separate issues, here.

Sure, except they are somewhat dependent.

> Issues:
> 
> #1: @src sets the subject.

Let's phrase it more precisely:

#1. @src sets the subject *and* @about overrides it. Setting a subject
can also complete a hanging @rel and thus also be the object of a
previous triple.

> #2: @resource and @href do not set a new subject when chaining, only
>     @about and @src set a new subject when chaining.

I'm weary of using the word "subject" here, since Mark and I are using
it in slightly different ways.

I think we should word it as follows:

#2: @resource and @href do not complete hanging @rels on their own.

> -----------------------------------------------------------------------
> <div about="#me" rel="foaf:knows">
>    <div about="#mark" />
> </div>
> --------
> <#me> foaf:knows <#mark> .
> -----------------------------------------------------------------------

Yes.

> -----------------------------------------------------------------------
> <div about="#me" rel="foaf:knows">
>    <div resource="#ben" />
>    <div resource="#mark" />
> </div>
> --------
> <#me> foaf:knows <#ben> .
> <#me> foaf:knows <#mark> .
> -----------------------------------------------------------------------

No. That's Mark's point of view. It's not mine, and I thought it wasn't
yours, but maybe it is... that said, look at the last example and see if
you still agree.

In my mind, @resource cannot complete a hanging @rel, there's a hook
missing (@rel or @about in between.)

> -----------------------------------------------------------------------
> <span about="#me" rel="foaf:img">
>    <img src="me.jpg" />
> </span>
> --------
> <#me> foaf:img <me.jpg> .
> -----------------------------------------------------------------------

Yes.

> -----------------------------------------------------------------------
> <span about="#me" rel="foaf:img">
>    <img src="me.jpg" instanceof="foaf:Image"/>
> </span>
> --------
> <#me> foaf:img <me.jpg> .
> <me.jpg> rdf:type foaf:Image .
> -----------------------------------------------------------------------

Yes.

> -----------------------------------------------------------------------
> <img src="me.jpg" instanceof="foaf:Image" rev="foaf:img"
>      resource="#me" />
> --------
> <#me> foaf:img <me.jpg> .
> <me.jpg> rdf:type foaf:Image .
> -----------------------------------------------------------------------

Yes.

> -----------------------------------------------------------------------
> <div about="#me" rel="foaf:knows">
>    <div about="#ben" rel="foaf:knows">
>       <div about="#mark" />
>    </div>
> </div>
> --------
> <#me> foaf:knows <#ben> .
> <#ben> foaf:knows <#mark> .
> -----------------------------------------------------------------------

Yes.

> -----------------------------------------------------------------------
> <span about="http://example.org/ben" rel="foaf:knows">Ben knows
>    <span href="http://example.org/mark" rel="foaf:knows">Mark, who knows
>       <span href="http://example.org/ivan">Ivan</span>
>    </span>
> </span>
> --------
> <http://example.org/ben> foaf:knows <http://example.org/mark> .
> <http://example.org/ben> foaf:knows <http://example.org/ivan> .
> [I believe that this is the point of contention - Mark thinks this
>  should be chained together so that Mark knows Ivan]
> -----------------------------------------------------------------------

No, and I'm pretty sure Mark would disagree with that first triple, too,
because the @rel on the second SPAN comes before the @href.

This example shows a bit how Mark's rules can get confusing. Rewrite the
attributes in a different order here for the second SPAN:

  <span about="http://example.org/ben" rel="foaf:knows">Ben knows
     <span rel="foaf:knows" href="http://example.org/mark">
	Mark
     </span>
  </span>

I just switched the @rel and @href in the inner second SPAN. Remember
how we said that this would yield:

<http://example.org/ben> foaf:knows _:bnode .
_:bnode foaf:knows <http://example.org/mark> .

I'm pretty sure that hasn't changed.

Under Mark's rules, remove the @rel, and now the second triple
disappears and its object collapses all the way to the object of the
first triple.

Mark, let me know if I've misstated, but I think I understand it.

-Ben

Received on Tuesday, 8 January 2008 17:41:29 UTC