Skip to content

Set of utilities to improve the quality of scoLOMFR3 learning resource metadata

Notifications You must be signed in to change notification settings

jdpro/scolomfr3utils

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

84 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Scolomfr3utils

Set of utilities to improve the quality of scoLOMFR3 learning resource metadata.

Purpose

Only xsd validation is currently available to control scoLOMFR3 metadata. However, these metadata refer to vocabularies published in the semantic web formats (RDF, SKOS).

The aim of scolomfr3utils project, for lack of other available technology, is to monitor the coherence of scolomfr3 metadata both at the syntactic (XSD) and semantic level.

Benefits

Quality

A tool to ensure the quality of data needs to offer itself quality guarantees...

  • Scolomfr3utils source code quality is managed by Sonarqube.
  • Scolomfr3utils is covered by unit and integration tests at an average level of 80%.

Portability

Scolomfr3utils is likely to be used in both Java and non-Java projects.

Windows executable version

Download the C++/Qt5 executable wrapper for Windows :

Command line java executable

Download scolomfr3utils stand-alone jar and execute it from command line.

java -jar target/scolomfr3utils-0.0.1-jar-with-dependencies.jar -f /path/to/my/scolomfr/file.xml -v 3.0 --check-all
XSD validation success
Loading skos file from /scolomfr/v30/scolomfr.skos
-------------------------------------------------------
Validation result : FAILURE
-------------------------------------------------------
FAILURE MESSAGES
-------------------------------------------------------
Resource label "logiciel organiseur d’idées" line 394 does not match any label of uri "http://data.education.fr/voc/scolomfr/concept/scolomfr-voc-020-num-057"
Vocabulary "Cadre européen commun de référence pour les langues" line 501 does not match vocabulary of taxons used in classification : it should be URI "http://data.education.fr/voc/scolomfr/scolomfr-voc-042" or label "ScoLomFr Vocabulaire42".
-------------------------------------------------------
WARNING MESSAGES
-------------------------------------------------------
Entity line 191 : ENCODING parameter value ("8BIT") is not supported by this vCard version.
Entity line 191 : CHARSET parameter is not supported in this vCard version.

For maven users, the stand-alone jar may be generated in the following way :

mvn clean compile assembly:single

Java projects

Add scolomfr3utils jar to your project dependencies from Maven Central and use the Java programming API.

Scolomfr3Utils scolomfrUtils = new Scolomfr3Utils();
scolomfrUtils.setScolomfrVersion("3.0");
scolomfrUtils.checkXsd().checkLabels().checkClassifications();
if (!scolomfrUtils.isValid()) {
			List<String> messages = scolomfrUtils
					.getMessages(MessageStatus.FAILURE);
     ...

Requirements

Scolomfr3utils embeds 2.x versions of Apache Jena which requires Java 7. Jena has not been upgraded to 3.X versions to avoid losing Java 7 compatibility.

Command line API

May be displayed by the standalone jar (-h option)

$ java -jar target/scolomfr3utils-0.0.1-jar-with-dependencies.jar -h
Option                           Description                                   
------                           -----------                                   
--check-all                      Apply all available validations.              
                                 Equals : --check-xsd --check-classifications --check-vcards --check-labels                                
--check-classification-purposes  Check that taxonpaths are under the right purpose if specified.                                
--check-classifications          Equals : --check-taxonpaths --check-taxonpath- vocabs  --check-classification-purposes           
--check-labels                   Check that labels are either preflabels or altLabels of provided URIs.                                     
--check-taxonpath-vocabs         Check that taxon belong to their vocabulary if specified.                                  
--check-taxonpaths               Check that consecutive taxon are in hierarchical relation                       
--check-vcards                   Check that inline vcards are RFC compliant according to specified vcard version.                  
--check-xsd                      Apply xsd validation                          
-f                               Scolomfr xml file path                        
-h                               Display help                                  
-v                               Scolomfr schema version                       

Future improvements

In the future, a major improvement would be to control the consistency of indexing by discipline, by educational level and by program ("domaine d'enseignement"). For example, a warning should be issued if a resource intended to the 'CM1' class is indexed to the program of the 'Terminale' class or if it is attached to a field that is not taught in CM1.

Copyright

Copyright (C) 2016 Joachim Dornbusch.

Copyright (C) 2016 Itop Education

Distributed under the GNU/GPL v3 license.

About

Set of utilities to improve the quality of scoLOMFR3 learning resource metadata

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages