Re: [ogpx] issue : naming of capabilities in OGP

Infinity Linden <infinity@lindenlab.com> Mon, 01 June 2009 05:03 UTC

Return-Path: <infinity@lindenlab.com>
X-Original-To: ogpx@core3.amsl.com
Delivered-To: ogpx@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id E4EAC3A6C44 for <ogpx@core3.amsl.com>; Sun, 31 May 2009 22:03:15 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 0.478
X-Spam-Level:
X-Spam-Status: No, score=0.478 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, FM_FORGED_GMAIL=0.622, FRT_ADOBE2=2.455]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 2te1EnJtpFh9 for <ogpx@core3.amsl.com>; Sun, 31 May 2009 22:03:15 -0700 (PDT)
Received: from yx-out-2324.google.com (yx-out-2324.google.com [74.125.44.28]) by core3.amsl.com (Postfix) with ESMTP id CA0A23A69C4 for <ogpx@ietf.org>; Sun, 31 May 2009 22:03:14 -0700 (PDT)
Received: by yx-out-2324.google.com with SMTP id 8so7387319yxb.49 for <ogpx@ietf.org>; Sun, 31 May 2009 22:03:12 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.100.47.10 with SMTP id u10mr6606199anu.17.1243832592178; Sun, 31 May 2009 22:03:12 -0700 (PDT)
In-Reply-To: <8B62A039C620904E92F1233570534C9B0118CD95EC85@nambx04.corp.adobe.com>
References: <3a880e2c0905291356w64a89d1an640ed68196225911@mail.gmail.com> <3a880e2c0905291359r6383f485u12ba2235a963b46d@mail.gmail.com> <8B62A039C620904E92F1233570534C9B0118CD95EC85@nambx04.corp.adobe.com>
Date: Sun, 31 May 2009 22:03:12 -0700
Message-ID: <3a880e2c0905312203u211d702bp1c685b41dfc04311@mail.gmail.com>
From: Infinity Linden <infinity@lindenlab.com>
To: Larry Masinter <masinter@adobe.com>
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit
Cc: "ogpx@ietf.org" <ogpx@ietf.org>
Subject: Re: [ogpx] issue : naming of capabilities in OGP
X-BeenThere: ogpx@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: Virtual Worlds and the Open Grid Protocol <ogpx.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/ogpx>, <mailto:ogpx-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/ogpx>
List-Post: <mailto:ogpx@ietf.org>
List-Help: <mailto:ogpx-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/ogpx>, <mailto:ogpx-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 01 Jun 2009 05:03:16 -0000

On Sun, May 31, 2009 at 12:38 PM, Larry Masinter <masinter@adobe.com> wrote:
>
> The main thing that isn't clear is what the namespace denotes,
> though, and why any of the other existing capability namespaces
> aren't adequate.

the existing namespace is a collection of names that sort of "evolved"
during the OGP beta last year. things like "place/avatar" and
"remove/avatar." so the idea of having the URN is that it lets the
community define standard capability names while letting individual
deployers define new services or new revisions of existing services.

for example, let's say we defined a named capability that was used by
the client to signal the agent domain to begin the process of rezzing
an avatar somewhere. we might want to call it
"urn:ogp:/agent/avatar/place". this would be distinct from the
capability the agent domain requests from the region domain to place
the avatar, which might be called "urn:ogp:/region/avatar/place".
Someone at example.com might have an idea for how to improve this
process, and might define a named capability called
"urn:ogp:example.com/region/avatar/place". For the system to function
properly, we just need to make sure distinct capability names are...
well... distinct. this format (should) make it much more clear what's
going on when people are debugging the protocol stream. like someone
might look at the stream as part of debugging and go... "oh! now i
understand why this isn't working, it's cause we're asking the region
for the _regular_ avatar/place cap, not the example.com avatar/place
cap!!!"

it also allows two organizations: we'll call them example.net and
example.com to both create their own named capabilities for their own
experiments or custom protocols. and again... the purpose of the
distinct capability names is so the client may ask for distinct
capabilities that support distinct interaction semantics. if a server
provides both a standard capability AND a custom capability, it's
signaling the client that it supports both protocol flows.

> If the capabilities are about "world location", for example,
> or "presence information" about someone/someone's avatar's
> "location", why the namespace of geographic locations aren't
> used instead, etc. etc.

named capabilities denote a function, not a location. so you might
have something like "urn:ogp:/location/find" to request a capability
from a region domain that allows a client application to search for a
location "in world." So the caps namespace isn't the  same as the
namespace of public protocol endpoints, but rather a simple
identifier. In OGP, you request named capabilities after
authentication / authorization. So if you wanted to have each location
in the virtual world be addressable as a named capability, you would
end up having to relog every time you wanted to find information about
a new location.

hmm.. rereading the section of the auth spec or the intro/requirements
doc, it's not especially clear how named capabilities are to be used.
lemme try to post some more about that on the list this week. maybe we
could refine the discussion and find an succinct answer to the
question "what kind of services are requested with named
capabilities?"

-cheers
-meadhbh


>
> Larry
> --
> http://larry.masinter.net