{"action":"closed","issue":{"url":"https://api.github.com/repos/osate/osate2-core/issues/488","labels_url":"https://api.github.com/repos/osate/osate2-core/issues/488/labels{/name}","comments_url":"https://api.github.com/repos/osate/osate2-core/issues/488/comments","events_url":"https://api.github.com/repos/osate/osate2-core/issues/488/events","html_url":"https://github.com/osate/osate2-core/issues/488","id":45877426,"number":488,"title":"Missing validation for modal properties","user":{"login":"joeseibel","id":1824701,"avatar_url":"https://avatars.githubusercontent.com/u/1824701?v=3","gravatar_id":"","url":"https://api.github.com/users/joeseibel","html_url":"https://github.com/joeseibel","followers_url":"https://api.github.com/users/joeseibel/followers","following_url":"https://api.github.com/users/joeseibel/following{/other_user}","gists_url":"https://api.github.com/users/joeseibel/gists{/gist_id}","starred_url":"https://api.github.com/users/joeseibel/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/joeseibel/subscriptions","organizations_url":"https://api.github.com/users/joeseibel/orgs","repos_url":"https://api.github.com/users/joeseibel/repos","events_url":"https://api.github.com/users/joeseibel/events{/privacy}","received_events_url":"https://api.github.com/users/joeseibel/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/osate/osate2-core/labels/category:bug","name":"category:bug","color":"e11d21"}],"state":"closed","locked":false,"assignee":{"login":"klreamsei","id":10516180,"avatar_url":"https://avatars.githubusercontent.com/u/10516180?v=3","gravatar_id":"","url":"https://api.github.com/users/klreamsei","html_url":"https://github.com/klreamsei","followers_url":"https://api.github.com/users/klreamsei/followers","following_url":"https://api.github.com/users/klreamsei/following{/other_user}","gists_url":"https://api.github.com/users/klreamsei/gists{/gist_id}","starred_url":"https://api.github.com/users/klreamsei/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/klreamsei/subscriptions","organizations_url":"https://api.github.com/users/klreamsei/orgs","repos_url":"https://api.github.com/users/klreamsei/repos","events_url":"https://api.github.com/users/klreamsei/events{/privacy}","received_events_url":"https://api.github.com/users/klreamsei/received_events","type":"User","site_admin":false},"milestone":{"url":"https://api.github.com/repos/osate/osate2-core/milestones/3","html_url":"https://github.com/osate/osate2-core/milestones/2015.03","labels_url":"https://api.github.com/repos/osate/osate2-core/milestones/3/labels","id":810455,"number":3,"title":"2015.03","description":"","creator":{"login":"lwrage","id":750311,"avatar_url":"https://avatars.githubusercontent.com/u/750311?v=3","gravatar_id":"","url":"https://api.github.com/users/lwrage","html_url":"https://github.com/lwrage","followers_url":"https://api.github.com/users/lwrage/followers","following_url":"https://api.github.com/users/lwrage/following{/other_user}","gists_url":"https://api.github.com/users/lwrage/gists{/gist_id}","starred_url":"https://api.github.com/users/lwrage/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lwrage/subscriptions","organizations_url":"https://api.github.com/users/lwrage/orgs","repos_url":"https://api.github.com/users/lwrage/repos","events_url":"https://api.github.com/users/lwrage/events{/privacy}","received_events_url":"https://api.github.com/users/lwrage/received_events","type":"User","site_admin":false},"open_issues":7,"closed_issues":3,"state":"open","created_at":"2014-10-01T19:59:20Z","updated_at":"2015-02-26T17:57:55Z","due_on":"2015-03-31T07:00:00Z","closed_at":null},"comments":0,"created_at":"2014-10-15T14:54:45Z","updated_at":"2015-02-26T17:57:55Z","closed_at":"2015-02-26T17:57:55Z","body":"We need to check that only the last value of a modal property does not have `in modes`.\r\n```\r\n--Legal\r\nps::p1 => 1 in modes (m1), 2 in modes (m2);\r\n--Legal\r\nps::p2 => 1 in modes (m1), 2;\r\n--Illegal\r\nps::p3 => 1, 2 in modes (m2);\r\n--Illegal\r\nps::p4 => 1, 2;\r\n```\r\n\r\nWe also need to check that modes are not repeated in the property association.\r\n```\r\n--Illegal\r\nps::p5 => 1 in modes (m1), 2 in modes (m1);\r\n```"}}