{"action":"closed","issue":{"url":"https://api.github.com/repos/imsweb/staging-client-java/issues/8","labels_url":"https://api.github.com/repos/imsweb/staging-client-java/issues/8/labels{/name}","comments_url":"https://api.github.com/repos/imsweb/staging-client-java/issues/8/comments","events_url":"https://api.github.com/repos/imsweb/staging-client-java/issues/8/events","html_url":"https://github.com/imsweb/staging-client-java/issues/8","id":76744255,"number":8,"title":"More structured output specifications","user":{"login":"ctmay4","id":444345,"avatar_url":"https://avatars.githubusercontent.com/u/444345?v=3","gravatar_id":"","url":"https://api.github.com/users/ctmay4","html_url":"https://github.com/ctmay4","followers_url":"https://api.github.com/users/ctmay4/followers","following_url":"https://api.github.com/users/ctmay4/following{/other_user}","gists_url":"https://api.github.com/users/ctmay4/gists{/gist_id}","starred_url":"https://api.github.com/users/ctmay4/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ctmay4/subscriptions","organizations_url":"https://api.github.com/users/ctmay4/orgs","repos_url":"https://api.github.com/users/ctmay4/repos","events_url":"https://api.github.com/users/ctmay4/events{/privacy}","received_events_url":"https://api.github.com/users/ctmay4/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/imsweb/staging-client-java/labels/enhancement","name":"enhancement","color":"84b6eb"}],"state":"closed","locked":false,"assignee":{"login":"ctmay4","id":444345,"avatar_url":"https://avatars.githubusercontent.com/u/444345?v=3","gravatar_id":"","url":"https://api.github.com/users/ctmay4","html_url":"https://github.com/ctmay4","followers_url":"https://api.github.com/users/ctmay4/followers","following_url":"https://api.github.com/users/ctmay4/following{/other_user}","gists_url":"https://api.github.com/users/ctmay4/gists{/gist_id}","starred_url":"https://api.github.com/users/ctmay4/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ctmay4/subscriptions","organizations_url":"https://api.github.com/users/ctmay4/orgs","repos_url":"https://api.github.com/users/ctmay4/repos","events_url":"https://api.github.com/users/ctmay4/events{/privacy}","received_events_url":"https://api.github.com/users/ctmay4/received_events","type":"User","site_admin":false},"milestone":{"url":"https://api.github.com/repos/imsweb/staging-client-java/milestones/3","html_url":"https://github.com/imsweb/staging-client-java/milestones/1.4","labels_url":"https://api.github.com/repos/imsweb/staging-client-java/milestones/3/labels","id":1112225,"number":3,"title":"1.4","description":null,"creator":{"login":"ctmay4","id":444345,"avatar_url":"https://avatars.githubusercontent.com/u/444345?v=3","gravatar_id":"","url":"https://api.github.com/users/ctmay4","html_url":"https://github.com/ctmay4","followers_url":"https://api.github.com/users/ctmay4/followers","following_url":"https://api.github.com/users/ctmay4/following{/other_user}","gists_url":"https://api.github.com/users/ctmay4/gists{/gist_id}","starred_url":"https://api.github.com/users/ctmay4/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ctmay4/subscriptions","organizations_url":"https://api.github.com/users/ctmay4/orgs","repos_url":"https://api.github.com/users/ctmay4/repos","events_url":"https://api.github.com/users/ctmay4/events{/privacy}","received_events_url":"https://api.github.com/users/ctmay4/received_events","type":"User","site_admin":false},"open_issues":0,"closed_issues":2,"state":"open","created_at":"2015-05-15T14:30:14Z","updated_at":"2015-05-21T19:57:47Z","due_on":null,"closed_at":null},"comments":7,"created_at":"2015-05-15T14:29:44Z","updated_at":"2015-05-21T19:57:47Z","closed_at":"2015-05-21T19:57:47Z","body":"Schema definitions currently gives detailed information about all `inputs`.  The output that comes back from staging calls are not currently documented in any way.  There are a few issues with this:\r\n\r\n1. Users of the staging call may not understand all the outputs that are produced.\r\n2. There are no tables associated with outputs to describe the values.\r\n3. Schemas may produce temporary outputs needed in the staging calculation that do not need to be returned as output.\r\n\r\nI think the solution is to add a list of `outputs` to the schema.  Each output would contain:\r\n\r\n- key\r\n- name\r\n- table (optional)\r\n\r\nThere are other possibilities we may want to consider:\r\n\r\n- metadata (this might be useful at some point, but I'm not sure)\r\n- agency requirement (we have this for inputs, but I'm not sure we want to try to maintain this on the output side)\r\n- description (some fields may not have a lookup and we might want a longer set of text in addition to the name)\r\n\r\nAt the end of the staging call only keys listed in the `outputs` would be included in the results.  Some intermediate values might be interesting and could be added to the `outputs` if needed (like the \"s\" value in the \"Testis\" schema)."}}