{"action":"opened","issue":{"url":"https://api.github.com/repos/tillmo/DOL/issues/223","labels_url":"https://api.github.com/repos/tillmo/DOL/issues/223/labels{/name}","comments_url":"https://api.github.com/repos/tillmo/DOL/issues/223/comments","events_url":"https://api.github.com/repos/tillmo/DOL/issues/223/events","html_url":"https://github.com/tillmo/DOL/issues/223","id":98554130,"number":223,"title":"let semantics work on MOF abstract syntax, not on EBNF abstract syntax","user":{"login":"tillmo","id":642775,"avatar_url":"https://avatars.githubusercontent.com/u/642775?v=3","gravatar_id":"","url":"https://api.github.com/users/tillmo","html_url":"https://github.com/tillmo","followers_url":"https://api.github.com/users/tillmo/followers","following_url":"https://api.github.com/users/tillmo/following{/other_user}","gists_url":"https://api.github.com/users/tillmo/gists{/gist_id}","starred_url":"https://api.github.com/users/tillmo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tillmo/subscriptions","organizations_url":"https://api.github.com/users/tillmo/orgs","repos_url":"https://api.github.com/users/tillmo/repos","events_url":"https://api.github.com/users/tillmo/events{/privacy}","received_events_url":"https://api.github.com/users/tillmo/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":{"login":"mcodescu","id":1632930,"avatar_url":"https://avatars.githubusercontent.com/u/1632930?v=3","gravatar_id":"","url":"https://api.github.com/users/mcodescu","html_url":"https://github.com/mcodescu","followers_url":"https://api.github.com/users/mcodescu/followers","following_url":"https://api.github.com/users/mcodescu/following{/other_user}","gists_url":"https://api.github.com/users/mcodescu/gists{/gist_id}","starred_url":"https://api.github.com/users/mcodescu/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mcodescu/subscriptions","organizations_url":"https://api.github.com/users/mcodescu/orgs","repos_url":"https://api.github.com/users/mcodescu/repos","events_url":"https://api.github.com/users/mcodescu/events{/privacy}","received_events_url":"https://api.github.com/users/mcodescu/received_events","type":"User","site_admin":false},"milestone":null,"comments":0,"created_at":"2015-08-01T18:25:35Z","updated_at":"2015-08-01T18:25:35Z","closed_at":null,"body":"Since the MOF abstract syntax is the normative abstract syntax, the (also normative) semantics should be based on it. By contrast, the EBNF abstract syntax is only informative. Note that the MOF abstract syntax does not have any constructors (like the EBNF does have), but the association ends can be used as selectors. For example, the EBNF-based semantics contains a rule for the semantics of `OMS` covering the case `reduction OMS Reduction`. In a MOF-based semantics, this would become a rule for the semantics of `ReductionOMS` (which is a subclass of `OMS`). For a `ReductionOMS` `o`, the `OMS` component can be extracted with the association end `oms`, and the `Reduction` component with `reduction` (see p. 56 of the current standard document). The association ends `oms` and `reduction` hence act like selectors."}}