Re: Federated/Distributed @mentions

Pursuing standardization of this is definitely of interest.  I know that
SugarCRM has a similar but incompatible implementation to what you’ve
described.  It is just a step or two removed from the Twitter API, just
like IBM Connections’ implementation.


Here is an example of how @mention was implemented in Sugar 7’s activity
streams.

"value": "@[Users:seed_paul_id:Paul] can you please help with this
opportunity?",
    "tags": [
        {
            "id": "seed_paul_id",
            "name": "Paul",
            "module": "Users"
        }
    ]



If we break down the content..


"@[Users:seed_paul_id:Paul] can you please help with this opportunity?"


The first two parts form a unique identifier within a Sugar instance and
the final part is the display label.  Frankly, I’m not sure why we
wouldn’t use the precedent that Twitter API has established here in terms
of syntax.  I’ll leave any potential legal concerns to the lawyers.

Matt Marum


On 12/3/14, 11:35 AM, "James M Snell" <jasnell@gmail.com> wrote:

>One of the most common aspects of many social systems that we have not
>yet really discussed is the humble @mention. Currently, most of the
>popular social platforms support some form of @mention that is
>specific to their own platform. We can't, for instance, @mention a
>facebook account on twitter, etc.
>
>IBM's Connections product takes a step in the right direction using a
>specialized form of structured @mention and I know there have been
>some other informal attempts at getting something going on this. Given
>how fundamental @mentions are to most social platforms it would likely
>be worth the effort for the socialwg to look at this.
>
>The way IBM Connections does it is:
>
>"hey 
>@{{urn:lsid:lconn.ibm.com:profiles.person:510b99c0-0101-102e-893f-f78755f7
>e0ed|@Amy
>Jones102}}"
>
>The "urn:lsid:..." part is the users unique identifier within
>Connections. This could easily be replaced by an open identifier
>(http, email, acct, etc). The part after the | is what is actually
>rendered to the user. Connections renders this as a link and popup
>"business card" when the user hovers over the name.
>
>While this works for Connections, the use of {{ }} is a bit
>problematic in general because those are also used for things like
>handlebar templates. Perhaps [ and ] would work better... e.g.
>
>@[http://twitter.com/jasnell|jasnell] to @mention my twitter id
>@[http://facebook.com/jasnell|jasnell] to @mention my facebook id
>@[http://github.com/jasnell|jasnell] to @mention my github id, etc
>
>We could allow the use of openid connect identifiers as well, although
>doing so would end up requiring the implementation to support
>discovery.
>
>@[acct:jasnell@us.ibm.com|jasnell]
>
>A similar mechanism can be used for distributed hash tagging.
>
>#[https://twitter.com/hashtag/socialwg|socialwg]
>
>These would obviously be intended for use within free-text type
>properties... for instance:
>
>{
>  "@context": "http://www.w3.org/ns/activitystreams",
>  "@type": "Note",
>  "content": "This note mentions @[http://twitter.com/jasnell|jasnell]
>on twitter #[http://twitter.com/hashtag/socialwg|socialwg]"
>}
>
>I note that the Twitter API takes the additional step of extracting
>these kinds of structured entities out of the text and including them
>in the JSON. We can do something similar using the AS2 "tag"
>property... e.g.
>
>{
>  "@context": "http://www.w3.org/ns/activitystreams",
>  "@type": "Note",
>  "content": "This note mentions @[http://twitter.com/jasnell|jasnell]
>on twitter #[http://twitter.com/hashtag/socialwg|socialwg]",
>  "tag": [
>    {
>      "@type": "Mention",
>      "href": "http://twitter.com/jasnell",
>      "displayName": "jasnell"
>    },
>    {
>      "@type": "Tag",
>      "href": "http://twitter.com/hashtag/socialwg",
>      "displayName": "socialwg"
>    }
>  ]
>}
>
>Thoughts?
>
>- James
>

Received on Wednesday, 3 December 2014 17:25:57 UTC