Skip to content

A collaborative editor for OntoLex-Lemon (core) resources

License

Notifications You must be signed in to change notification settings

cnr-ilc/LexO-lite

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

37 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

LexO-lite v1.0

This is the first version of LexO, a collaborative web editor for easily building and managing lexical and terminological resources in the context of the Semantic Web, based on the OntoLex-Lemon model.

Table of content

  • What is LexO for?
  • How to deploy
  • How to use
  • LexO's REST API
  • Acknowledgemt
  • What is LexO for?

    LexO, a collaborative web editor for easily building and managing lexical and terminological resources in the context of the Semantic Web. The adoption of Semantic Web technologies and the Linked Data paradigm has been driven by the need to ensure the construction of resources that are interoperable and can be shared and reused by the scientific community.

    LexO's primary objective is to enable lexicographers, scholars and humanists to create a resource ex novo where information can be easily manually curated by humans, that is fundamental for collecting reliable, fine-grained, and explicit information. LexO attempts to make the OntoLex-Lemon model accessible to all those do not have technical skills, allowing the adoption of new technological advances in the Semantic Web by Digital Humanities.

    The first version of LexO deals with the core (lexical entry, form, lexical sense, ontology entity) and uses the decomp module for representing multiwords, and the lime module for metadata.

    How to deploy

    Prepare the environment

    LexO requires:

    • Apache Tomcat v8.0 or later
    • MySql v5.0 or later
    • Java 1.8

    LexO is a Maven project and uses:
    • OWL-API v5.0
    • SPARQL-DL v3.0.0
    • Hibernate v4.3.7
    • Primefaces 7.0
    • Jersey RESTful Web Services framework v2.23.2

    Download LexO-lite source code and compile it.

    First of all, you have to create an empty schema in MySql called LexO_users for the users profiles management. Set the character encoding to UTF-8. You can use the following command:

    mysql> create database LexO_users character set UTF8 collate utf8_bin
    

    If you want to use another database name, you have to change it in the hibernate.cfg.xml file and recompile the project.

    The lexolite.properties file contains some parameter to configure, as the following:

    lexiconFolder, is the relative path w.r.t. your home (default value is .LexO-lite/)
    lexiconNamespace, is the namespace of your lexicon followed by '#' (default value is http://lexica/mylexicon#)
    lexiconFileName, is the file name of your lexicon (default name is mylexicon.owl)
    lexiconExportFileName, is the file name of your export (default name is exportedLexicon)
    
    domainOntologyFolder, is the relative path w.r.t. your home (default value is .LexO-lite/)
    domainOntologyNamespace, is the namespace of your domain ontology followed by '#' (default value is http://ontologies/myontology#)
    domainOntologyFileName, is the file name of your domain ontology (default name is domainOntology.owl)
    

    LexO comes with an empty lexicon having the namespace equals to the init value of the above lexiconNamespace parameter (you can find it in the lexicon folder of the project). If you place it to the lexiconFolder folder you can run LexO over tomcat, and you are ready for starting to construct your multilingual lexicon.

    It is important to note that currently LexO has not an ontology import button, so if you want to upload an ontology you have to manually change its namespace to the value stated in the domainOntologyNamespace parameter, and place it to the domainOntologyFolder folder. Then you have to restart tomcat.

    Run LexO

    You can access to the home of LexO by the following url:

    http://localhost:8080/LexO-lite
    

    There are two servlets for creating and populating the database with one administrator user.

    http://localhost:8080/LexO-lite/servlet/domainCreator?command=create
    

    creates the database, and

    http://localhost:8080/LexO-lite/servlet/domainCreator?command=preset
    

    creates the administrator user.

    How to use

    Create users

    Once you created an administrator user, you can use the following credentials to login to LexO:

    user = admin
    password = admin
    

    By clicking on the user icon placed at the top of the interface, you can manage your users team by means of the panel shown in the following image.

    Then you can modify user and password of the administrator account and create some users on the basis of the following three profiles:

    • Administrator: this profile is related to the team leader; it can add or remove users to the team, and assign them their profiles. It can create, modify, delete, validate lexical entries, and import the domain ontology.
    • User: this profile is related to the editor role. It can create, modify, delete lexical entries, and link senses to ontological entities.
    • Viewer: this profile can only access the dictionary view of lexical entries.

    Create your own lexicon

    The above figure shows how the LexO interface appears. It is mainly composed of two parts. The leftmost column allows scholars to browse lemmas, forms and senses, according to the OntoLex-Lemon core model. If the resource is multilingual, then users have the possibility of filtering lemmas, forms and senses by language. Information related to the selected entry is shown in the central panel where the system shows the selected lexical entry alongside the lemma (red box), its forms (blue boxes) and lexical senses (yellow boxes). It is also possible to list the concepts belonging to a reference ontology

    By means of the new button at the bottom of the interface, you can create new lexicon languages. The form to fill is the following:

    • Language name (manadatory): the language tag (e.g., "en");
    • Language code uri (optional): it is recommended to use the Dublin Core language property with reference to either Lexvo.org or The Library of Congress Vocabulary:
    • Linguistic catalogue (manadatory): the value is automatically set to LexInfo, an ontology that provides data categories for the OntoLex-Lemon model;
    • Description (optional): a textual description;
    • Creator (optional): some reference to the creator of the lexicon language;

    By means of the new button at the bottom of the interface, you can create new lexical entries (word or multiword).

    LexO asks the user to fill a form referring to the canonical form of the lexical entry, which is the form that primarily identifies the entry and which may be used as an index term in the lexicon. For each lemma you can add forms and senses. Each entry can refers to eachother by means of the seeAlso property (see the part (a) of the above figure). For each sense, a user can specify a definition in natural language, a set of lexical relations (defined by lexinfo), and the reference property linking it to an ontological concept. Differently from synonymy, antonymy, hyponymy and hypernonymy relations, translation links senses of different languages. (see the part (b) of the above figure).

    Access to the lexicon statistics

    By means of the suitable button at the top of the interface, you can access to some basic lexicon statistics.

    The panel shows the lexicon languages, the number of lexical entries, and some metadata. If you select a language by clicking on the pie chart, LexO provides specific statistics for that language, including the distribution of the lexical entries per part of speech.

    Export

    Finally, you can export your lexicon in the OntoLex-Lemon model. It can be done by means of the Export button at the bottom of the toolbar. It is possible to serialize the data as XML/RDF or TURTLE as well. In this way, the resource is ready for its publication according to the linked data politics.

    LexO's REST API

    LexO comes with a basic set of services returning information about your lexicon. Currently LexO implements the following services (let assume that http://localhotst:8080/LexO-lite preceeds each of them):

    Description Example of invocation
    List all the lexicon languages /lexicon/languages
    List all the lexicon lemmas (only lang is mandatory) /lexicon/lemmas?lang=l&startswith=a&limit=10
    List all the lemma metadata /lexicon/lemma?id=lemma_id
    List all the lemmas involved in a specific lexico-semantic relation with a given lemma /lexicon/lemmaByRel?lang=l&entry=lemma_id&rel=translation
    Get some lexicon statistics /lexicon/statistics?lang=l

    Acknowledgemt

    This research has been conducted in the context of the cooperation agreement between Guido Mensching, director of the DiTMAO project at the Seminar für Romanische Philologie of the Georg-August-Universität Göttingen, and the Istituto di Linguistica Computazionale “A. Zampolli” of the Italian National Research Council (29 August 2016).

About

A collaborative editor for OntoLex-Lemon (core) resources

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published