- From: James M Snell <jasnell@gmail.com>
- Date: Thu, 4 Dec 2014 09:42:59 -0800
- To: Ben Werdmüller <ben@withknown.com>
- Cc: public-socialweb@w3.org, Matthew Marum <vp-projects@opensocial.org>, Dave Wilkinson <wilkie@xomb.org>
- Message-ID: <CABP7RbeAY2ZLZzezEU_3W2fyRuX49jdMRuE7Xf7KMfEL8XnLBg@mail.gmail.com>
I personally feel it's worthwhile being opinionated on it. If implementations choose to do other things that's fine so long as what's actually stored or transmitted is consistent. On Dec 4, 2014 9:40 AM, "Ben Werdmüller" <ben@withknown.com> wrote: > > Theoretically I'd implement plain-text, HTML and JSON-LD versions, and > these suggestions seem reasonable. (In practice, I'd also add mf2 markup, > but of course, this is perfectly compatible with that.) > > I guess the thing I'm still concerned about is denoting mentions with an > @-sign. Is that a convention we're happy to accept across all platforms? Is > there a way for other platforms to say "I actually use a + or a ~ instead"? > > > On Thu, Dec 4, 2014 at 4:53 PM, James M Snell <jasnell@gmail.com> wrote: > >> While I'm sympathetic to the HTML-markup approach being "the most >> flexible" option, I definitely question whether it's the right answer >> in all cases. For instance, if I'm sending a JSON-formatted push >> notification to a native mobile application, why would I force the >> application to use an HTML parser to extract the necessary metadata >> from a short snippet of text when a regex would do just fine? Second, >> it can become extremely verbose. Yes, I'll grant that when the >> @mention is actually rendered to the user in HTML it ought to be >> converted to a microdata/microformat type structure, but it should be >> possible to do in "plain text" also. >> >> Perhaps, then, we define things so that they can be represented both >> ways, with a simple translation between them: >> >> Mentions: >> >> In plain-text: >> @[http://www.twitter.com/jasnell|jasnell] >> >> In HTML: >> <span itemscope itemtype="http://www.w3.org/ns/activitystreams#Mention >> "> >> <a itemprop="href" href="http://www.twitter.com/jasnell"> >> <span itemprop="displayName">jasnell</span> >> </a> >> </span> >> >> (or) >> >> <span vocab="http://www.w3.org/ns/activitystreams#" typeof="Mention"> >> <a property="href" href="http://www.twitter.com/jasnell"> >> <span property="displayName">jasnell</span> >> </a> >> </span> >> >> In JSON-LD: >> >> { >> "@context": "http://www.w3.org/ns/activitystreams", >> "@type": "Mention", >> "href": "http://www.twitter.com/jasnell", >> "displayName": "jasnell" >> } >> >> Hashtags: >> >> In plain-text: >> #[http://www.twitter.com/hashtags/socialwg|socialwg] >> >> In HTML: >> <span itemscope itemtype="http://www.w3.org/ns/activitystreams#Tag"> >> <a itemprop="href" href="http://www.twitter.com/hashtags/socialwg"> >> <span itemprop="displayName">socialwg</span> >> </a> >> </span> >> >> (or) >> >> <span vocab="http://www.w3.org/ns/activitystreams#" typeof="Tag"> >> <a property="href" href="http://www.twitter.com/hashtags/socialwg"> >> <span property="displayName">socialwg</span> >> </a> >> </span> >> >> In JSON-LD: >> >> { >> "@context": "http://www.w3.org/ns/activitystreams", >> "@type": "Tag", >> "href": "http://www.twitter.com/hashtags/socialwg", >> "displayName": "socialwg" >> } >> >> - James >> >> On Thu, Dec 4, 2014 at 4:21 AM, Ben Werdmüller <ben@withknown.com> wrote: >> > >> > We've been considering various options for this in Known. I strongly >> > disagree with using Markdown or similar syntax for human-readable >> content, >> > because that creates a burden to support a wholly different notation in >> > applications that are almost certainly web-based at some level. I do >> think >> > HTML with embedded microformats / microdata is the most flexible option >> for >> > this scenario. (It also doesn't tie applications into Twitter-style >> @-syntax >> > - there's no need to let them dictate the convention.) >> > >> > Dave's approach for structured data also makes sense to me. You include >> the >> > bare content, and then metadata that allows you to apply your own >> markup, >> > rather than including some other microsyntax in bare text. That again >> gives >> > application developers the most flexibility, although I would go so far >> as >> > to change "username" to "@foo" in his example, to also allow different >> > notations. It then becomes a simple search and replace, with a strong >> > suggestion that usernames are prefixed with some notation to prevent >> > accidents with greedy searches. >> > >> > On Wed, Dec 3, 2014 at 7:36 PM, Dave Wilkinson <wilkie@xomb.org> wrote: >> >> >> >> How does this work when people put HTML as the content? Does this get >> >> parsed before or after entities are parsed? What happens when agents >> that >> >> see this as html don't parse them out? >> >> >> >> You'd have to really lock down how to parse the content field and what >> >> is/isn't acceptable there and what to do to remove ambiguity when you >> >> actually want some of that syntax to be untouched. >> >> >> >> I'd assume this isn't about routing. We have solutions for that. You >> just >> >> tag the object with who is mentioned, who it is going to, what it is in >> >> reply to, etc. >> >> >> >> This is just about marking up the content, which can currently be in >> any >> >> form? Right now, you'd just have "@foo" in your content, and the object >> >> would have an array of mentions which you would use to map the >> username to a >> >> domain and you would just mark it up as you need to. The convention is >> to >> >> look for an @ sign, although we don't (nobody does) specify the valid >> >> characters for a handle. >> >> >> >> The only better way I can think of is not to enforce some new markup >> >> language semantics within already arbitrary markup, but rather to just >> >> simply place in that mentions array the position and length of the >> substring >> >> in the content that represents the handle. Then I'd just replace that >> >> substring with my markup, whatever that is for my purpose, or if I >> don't >> >> care, I just display the content with whatever the publisher cared to >> use >> >> ("<a></a>" tag, @foo, +foo, etc) and it would already be presentable. >> Sooooo >> >> simple. >> >> >> >> My basic thesis: it's not content, it's metadata. while the html >> >> microformat folks can get away with it, it seems very out of place >> here. >> >> >> >> (I admit I am not able to write AS2 just from memory) >> >> >> >> { >> >> "content": "Hello @foo", >> >> "mentions": [{ >> >> "type": "person", >> >> "url": "http://example.com/foo >> >> "displayName": "Foo Bar" >> >> "username": "foo", >> >> "mentionedAt": [6, 4] >> >> }] >> >> } >> >> >> >> I can then turn that into "Hello <a href='http://example.com/foo'>Foo >> >> Bar</a>" or "Hello @<a href='http://example.com/foo'>foo</a>" or >> "Hello +<a >> >> href='http://example.com/foo'>foo</a>" or whatever. Conversely, if it >> is >> >> html in the content, the substring would be the entire anchor tag, >> maybe. It >> >> would be very obvious that it would always indicate the position in the >> >> content before any processing is done. >> >> >> >> On Wed, Dec 3, 2014 at 2:14 PM, Matthew Marum < >> vp-projects@opensocial.org> >> >> wrote: >> >>> >> >>> The use of @[id|label]. >> >>> >> >>> Matt >> >>> >> >>> On 12/3/14, 12:48 PM, "James M Snell" <jasnell@gmail.com> wrote: >> >>> >> >>> >On Wed, Dec 3, 2014 at 9:25 AM, Matthew Marum >> >>> ><vp-projects@opensocial.org> wrote: >> >>> >[snip] >> >>> >> >> >>> >> "@[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. >> >>> >> >> >>> > >> >>> >Which syntax specifically from the Twitter API? >> >>> > >> >>> >- James >> >>> >> >>> >> >>> >> >> >> > >> > >> > >> > -- >> > Ben Werdmuller >> > CEO & co-founder, Known >> > withknown.com | werd.io >> > +1 (312) 488-9373 >> > >> > Known, Inc | 421 Bryant St | San Francisco, CA 94107 >> > > > > -- > *Ben Werdmuller* > CEO & co-founder, Known > withknown.com | werd.io > <http://goog_1933028737> > +1 (312) 488-9373 > > Known, Inc | 421 Bryant St | San Francisco, CA 94107 >
Received on Thursday, 4 December 2014 17:43:30 UTC