- From: Graham Klyne <gk@ninebynine.org>
- Date: Sun, 21 Dec 2003 19:13:53 +0000
- To: "Jos De_Roo" <jos.deroo@agfa.com>
- Cc: www-rdf-interest@w3.org
At 13:34 21/12/03 +0100, Jos De_Roo wrote:
> > BTW, in N3, what do you think this means?:
> >
> > :id :- { :a :b :c .
> > :a1 :b1 :c1 .
> > :a2 :b2 :c2 . }
> >
> > :id :- { :a3 :b3 :c3 . }
> >
> > (all in a single document.)
>
>I really don't know and have seen that ":-" only once
>before (in one of your mails) but can't find it in
>http://www.w3.org/DesignIssues/Notation3
>nor in
>http://www.w3.org/2000/10/swap/grammar/n3-report
Oh, I can't see it there either, but I'm sure it *was* there. Notation3
seems to be something of a moving target ;-) The form :- does appear, for
example, in:
http://dev.w3.org/cvsweb/2001/blindfold/sample/n3.bnf?rev=1.4&content-type=text/x-cvsweb-markup
as:
[[
property_list ::= void # to allow [...].
| verb space+ object_list
| verb space+ object_list space+ ";" space+ property_list
| ":-" anonnode #to allow two anonymous forms to be given
eg [ a :Truth; :- { :sky :color :blue } ] )
| ":-" anonnode ";" property_list
;
]]
(which is linked from http://www.w3.org/DesignIssues/Notation3) as:
"n3.bnf from the blindfold tools")
This happens to be a feature I use quite a lot, in the form:
name :- node-expression
where I have understood it to mean that the name (or expression) to the
left of :- is a referent for the think on the right. Or, in the example above:
[ a :Truth; :- { :sky :color :blue } ]
I think would mean the same as:
{ :sky :color :blue } a :Truth
I must confess that I have never seen this spelled out in detail, but I
have had discussions with some people that tend to confirm this view.
I use it particularly in this form:
ex:someName :- (item1 item2 item3)
to indicate that the first "cons" in the list is identified as ex:someName.
> >> I've never felt the need for more than {triples} names;
> >> those names are written on documents which have URI's
> >> and those URI's are the pivotal points.
> >
> > Er, I'm not following you here
>
>We *call* some-set-of-triples in 2 different ways
>1/ either as
> { some-set-of-triples-in-notation3 }
>2/ or as
> <uri-of-some-set-of-triples>.log:semantics
[I assume that is <uri-of-some-set-of-triples>!log:semantics per the
current (2003-12-21) version of http://www.w3.org/DesignIssues/Notation3]
Ah, I think I see. The difference here would seem to be in the use of
log:semantics. My take on what we *call* some set-of-triples would be:
1/ either as
{ some-set-of-triples-in-notation3 }
2/ or as
<uri-of-some-set-of-triples>
I.e. that the URI and the {...} expression are interchangeable.
To my mind, this:
{ some-set-of-triples-in-notation3 }!log:semantics
would be equally valid. Indeed:
:someName :- [{ some-set-of-triples-in-notation3 }!log:semantics]
would be the same statement as:
:someName log:semantics { some-set-of-triples-in-notation3 }
by my understanding of :- and !
>All that is written in particular documents
>which are URI identified and so we can
>explicitly and precisely load that in engines.
>There is a means to show what was loaded
>and thus trusted.
Yes... I think that name :- { ... } allows one to do the same thing within
a single Notation3 "document".
#g
------------
Graham Klyne
For email:
http://www.ninebynine.org/#Contact
Received on Sunday, 21 December 2003 14:23:28 UTC