W3C home > Mailing lists > Public > public-socialweb@w3.org > November 2014

**PROPOSED** AS2 spec update

From: James M Snell <jasnell@gmail.com>
Date: Thu, 6 Nov 2014 10:40:47 -0800
Message-ID: <CABP7RbcE+tF2LpbgKD_DLgNzz_zDzg1wXs8KirY-zvt2jwDK0Q@mail.gmail.com>
To: "public-socialweb@w3.org" <public-socialweb@w3.org>
Based on a number of conversations and feedback since the face to face
at TPAC, I have written a **PROPOSED** update to the AS2 draft. These
are checked in to a **Branch** in github. I have not updated the
official Editor's Drafts. The proposed modification can be viewed
here:

http://rawgit.com/jasnell/w3c-socialwg-activitystreams/refactor2/activitystreams2.html
http://rawgit.com/jasnell/w3c-socialwg-activitystreams/refactor2/activitystreams2-vocabulary.html

The updates tackle a number of issues:

1. Refactor's Natural Language Context to address JSON-LD
compatibility and serialization concerns. For instance, rather than
"displayName" having a value that is *either* a string or a Language
Map, this creates a separate "displayNameMap" for the Language Map
case and keeps "displayName" as a String only. The JSON-LD processing
algorithms handle this just fine and non-JSON-LD implementations end
up with a more predictable, consistent target.

2. Remove the "language" property

3. Refactor as:Link, add as:href to indicate the target of the Link,
move away from overloading @id. This ought to resolve the modeling
issues that have been discussed.

4. Deprecate the "verb" property in AS 2.0, use @type instead to
represent the Activity Type. Provide clear guidelines for handling the
"verb" property when moving from AS 1.0 to AS 2.0.

5. Require JSON-LD compacted form using a normative JSON-LD @context
definition. Forbid implementations from altering the normative JSON-LD
@context. This will ensure that the serialized JSON will remain
consistent for the key properties, making it easier for
implementations that choose not to use the JSON-LD standard
algorithms.

6. Strengthen the MUST IGNORE requirement for extensions. Make it
clear that implementations SHOULD define extension properties using an
@context and spell out the consequences if they do not. Make it clear
that there are some valid JSON constructs (arrays of arrays) that are
not supported in JSON-LD and show an example using the one significant
case we are currently aware of (GeoJSON).

7. Provide a AS1-to-AS2 specific @context definition that is
specifically for processing AS1 documents using AS2 semantics.

8. Remove the Verb and ObjectType abstract classes. Verb is no longer
needed with the move to @type. Verbs just become subclasses of
as:Activity. The ObjectType definition can be handled better using
other constructs. Overall, this simplifies our vocabulary, which is
good.

That's a large number of updates, I know, so please review this
carefully. The goal here is to strike a balance between a number of
competing points of view. Overall, however, I believe it's an
iterative improvement over the FPWD.

- James
Received on Thursday, 6 November 2014 18:41:35 UTC

This archive was generated by hypermail 2.4.0 : Friday, 17 January 2020 17:26:13 UTC