Feature Wiki

Information about planned and released features

Tabs

Moving LOM Metadata Editor to Kitchensink

1 Initial Problem

LOM Metadata are implemented in HTML. They cannot be fitted into Property Forms or into KS-Forms, because users can add new field and this would require tables within forms.

The LOM Metadata has a total of 4 conceptual levels that need to be accomodated in the GUI

  1. The Metadata-tab is home to LOM and taxonomy features and custom metadata in varying combinations. These services are represented as sub-tabs.  
  2. LOM comprises 10 titles sub-sections. These sections are currently operated by a drop down in a toolbar. The toolbar is illegal above forms cannot be part of the proposed solution. 
  3. In sections additional data sets can be added. This is currently possible for almost all sets in the current implementation. However mixing forms and tables is illegal. Adding additional data sets therefore must be done either in a form or in a table. 
  4. Some form inputs carry a language dimension.  

2 Conceptual Summary

  1. Opening the tab Metadata leads to its subtab "LOM". This tab shows the form "LOM Digest", basically the old "Quick Edit" form, with minor revisions to comply with the KS. Also, at the top of the page above the form, a bulky button "Edit the full LOM Dataset" leads to the new editor.
  2. When clicking on the bulky button, one enters a new context:
    • In the tools slate an expandable navigational tree is offered. When in a fresh ILIAS object, it only comprises the root node "Learning Object Metadata" and its sub-node "General". For objects where the metadata is already better populated, the tree is correspondingly also more fleshed out. All nodes in the tree except the root node and the ones directly below it are of the node type 'paired', consisting of value complementary to the label (see PR #4919). This value helps clarify the nodes by giving a small preview to their content. Note that the final appearance of this node type is still subject to change and not yet included in the KS.
    • The element General is automatically created once the object is created since it carries the "Title" and in some cases "Description". Depending on the type of objects, other metadata elements might be pre-filled as well.
    • By navigating through the tree, users can navigate through the metadata. Depending on the nature of the element and its position in the tree, clicking on their node in the tree leads to a different view:
      • "Container" Elements: Some Elements only exist to house their subelements, e.g. the root element "LOM" or its sub-element "General". Their view consists in general of an item previewing their contents as properties, mirroring the information given in the tree. This item also carries an action dropdown where the container element can be deleted, and new sub-elements added. When a sub-element is unique and already exists, the option to add it vanishes from the dropdown. Adding a sub-element is done via a roundabout modal, which contains an input form.
        The view of the root element "LOM" is a special case. It consists of all the aforementioned items of its direct sub-elements, and also a dropdown in the toolbar to add those elements (if they have not already reached their maximum number of occurences). Further, container elements carrying pre-filled elements (e.g. General) cannot be deleted.
      • Unique Elements with no Sub-Elements: "End"-nodes of the tree can lead to a form, if their element is unique. Most of the time, these forms consist of very few input fields, with which the contents of the element can be viewed and edited. The form also comes with a "Delete this Element" button, which removes the element from the metadata. This form (without the delete button) is also found in the modal that opens when adding this element in the superordinate container element.
      • Non-Unique Elements with no Sub-Elements: "End"-nodes of the tree can also lead to a table, if their element is not unique. This table shows the individual occurences of the element as rows, which carry an action dropdown with a delete and an edit button. Further, the table has an "Add Element" command button. Both the edit and add buttons lead to a modal with a form, again the same modal that opens when adding one of these elements in the superordinate container element. The tables do not have a "Delete this Element" button, they and the corresponding node in the tree are rather removed when the last row is deleted.
    • Some special cases in the LOM Standard necessitate a slightly different behavior of the editor than what is laid out above, but everything fits into this general scheme with minor modifications in some isolated places.

3 User Interface Modifications

3.1 List of Affected Views

  • ...> Metadata > LOM

3.2 User Interface Details

The Quick Edit form is renamed to 'LOM DIgest', slighlty restructured to fit into the KS. A bulky button above the form leads to an "underworld" with the new editor.
Initial state of the LOM editor for a fresh ILIAS object. A dropdown in the toolbar can be used to add new MD elements.
After adding the unique element "Lifecycle", and filling it with sub-elements, the tree is filled with the newly added MD elements. Since the Lifecycle element is unique, the respective button in the dropdown is no longer offered.
When viewing an element with sub-elements, its contents are previewed in an item, and new sub-elements can be added via an action dropdown.
Adding a sub-element opens a (roundabout) modal with the corresponding form.
When viewing final nodes for non-unique elements in the tree, those elements are presented in a table.
When viewing final nodes for unique elements in the tree, those elements are presented directly as a form. A "Self-Destruct" button is offered in the toolbar.
Alternatively, the Self-Destruct button could be introduced along with a KS extension, allowing the attachment of a second button to standard forms with different options for placement.
Alternatively (squared), the self-destruct button is not attached to the form at all, but shows up as a replacement for the "Add Element" button in the superordinate element's action dropdown. Deletion in this way would then only be available for unique (non-container) elements.

3.3 New User Interface Concepts

The implementation is changed to employ KS-elements wherever possible. A new tree node type is used, see PR #4919.

3.4 Accessibility Implications

No issue forseeable: The views are as acessible as the KS-elements they are comprised of. 

4 Technical Information

-

5 Privacy

  • LOM Digest: "Author" to identifiy copy right holder by name 
  • Lifecycle: "Contribute" to identify individual contributors by name 
  • Meta-Metadata: "Contribute" to identify individual contributors by name 

6 Security

No foreseeable security implications.

7 Contact

8 Funding

If you are interest in funding this feature, please add your name and institution to this list.

9 Discussion

JourFixe, ILIAS [jourfixe], 08 AUG 2022 : We highly appreciate this suggestion and fully support the approach of moving the metadata editing from a very outdated version to a Kitchen Sink compliant new structure.

  • Please consider to move the buttons to add one of the LOM sections into a dropdown with submit button. This would improve responsiveness on small screens and avoid two lines of buttons on smaller (or French) screens.
  • Please consider to replace the subtab "LOM >" with a distinct button "Edit LOM Dataset" to enter the "underworld" for editing the full LOM data...
  • It would be great to have a new type of tree node "Key-Value" and not to use the type "Byline". This would allow to still show the value in nodes when bylines are hidden due to missing space or other reasons.
  • Please consider to move the "self-destruction" button on item level to another place to avoid that users accidently click on it because they assume it is the Cancel button.

JourFixe, ILIAS [jourfixe], 22 AUG 2022 : We highly appreciate this suggestion and schedule the feature for ILIAS 9. Thanks for adapting the suggestions from the last JF and for creating a PR for the necessary UI element. We accept the use of toolbar and form on the same page (and suggest the UI coordinators to think about modifying the current guideline accordingly).

10 Implementation

Implemented as described, except that the views of container elements use KS panels instead of items: they also have the required functionality, but look better in this context.

View for container element
View for container element
View for non-unique element
View for non-unique element
View for unique element
View for unique element

Test Cases

Test cases completed at 2023-05-11 by Spirou, Ilias [ispirou]

  • 1466 : Quick Edit: Adding LOM Metadata to Objects
  • 1467 : Individual Metadata Sections: Adding LOM Metadata to Objects
  • 1278 : Adding LOM Metadata to ILIAS Learning Modules (Module, Chapter, Page)
  • 6973 : Allgemein
  • 6974 : Lebenszyklus
  • 6975 : Meta-Metadaten
  • 6976 : Technische Angaben
  • 6977 : Pädagogik
  • 6978 : Rechte und Lizenzen
  • 6979 : Beziehung
  • 6980 : Anmerkung
  • 6981 : Klassifizierung

Approval

Approved at 05 SEP 2023 by Kunkel, Matthias [mkunkel]

Last edited: 9. Oct 2023, 14:14, Schmitz, Tim [tschmitz]