Moodle
  1. Moodle
  2. MDL-40531

Need to change the namespace in XML To be Compliant With Updates IMS LTI Certification Tests

    Details

    • Testing Instructions:
      Hide
      • Note this has been already tested against the 1.1 certification tests and is passing for all branches (see attached pdfs).
      • No testing needed, just ensure visually that the new URL is the correct one.
      • And confirm there is not any unit test failure (although that namespace is not verified by current unit tests).
      Show
      Note this has been already tested against the 1.1 certification tests and is passing for all branches (see attached pdfs). No testing needed, just ensure visually that the new URL is the correct one. And confirm there is not any unit test failure (although that namespace is not verified by current unit tests).
    • Affected Branches:
      MOODLE_24_STABLE, MOODLE_25_STABLE, MOODLE_26_STABLE
    • Fixed Branches:
      MOODLE_24_STABLE, MOODLE_25_STABLE
    • Pull Master Branch:

      Description

      The XML Namespace used by Moodle for the XML messages required for LTI 1.1 grade exchange are incorrect because the code was based on the final draft of LTI 1.1 and not the actual final version of the spec. The namespace was changed between the drafts. The early IMS LTI Certification tests allowed for either the new or old namespace to allow for a transition. But for Moodle that transition was never made and we have kept the wrong namespace from 2.2 through 2.5.

      This is the wrong namespace:

      http://www.imsglobal.org/lis/oms1p0/pox

      This is the right namespace:

      http://www.imsglobal.org/services/ltiv1p1/xsd/imsoms_v1p0

      The newest version of the certification will now demand the proper namespace so we should get this fixed so as to be compliant with the updated certification tests.

        Gliffy Diagrams

        1. MDL-40531-chuck-patch.txt
          2 kB
          Charles Severance
        2. MOODLE_24_IMS_GLC_ LTI_Certification.pdf
          192 kB
          Charles Severance
        3. MOODLE_25_IMS_GLC_ LTI_Certification.pdf
          192 kB
          Charles Severance
        4. MOODLE_26_IMS_GLC_ LTI_Certification.pdf
          192 kB
          Charles Severance
        1. MDL-40531-pass.png
          116 kB

          Activity

          Hide
          Sam Chaffee added a comment -

          Updated affected versions, pull branches and pull diff urls for 2.5 and master.

          Show
          Sam Chaffee added a comment - Updated affected versions, pull branches and pull diff urls for 2.5 and master.
          Hide
          Eloy Lafuente (stronk7) added a comment -

          Sending to integration, thanks!

          Sam, Charles… if you can imagine any way to verify it's working as expected (ongoing certification server available…), feel free to comment.

          To integrators, this should be backported to 24_STABLE too (applies clean).

          Ciao

          Show
          Eloy Lafuente (stronk7) added a comment - Sending to integration, thanks! Sam, Charles… if you can imagine any way to verify it's working as expected (ongoing certification server available…), feel free to comment. To integrators, this should be backported to 24_STABLE too (applies clean). Ciao
          Hide
          Charles Severance added a comment -

          Eloy - I am happy to test it and get back to you. What should I git clone?

          Show
          Charles Severance added a comment - Eloy - I am happy to test it and get back to you. What should I git clone?
          Hide
          Dan Poltawski added a comment -

          The main moodle.git repository has just been updated with latest weekly modifications. You may wish to rebase your PULL branches to simplify history and avoid any possible merge conflicts. This would also make integrator's life easier next week.

          TIA and ciao

          Show
          Dan Poltawski added a comment - The main moodle.git repository has just been updated with latest weekly modifications. You may wish to rebase your PULL branches to simplify history and avoid any possible merge conflicts. This would also make integrator's life easier next week. TIA and ciao
          Hide
          Sam Chaffee added a comment -

          Thanks Dan, I rebased my branches. Have a good weekend.

          Show
          Sam Chaffee added a comment - Thanks Dan, I rebased my branches. Have a good weekend.
          Hide
          Eloy Lafuente (stronk7) added a comment -

          Super, Charles, we'll point you to our integration repository once this lands there next week.

          PS: You can test it already by using Sam's repo and branch. If you already have a local git clone with Moodle running, then do:

          Then you can the Moodle site to point to the certification tests. Once finished, you can make:

          • git checkout master
          • git branch -D testing_namespace

          and done. Same applies to MOODLE_25_STABLE and the MDL-40531_25 branch.

          If you don't have any local Moodle clone, then simply clone Sam's one and checkout the MDL-40531_xxx branches, install moodle with them and test.

          Ciao

          Show
          Eloy Lafuente (stronk7) added a comment - Super, Charles, we'll point you to our integration repository once this lands there next week. PS: You can test it already by using Sam's repo and branch. If you already have a local git clone with Moodle running, then do: cd <your_clone_site> git checkout master git pull git checkout -b testing_namespace git fetch https://github.com/sam-moodle/moodle.git MDL-40531 _master git merge FETCH_HEAD Then you can the Moodle site to point to the certification tests. Once finished, you can make: git checkout master git branch -D testing_namespace and done. Same applies to MOODLE_25_STABLE and the MDL-40531 _25 branch. If you don't have any local Moodle clone, then simply clone Sam's one and checkout the MDL-40531 _xxx branches, install moodle with them and test. Ciao
          Hide
          Charles Severance added a comment - - edited

          Eloy, I ran through the tests and the fix to the namespace was perfect - but there were a few more issues that popped up once the name space was solved. Originally I was going to fix this ticket myself and fix all of the issues that I would see after the namespace was fixed.

          Show
          Charles Severance added a comment - - edited Eloy, I ran through the tests and the fix to the namespace was perfect - but there were a few more issues that popped up once the name space was solved. Originally I was going to fix this ticket myself and fix all of the issues that I would see after the namespace was fixed.
          Hide
          Charles Severance added a comment -

          I have a patch (attached) that when added to the work already done leads to a clean bill of health in the certification.

          I attach both the patch and screen shot of passing all the outcome certification. I would do something clever in git - but it just seems easier to hand in an old-school patch.

          Show
          Charles Severance added a comment - I have a patch (attached) that when added to the work already done leads to a clean bill of health in the certification. I attach both the patch and screen shot of passing all the outcome certification. I would do something clever in git - but it just seems easier to hand in an old-school patch.
          Hide
          Eloy Lafuente (stronk7) added a comment -

          Many thanks, Charles.

          I'm going to prepare some branches in my moodle.git (for Moodle 2.4, 2.5 and 2.6beta) repo to put together Sam's work and your one. Is it ok if I attribute your patch to "Charles Severance <csev@umich.edu>" (taken from github) ?

          Ciao

          Show
          Eloy Lafuente (stronk7) added a comment - Many thanks, Charles. I'm going to prepare some branches in my moodle.git (for Moodle 2.4, 2.5 and 2.6beta) repo to put together Sam's work and your one. Is it ok if I attribute your patch to "Charles Severance <csev@umich.edu>" (taken from github) ? Ciao
          Hide
          Eloy Lafuente (stronk7) added a comment -

          Done, I've replaced the repo & branches above to point to new ones containing all the work together.

          BTW, the 24 and 25 versions are different from master one because we did not have those new events there. I think that no change was needed in that area.

          Would be great if you can confirm the 3 branches are working as expected. It's blind-programming here, lol.

          TIA and ciao

          Show
          Eloy Lafuente (stronk7) added a comment - Done, I've replaced the repo & branches above to point to new ones containing all the work together. BTW, the 24 and 25 versions are different from master one because we did not have those new events there. I think that no change was needed in that area. Would be great if you can confirm the 3 branches are working as expected. It's blind-programming here, lol. TIA and ciao
          Hide
          Charles Severance added a comment -

          Thanks - I will test it all in the morning and get back to you.

          Show
          Charles Severance added a comment - Thanks - I will test it all in the morning and get back to you.
          Hide
          Charles Severance added a comment -

          Moodle 2.6 from your branch passes the complete test as shown in the attached PDF. Now on to to going back to 2.4 and working forward

          Show
          Charles Severance added a comment - Moodle 2.6 from your branch passes the complete test as shown in the attached PDF. Now on to to going back to 2.4 and working forward
          Hide
          Charles Severance added a comment -

          Eloy - I ran all the way through all the tests for 2.4 and 2.5 and they all passed beautifully. I attach the results output from IMS. Thanks for making it easy for me with the "branches for dummies"

          Show
          Charles Severance added a comment - Eloy - I ran all the way through all the tests for 2.4 and 2.5 and they all passed beautifully. I attach the results output from IMS. Thanks for making it easy for me with the "branches for dummies"
          Hide
          Charles Severance added a comment -

          Eloy - to answer a question that I did not answer above - I would be very proud to have the patch attributed to my github account. I am very proud of my small but (I hope) valuable contributions to Moodle.

          Show
          Charles Severance added a comment - Eloy - to answer a question that I did not answer above - I would be very proud to have the patch attributed to my github account. I am very proud of my small but (I hope) valuable contributions to Moodle.
          Hide
          Eloy Lafuente (stronk7) added a comment -

          "Give credit where credit is due!"

          Many thanks, Charles and Sam!

          Show
          Eloy Lafuente (stronk7) added a comment - "Give credit where credit is due!" Many thanks, Charles and Sam!
          Show
          Martin Dougiamas added a comment - Thanks a lot guys! http://www.imsglobal.org/cc/detail.cfm?ID=190 http://www.imsglobal.org/cc/detail.cfm?ID=191 http://www.imsglobal.org/cc/detail.cfm?ID=192 Better get it integrated, eh?
          Hide
          Charles Severance added a comment -

          Great news. The process in IMS is designed to verify pre-release software so that the software can already be certified at the moment of release. So we are right on time . I am happy to re-test the released versions when I know about them.

          Show
          Charles Severance added a comment - Great news. The process in IMS is designed to verify pre-release software so that the software can already be certified at the moment of release. So we are right on time . I am happy to re-test the released versions when I know about them.
          Hide
          Dan Poltawski added a comment -

          Integated to master 25 and 24 - thanks

          Show
          Dan Poltawski added a comment - Integated to master 25 and 24 - thanks
          Hide
          Eloy Lafuente (stronk7) added a comment -

          "Aequam memento rebus in arduis servare mentem"

          Many thanks for your hard work, this is now part of "Moodle, the LMS". Closing!

          Ciao

          Show
          Eloy Lafuente (stronk7) added a comment - "Aequam memento rebus in arduis servare mentem" Many thanks for your hard work, this is now part of "Moodle, the LMS". Closing! Ciao
          Hide
          Eloy Lafuente (stronk7) added a comment -

          Adding the docs_required label as I really think we can put the 2.4.7, 2.5.3 and 2.6 LTI v1.0 and LTI v1.1 compliance in notes.

          Show
          Eloy Lafuente (stronk7) added a comment - Adding the docs_required label as I really think we can put the 2.4.7, 2.5.3 and 2.6 LTI v1.0 and LTI v1.1 compliance in notes.

            People

            • Votes:
              0 Vote for this issue
              Watchers:
              6 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: