[=#topofpage]
''Responsible for this page: [mailto:davor.ostojic@oeaw.ac.at Davor Ostojić].''\\
''Last content check: 03-11-2015'' \\
''Status: design''
{{{
#!html
Purpose
}}}
The purpose of this page is to collect relevant information about Curation Module project.
= Project: Curation Module =
The goal of this project is to implement software component for curation and quality assessment which can be integrated in the CLARIN workflow. Project is initialized by [[wiki:Taskforces/Curation|Metadata Curation Task Force]]. Specification for the Curation Module is based on the [[wiki:MDQAS|Metadata Quality Assessement Service]] proposal.
[[BR]]
For implementation this project will use some of the existing CLARIN components:
{{{
#!comment
----
== Subpages ==
If there are subpages to this page, uncomment this section and add links these pages.
}}}
----
{{{
#!comment
This section can be skipped for short pages.
}}}
{{{
#!html
Contents
}}}
[[PageOutline(1-2, , inline)]]
----
== People ==
* [mailto:matej.durco@oeaw.ac.at Matej Ďurčo] - coordinator (CLARIN-AT, CLARIN Center Vienna)
* [mailto:davor.ostojic@oeaw.ac.at Davor Ostojić] - developer (CLARIN-AT, CLARIN Center Vienna)
----
== Getting code ==
The project is in design phase, when code becomes available, links to code will be posted here.
{{{
#!comment
* You can browse the code [source:yourproject here]
* Check out from: {{{https://trac.clarin.eu/yourproject}}}
}}}
----
== Usage ==
----
== System Requirements ==
Requirements for the project are based on [[wiki:MDQAS#Requirements|Metadata Quality Assessement Service requirements]]
=== Identified Use Cases ===
==== Use Case 1 – Metadata Editor checks the validity of newly created record ====
* Title: Check validity of metadata record
* Actor: MD Author / Editor
* Level: User Goal
* Main Success Scenario:[[BR]]
1. User copies MD record into the web form and starts validation by clicking "Validate" button[[BR]]
2. Module does schema validation, link checks, vocabulary check, facet coverage assessment[[BR]]
3. User gets the report with status, eventual errors and assessment[[BR]]
4. User gets instructions how to improve MD record (recommended profile, recommended values)[[BR]]
==== Use Case 2 – CMDI Admin checks the quality of newly created profile ====
* Title: Check quality of profile/schema
* Actor: CMDI Editor
* Level: User Goal
* Main Success Scenario:[[BR]]
1. CMDI Editor runs the curation module and passes as argument profile or schema[[BR]]
2. Module does link checks and facet coverage assessment[[BR]]
3. User gets the report on links availability and facet coverage[[BR]]
==== Use Case 3 – Repository Admin checks quality of metadata in his repository ====
* Title: Check overall quality of metadata in repository
* Actor: Repository Admin
* Level: User Goal
* Main Success Scenario:[[BR]]
1. Admin runs module from command line and passes as argument location containing MD records[[BR]]
2. Module does quality assessment of the records[[BR]]
3. Admin gets summarized report on overall quality of MD records in his repository[[BR]]
==== Use Case 4 – Curation Module in VLO workflow ====
* Title: Use Case 4 – Curation Module in VLO workflow
* Actor: VLO workflow
* Level: Summary
* Main Success Scenario:[[BR]]
1. Curation Module is called before vlo-importer component with location where MD records are stored as argument[[BR]]
2. Module does validation and normalization and generates different kinds of reports and normalized MD record[[BR]]
3. VLO importer uses normalized records in post-processing phase and imports them into SOLR[[BR]]
4. After importing script emails reports to VLO admin, MD Curators and data providers[[BR]]
----
== Dependencies ==
For implementation following projects will be used:
* [[browser:CMDIValidator|CMDI Validator]]
* [[wiki:CmdiVirtualLanguageObservatory|VLO]] backend
* [[wiki:OAIHarvester|OAI Harvester]]
----
== Building and Deploying ==
----
== Interfaces ==
----
== Design ==
Component Diagram:
[[Image(Curatoin Module Component Diagram.jpg)]]
----
== Tickets ==
Usually it's good enough to copy and paste this:
{{{
List of all '''open''' tickets for this component:
[[TicketQuery(status=accepted|assigned|new|reopened,component=YourProject,order=priority,format=table,col=summary|priority|owner|reporter)]]
}}}
----
== Status, Planning and Roadmap ==
Status: is the project active, on hold, mature but supported, due to be deprecated, etc.
Planning and roadmap: if there are other places with planning documents, don't forget to link to them.
----
== Resources ==
Link to (external) documents, e.g. documentation, papers, requirement analyses, relevant to this project in this section.
----
== History ==
Who has worked on this project, and roughly what did they do? Mention significant developments even if the relevant code/functionality has later been removed. Include yourself, of course.