{"action":"created","issue":{"url":"https://api.github.com/repos/w3c-social/webmention/issues/3","labels_url":"https://api.github.com/repos/w3c-social/webmention/issues/3/labels{/name}","comments_url":"https://api.github.com/repos/w3c-social/webmention/issues/3/comments","events_url":"https://api.github.com/repos/w3c-social/webmention/issues/3/events","html_url":"https://github.com/w3c-social/webmention/issues/3","id":118784921,"number":3,"title":"W3C Social Pingback","user":{"login":"gobengo","id":171782,"avatar_url":"https://avatars.githubusercontent.com/u/171782?v=3","gravatar_id":"","url":"https://api.github.com/users/gobengo","html_url":"https://github.com/gobengo","followers_url":"https://api.github.com/users/gobengo/followers","following_url":"https://api.github.com/users/gobengo/following{/other_user}","gists_url":"https://api.github.com/users/gobengo/gists{/gist_id}","starred_url":"https://api.github.com/users/gobengo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gobengo/subscriptions","organizations_url":"https://api.github.com/users/gobengo/orgs","repos_url":"https://api.github.com/users/gobengo/repos","events_url":"https://api.github.com/users/gobengo/events{/privacy}","received_events_url":"https://api.github.com/users/gobengo/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":4,"created_at":"2015-11-25T08:27:49Z","updated_at":"2015-11-25T10:24:47Z","closed_at":null,"body":"webmention is cool and I like it.\r\n\r\nHowever, I think we need more to really make progress on the \"Federation Protocol\" deliverable mentioned in the charter.\r\n\r\nOther than webmention, [LDP](http://www.w3.org/TR/ldp/) is the other protocol mentioned in the charter as a 'possible input' to that deliverable, but it doesn't help prescribe much that helps with webmentions or pingbacks (that I can tell).\r\n\r\n@melvincarvalho points out the similarity between webmention and something many of us have worked with for over a decade\r\n> Webmention has been implemented in linked data in the form of \"Semantic Pingback\" http://www.w3.org/wiki/Pingback#Semantic_Pingback\r\n\r\nNotably, (AFAICT) the W3C has never produced a Pingback standard. The closest thing to a standard I can find is [\"Pingback 1.0\" hosted on hixie.ch](http://hixie.ch/specs/pingback/pingback-1.0) (Ian Hickson, WHATWG).\r\n\r\nhixie is rad, and an editor of HTML5. But link rel pingback is not specified as part of HTML5. http://www.w3.org/TR/html5/links.html#linkTypes\r\n\r\nSo Pingback is not a standard we *have* to adhere to.\r\n\r\nBut I think there are some important questions to answer if we want the \"Federation Protocol\" to be a CR, and not just a Note: Why throw away 13 years of implementations and start from scratch? Can we salvage Pingback 1.0 into a W3C specification that is similar, but also modern enough to drive adoption of web federation for at least another 13 years (perhaps with a logical major version bump, '2.0')? The answer is not obvious.\r\n\r\nThe following two sections/lists are meant as starting points. Please suggest additions\r\n\r\nHere are things that Pingback deals with that Webmention currently doesn't\r\n* Discovery via [HTTP header](http://hixie.ch/specs/pingback/pingback-1.0#header), not just HTML\r\n  * This is nice because clients can discover via `HEAD` requests without having to download/parse HTML\r\n  * Response headers can sometimes be hard for some publishers to implement. [well-known URIs](https://tools.ietf.org/html/rfc5785) and/or webfinger aim to help with this.\r\n\r\nHere are things that I personally don't like about the idea of implementing Pingback 1.0 in this era of the web\r\n* \"Pingback-enabled HTML and XHTML pages MUST be valid.\" seems unneccessarily strict, especially considering the regex mentioned in the service discovery section\r\n* [XML-RPC Interface](http://hixie.ch/specs/pingback/pingback-1.0#TOC3) is the only ping mechanism described, [which is a MUST for conformance](http://hixie.ch/specs/pingback/pingback-1.0#TOC4)\r\n  * \"To claim conformance to this specification a pingback server MUST be able to receive pingback XML-RPC calls\"\r\n  * Many young web developers have never worked with XML-RPC. Some never even XML. Instead, many developers are more comfortable with these mimetypes:\r\n    * `application/x-www-form-urlencoded` - Like webmention today\r\n    * LD Syntaxes - As seen in the AS2 and Web Annotation communities, it's possible that all these can be covered with only a syntax-agnostic vocabulary (perhaps >= \"http://dssn.org/pingback/ns/namespace.html\")\r\n      * `application/ld+json` - http://www.w3.org/TR/json-ld/\r\n      * `application/activity+json` - http://www.w3.org/TR/activitystreams-core/\r\n      * `text/turtle` - http://www.w3.org/TR/turtle/\r\n    * `application/json` - https://tools.ietf.org/html/rfc7159\r\n      * This could be covered with a recommended way of framing the JSON-LD vocabulary with standard key strings, e.g. just `{ \"source\": \"url\", \"target\": \"url\" }`. The Activity Vocabulary is doing this nicely.\r\n  * If I had to pick *one* of these to be a MUST for conformance, I'd pick `application/x-www-form-urlencoded` just like Webmention does today.\r\n\r\nI expect this to stoke some strong opinions, but I believe it illustrates the possibility of a Middle Way to a Federated Social Web that doesn't ignore past efforts, and also considers the current uses and extensibility benefits of linked data.\r\n\r\nIf this is well-received, I could try to draft something that addresses these issues while attempting to be very close to a superset of Webmention and Pingback 1.0."},"comment":{"url":"https://api.github.com/repos/w3c-social/webmention/issues/comments/159563776","html_url":"https://github.com/w3c-social/webmention/issues/3#issuecomment-159563776","issue_url":"https://api.github.com/repos/w3c-social/webmention/issues/3","id":159563776,"user":{"login":"bblfish","id":124506,"avatar_url":"https://avatars.githubusercontent.com/u/124506?v=3","gravatar_id":"","url":"https://api.github.com/users/bblfish","html_url":"https://github.com/bblfish","followers_url":"https://api.github.com/users/bblfish/followers","following_url":"https://api.github.com/users/bblfish/following{/other_user}","gists_url":"https://api.github.com/users/bblfish/gists{/gist_id}","starred_url":"https://api.github.com/users/bblfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bblfish/subscriptions","organizations_url":"https://api.github.com/users/bblfish/orgs","repos_url":"https://api.github.com/users/bblfish/repos","events_url":"https://api.github.com/users/bblfish/events{/privacy}","received_events_url":"https://api.github.com/users/bblfish/received_events","type":"User","site_admin":false},"created_at":"2015-11-25T10:24:47Z","updated_at":"2015-11-25T10:24:47Z","body":"what is actually needed for LDP folks is a way to transform `application/x-www-form-urlencoded` into RDF.  Something like [json-grddl](http://buzzword.org.uk/2008/jsonGRDDL/spec.20100903) updated to json-ld . \r\n\r\nOf course the actual mime type should practically be limited to a few. But the data structure should be defined semantically, so that it can survive change of syntax fashions. "}}