Just about now got to grips (I think!) with how properties are defined in LD. I thought at first that the properties were just defined in the main LD XML – and in a sense they are, but, to be able to allow users to set/change properties, then extra xml files need to be included in the LD package in order to display the form for the user to update.
Using one of the examples the OUNL team gave me with their 2nd version of the CopperCore engine, I’ve figured out how this should all be working – and I’ve made some changes to their stylesheet for displaying the globalcontent/properties update form. Not significant changes at this point. I now need to update the player servlet so that when the form is posted back the updates are actually sent back to CopperCore.
The next step after this is to sort out the ‘supported-person’ options. An LD can be set up so that (for example) a teacher can look at the properties/global content that one of their learners has entered. All of this is being made much harder by the lack of sample content – just one or 2 examples aren’t really enough!
There still seems to be much to do – and I’m not sure that I’ll have it up to LD level C before the end of the project. Still got quite a lot of tidying up in the code to and writing up (comments/explanations etc) and also change the player so it connects to CopperCore using web services, rather than the current internal java calls.
Been making some more updates to the player, so that it can pull in html resources – and not all of the html tags need to be explicitly defined in the XSL (see point 2 in last entry). I;ve tested it with more content and have been trying with ‘full’ html documents – ie one’s which have all the head, meta tags etc. So far some of these are working and others aren’t. I;ve found that if the html resource has a doctype tag then the xml parser moans about the xml not being well formed – which is what it should moan about I guess.
I’ve made a few updates to the login and course selection pages, so that any errors – such as username not existing, or the username exisitng but not currently assigned to any courses – are handled more elegantly. By elegantly, I mean that the user doesn’t just get the whole java error message printed on screen!
I’m making some changes to the error handling, so that all error messages can be stored in a log file, rather than just appearing either on screen or in the JBoss server window.
Have spent the last few days sorting out some demo content (real content from a short professional development course), which I really need someone else to look over and check that it’s all ok – ie, it’s how a teacher/author would expect a prof. dev. course to look like when presented with learning design.
I got a new version of the coppercore engine through from OUNL so got that up and running quite quickly. I’ve also got the coppercore engine running standalone on my laptop. There were some problems here in that I had Windows XP Pro on the laptop, but for some reason MSDE wouldn’t install properly on XP Pro (couldn’t work out why as MS claim it should!), so ended up rebuilding the machine with W2K instead and all seems to be fine. Putting a new OS on seems a bit drastic – but there wasn;t anything on the machine that I needed to keep!
I’ve made an update to the player, so that rather than html content (a resource in the LD package) being displayed within an iframe, it is displayed directly in the page. There are a couple of drawbacks with what I’ve done here: 1) the html must be well formed – else the xml parser won’t transform the document, 2) any html tags you want to use must be explictly specified in the layout.xsl file and 3) so far, I’ve only tested it with files that are well formed ‘fragments’ of html files, ie they’ve not got all the header/ doc-type declarations etc at the top.
There probably are better ways of doing this, but this way should work for demo/testing purposes for now.
I was at the UNFOLD meeting last week – a way of catching up on what everyone else is up to in the field of learning design. I came away with some more ideas about what to do with the development of the player. One of the key aspects that seemed to come out of the meeting – especially from people new-ish to LD – was the lack of sample LD packages to look at, something that the UNFOLD team are going to try and resolve!
I guess the main thing for me was that no-one was particularly sure what an LD player should actually look like – so this is good news for me! as it means that people won’t have too high expectations of what I come up with 😉 Also, once the player is ready at least it will be a starting point, from which people will be able to say whether or not they like it and whether it’s heading in the right direction.
The next step for me, now that I’ve created some sample content, is to look at how to display the global properties (in LD level B spec) and also allow users to be able to edit these properties (where necessary).
Have been spending most of the day trying to create some new LD content, based on an existing internal staff development course. Fortunately the material is already well seperated into learning objects, activities and the services (forums/discussion areas) are easy to spot to.
I am however finding it very slow going actually creating the XML for the LD – which I’m doing in ‘raw’ xml format, using an existing simple LD as a starting template. The three main problems I’m coming across are:…. 1. the ‘titles’ for the learning objects, environment activites etc all seem to need to be repeated, eg for the actual node title and then for the item node title. 2. I’m getting a bit mixed up with the identifiers and identifier-refs and where each of them should be pointing to. 3. the final problem is that although I can successfully upload any changes I make to test and it all gets validated fine, coppercore (or the player) is caching the previous results, making it hard for me to see whether or not my changes have been successful.
Have now done quite a lot to catch up on where I left off in July – well at least I’ve now remembered what I was actually doing! 😉
Have spent some time today trying to exlain to people some of the conceptual issues/problems I’ve been having. For example, trying to work out what the player should _actually_ look like to users, without using lots of frames or iframes to display the content to the user. Because the LD spec is designed to be generic (in that the content of the activities/environments etc can be any file type) this can create problems in creating a generic player to show any of this back to the user in a single web page – hence the suggestion of using frames, or breaking out into new windows. The problem with breaking into new windows is that the player could just end up looking like a whole list of links for the user to follow, which may not be very engaging!
Also trying to encourage people to put some more content together, which will help me loads in seeing how the player should look.
This is all before (of course) I get on to looking at how the services should be interoperating with the player and how the conditions/properties should be incorporated when we get on to looking at level B and C content
Haven’t been any updates to tell anyone about for a little while as I’ve been away on holiday for the past month and am trying to get back into ‘work mode’ again 😉