W3C home > Mailing lists > Public > public-vocabs@w3.org > September 2014

Fwd: Re: Comparing Activity Streams / Schema.org / Hydra (former: 'Fwd: Schema.org applies W3C Patent Policy')

From: ☮ elf Pavlik ☮ <perpetual-tripper@wwelves.org>
Date: Tue, 02 Sep 2014 22:38:51 +0200
Message-ID: <54062ADB.4030406@wwelves.org>
To: "public-vocabs@w3.org" <public-vocabs@w3.org>
CC: jasnell@gmail.com
I just proposed collaboration on comparing those technologies as part of
our work in Social Web Working Group [1]

Would someone here like to join me on this endeavor?

[1] https://www.w3.org/wiki/Socialwg


-------- Original Message --------
Subject: Re: Comparing Activity Streams / Schema.org / Hydra (former:
'Fwd:  Schema.org applies W3C Patent Policy')
Resent-Date: Tue, 02 Sep 2014 14:43:14 +0000
Resent-From: public-socialweb@w3.org
Date: Tue, 2 Sep 2014 07:42:23 -0700
From: James M Snell <jasnell@gmail.com>
To: ☮ elf Pavlik ☮ <perpetual-tripper@wwelves.org>
CC: public-socialweb@w3.org <public-socialweb@w3.org>,
public-social-interest@w3.org <public-social-interest@w3.org>

A review on these would be helpful.

The model in AS2 is straightforward. For every object, there is an
"actions" property whose value is a map of potential actions. This map
takes the form of a JSON object mapping verb identifiers to so-called
"action handlers". An action handler is a declarative description of
how to carry out some kind of action.

Where schema.org/Actions, Hydra and the AS2 Action Handlers specs
overlap is on the definition of those "action handlers". Where
schema.org/Actions and AS2 conflict is on the use of the "actions"
property in AS2 vs. "potentialAction" in schema.org.

(It's worthwhile to note that the Activity Streams 2.0 [1] and Action
Handlers [2] specifications are distinct documents.)

[1]
http://jasnell.github.io/w3c-socialwg-activitystreams/activitystreams2.html
[2]
http://jasnell.github.io/w3c-socialwg-activitystreams/activitystreams2-actions.html

So, for example, if we take an example given by the schema.org/Actions
documentation:

{
  "@context": "http://schema.org",
  "@type": "Restaurant",
  "name": "Tartine Bakery",
  "potentialAction": {
    "@type": "ViewAction",
    "target": [
      "http://www.urbanspoon.com/r/6/92204",
      {
        "@type": "EntryPoint",
        "urlTemplate": "http://api.urbanspoon.com/r/6/92204",
        "contentType": "application/json+ld"
      },
      "android-app://com.urbanspoon/http/www.urbanspoon.com/r/6/92204",
      {
        "@type": "EntryPoint",
        "urlTemplate": "urbanspoon://r/6/92204",
        "application": {
          "@type": "SoftwareApplication",
          "@id": "284708449",
          "name": "Urbanspoon iPhone & iPad App",
          "operatingSystem": "iOS"
        }
      },
      {
        "@type": "EntryPoint",
        "urlTemplate": "urbanspoon://r/6/92204",
        "application": {
          "@type": "SoftwareApplication",
          "@id": "5b23b738-bb64-4829-9296-5bcb59bb0d2d",
          "name": "Windows Phone App",
          "operatingSystem": "Windows Phone 8"
       }
      }
    ]
  }
}

The equivalent definition in AS2 would something look like:

{
  "objectType": "http://schema.org/Restaurant",
  "displayName": "Tartine Bakery",
  "actions": {
    "view": [
      "http://www.urbanspoon.com/r/6/92204",
      {
        "objectType": "HttpActionHandler",
        "id": "http://api.urbanspoon.com/r/6/92204",
        "mediaType": "application/json+ld"
      },
      "android-app://com.urbanspoon/http/www.urbanspoon.com/r/6/92204",
      {
        "objectType": "application",
        "id": "urbanspoon://r/6/92204",
        "appid": "284708449",
        "displayName": "Urbansppon iPhone & iPad App",
        "operatingSystem": "iOS"
      },
      {
        "objectType": "application",
        "id": "urbanspoon://r/6/92204",
        "appid": "5b23b738-bb64-4829-9296-5bcb59bb0d2d",
        "displayName": "Windows Phone App",
        "operatingSystem": "Windows Phone 8"
      }
    ]
  }
}

I have not looked at Hydra in enough detail yet to know how the
example would translate there.

The approaches that schema.org/Actions and AS2 Actions take differ in
a number of fairly obvious ways. Both, however, are capable of
expressing the same basic information in relatively consistent ways.
The devil, however, is always in the details.

I'll admit my bias up front since I'm the co-author of the AS2 Action
Handlers spec, but I prefer the more concise approach it takes. While
the specification defines a handful of basic Action Handler types
(View, Http, Embed and Intent), these are flexible enough to support
an extremely broad range of cases and can easily be mapped to existing
verb identifiers. As the examples in my various blog posts illustrate,
it's also possible to use other kinds of Action Handlers in the AS2
model (for instance, we could easily make use of the
schema.org/Actions definitions directly without any modification).

- James

On Tue, Sep 2, 2014 at 7:19 AM, ☮ elf Pavlik ☮
<perpetual-tripper@wwelves.org> wrote:
> Hello,
>
> I would like to propose in depth discussion on Schema.org / Activity
> Streams / Hydra
>
> We have both ActivityStreams & Schema.org listed at
> https://www.w3.org/wiki/Socialwg/Social_syntax
>
> I can also recall at least two articles by James Snell where he works
> with them both:
> *
> http://www.chmod777self.com/2014/04/activity-streams-20-and-schemaorgactions.html
> * http://www.chmod777self.com/2014/05/more-on-activity-streams-20-and.html
>
> Then again Schema.org Actions and Hydra have many similarities and
> history of collaboration:
> http://blog.schema.org/2014/04/announcing-schemaorg-actions.html
>
> I must admit not reading enough yet about Activity Streams 2.0 Action
> Handlers to position them here...
>
> #ACTION - Would someone like to work with me in next two weeks to
> prepare overview of similarities and differences in all mentioned
> technologies? It would hopefully make it much easier for everyone to
> engage in further conversation.
>
> Cheers!
>
> On 09/01/2014 07:58 PM, Harry Halpin wrote:
>> In case people missed this from the last IG meeting!
>>
>> -------- Forwarded Message --------
>> Subject: Schema.org applies W3C Patent Policy
>> Resent-Date: Mon, 01 Sep 2014 17:54:15 +0000
>> Resent-From: public-socialweb@w3.org
>> Date: Mon, 01 Sep 2014 19:54:07 +0200
>> From: Harry Halpin <hhalpin@w3.org>
>> To: public-socialweb@w3.org <public-socialweb@w3.org>
>>
>> Those who were at the Social Standards workshop last August will
>> remember a discussion with Guha over schema.org and licensing. People
>> should  know that Schema.org has now changed their licensing to be
>> royalty-free in the following manner:
>>
>> "The Sponsors have applied the W3C Patent Policy to the schemas
>> published by Schema.org as follows: each Sponsor, by itself and on
>> behalf of its affiliates, agrees to make available under W3C RF
>> licensing requirements its Essential Claims (if any) in the schemas
>> published by Schema.org as if the schemas were W3C Recommendations. In
>> some cases, this website may indicate that some but not all of the
>> Sponsors have recognized a particular extension to the Schema; in
>> those cases, as to that extension, the above rights are granted by
>> only those recognizing Sponsors. " [1]
>>
>>    cheers,
>>     harry
>>
>> [1]https://www.schema.org/docs/terms.html
>>
>
>
Received on Tuesday, 2 September 2014 20:41:09 UTC

This archive was generated by hypermail 2.3.1 : Tuesday, 6 January 2015 21:29:44 UTC