The IMS-LD package is a .LRN service (or package, we use these terms indifferently in this specification when referring to .LRN), which will interact with some other .LRN services. When writing this specification, we expect the IMS-LD package to interact with at least the following .LRN packages:
Forums.
Jabber.
Assessment.
Evaluation (grade book).
Calendar.
News.
FAQ
Notifications.
File Storage.
As we mentioned earlier, the IMS-LD package allows to easily modify the mappings between the elements of the IMS-LD specification and the .LRN services. And not only modifying the mappings, but also to add new ones. By these way if the IMS-LD specification change in some aspect, then the package will adapt to the new changes easily. From our point of view it is necessary that in the future the IMS-LD specification adds more tags that map onto services. By these way compatibility between LMS are obtained, and if an LMS doesn't understand one tag because it is not available, then it will be ignored and nothing will be presented to the user.
Besides, we take advantage of the new callbacks used in OpenACS in order to provide a clean interaction between different .LRN packages. With the callbacks we can determine if some needed package is not installed, and instead of displaying an error to the user, try to map the activity or whatever we are mapping to other package, and if after trying with all the available packages we can't map the item to .LRN, a message is shown to the user with this and any other item that could not be mapped by the system and with the purpose of letting the user to do the manual mapping.
We have to take into account that the item will not always have all the necessary information to let the mapping be done easily, but we try to do our best by providing at least the required information to create the forum, chat, assessment, task, etc, and if definitively no mapping can be done, a final error message is shown to the user indicating that there is at least one item that .LRN can't understand.