Re: Reproducing Gregg/Niklas' thoughts (@itemref issue)

On 7 Dec 2012 15:21, "Ivan Herman" <ivan@w3.org> wrote:
>
> Hi guys,
>
> I tried to reproduce what Gregg/Niklas were considering yesterday and, I
believe, here are the rules that we may define and then use a
post-processing step on the resulting graph that execute those:
>
> INSERT DATA {
>   ?x ?p ?y .
> }
> DELETE DATA {
>   ?x rdfa:ref ?PR .
>   ?PR ?p ?y .
> }
> WHERE {
>   ?x rdfa:ref ?PR .
>   ?PR ?p ?y.
>   ?PR a rdfa:Prototype .
> }
>
> Ie, if I have somewhere:
>
>   <div resource="#p" typeof="rdfa:Prototype">
>     <span property="foo">bar</span>
>   </div>

....ah, so you're using special terms in an rdf vocab, to avoid making
extra syntax?

If this <div> had nested subelements, which part would be in the Prototype?

>   ...
>   ...
>
>   <div resource="#A">
>     <span property="yep">Yep Yep</span>
>     <span property="rdfa:ref" resource="#p"/>
>   </div>
>
> then what I would the following graph:
>
> <#A>
>   <yep> "Yep Yep" ;
>   <foo> "bar" .
>
> <#p> a rdfa:Prototype ;
>   <foo> "bar" .
>
>
> Which is roughly a @itemref as we know it. I think it works and can be
implemented without too much problems.

Thanks for investigating this issue!

> Here, though, the problems I see with this. I do not consider these as
show stoppers but we have to realize those
>
> - As you see, the triples on the prototype itself also make it in the
final graph. I am not sure it is o.k., but I also do not know how to remove
them. We could define, in the SPARQL 1.1 terms, some sort of a property
path based DELETE DATA clause, but implementation of that might be a bit
difficult. I am not sure it is worth it.
>

I assume SPARQL is purely for documentational convenience / spec here, and
not a real dependency?

> - The pattern I used above is of course fine. But what happens if the
user does the following:
>
> <div property="rdf:type" resource="rdfa:Prototype>
>   <span property="foo">bar</span>
> </div>
>
> the subject, ie, the ?PR in the SPARQL pattern, would be anything that
was inherited, which may lead to funny situations. In other words, we do
give a rope to the user to hand himself, although I agree that this is very
much a corner case.

I do worry about mixing vocab and syntax for such reasons.

> - Would the execution of those rules be a required feature? If so, we
would have to talk to the Google implementers (via DanBri) whether they
would implement this at all. If not, the major use case of introducing this
falls...

I don't fully understand. But I'd like to work this through next week with
examples...

cheers,

Dan

> Food for thought...
>
> Ivan
>
>
> ----
> Ivan Herman, W3C Semantic Web Activity Lead
> Home: http://www.w3.org/People/Ivan/
> mobile: +31-641044153
> FOAF: http://www.ivan-herman.net/foaf.rdf
>
>
>
>
>
>

Received on Friday, 7 December 2012 19:00:55 UTC