W3C home > Mailing lists > Public > www-rdf-interest@w3.org > January 2001

Re: Proposal: variables, templates, and Stickey Cyber Molecules

From: Seth Russell <seth@robustai.net>
Date: Wed, 17 Jan 2001 12:40:43 -0800
Message-ID: <3A66034A.FA70FA1D@robustai.net>
To: Tim Berners-Lee <timbl@w3.org>
CC: RDF-IG <www-rdf-interest@w3.org>
Tim Berners-Lee wrote:

> It isn't enough, when you extend RDF to a langauge of logical formulae, that
> you simple identify which idenmtifiers are variables.  You also have to
> connect
> a variable to its scope.  (This is because "for all x there exists y such
> that..." is very different from "there exists y such that for all x...")

But why do we necessarily need only these kinds of "formula" that make claims of
existence?  I intended the expression to mean something more like "if you can
find a set of entities that satisfy this formula, then those are what is being
talked about".   All of that can easily be understood to be implied by the
"?:"   I wasn't  trying to express logical formula that have no particular
content, rather I was trying to express formulas that refer to particular real
situations.

> If you model a formula as a set of nested subexpressions, and model each
> subexpression is a set of RDF statements, then you need a link beween
> the statement set (context) and the variables.  This is what I did with
> the Notation3 hacking. http://www.w3.org/DesignIssues/Notation3.html
> log:forSome and log:forAll to declare variables.

Well yes certainly you want to designate a context.  Did you see my proposal for
stating context in RDF on this group?  Incidentally it's hard for me to
distinguish it from your new syntax in N3 ... you hung it off the syntactic
container, so did I.

> Langauges which use a syntax such as "?x" to declare a variable but don't
> give its scope don't, it seems to me, have the ability to represent
> arbitrary logical expressions.

Actually my proposal does  provide a method of specifying the scope.    And
after some thinking I'd better change it a bit to make it feel better:

   ?:<class or property id>#<any string of letters>

So if i say  ?:Schema#x   That means that any instance of a Schema will stick to
this variable if the rest of the formula is also satisfied with it sticking
there.  Isn't that all the scope we need?  .... assuming of course that we have
also designated the context.

> For examples see the Notation3 Primer http://www.w3.org/2000/10/swap/Primer
> and the linked code which will process rules represented with log:forAll
> and generates RDF.  I am still figuring out what minimal extensions th basic
> RDF/XML syntax are needed for representing the rules tersely. But I think
> the
> model (the asbstract syntax -- the mapping into triples) works.

I love the new N3:)    The log:forAll works perfectly for logical formula.   But
why is it necessary for designating  specific instances of things?

Seth Russell
Received on Wednesday, 17 January 2001 15:33:54 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Monday, 7 December 2009 10:51:47 GMT