Feature Wiki

Information about planned and released features

Tabs

Improve Usability of  Export of and Access to Personal Data

1 Initial Problem

ILIAS does export quite a bit of Personal Data: 

  • Personal Profile Data 
  • Personal Settings 
  • Bookmarks 
  • Personal Notes made on the Personal Desktop (not those made to objects)
  • Private Calendars
ILIAS also allows obtaining quite a bit of object types of a user :
  • Personal Blogs from the Personal Workspace
  • Download Certificates from the Personal Workspace, if they were added there
  • My Repository Objects from the Personal Workspace, however in a very tideous procedure without multi-actions
  • Portfolios from the Personal Personal Desktop, however in a very tideous procedure requiring opening every Portfolio in Edit-Mode
However these Features are a bit scattered and not available in one dedicated locus. 

Recital 63
Where possible, the controller should be able to provide remote access to a secure system which would provide the data subject with direct access to his or her personal data. That right should not adversely affect the rights or freedoms of others, including trade secrets or intellectual property and in particular the copyright protecting the software. However, the result of those considerations should not be a refusal to provide all information to the data subject.

2 Conceptual Summary

Users should have a self-service access to obtain a copy of their personal data from a tab within their Personal Profile. 
Data that could theoretical be useful on another platform and thus could be XML-exported could be: 

  • Badges
  • Certificates in a nice zip
  • My repository objects
Data that could be useful and could be exported as HTML or PDF could be 
  • Portfolios
Information on role assignment and learning progress cannot be re-imported and thus should be made available as xls. 
  • Role assignment: list of all global and local roles
  • Learning progress: data from the Learning Progress tab of a user in the User Management by the object type filters. 
Administrators should be able to create the same copy in the general Administration.

3 Data to be exported and not to be exported

Data not to be exported

It makes no sense to XML-export data that cannot be transfered to other learning plattforms, because they need content contexts that will not be available on those other plattforms: 

  • Competence data depends on specific competence definitions to be available in the administration. 
  • Forum posts depends on the thread-specific context. 
  • Comments depend on the speific content page they were made to. 
  • News depend on the specific content page or object they were gernerated from. 
  • Learning Progress data depend on the object it was created with and connot be transferred. 
  • SCORM protocol data  on the object it was created with and connot be transferred. 

Data to be exported

  • Profile Data / Personal Data: Export All (XML) (is already implemented) 
  • Personal Calendars: Export All (XML), Select Export
  • Notes: Export All (XML)
  • Badges: Export All (XML), Select Export
  • Learning Progress: Export All (XML)
  • List of Assigned Roles:  Export All (XML)
  • Files from Workspace: Export All (XML), Select Export
  • Portfolios: Select Export
  • Own Comments: Export All (XML) 

Workflow / Click Path 

  1. User clicks on avatar in Metabar. 
  2. ILIAS presents drop down. 
  3. User selects Profile and Privacy. 
  4. ILIAS presents tab Profile Data. 
  5. User opens tab Export / IMport. 
  6. ILIAS presents subtab Export. It comprises a table with actions: All exportable data is listed in table rows for each type of ecport there is an Action "Export All (XML)". Sometimes an adfditional Action "Select Export" is offered. 
  7. User clicks "Select Export" and is presented with: 
    • Table with all Personal Calendars to check those to be exoported.
    • Table with all Badgesto check those to be exported.
    • Table with all all Files from Workspace to check those to be exported.
    • Table with all all Portfolios to check those to be exported.
    • Table with all all Own Comments to check those to be exported.
  8.  After selecting all checboxes user click "Export" button underneath the table.
  9. ILIAS exports the data as background task. ILIAS presents a message, that this may take time and the results are to found in the metabar. 

4 User Interface Modifications

4.1 List of Affected Views

  • Eyeliner > Avatar >Personal Data and Profile > Export /Import

4.2 User Interface Details

ILIAS presents subtab "Export".
Export Badges
Export Badges
Export Portfolios
Export Portfolios
ILIAS presents calendar export.
Export Files from Workspace
Export Files from Workspace
Export own comments
Export own comments

  • xls: Separate tab with Role assignments and learning progress.
  • PDF: Separate tab Portfolio, Files from Workspace, Certificate
  • XML:  

4.3 New User Interface Concepts

No.

5 Technical Information

Killing, Alexander [alex], 25 June 2018: This feature request should focus on a general API that allows all components to add their personal data export on this screen.

Proposal (30 July 2018):

  • <personaldata /> Tag in module.xml or service.xml
  • class.il*ComponentName*PersonalDataExportGUI.php in classes must be present
  • general control flow
    • ilPersonalDataExportGUI (comes from Services/User)
      • calls ilForumPersonalDataExportGUI
      • calls ilMailPersonalDataExportGUI
      • ...
  • classes must
    • Have a constructor without obligatory parameters (ilPersonalDataExportGUI needs to be able to create instances in a generic way)
    • Must include * @ilCtrl_isCalledBy il*ComponentName*PersonalDataExportGUI: ilPersonalDataExportGUI
    • Must implement ilPersonalDataExportGUIInterface
      • getExports(): ilPersonalDataExportEntry[]
    • ilPersonalDataExportEntry objects are provided by User service
      • $DIC->user()->personalDataExport()->entry(string $title, \ILIAS\UI\Component\Link[] $actions): ilPersonalDataExportEntry
    • must call $DIC->ctrl()->redirectToParent() to return to ilPersonalDataExportGUI

Killing, Alexander [alex], 9 March 2020: Instead of services.xml/module.xml entries the artifact builder should collect all classes that implement an interface (e.g. ilPersonalDataExportGUIInterface).

6 Privacy Information

No additional personal data will be stored. Only already available data will be exported.

7 Security Implications

No new implications have been introduced with this feature.

8 Contact

  • Author of the Request: Tödt, Alexandra [atoedt]
  • Maintainer: {Please add your name before applying for an initial workshop or a Jour Fixe meeting.}
  • Implementation of the feature is done by: {The maintainer must add the name of the implementing developer.}

9 Funding

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

10 Discussion

Hesse, Joel [Joel_Hesse] In general a good idea. Alexandra, do you want to sum up the export functions to the users profile, "only", or do you want to introduce new export functions, too? As far as i know two data objects are not possible to export today:

  • SCORM protocol data
  • forum thread
Do you plan to introduce export functions for these two data sets, too?

Killing, Alexander [alex], 25 June 2018: @Joel Hess, I would think that this feature wiki page should focus on a centralized screen and API that allows all ILIAS components to embed their personal data exports here (but decentralizes the export code). In my understanding additional non-existing exports should get a separate feature wiki page.

JourFixe, ILIAS [jourfixe], 30 JUL 2018 : We highly appreciate this suggestion. Before scheduling the feature we would like to see the screenshots that appear when clicking on an action in the action column. Additionally, a message box on the export screen would be good to give some information to users that would like to export their personal data.

JourFixe, ILIAS [jourfixe], 15 OCT 2018 : We highly appreciate this suggestion and schedule it for 5.4. All services that have a screen for exporting personal data should be addressed by this page.

JourFixe, ILIAS [jourfixe], 09 MAR 2020 : We highly appreciate this suggestion and schedule it for ILIAS 7.

11 Implementation

{The maintainer has to give a description of the final implementation and add screenshots if possible.}

Test Cases

Test cases completed at {date} by {user}

  • {Test case number linked to Testrail} : {test case title}

Approval

Approved at {date} by {user}.

Last edited: 1. Jul 2022, 10:10, Kozianka, Carsten [ckozianka]