{"action":"created","issue":{"url":"https://api.github.com/repos/restful-api-description-language/RADL/issues/46","labels_url":"https://api.github.com/repos/restful-api-description-language/RADL/issues/46/labels{/name}","comments_url":"https://api.github.com/repos/restful-api-description-language/RADL/issues/46/comments","events_url":"https://api.github.com/repos/restful-api-description-language/RADL/issues/46/events","html_url":"https://github.com/restful-api-description-language/RADL/issues/46","id":107338149,"number":46,"title":"Associate URIs with transitions","user":{"login":"jonathanrobie","id":1767869,"avatar_url":"https://avatars.githubusercontent.com/u/1767869?v=3","gravatar_id":"","url":"https://api.github.com/users/jonathanrobie","html_url":"https://github.com/jonathanrobie","followers_url":"https://api.github.com/users/jonathanrobie/followers","following_url":"https://api.github.com/users/jonathanrobie/following{/other_user}","gists_url":"https://api.github.com/users/jonathanrobie/gists{/gist_id}","starred_url":"https://api.github.com/users/jonathanrobie/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jonathanrobie/subscriptions","organizations_url":"https://api.github.com/users/jonathanrobie/orgs","repos_url":"https://api.github.com/users/jonathanrobie/repos","events_url":"https://api.github.com/users/jonathanrobie/events{/privacy}","received_events_url":"https://api.github.com/users/jonathanrobie/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":{"url":"https://api.github.com/repos/restful-api-description-language/RADL/milestones/1","html_url":"https://github.com/restful-api-description-language/RADL/milestones/RESTFest","labels_url":"https://api.github.com/repos/restful-api-description-language/RADL/milestones/1/labels","id":1298157,"number":1,"title":"RESTFest","description":"The version to be presented at RESTFest.  Should be stable enough for our internal development to use during Q4 2015 without breaking changes.  Should resolve all basic issues of the model.","creator":{"login":"jonathanrobie","id":1767869,"avatar_url":"https://avatars.githubusercontent.com/u/1767869?v=3","gravatar_id":"","url":"https://api.github.com/users/jonathanrobie","html_url":"https://github.com/jonathanrobie","followers_url":"https://api.github.com/users/jonathanrobie/followers","following_url":"https://api.github.com/users/jonathanrobie/following{/other_user}","gists_url":"https://api.github.com/users/jonathanrobie/gists{/gist_id}","starred_url":"https://api.github.com/users/jonathanrobie/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jonathanrobie/subscriptions","organizations_url":"https://api.github.com/users/jonathanrobie/orgs","repos_url":"https://api.github.com/users/jonathanrobie/repos","events_url":"https://api.github.com/users/jonathanrobie/events{/privacy}","received_events_url":"https://api.github.com/users/jonathanrobie/received_events","type":"User","site_admin":false},"open_issues":8,"closed_issues":2,"state":"open","created_at":"2015-09-09T18:17:33Z","updated_at":"2015-09-19T14:56:41Z","due_on":"2015-09-26T04:00:00Z","closed_at":null},"comments":8,"created_at":"2015-09-19T14:56:28Z","updated_at":"2015-09-21T15:26:24Z","closed_at":null,"body":"Requested by Dilip Krishnan @dilipkrish.  \r\n\r\nWe should allow an optional URI for a transition name so it can be used to associate semantics with transitions."},"comment":{"url":"https://api.github.com/repos/restful-api-description-language/RADL/issues/comments/142014872","html_url":"https://github.com/restful-api-description-language/RADL/issues/46#issuecomment-142014872","issue_url":"https://api.github.com/repos/restful-api-description-language/RADL/issues/46","id":142014872,"user":{"login":"jonathanrobie","id":1767869,"avatar_url":"https://avatars.githubusercontent.com/u/1767869?v=3","gravatar_id":"","url":"https://api.github.com/users/jonathanrobie","html_url":"https://github.com/jonathanrobie","followers_url":"https://api.github.com/users/jonathanrobie/followers","following_url":"https://api.github.com/users/jonathanrobie/following{/other_user}","gists_url":"https://api.github.com/users/jonathanrobie/gists{/gist_id}","starred_url":"https://api.github.com/users/jonathanrobie/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jonathanrobie/subscriptions","organizations_url":"https://api.github.com/users/jonathanrobie/orgs","repos_url":"https://api.github.com/users/jonathanrobie/repos","events_url":"https://api.github.com/users/jonathanrobie/events{/privacy}","received_events_url":"https://api.github.com/users/jonathanrobie/received_events","type":"User","site_admin":false},"created_at":"2015-09-21T15:26:24Z","updated_at":"2015-09-21T15:26:24Z","body":"> I'm a little confused by the semantics of transitions and link relations in RADL. What I'm missing is the tie in between a transition and a link relationship. Should they be the same thing?\r\n\r\nI think that's the key question.\r\n\r\nAt the abstract level, a state has properties and transitions.  In a concrete instance, a representation has properties and links in some known format, and the links have link relations.  \r\n\r\nIn APIs I've seen so far, the names of link relations are often different from the names of the corresponding transitions, and the same link relation is often used for many transitions.  Properties, on the other hand, generally have the same name. Link relations registered on IANA are a bit of a hodgepodge, at different semantic levels. Ray's recent responses suggest using schema.org link relations instead, and they clearly give more specific semantics - are they specific enough for your needs? RADL does keep track of transitions associated with each link relation, and if these link relations are specific enough for your needs, that may be enough.\r\n\r\nI imagine many APIs will have a mixture of link relations, including very general ones like \"collection\", \"item\", \"next\" that are not very specific, and many APIs will use primarily IANA link relations or home grown link relations.\r\n\r\nIt certainly would make sense to provide RADL at runtime for applications that need to know about transitions if you need that, if you control the server.  If the client and server both understand the names of the transitions, they can be used to communicate, and you can use URIs for transition names if you prefer. \r\n\r\nI don't think link relations and transitions are the same thing, no more than a customer name and a business name are the same thing.  Transitions provide more context.  But in current REST APIs, link relations are in the API and transitions are not, so anything you do here is experimental. Would it make more sense to use URIs as transition names in a POC and gather experience with this idea first?"}}