I tried that a couple of years ago (on Python, making questions as a QTI file, then uploading to Canvas), but then decided it was faster/easier to upload the questions using the Canvas API. If you haven't yet, I recommend looking into it, it should be more straightforward than making XML files from scratch.
But if you do want to go the QTI files, what question types are you looking for? Different question types will have slightly different formats.
Have you tried making simple questions on the Canvas interface, and then exporting them, to build on top of these exports?
The full standards are available from 1EDTECH in this link (see versions 1.2 or 2.1, for what Canvas uses), but that will likely have more than what you need.
Alternatively, if you share one simple QTI file here, I or someone else may be able to help find the issue.