Socialwg/Social syntax/Patterns
These is prior syntax work that could inform our decisions about social syntax. NOTE: unless otherwise noted these syntaxes are not free of patent or other intellectual property requirements.
Open Communities
The following syntax efforts were developed in open communities that encourage multiple projects and implementations.
Activity Streams
activitystrea.ms Activity Streams 1.0 includes a JSON format and an enhanced Atom format.
- It's covered under the OWF assignment. Activity Streams 2.0 is JSON only.
- see Activity Streams
- see also: https://www.w3.org/wiki/Activity_Streams/Examples
AS1.0 is referenced by OpenSocial specifications and OMA SNEW specifications.
JSON-LD
JSON-LD obviously is not a "social syntax" by itself. But it is a very important language and syntax that should inform decisions of the WG. W3C Recommendation
Microformats
microformats includes a simple markup syntax using the class
atribute for adding social (and other) information to HTML, as well as a canonical JSON representation.
- Specs are covered under CC0+OWFa
- Widely used and deployed, e.g. hAtom in WordPress, h-entry & h-card in numerous IndieWeb implementations.
Social content publishing evidence:
- The IndieWeb community has numerous active members (many who are members of socialwg) who publish h-entry on their permalink pages, with h-card for authorship information.
SIOC
The SIOC (Semantically-Interlinked Online Communities) ontology "provides the main concepts and properties required to describe information from online communities". It includes concepts like "post", "thread", "forum", "user account" and various properties to connect them together. Available in RDF.
More info: http://www.sioc-project.org/
Single Project Driven
The following syntax efforts are driven by only a single project, often open source.
Tent.io
tent.io is an open-source, federated social network. It has a JSON structure and defines concepts like "post" and "entity". Documentation: https://tent.io/docs
Diaspora
Diaspora uses Atom XML for federation. https://wiki.diasporafoundation.org/Federation_protocol_overview
Single Company Driven
The following syntax work is developed and maintained by a single company. While varying licenses provide varying level of "openness", these efforts are all proprietary, being maintained by only a single company each.
Facebook OpenGraph and Graph API
Facebook have defined two things with the "Graph" name:
- OpenGraph: A Pseudo-RDF syntax for annotating webpages
- Graph API: Their API format for social data, in JSON format. Documented here
Facebook is not a member of the SocialWG.
Twitter Tweet
Twitter's JSON structure, a Tweet can encode a short text notification, authorship information, responses, recommended formatting, and attachments.
Terms: https://dev.twitter.com/terms/api-terms
Twitter is not a member of the SocialWG.
Google+
The Google+ API uses JSON structures loosely based on Activity Streams. https://developers.google.com/+/api/latest/
Google is not a member of the SocialWG.
Yammer
Yammer uses a JSON format similar to Activity Streams 1.0 - https://developer.yammer.com/introduction/#gs-writedata
Oligopoly Driven
The following syntax work is developed and maintained by a very small number of companies[1] that may optionally take input from related W3C hosted mailing list public-vocabs and repository + issue tracker on github.
Schema.org
Google led the original development of Schema.org, an extended vocabulary of many kinds of objects, including people and activities. Originally for HTML encoding, but also supports a JSON-LD structure.
Schema.Org Actions Implementations - by Sam Goto
Terms: http://schema.org/docs/terms.html
Maintained by: Google, Microsoft, Yandex (none of whom are members of the SocialWG).
- http://blog.schema.org/2013/06/schemaorg-and-json-ld.html
- http://blog.schema.org/2011/11/using-rdfa-11-lite-with-schemaorg.html
There are related W3C hosted mailing list public-vocabs and repository + issue tracker on github that provide an open support forum for discussion of vocabulary, some of which may be (and sometimes is) taken as input to the Schema.org invitation-only oligopoly's closed internal vocabulary decision making lists and processes.
However, representatives of schema.org have repeatedly publicly admitted when questioned (e.g. at the 2013 W3C's Workshop on Social Standards) that they make the ultimate decisions about what goes into Schema.org.
Social content publishing evidence:
- Google+ includes schema.org Markup in their profiles (example: [view-source:https://plus.google.com/+JamesSnell/posts] ) (Google owned property)
- Blogger.com includes schema.org Markup in their non-curlable dynamic templates (Google owned property)
- Github.com includes minimal schema.org Markup in their Repository pages and makes use of schema.org/Action in notification emails
- List of other sites using schema.org: [2]