thexerteproject / xerteonlinetoolkits

Xerte Online Toolkits
www.xerte.org.uk
Apache License 2.0
62 stars 60 forks source link

Possible migration away from XML as data store for LO data #958

Open JohnSmith-LT opened 3 years ago

JohnSmith-LT commented 3 years ago

Not really... this is a tongue in cheek way to get your attention however it may be somewhat necessary, at least under the hood, in the future (near or far)...

Due to ever increasing browser security and cross-origin requests being blocked at server level, loading XML from remote servers is becoming increasingly difficult... I point you to this Forum post (https://www.xerte.org.uk/index.php/en/forum/developers/2216-adding-to-vle#6901) where recent changes to Canvas (a VLE that is gaining A LOT of ground from Blackboard - we have even considered moving to it at GCU) appears to mean that XML loading is now being blocked by CORS and Canvas are not accepting responsibility...

I've had this discussion with @torinfo at some point in the past, regarding moving from XML to JSON and the data for LOs is actually already saved as JSON, however we've never actually loaded or processed this client side AFAIK (in xenith/bootstrap/DT) and in any case the language files are equally problematic and do not yet have JSON alternatives.

I think going forward we need to think about moving away from XML completely or at the very least start exporting in JSON format (or both JSON and XML), add some code to process the JSON when the LO loads and provide JSON language files also...

Have any of you seen this issue reported?

What do you think @torinfo, @ronm123, @FayCross, @juliantenney ?

PS. I will change the name of this issue to something less confrontational after some of you have had a chance to reply...

ronm123 commented 3 years ago

If it wasn't for the X shaped logo I'd have suggested changing to Zertee long ago if only to stop people pronouncing it Exerte! ;-)

I think there are a few separate issues here...

  1. The workflow (and justification or not) of people exporting in whatever format and importing into the VLE rather than linking or embedding from a Xerte install.
  2. VLE vendors having a vested interest in only supporting their own tools and content and so not supporting this kind of issue.
  3. The growing challenge of external loading of content whether that be xml or other formats.

For 1. I think we need to write up a list of pros and cons of exporting and importing rather than just linking or embedding. Although embedding seems to be becoming an increasing challenge too. For 2. Again I think we should write this up somewhere and then link to that when responding to such questions. For 3. Isn't the offline export option doing some of this already? But yes it sounds like this is going to be an increasing problem so anything we can do to prevent issues would be good but sounds like a lot of work. I asked in my email yesterday whether or not we should schedule another developer day but no responses to that.

JohnSmith-LT commented 3 years ago

Thanks for the tip about the Offline version @ronm123 and in actual fact I asked Rich on the forum to try that and it did indeed work on Canvas... EXCEPT, strangely none of the FontAwesom icons load... and the FA library gives a CORS error too like before..

Perhaps in the short term we should add a message and/or change the "Offline" version to something else since he is obviously using it online but it seems to mostly work and that might be a solution for anyone migrating to Canvas...

Any ideas @ronm123 or @torinfo why the FA icons don't work in the offline version when it is placed on a server? It's the font-awesome WOFF file that is being blocked:

image

Regard

ronm123 commented 3 years ago

@JohnSmith-LT dunno about the FA issue. However I looked at the screenshots he posted and one possible change he could make hisself is to temporarily use one of the older themes that use images for navigation buttons rather than FA icons. That won't resolve FA icons in the content itself but should at least restore navigation controls. Obviously not worth doing that if we find a quick fix for the FA icon issue.