{"action":"created","issue":{"url":"https://api.github.com/repos/edx/edx-platform/issues/12402","repository_url":"https://api.github.com/repos/edx/edx-platform","labels_url":"https://api.github.com/repos/edx/edx-platform/issues/12402/labels{/name}","comments_url":"https://api.github.com/repos/edx/edx-platform/issues/12402/comments","events_url":"https://api.github.com/repos/edx/edx-platform/issues/12402/events","html_url":"https://github.com/edx/edx-platform/pull/12402","id":153758815,"number":12402,"title":"separate multiple questions in a single problem","user":{"login":"muhammad-ammar","id":6767924,"avatar_url":"https://avatars.githubusercontent.com/u/6767924?v=3","gravatar_id":"","url":"https://api.github.com/users/muhammad-ammar","html_url":"https://github.com/muhammad-ammar","followers_url":"https://api.github.com/users/muhammad-ammar/followers","following_url":"https://api.github.com/users/muhammad-ammar/following{/other_user}","gists_url":"https://api.github.com/users/muhammad-ammar/gists{/gist_id}","starred_url":"https://api.github.com/users/muhammad-ammar/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/muhammad-ammar/subscriptions","organizations_url":"https://api.github.com/users/muhammad-ammar/orgs","repos_url":"https://api.github.com/users/muhammad-ammar/repos","events_url":"https://api.github.com/users/muhammad-ammar/events{/privacy}","received_events_url":"https://api.github.com/users/muhammad-ammar/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":58,"created_at":"2016-05-09T11:46:36Z","updated_at":"2016-06-03T13:11:59Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/edx/edx-platform/pulls/12402","html_url":"https://github.com/edx/edx-platform/pull/12402","diff_url":"https://github.com/edx/edx-platform/pull/12402.diff","patch_url":"https://github.com/edx/edx-platform/pull/12402.patch"},"body":" [FEDX-173](https://openedx.atlassian.net/browse/FEDX-173)\r\n [FEDX-188](https://openedx.atlassian.net/browse/FEDX-188)\r\n\r\n### Testing\r\n- [x] Unit\r\n- [x] Acceptance\r\n\r\n### Reviewers\r\nIf you've been tagged for review, please check your corresponding box once you've given the :+1:.\r\n- [ ] Code review: @cahrens  \r\n- [ ] Code review: @cpennington\r\n- [ ] A11y review: @cptvitamin \r\n- [ ] UX review: @chris-mike \r\n\r\n### Post-review\r\n- [ ] Squash commits\r\n\r\n\r\n#### [Sandbox](https://capa173.sandbox.edx.org)\r\n\r\n### Changes\r\nChanges added by this PR are:\r\n\r\n- Separate multiple questions in a single problem\r\n- Demandhint are now tied to a question instead of whole problem\r\n- Make existing problem's XML compatible with new format\r\n\r\nBelow is a little detail about above changes\r\n \r\n#### Question Separation\r\nA question should be separated by **`---`** in markdown and by **`<question></question>`** in XML\r\n\r\n#### Demand Hints\r\n**`<demandhint></demandhint>`** should be inside **`<question></question>`** in XML and in markdown **`||hint1||`** should be before **`---`**. Below is how a demandhint is attached to a question.\r\n```XML\r\n<problem>\r\n  <question>\r\n    <p>That is the question</p>\r\n    <multiplechoiceresponse>\r\n      <choicegroup type=\"MultipleChoice\">\r\n        <choice correct=\"false\">Alpha <choicehint>A hint</choicehint>\r\n        </choice>\r\n        <choice correct=\"true\">Beta</choice>\r\n      </choicegroup>\r\n    </multiplechoiceresponse>\r\n    <demandhint>\r\n      <hint>Demand 1</hint>\r\n      <hint>Demand 2</hint>\r\n    </demandhint>\r\n  </question>\r\n</problem>  \r\n```\r\n\r\n#### Existing Problems\r\nAn existing problem is wrapped inside **`<question></question>`** whether there is a single question or multiple questions. Demand hints will work without any issue.\r\n"},"comment":{"url":"https://api.github.com/repos/edx/edx-platform/issues/comments/223574732","html_url":"https://github.com/edx/edx-platform/pull/12402#issuecomment-223574732","issue_url":"https://api.github.com/repos/edx/edx-platform/issues/12402","id":223574732,"user":{"login":"muhammad-ammar","id":6767924,"avatar_url":"https://avatars.githubusercontent.com/u/6767924?v=3","gravatar_id":"","url":"https://api.github.com/users/muhammad-ammar","html_url":"https://github.com/muhammad-ammar","followers_url":"https://api.github.com/users/muhammad-ammar/followers","following_url":"https://api.github.com/users/muhammad-ammar/following{/other_user}","gists_url":"https://api.github.com/users/muhammad-ammar/gists{/gist_id}","starred_url":"https://api.github.com/users/muhammad-ammar/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/muhammad-ammar/subscriptions","organizations_url":"https://api.github.com/users/muhammad-ammar/orgs","repos_url":"https://api.github.com/users/muhammad-ammar/repos","events_url":"https://api.github.com/users/muhammad-ammar/events{/privacy}","received_events_url":"https://api.github.com/users/muhammad-ammar/received_events","type":"User","site_admin":false},"created_at":"2016-06-03T13:11:59Z","updated_at":"2016-06-03T13:11:59Z","body":"@pmitros \r\n\r\n> 1) For the most part, we should have multiple problems, not a mass of questions thrown into one problem. The use case here is not necessarily well-grounded.\r\n\r\nAgreed. This could have make life easier if we have checks/restrictions in first place so the Authors can't misuse the system but this is not the case.\r\n\r\n> 2) The concept of question is redundant with having responsetypes. There weren't clear use cases for them otherwise. The above could be rephrased as:\r\n\r\n```XML\r\n<problem>\r\n  <multiplechoiceresponse>\r\n  <p>That is the question</p>\r\n    <choicegroup type=\"MultipleChoice\">\r\n      <choice correct=\"false\">Alpha <choicehint>A hint</choicehint>\r\n      </choice>\r\n      <choice correct=\"true\">Beta</choice>\r\n    </choicegroup>\r\n    <demandhint>\r\n      <hint>Demand 1</hint>\r\n      <hint>Demand 2</hint>\r\n    </demandhint>\r\n  </multiplechoiceresponse>\r\n</problem>\r\n```\r\n\r\n@pmitros @cptvitamin Few questions related to this:\r\n1. How we're going to identify the question title for expected html, also will there be an single `<p>` tag for it always? \r\n2. How the multiple problems/questions descriptions will fit in the above format?\r\n3. How the `<solution>` tag will be handled? Current implementation will not allow us to have a solution tag inside a response type if you're thinking to add inside the responsetype.\r\n\r\n> 3) Using --- in the markup format seems like an okay compromise until we have Studio support for quickly authoring multiple questions.\r\n\r\nOur understanding is that on the basis of --- dashes we will place question title and demand hint under particular response type. But if someone is directly playing with XML then it should be in correct format.\r\n\r\n > 4) The code, discussion, and test cases ought to reflect real-world use cases more closely.\r\n\r\nI am not sure if there are any real-world use cases already being tested in existing code. I even don't know what are real-world use cases."}}
{"actor":{"display_login":"muhammad-ammar"}}