{"action":"created","issue":{"url":"https://api.github.com/repos/openbadges/openbadges-specification/issues/87","repository_url":"https://api.github.com/repos/openbadges/openbadges-specification","labels_url":"https://api.github.com/repos/openbadges/openbadges-specification/issues/87/labels{/name}","comments_url":"https://api.github.com/repos/openbadges/openbadges-specification/issues/87/comments","events_url":"https://api.github.com/repos/openbadges/openbadges-specification/issues/87/events","html_url":"https://github.com/openbadges/openbadges-specification/issues/87","id":175616767,"number":87,"title":"Revoke a Badge Assertion","user":{"login":"timothyfcook","id":1823300,"avatar_url":"https://avatars.githubusercontent.com/u/1823300?v=3","gravatar_id":"","url":"https://api.github.com/users/timothyfcook","html_url":"https://github.com/timothyfcook","followers_url":"https://api.github.com/users/timothyfcook/followers","following_url":"https://api.github.com/users/timothyfcook/following{/other_user}","gists_url":"https://api.github.com/users/timothyfcook/gists{/gist_id}","starred_url":"https://api.github.com/users/timothyfcook/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timothyfcook/subscriptions","organizations_url":"https://api.github.com/users/timothyfcook/orgs","repos_url":"https://api.github.com/users/timothyfcook/repos","events_url":"https://api.github.com/users/timothyfcook/events{/privacy}","received_events_url":"https://api.github.com/users/timothyfcook/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":{"url":"https://api.github.com/repos/openbadges/openbadges-specification/milestones/1","html_url":"https://github.com/openbadges/openbadges-specification/milestones/2.0%20Prototypes","labels_url":"https://api.github.com/repos/openbadges/openbadges-specification/milestones/1/labels","id":1989605,"number":1,"title":"2.0 Prototypes","description":"Define issues; discuss possible implementations; create prototypes and code examples; vet proposals and get ready to start creating a pull request to the 2.0 branch to manage the process (see 2.0 proposal milestone)","creator":{"login":"ottonomy","id":2304883,"avatar_url":"https://avatars.githubusercontent.com/u/2304883?v=3","gravatar_id":"","url":"https://api.github.com/users/ottonomy","html_url":"https://github.com/ottonomy","followers_url":"https://api.github.com/users/ottonomy/followers","following_url":"https://api.github.com/users/ottonomy/following{/other_user}","gists_url":"https://api.github.com/users/ottonomy/gists{/gist_id}","starred_url":"https://api.github.com/users/ottonomy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ottonomy/subscriptions","organizations_url":"https://api.github.com/users/ottonomy/orgs","repos_url":"https://api.github.com/users/ottonomy/repos","events_url":"https://api.github.com/users/ottonomy/events{/privacy}","received_events_url":"https://api.github.com/users/ottonomy/received_events","type":"User","site_admin":false},"open_issues":21,"closed_issues":0,"state":"open","created_at":"2016-09-07T18:49:28Z","updated_at":"2016-09-07T22:09:33Z","due_on":null,"closed_at":null},"comments":2,"created_at":"2016-09-07T21:58:04Z","updated_at":"2016-09-08T22:47:41Z","closed_at":null,"body":"### User Story:\r\nAs a badge issuer, I want to revoke a badge Assertion I have previously issued, so that consumers do not think it is still valid."},"comment":{"url":"https://api.github.com/repos/openbadges/openbadges-specification/issues/comments/245765714","html_url":"https://github.com/openbadges/openbadges-specification/issues/87#issuecomment-245765714","issue_url":"https://api.github.com/repos/openbadges/openbadges-specification/issues/87","id":245765714,"user":{"login":"ottonomy","id":2304883,"avatar_url":"https://avatars.githubusercontent.com/u/2304883?v=3","gravatar_id":"","url":"https://api.github.com/users/ottonomy","html_url":"https://github.com/ottonomy","followers_url":"https://api.github.com/users/ottonomy/followers","following_url":"https://api.github.com/users/ottonomy/following{/other_user}","gists_url":"https://api.github.com/users/ottonomy/gists{/gist_id}","starred_url":"https://api.github.com/users/ottonomy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ottonomy/subscriptions","organizations_url":"https://api.github.com/users/ottonomy/orgs","repos_url":"https://api.github.com/users/ottonomy/repos","events_url":"https://api.github.com/users/ottonomy/events{/privacy}","received_events_url":"https://api.github.com/users/ottonomy/received_events","type":"User","site_admin":false},"created_at":"2016-09-08T22:47:40Z","updated_at":"2016-09-08T22:47:40Z","body":"Thanks, @kayaelle. One point to note is that #80 contains a use case for badge consumers to verify revocation status of a badge that is related to this issue, but probably shouldn't be duplicated here:\r\n\r\n> As a badge consumer, I want to verify that an Assertion has not been revoked by its issuer, so that I can trust its claims about the recipient remain valid.\r\n\r\nI think this division of issues is fine, but open to merging them if necessary. Put the consumer stories there, and the issuer stories here.\r\n\r\nWe could consider this issue as separate stories for hosted and signed assertions:\r\n\r\n* As a badge Issuer, I want to revoke a signed Assertion and ensure consumers will be able to verify the badge is revoked, so that I can ensure consumers do not accord trust in a recipient when it is no longer applicable.\r\n* As a badge issuer, I want to revoke an assertion that relied on hosted verification.\r\n\r\n-- \r\n\r\nOn implementation,\r\n\r\nSome implementation details from v1.x around the verification information are worth revisiting. \r\n\r\nFor instance:\r\n\r\n* The `uid` field in the Assertion makes little sense for hosted assertion when there is an `@id` field. It is currently used for signed assertions to determine verification with a revocationList. In the Linked Data model, `@id`s are the property used to provide canonical identifiers for subjects, but it needs to be\r\n* The `verify.url` field makes no sense either for hosted verification when there is an `@id`. It makes no sense for a signed verification, because the key should be referenced from the Issuer Profile instead of the Assertion (see #89).\r\n\r\n\r\nIt may be very interesting to do something like add a revocationInfo property to the Assertion class to enable multiple different methods of checking for revocation of signed and/or hosted badges other than revocationLists. This could include posting revocation info to centralized services, or decentralized databases like blockchains.\r\n"}}
{"actor":{"display_login":"ottonomy"}}