Re: Unasserted triples, Contexts and things that go bump in the night.

On 2002-03-20 13:32, "ext Jeremy Carroll" <jjc@hplb.hpl.hp.com> wrote:

> Pat:
>>>> Another possibility is to allow certain namespaces to be declared to
>>>> be dark, so that any triple using a property from a dark namespace is
>>>> considered to be unasserted. Again, this does not require any change
>>>> to the syntax, but only some extra conventions to be added to the
>>>> language.
>>>> 
> Jeremy:
>>> This could be a namespace prefix rather than the namespace e.g.
>>> 
>>> 
>>> <rdf:RDF xmlns:eg="http://example.org/"
>> xmlns:egdark="http://example.org/"
>>>        rdf:darkPrefixes="egdark">
>>>    <rdf:Description eg:aserted="foo" egd:unasserted="bar" />
>>> 
>>> </rdf:RDF>
>>> 
>>> Jeremy
> Patrick:
>> This becomes problemmatic (in a practical sense) if we want to
>> use the same vocabularies for both asserted and unasserted
>> statements.
> 
> A fair point ... my example is bad stylistically, but does show that the XML
> syntax is as flexible as the n-triple syntax.
> 
> Patrick:
>> An alternative:
>> 
>> How about an element rdf:Expression (or some such) which is in all
>> other ways identical to rdf:Description except that statements
>> are not asserted. E.g.
>> 
>>    <rdf:Expression rdf:about="#Bob>
>>       <ex:age>35</ex:age>
>>    </rdf:Expression>
>> 
>> gives us
>> 
>>     :Bob ex:age "35" ;
>> or
>>     - :Bob ex:age "35" .
>> 
>> This doesn't require any significant changes to current parsers
>> and the only modification is to activate a flag when seeing
>> rdf:Expression rather than rdf:Description and add the non-asserted
>> punctuation when outputting the triples.
> 
> This too is a fair syntax ....
> 
> I suspect somewhat more confusing though ...

Assertion versus non-assertion of a given statement
has nothing to do with the property, so why base
the mechanism on the property namespace prefix?

The primary mechanism for making an asserted statement
in RDF/XML is the rdf:Description element. Thus it seems to me
intuitive to have the mechanism for making non-asserted statements
to be a similar animal, e.g. rdf:Expression (or whatever
you want to name it).

> We still can get the confusion of using the same vocab both ways ...
> 
> e.g.
> 
> <rdf:RDF>
> <rdf:Expression rdf:about="#Bob>
>     <ex:age>35</ex:age>
>  </rdf:Expression>
> <rdf:Description rdf:about="#April>
>     <ex:age>35</ex:age>
>  </rdf:Description>
> </rdf:RDF>
> 

I don't see any confusion. The first produces

   :Bob ex:age "35" ;

and the second

   :April ex:age "35" .

Where is the confusion?

> and would need clarity about embedding
> 
> e.g.
> 
> <rdf:RDF>
> <rdf:Description rdf:about="#April>
>     <ex:foo>
>      <rdf:Expression rdf:about="#Bob>
>         <ex:bar ex:doublyEmbedded="??"/>
>       </rdf:Expression>
>   </ex:foo>
> </rdf:Description>
> </rdf:RDF>
> 
> that clarity could be done (I would favour a one level reading like for
> bagID).

I agree. We should probably also disallow rdf:Description within an
rdf:Expression scope.

Cheers,

Patrick 

--
               
Patrick Stickler              Phone: +358 50 483 9453
Senior Research Scientist     Fax:   +358 7180 35409
Nokia Research Center         Email: patrick.stickler@nokia.com

Received on Wednesday, 20 March 2002 07:06:58 UTC