FAQ

Functionalities Questions

1.    Search functionality is slow when I load a large dataset. Is it so sensitive to the size of a dataset?

Basic search functionality available in VocBench is based on string matching done on live triples. It uses no indexing, thus the comparison time is linear in the number of labels available in the dataset.

Specificaly for OWLIM-SE, we exploit its indexing functionalities, so in the "advanced search" page, there is a button for indexing the content by using OWLIM indexing engine. From that moment on, the repository is configured for indexing, and any further search made on it will (automatically) use a different query, exploiting the indexed data.

Vocabulary/Data Questions

1.    VocBench labels everything that is deleted as deprecated. Then there should never be a triple removal from the RDF store right?

As everything is deprecated, no triple which was previously assessed is removed following a delete action.

However, for triples which still need to be assessed and which are not approved - cases like rejection of new concept or term add action - the newly added triples (such as the new concept/term) are removed.

2.    why that pattern for reifying skos:definitions? is it standard?

In order to keep change tracking and the possibility to edit various kind of editorial notes not only for concepts, but also for their main characteristics, we decided to embrace anything in the RDF family of standards which allowed for reified characteristics. Reified labels have been introduced by SKOS-XL, while reified definition are already allowed by SKOS as a possibility: see second item in: http://www.w3.org/TR/2009/NOTE-skos-primer-20090818/#secadvanceddocumentation

3.    I need to load a dataset which I already developed, but labels and definitions are not reified, should I edit everything manually or is there some automatic converter? 

Currenty (VB2.2.1 at the time of writing) it is possible to "lift them" to with some external, very easy to use, command line tools available here: http://art.uniroma2.it/owlart/documentation/utilities.jsf which are based on the same OWLART library we developed and adopted in VB.

In particular, in http://art.uniroma2.it/owlart/documentation/utilities.jsf#skos_utilities two utilities for transforming skos core labels and flat skos:definitions into their reified counterparts are available.

In the future we will embed these utilities inside VocBench


4.    I'm fine (or I like (smile) ) with the skosxl labels and reified skos:definitions, but I still would like to export my vocabulary with plain literals, is that possibile?
see answer above; the inverse process (flattening to no-reified counterparts) is also available for labels, we will add the one for skos:definitions soon

Configuration Issues

1.    If the email configuration for a new user does not work, how to set it up through the DB?

If you did not receive the email to activate the new account you need to modify the admin DB. The complexity of this operation depends on the information you have provided during the creation of the account.

  • Open the DB: {VB.DB.VERSION}
  • Take note of the user_id associated to your account. You can find it by crossing, on the same record, the username you chose when creating the user through the UI on the field username of table users, and the value in the field user_id
  • Change in table users: the attribute status from 2 to 1 on the record of the account you wish enable.
  • If, at the time of creating the account through the UI, you did not specify an ontology, or if you wish to work on another ontology, add in table users_ontology the couple user_id and ontology_id (ontology_id should be {OWLIM.REPOSITORY_ID} for the instance you are configuring, and in any case an identical value must exist in the field ontology_id of table ontology_info) and set the status attribute to 1
  • If you did not specify a language or you wish to work with more languages add in table users_language the couple user_id and language_code with status set to 1. The language code is a two character string identifying the language. For example English is en  and Italian is it. The complete list of supported languages can be found in table language_code

2.    When I try to log in I get "No ontology was found for the user".

We get this alert when

  • The logged in user doesn't have access to any of the ontology. Ask for administrator to allow permission for that ontology.
  • If Administrator user gets this alert, then we will need to add at least one of the ontology accessible to administrator user by running following query in Administrator database.

INSERT INTO users_ontology (`user_id`, `ontology_id`, `status`) VALUES (1, 1, 1);

  • If administrator already has access to that ontology, check if that ontology exists in ontology_info table.

SELECT * FROM ontology_info WHERE ontology_id=1

  • VocBench can filter ontology by enabling/disabling it for each version of VocBench. For this, we have 'version' field in the onotology_info table. The version of VocBench is set in Config.properties file with parameter name "VERSION". Use the query below to check if the ontology exists for selected version

SELECT * FROM ontology_info WHERE ontology_id=1 and version=2.0

  • If no ontology exist add ontology using query below

INSERT INTO ontology_info (ontology_name, ontology_description, db_url, db_driver, db_name, db_username, db_password, ontology_show,version) values ("remoteCompleteAgrovoc", "AGROVOC Multilingual Thesaurus", null,null, null, null,  null, "1","2.0");

Where,

ontology_name = project name of the ontology created in ST server. (This is how VocBench recognizes which project in ST to connect)

ontology_description = description of the ontology

db_url = Ignore for VB 2.0

db_driver = ST server URL

(e.g. . http://127.0.0.1:1979/semantic_turkey/resources/stserver/STServer))

db_name = project name of the ontology created in ST server.  

db_username = Ignore for VB 2.0

db_password = Ignore for VB 2.0

ontology_show = 1 to activate, 0 to disable

version = Version of VB set on Config.properties file


3.    I made a mistake in configuring an OWLIM repository. Since I want to reuse the same ID, I want to delete it and then recreate it with the same ID. But when I do it, the Sesame workbench returns an exception.

  • Here is an answer to this question, from the OWLIM mailing list.    

The issue is related to the way repository description is created, managed and deleted through Sesame framework. When repository is created, only its actual configuration/description/ is stored within the SYSTEM repository - it is not immediately instantiated - so the configuration is not immediately verified. When you try to delete it through the workbench app - the server tries to instantiate it first but when that fails due to some misconfiguration you end up with such exception. If there are no other repositories you could simply delete the SYSTEM repository and restart the openrdf-sesame app. But if that is unfeasible for some reason then you could try to remove it's description from the SYSTEM repository using a sparql updates executed directly against it.