{"action":"created","issue":{"url":"https://api.github.com/repos/refractproject/refract-spec/issues/26","labels_url":"https://api.github.com/repos/refractproject/refract-spec/issues/26/labels{/name}","comments_url":"https://api.github.com/repos/refractproject/refract-spec/issues/26/comments","events_url":"https://api.github.com/repos/refractproject/refract-spec/issues/26/events","html_url":"https://github.com/refractproject/refract-spec/issues/26","id":81839229,"number":26,"title":"Refract Object Key Change Proposal","user":{"login":"smizell","id":130959,"avatar_url":"https://avatars.githubusercontent.com/u/130959?v=3","gravatar_id":"","url":"https://api.github.com/users/smizell","html_url":"https://github.com/smizell","followers_url":"https://api.github.com/users/smizell/followers","following_url":"https://api.github.com/users/smizell/following{/other_user}","gists_url":"https://api.github.com/users/smizell/gists{/gist_id}","starred_url":"https://api.github.com/users/smizell/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/smizell/subscriptions","organizations_url":"https://api.github.com/users/smizell/orgs","repos_url":"https://api.github.com/users/smizell/repos","events_url":"https://api.github.com/users/smizell/events{/privacy}","received_events_url":"https://api.github.com/users/smizell/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":2,"created_at":"2015-05-28T09:08:16Z","updated_at":"2015-05-28T10:51:50Z","closed_at":null,"body":"This proposal is for changing how we use object keys in Refract. The examples\r\nbelow will be for the following JSON representation:\r\n\r\n```json\r\n{\r\n  \"foo\": \"bar\"\r\n}\r\n```\r\n\r\n## Current Spec\r\n\r\nAccording to the current spec, this is how the example should be represented\r\nin Refract compact form.\r\n\r\n```json\r\n[\"object\", {}, {}, [\r\n  [\"string\", { \"name\": \"foo\" }, {}, \"bar\"]\r\n]]\r\n```\r\n\r\nMSON definition:\r\n\r\n```markdown\r\n# Property Element (Element)\r\n- `meta`\r\n    - `name` (enum, required) - Name of property given\r\n        - (string)\r\n        - (Element)\r\n```\r\n\r\n## Proposed: Member element\r\n\r\nThis is the proposed representation of a key using a member element. We have\r\nactually used this before, but changed from it for what we thought was a simpler\r\nsolution. We're finding some issues around what we changed it to, and are\r\nlooking to change it back to this to simplify things.\r\n\r\n```json\r\n[\"object\", {}, {}, [\r\n  [\"member\", {}, {}, {\r\n    \"key\": [\"string\", {}, {}, \"foo\"],\r\n    \"value\": [\"string\", {}, {}, \"bar\"]\r\n  }]\r\n]]\r\n```\r\n\r\nMSON Definition:\r\n\r\n```markdown\r\n# Memeber Element (Element)\r\n\r\n- `element` member (string, fixed)\r\n- `content`\r\n    - `key` (Element)\r\n    - `value` (Element)\r\n```\r\n\r\ncc @zdne @fosrias"},"comment":{"url":"https://api.github.com/repos/refractproject/refract-spec/issues/comments/106270720","html_url":"https://github.com/refractproject/refract-spec/issues/26#issuecomment-106270720","issue_url":"https://api.github.com/repos/refractproject/refract-spec/issues/26","id":106270720,"user":{"login":"klokane","id":489973,"avatar_url":"https://avatars.githubusercontent.com/u/489973?v=3","gravatar_id":"","url":"https://api.github.com/users/klokane","html_url":"https://github.com/klokane","followers_url":"https://api.github.com/users/klokane/followers","following_url":"https://api.github.com/users/klokane/following{/other_user}","gists_url":"https://api.github.com/users/klokane/gists{/gist_id}","starred_url":"https://api.github.com/users/klokane/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/klokane/subscriptions","organizations_url":"https://api.github.com/users/klokane/orgs","repos_url":"https://api.github.com/users/klokane/repos","events_url":"https://api.github.com/users/klokane/events{/privacy}","received_events_url":"https://api.github.com/users/klokane/received_events","type":"User","site_admin":false},"created_at":"2015-05-28T10:51:50Z","updated_at":"2015-05-28T10:51:50Z","body":"No problem for me, originnaly I've implemented MemberElement in this way. I will just backport from git, and change test results in drafter according to change."}}