- From: Jos de Bruijn <jos.debruijn@deri.org>
- Date: Fri, 02 May 2008 15:29:51 +0200
- To: Sandro Hawke <sandro@w3.org>
- CC: Michael Kifer <kifer@cs.sunysb.edu>, Axel Polleres <axel.polleres@deri.org>, "Public-Rif-Wg (E-mail)" <public-rif-wg@w3.org>
Sandro Hawke wrote: >> Let me reiterate (for the third time) my extremely simple compromise >> proposal. Here expand(foo) means substitute with the prefix definition of >> foo. >> >> 1. Standalone occurrence: >> foo:bar ---> "expand(foo)bar"^^"http://www.w3.org/2007/rif#iri" >> >> 2. A ^^-occurrence: >> "abc"^^foo:bar ----> "abc"^^"expand(foo)bar" > > I can live with this, if we don't use "^^". This was the second option > in my e-mail, although I accidentally expanded bar as well. > > The problem with ^^ is that it's very distinctive and is used in other > semantic web languages. But in those languages, it's followed by a URI > constant not a string constant. So I'd have to object that re-using > ^^ with this kind of type difference is too confusing to users. I thought that in RIF ^^ is also always followed by an IRI constant? I think we should stick with the ^^ in RIF, because its use actually generalizes the use in the other semantic Web languages. Best, Jos > > In my previous e-mail I wrote a^^b as lit(a,b), which seems about > right. I'm not sure what we should call "lit". SWI-Prolog calls in > "type(b, a)". [1] > > I suppose the obvious thing is "Const", so the change in the grammar is: > > Remove: > > Const ::= '"' UNICODESTRING '"^^' SYMSPACE > > Add (trying to keep current style): > > Const ::= 'Const(' '"' UNICODESTRING ',' '"' SYMSPACE '"' ')' > > Does that work? > > I'd also consider putting the symspace first (as in SWI-Prolog), because > in a sense it's the most-significant part. > >> If you do not like "..." for the after the ^^-part, use '...' or even <...>. >> But, in the latter case, <...> CANNOT be used as a macro. That is, >> >> <abc> --X--> "abc"^^rif:iri. >> >> is a no-no. >> >> My proposal allows some simple form of context sensitivity, but not the >> above <...> macro atrocity (if <...> is also used after the ^^). >> I do not see why we need such a macro in the first place, if in most cases >> we will be using foo:bar. > > I can't think of any reason we need "<" ... ">", but we might. I think > we can leave them out until/unless we need them. > > -- Sandro > > [1] http://www.swi-prolog.org/packages/rdf2pl.html#sec:3.1 > -- Jos de Bruijn debruijn@inf.unibz.it +390471016224 http://www.debruijn.net/ ---------------------------------------------- An expert is a person who has made all the mistakes that can be made in a very narrow field. - Niels Bohr
Received on Friday, 2 May 2008 13:30:04 UTC