- From: James M Snell <jasnell@gmail.com>
- Date: Thu, 6 Nov 2014 10:40:47 -0800
- 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