W3C home > Mailing lists > Public > public-rdf-wg@w3.org > April 2012

Re: regrets and a new spin on contexts

From: Kingsley Idehen <kidehen@openlinksw.com>
Date: Mon, 30 Apr 2012 10:41:52 -0400
Message-ID: <4F9EA4B0.1090904@openlinksw.com>
To: public-rdf-wg@w3.org
On 4/30/12 10:21 AM, Thomas Baker wrote:
> On Mon, Apr 30, 2012 at 12:07:58AM -0500, Pat Hayes wrote:
>>> What bothers me about "contexts" is that it could be taken to mean that the
>>> meaning of an IRI depends on context.  I would not want the notion to be
>>> taken as a license to violate the global context in a local context (think:
>>> global variables and local variables).
>> But that is exactly what it does provide. We may regret this, but it does
>> provide this, um, licence. And this is exactly what Antoine (and others) want
>> to have, as I understand it.
> Understood.  To put it another way, I would not want to convey the message that
> RDF, by default, has a global context, but you're free to redefine IRIs any way
> you'd like in an "RDF Local Context".  Programmers are used to the idea that
> some variables have global scope and others are local to, say, a specific
> function.  A global variable and a local variable may share the same name, but
> are completely different variables. They are separated by a logical firewall.
> This is precisely the image I think we should carefully avoid.  To illustrate
> what I mean with some command-line Python:
>      >>>  x = 1           # Initializes a global variable x with value "1".
>      >>>  def foo(x):     # Defines a function with a local variable x as an argument.
>      ...     print x     # The job of the function is simply to print the value of local variable x.
>      >>>  print x         # Prints the value of global variable x.
>      1                   # We see that the value is "1", as set above.
>      >>>  print foo(2)    # Prints the result when the foo function is called
>      2                   # with the value "2" as an argument, making "2" the value
>                          # of local variable x.
>      >>>  print foo(x)    # Prints the result when the foo function is called
>      1                   # with the value of the _global_ variable x (which is "1")
>                          # as an argument, making "1" the value of local variable x.
> Of course, we cannot stop people from creating local contexts for IRIs that are
> separated by a firewall from the global context; indeed, what people do in the
> privacy of their own firewalls is not our concern.  But we should avoid any
> suggestion that RDF Contexts/Extensions/Views/Lenses... are designed for declaring
> local contexts that are separated from the global context in any _logical_
> sense.
>>> Rather, what we're doing is acknowledging that people "see" or "interpret"
>>> IRIs through particular lenses.
>> What is the difference between a view through a lens and a change of context?
>> Would there be any entailments that hold under one but not the other?
> To me, the subject of a triple using this (to-be-named) property _is_ the
> context:
>      >  As I picture it, given
>      >
>      >      <a>  rdf:lens<b>
>      >
>      >  <a>  is the "context", and<b>  is some kind of document.
> The context<a>  already exists and is simply being viewed through the lens of
> <b>.  In other words,<b>  is not a _new_ context, just a lens through which to
> view an existing context.<a>  is the context to which lens<b>  applies.  (Yes,
> I see how this could be explained as "putting<a>  into context<b>", but that
> is precisely how I would _not_ spin it.)
>>>   In terms of message, the act of "seeing" or "interpreting" an object does
>>>   not imply that the object that everyone sees is actually being
>>>   transformed.
>> Hmm. So for example (trying to understand here....) "seeing" carbon as a
>> mixture of isotopes rather than a single element is a different lens 'view'
>> of the same real thing. Or taking 'person' to mean 'american person' is a
>> kind of zoom lens.
> Exactly.
>> Yes, that is an attractive analogy, indeed.
>>>   Maybe something along the lines of "RDF
>>> Interpretations" or "RDF Lenses"?
>> Not "interpretation" (the semantics has already used that one) but how about "view" ? Or "perspective"?? Or "angle" ???
> Something like that, exactly.  I think we're on the same page.
>> Then the 'inherits' property could be called rdf:inView  or just rdf:view or
>> rdf:scope (as in telescope or microscope.) In fact, we could call them 'rdf
>> scopes', it occurs to me:
> I like "view" alot better than "scope" -- see the use of "global scope" and
> "local scope" in the example above.  View, perspective, angle, lens... -- as
> far as I know, these are all far removed from the language of computer
> programming and are thus then less likely to send the wrong message.
> What I like about "lens" is that a lens, almost by definition, somehow alters
> -- magnifies, distorts, refracts, corrects, whatever -- the view.  As I see it,
> people are seeing the context from a particular (point of) "view",
> "perspective", or "angle", but they are seeing it _through_ the "lens".  It is
> this instrument -- the lens -- that interests us, not the thinking underlying
> the design of the lens.
> Tom

How about:  "context lenses" ?

A context oriented lens is basically a specific kind of view.



Kingsley Idehen	
Founder&  CEO
OpenLink Software
Company Web: http://www.openlinksw.com
Personal Weblog: http://www.openlinksw.com/blog/~kidehen
Twitter/Identi.ca handle: @kidehen
Google+ Profile: https://plus.google.com/112399767740508618350/about
LinkedIn Profile: http://www.linkedin.com/in/kidehen

Received on Monday, 30 April 2012 14:42:24 UTC

This archive was generated by hypermail 2.4.0 : Friday, 17 January 2020 17:04:16 UTC