55
University of Rome “Tor Vergata” ______________________________________________________ VB3 Webinar Some Insights on the Forthcoming Release of the Third E dition of the VocBench Platform Hosted by Courtesy of the AIMS group ( http://aims.fao.org / ) of the Food and Agriculture Organization of the United Nations Armando Stellato <[email protected]> 05/07/2017

VocBench 3: some insights on the forthcoming release

Embed Size (px)

Citation preview

Page 1: VocBench 3: some insights on the forthcoming release

University of Rome “Tor Vergata”______________________________________________________

VB3 Webinar

Some Insights on the Forthcoming Release of the

Third Edition of the VocBench Platform

Hosted by Courtesy of the AIMS group (http://aims.fao.org/) of the

Food and Agriculture Organization of the United Nations

Armando Stellato <[email protected]>

05/07/2017

Page 2: VocBench 3: some insights on the forthcoming release

My Research Lab

• Realized as a

University Campus

distributed over a

wide area in the SE

of Rome

http://art.uniroma2.it

htt

p:/

/we

b.u

nirom

a2.it/

We are located at the Faculty of Engineering, Information Engineering Building

Our offices!Our offices!

…and LAB!

05/07/2017 2

Page 3: VocBench 3: some insights on the forthcoming release

The ART Group

…research can be really

stressing…you know..

…and I’m too lazy to

change the picture

…lot of hairs ago…

That’s me!

05/07/2017Armando Stellato [email protected]

http://art.uniroma2.it/stellato 3

Page 4: VocBench 3: some insights on the forthcoming release

The ART Group

Areas of Interest

Natural Language Processing

• Robust Parsing

• Information Extraction

• Semantic Role Labeling

• Textual Entailment

• ML for Natural Language

Machine Learning

• ML for Natural Language

• Computational Language Learning

• Ontology Learning

• Classification, Multimedia IR

• Music IR

Knowledge Engineering

• Ontologies and Knowledge Modeling

• Semantic Web Technologies

• Knowledge Acquisition

• Knowledge Sharing

• Knowledge-based Systems

05/07/2017Armando Stellato [email protected]

http://art.uniroma2.it/stellato 4

Page 5: VocBench 3: some insights on the forthcoming release

Semantic Turkey / VocBench*

Flagship KM&A Platform

OntoLing

Ontology Linguistic Enrichment Tool

ALE

Automatic

Linguistic

Enrichment

Java Multi WordNet

Library

Wrappers for

different LRs

CODA

Computer-aided Ontology

Development Architecture

Semantic Turkey extensions for Knowledge Acquisition

Linguistic Watermark

Library and Ontologies for Accessing

Heterogeneous Linguistic Resources

<Text anything

here>

* Vocbench In collaboration with FAO

ART Technology Asset (KE

Unit)

05/07/2017Armando Stellato [email protected]

http://art.uniroma2.it/stellato 5

Page 6: VocBench 3: some insights on the forthcoming release

VOCBENCH (1 & 2)

05/07/2017 6

Collaborative Development of Multilingual Thesauri

SPARQL Editing with

syntax completion and

highlight

The full history of actions per each project is

stored inside VB and can be inspected by users

(clients may also subscribe to its associated RSS

feed)

VocBench is an open source web

application for editing of

multilingual SKOS and SKOS-XL

thesauri, with a strong focus on

collaboration, supported by

workflow management for content

validation and publication.All editing actions

inside VocBench

undergo a validation

and publication

workflow

Powered by Semantic

Turkey!

http://vocbench.uniroma2.it

Page 7: VocBench 3: some insights on the forthcoming release

Why was it built?

AGROVOC (big agriculture vocabulary developed by FAO)

– >32 000 concepts in up to 22 languages

– A global group of terminologists.

– No tool to support their work

– No existing tool that met all of FAO’s needs

05/07/2017Armando Stellato [email protected]

http://art.uniroma2.it/stellato 7

Page 8: VocBench 3: some insights on the forthcoming release

V1.0 – 2010

• Google Web Toolkit (for the Web Application)

• Lucene (for label indexing & free-text search)

• Protégé API

– DB backend

• (later) OWLART API

• MySQL

• Custom model for

thesaurus

representation

05/07/2017Armando Stellato [email protected]

http://art.uniroma2.it/stellato 8

Business logic

MySQL

Protégé 3.4OWLART API

GWT / Presentation

Page 9: VocBench 3: some insights on the forthcoming release

V1.0 – 2010

05/07/2017Armando Stellato [email protected]

http://art.uniroma2.it/stellato 9

Page 10: VocBench 3: some insights on the forthcoming release

V1.x Problems

• Could not support other triple stores (Glued to Protégé API)

• Custom representation model

• No support for emerging standards, e.g. SKOS

• I/O

– No import

– Complicated export

• No support for alignments

– AGROVOC aligned to a dozen other vocabularies

• No SPARQL interface

05/07/2017Armando Stellato [email protected]

http://art.uniroma2.it/stellato 10

Page 11: VocBench 3: some insights on the forthcoming release

Towards VB2.0…

Many of VB1.x limitations derived from the absence of a true RDF Backend

• not just connection to a RDF triple store

• but a proper abstraction layer providing high level functionalities for ontology/thesaurus management

Driving lines for VB2.0

• A completely rebuilt backing framework for the service and data layers, based on an already existing open source project:

Semantic Turkey [1]

– Based on OSGi Open Services Gateway

– Open Connectibility to most notable RDF middleware and triple storing technologies (Sesame2, OWLIM, Allegrograph, Jena (not maintained) )

– Native support for SKOS and SKOSXL over RDF (no more conversions from internal legacy models), other than OWL

• major reworking

– all changes under-the-hood, and leaving user experience almost unchanged.

– New features added in the following versions

– Not intended as a major re-working, but as a quick-to-be-developed solution for extending VB1.x beyond its limits

[1] http://semanticturkey.uniroma2.it/

Maria Teresa Pazienza, Noemi Scarpato, Armando Stellato and Andrea Turbati Semantic Turkey: A Browser-Integrated Environment for Knowledge

Acquisition and Management, Semantic Web Journal, vol. 3, no. 3, 2012

05/07/2017Armando Stellato [email protected]

http://art.uniroma2.it/stellato 11

Page 12: VocBench 3: some insights on the forthcoming release

Requirements for VB2

R1. Multilingualism

R2. Controlled Collaboration

R3. Data Interoperability and Consistency

R4. Software Interoperability/Extensibility

R5. Scalability

R6. Under-the-hood data access/modification

R7. Ease-of-use for both users and system administrators

05/07/2017Armando Stellato [email protected]

http://art.uniroma2.it/stellato 12

Page 13: VocBench 3: some insights on the forthcoming release

…and here it was VB2

05/07/2017 13

Page 14: VocBench 3: some insights on the forthcoming release

The VocBench2 Team

05/07/2017Armando Stellato [email protected]

http://art.uniroma2.it/stellato 14

Page 15: VocBench 3: some insights on the forthcoming release

R1. Multilingualism

05/07/2017 15

…and multilingual UI: (currently: English, Spanish, Dutch, Thai)

multilingual editing

…and visualization

Page 16: VocBench 3: some insights on the forthcoming release

R2. Controlled Collaboration (1/3)

Role-based Access Control

05/07/2017Armando Stellato [email protected]

http://art.uniroma2.it/stellato 16

Page 17: VocBench 3: some insights on the forthcoming release

R2. Controlled Collaboration (2/3)

Formal Editorial Workflow

• Following the full life-cycle of concepts/terms, from proposal to deprecation

• Supported by Role-based Access Control

an example of a

typical workflow:

05/07/2017Armando Stellato [email protected]

http://art.uniroma2.it/stellato 17

GUEST

<concept-create>

Proposed by guest

VALIDATOR

<validates>

Validated

PUBLISHER

<publishes>

Published

TERM EDITOR

<concept-edit>

Revised

ADMINISTRATOR

<validates>

Published

ONTOLOGY EDITOR

<concept-delete>

Proposed deprecated

PUBLISHER

<validates>

Deprecated

Page 18: VocBench 3: some insights on the forthcoming release

Recent Changes

• Available through a

dedicated module

• or as RSS feeds

includes both:– User changes

– Content changes

R2. Controlled Collaboration (3/3)

05/07/2017Armando Stellato [email protected]

http://art.uniroma2.it/stellato 18

Page 19: VocBench 3: some insights on the forthcoming release

R3. Data Interoperability and Consistency (1/3)

Formats

• Import/Export in all popular RDF serialization formats

• Concrete availability of the various formats depend however on the connected triple store/RDF middleware

Models

• VocBench adopts a SKOS-XL + reified skos:definitions model

• Import of SKOS core data

– Refactoring for SKOSSKOS-XL

and skos:definition reification

• Export

– SKOS-XL:

• “All contents” or

• Filtered export based on broader

concept/schems

– SKOS: options for removing/keeping

reified labels and definitions

Vocabularies

• Possibility to owl:import any existing vocabulary,

from the web or from local files.

• Availaibility of a caching mirror for previously imported vocabularies

05/07/2017Armando Stellato [email protected]

http://art.uniroma2.it/stellato 19

Page 20: VocBench 3: some insights on the forthcoming release

R3. Data Interoperability and Consistency (2/3)

Integrity / Consistency

• VB features a complex multi-scheme

management of thesauri

• Actions creating potential breaks in the

structure (e.g. breaking reachability of

a concept) are forbidden

• To deal with imported data, Integrity

Constraint Validation checks have

been included in the platform

– Currently, only dangling concepts have

been deal with

– More to come, already available as

services from ST

05/07/2017Armando Stellato [email protected]

http://art.uniroma2.it/stellato 20

Page 21: VocBench 3: some insights on the forthcoming release

R3. Data Interoperability and Consistency (3/3)

Alignment

05/07/2017Armando Stellato [email protected]

http://art.uniroma2.it/stellato 21

Page 22: VocBench 3: some insights on the forthcoming release

R4. Software

Interoperability/Extensibility

Triple Store Agnostic

• OWLART API provide:

– a very tiny layer over existing middlewares (e.g. Sesame, Jena)

– High-level “vocabulary layer” for OWL, SKOS, SKOS-XL

• What triple stores do we currently support and which connectors are

actively maintained?

– Sesame2 (standard internal triple stores, both in-memory and native)

– GraphDB/OWLIM (through Sesame remote connection, and an

optional parameter expressly dedicated to cover the different

management of graphs wrt Sesame)

– Other partners have experimented with other triple stores

https://art-uniroma2.atlassian.net/wiki/display/ST/Accessing+Various+Triplestores

– Past experiments with Allegrograph and Jena Middleware

• For GraphDB/OWLIM SE, we exploit its free-text indexing capabilities

05/07/2017Armando Stellato [email protected]

http://art.uniroma2.it/stellato 22

Vendor data access layerVendor Triple store

High-level data access

Raw triple access

Vendor data access layer

OWLART API

Semantic Turkey

Multi User/Collaboration

Business logic

Presentation (GWT)

Page 23: VocBench 3: some insights on the forthcoming release

R5. Scalability

Performance

• Information is provided to the frontend as much as possible in an incremental fashion (e.g., each level of

the concept hierarchy, as nodes are expanded).

• Interfaces reverts to limited content and search-filtering for potentially exploding results

Maintenance

• ST offers a meaningful core set of RDF services…

• …however many functionalities (especially in UI) require the composition of several calls.

• Solution: combo of:

– per-service ad-hoc solutions (heavy weight single services realizing specific functionalities)

– general development facilities for the injection of additional information into common API calls (e.g. the rendering of

RDF resources is available as an extension point, with different implementations being dynamically injectable into the

SPARQL queries of several services).

05/07/2017Armando Stellato [email protected]

http://art.uniroma2.it/stellato 23

Page 24: VocBench 3: some insights on the forthcoming release

R6. Under-the-hood data

access/modification

Embedded SPARQL Editor

05/07/2017Armando Stellato [email protected]

http://art.uniroma2.it/stellato 24

Syntax highlight…

…completion…

…and validation

Page 25: VocBench 3: some insights on the forthcoming release

R7. Ease-of-use for both users

and system administrators

Continuous check-on-start life cycle

• VB technically never recognizes itself as

installed/deployed

• At each startup it checks that the

complete set of pre-requisites for a

correct start is satisfied.

• Whenever a new VB version is installed,

if new features have been introduced, or

mandatory configuration options added,

or the database requires update batches,

the system will identify these needs and

react accordingly, eventually interacting

with the user upon necessity

05/07/2017Armando Stellato [email protected]

http://art.uniroma2.it/stellato 25

Page 26: VocBench 3: some insights on the forthcoming release

Statistics Module

05/07/2017Armando Stellato [email protected]

http://art.uniroma2.it/stellato 26

Page 27: VocBench 3: some insights on the forthcoming release

Vocbench 2.0 (and ST)

Architecture

Three layered extensible

architecture

• Presentation Layer

– GWT (Google Web Toolkit) Vocbench

User Interface (Mozilla apps in the

original framework)

• Services Layer

– Enables communication between the

client (Vocbench UI) and the ontology

persistence layer.

– HTTP based Services accessed

through the Ajax paradigm

– OSGi Extensible Servicing System

• Persistence Layer

– Access to ontological knowledge.

– Based on dedicated ontology API,

which can be implemented through use

of different technologies.

05/07/2017 27

Page 28: VocBench 3: some insights on the forthcoming release

Vocbench 2.0 (and ST) Architecture

05/07/2017Armando Stellato [email protected]

http://art.uniroma2.it/stellato 28

Front end Back end

Administrative

Database

(MySQL)

Triple Store

Middleware

Hibernate

Layer

Semantic

Turkey/

OWLART

API

Gilead

Service

Wrapper

Layer

Google Web

Toolkit

(GWT)

Graph

Visualization

GWT

Incubator

Web services

Page 29: VocBench 3: some insights on the forthcoming release

VB “desktop version”:

Semantic Turkey for Firefox

05/07/2017 29

Page 30: VocBench 3: some insights on the forthcoming release

Related Works (1/2)

• PoolParty: http://www.poolparty.biz/ [18]. Web-based Editor for Thesauri using Linked Data

– Support for SKOS (optional add-on for SKOS-XL)

– Use: Commercial license (Evaluated thanks to a free evaluation account for PoolParty Advanced Server version 4.5.1 (rev 5429) )

– Version Tracking is supported, as the system performs access control to some extent.

– An add-on further enables an approval workflow based on the existing role based access control mechanism.

– Editing history is shown both at project level and at entity level.

– Alignment: lookup over LOD, or different projects can be linked together

– Publishes a SPARQL endpoint, dereferenceable URIs, and a wiki with limited editing capabilities.

– Quality criteria: can enforced interactively (i.e., illegal operations are blocked), or violations are simply recorded in a quality report.

– Backed by Sesame middleware

– Incorrect multiple scheme support (violates non -entailment of scheme containment along concept hierarchies, section 4.6.4 of the SKOS Reference [1] )

• TemaTres: http://www.vocabularyserver.com/ Web-based Editor for Controlled Vocabularies

– term-based meta-model, no native support for SKOS

– Use: Free and open-source

– due to the term-based nature of the model, the export to SKOS is often confusing (e.g. two synonyms terms exported as two different concepts)

– Monolingual (though alignments between vocabularies)

– No multiple scheme support (each thesaurus is a scheme)

– Rigid access control mechanism based on user roles (administrator, editor, guest).

• Workflow management: term transition from candidate status to either accepted or rejected. “Accepted” cannot be reverted, even after modifications

– Data quality: metrics and a flexible reporting generator.

– Connectivity: available API and a few plugins (e.g. for publication over different platforms, such as WordPress) are available

05/07/2017Armando Stellato [email protected]

http://art.uniroma2.it/stellato 30

Page 31: VocBench 3: some insights on the forthcoming release

Related Works (2/2)

• TopBraid EVN: Web-based Editor for Business Vocabularies http://www.topquadrant.com/products/topbraid-enterprise-vocabulary-net/

– Support for SKOS, OWL Ontologies and Content tag sets

– Use: Commercial license (We didn’t carry extensive evaluation as we did not receive the evaluation license we requested)

• SKOSEd: https://code.google.com/p/skoseditor plugin for Protégé 4.x for editing SKOS thesauri

– Support for SKOS

– Use: free of use and open-source. We have evaluated version 1.0-alpha(build04) on Protégé 4.1 as, 2.0-alpha has a bug related to scheme

management

– Desktop tool (no web application)

– Ontology editing, SKOSEd allows interweaving SKOS and OWL constructs (defect: same form for skos:Concept and skos:ConceptSchemes

– Incorrect concept scheme management (same as PoolParty)

– Being an extension of Protégé 4.x, SKOSEd may not be used in conjunction with the collaboration framework developed for Protégé 3.x

• Web Protégé: http://webprotege.stanford.edu [16] Collaborative Web-based Ontology Editor

– No support for SKOS/SKOS-XL (supports OWL/OBO editing)

– Use: local Installation or service via public portal. Free of use in both cases

– Collaboration: based on the collaboration plugin for Protégé 3 [17], providing:

• Change tracking

• Inline discussions and notifications.

• Access control mechanism for user groups, based on configurable policies enforced at various granularities.

– Completely configurable user interface

– Available API

05/07/2017Armando Stellato [email protected]

http://art.uniroma2.it/stellato 31

Page 32: VocBench 3: some insights on the forthcoming release

Functional Comparison(performed in 2014, for VB2)

Name LicenseFree to

use

Deployme

nt

Data

Models

Import/

Export

Scheme

Managem

ent

Custom

RelationsReasoner

Data

quality

Extendibility /

InteroperabilityACL

Workflow

Managem

ent

Collaborati

on,

Content

Validation

RDF

Middlewar

e

RDF

Backend

SPARQL

QueryingSemantic Integration

VocBench

GNU GPL

v3 (web

application)

, Mozilla

Public

License

MPL

(Semantic

Turkey)

YesWeb

application

SKOS-XL,

SKOS

through

offline

scaling

tool

SKOS(-

XL),

versatile

spreadshe

et import

(through

ST Firefox

UI)

Yes

Creation,

Import,

use

Depends

on triple

store

Metrics

API, shared

backend,

pluggable

Yes Yes

Change

feed,

validation

OWL ART

API

(connector

s to

others:

Sesame2

bundled)

provided

by

Sesame2,

or other

connectors

Yes

assisted

(browse&search) linking

of resources from other

projects / manual linking

of LOD resources.

Extensions for RDF

lifting from unstructured

content

PoolParty Proprietary NoWeb

application

SKOS,

SKOS-XL

add-on

SKOS(-

XL),

static

spreadshe

et import

Only top

concepts

Creation,

Import,

use

Depends

on triple

store

Metrics

Validation

rules

REST API YesYes (add-

on)

History,

versioning,

validation

Sesame

SAIL API

provided

by

Sesame2

Yes

Linking

Text Mining & Entity

Extraction, Search

function

WebProtégé

Mozilla

Public

License

(MPL)

YesWeb

application

OWL 2,

OBOOWL

Not

applicable

Creation,

Import,

use

No,

external

reasoning

possible

Metrics

API, shared

backend,plugg

able

Yes No

Discussion

, watching,

changes

feed

OWL API

provided

by Protégé

3

No linking to BioPortal

TemaTres

GNU

General

Public

License

version 2.0

(GPLv2)

YesWeb

application

Term

based

thesaurus

organizatio

n

MADS,

SKOS-

Core,

Zthes,

Others

Import

from:

Skos-

Core,

tabulated

or tagged

text file

One

scheme

per

vocabulary

Creation,

useNo

Metrics,

ReportsAPI

Yes;

limited

Yes;

limited

Limited

validation

No RDF

Middlewar

e, SKOS

RDF/XML

available

only as an

export

Relational

database

(MySQL

by default)

Not native,

no realtime,

can export

data to a

SPARQL

endpoint

through

ARC2 (RDF

library for

PHP)

Linking between

vocabularies, Entity

Extraction (via addon)

SKOSEd

GNU

Lesser

GPL

YesDesktop

applicationSKOS SKOS

Only top

concepts

Creation,

Import,

use

Depends

on

available

plugins

KB

consistenc

y

Pluggable No No No

OWL API

(used by

Protégé 4)

provided

by Protégé

4 (OWL

API)

Yes

(inherited

from

Protégé 4)

N/A

Example 9 (non-entailment)

<A> skos:narrower <B> .

<A> skos:inScheme <MyScheme> .

does not entail<B> skos:inScheme <MyScheme> .

05/07/2017Armando Stellato [email protected]

http://art.uniroma2.it/stellato 32

Page 33: VocBench 3: some insights on the forthcoming release

User Community and Evaluation

USE Values Feature Evaluation

UsefulnessEase of

use

Ease of

learningSatisfaction

Global 5,34 4,49 5,11 4,93

Experienced 5,58 4,66 5,18 5,02

Inexperienced 4,97 4,19 5,00 4,79

easy to use effective interesting

History 5,38 5,50 6,33

SPARQL Querying 4,00 5,40 6,29

Publication Workflow

Management5,50 5,63 6,22

Collaborative

Management5,75 5,88 6,11

Scheme Management 4,83 5,17 5,57

Role-based Access

Control5,33 5,22 5,40

Reasoning 4,29 4,43 5,38

Triple Store Connectivity 3,67 4,50 5,00

Online Questionnaire: http://vocbench.uniroma2.it/purl/VocBench-User-Questionnaire_2014-10.zip

USE* questionnaire: http://hcibib.org/perlman/question.cgi?form=USE

values ranging from 1 to 7

collected 11 anonymous responses

Lund, A.M. (2001) Measuring Usability with the USE Questionnaire. STC Usability SIG Newsletter, 8:2.

05/07/2017Armando Stellato [email protected]

http://art.uniroma2.it/stellato 33

Page 34: VocBench 3: some insights on the forthcoming release

Why should I "buy" it?

Collaborative Management

– Validation&Publication Workflow (propose, validate, publish, revise, deprecate…)

– Fine grained user management

• both users and functionalities may be associated in groups"

• Functionalities (or groups of) may be assigned to different users (or groups of)

– Full editing history (not only concepts, but most of the actions can be subject to validation too)

– RSS Feeds

– Fine-grained metadata and editorial notes: SKOS-XL and reified definitions allow for timestamped status and rich editorial notes

Multilinguality

– Strong support for multi-lingual thesauri management

– Application itself is also multilingual (currently support for english, dutch, spanish, more languages coming)

Native RDF support

– Support for different triple stores

– Possibilty to SPARQL query/update through a dedicated interface with syntax completion/highlight

– SKOS-XL management

• If preferred, SKOS-core export through available conversion tools

Large scale thesauri management

– Scalability limited only by the underlying triple store

Extensibility

– OSGi connectable services

Advanced skos:ConceptScheme Management

– SKOS allows for non-trivial management of multiple conceptual schemes, which is fully supported by VB

And, last but not the least, you don’t have to really "buy" it!: it’s Free and Open Source! (http://vocbench.uniroma2.it)

05/07/2017Armando Stellato [email protected]

http://art.uniroma2.it/stellato 34

Page 35: VocBench 3: some insights on the forthcoming release

VB 2.x Limitations

• VB 2 was born with a clear objective in mind

– Quickly develop a new version of VB (it has been developed in less

than 7 months)

– Allow for a real SKOSXL/RDF general purpose editor, independent

of AGROVOC

– Inheriting (with all its known limitations) VB1.x User/Project

Management and Data Validation

• VB 2 has by far been stretched beyond its original intentions

05/07/2017Armando Stellato [email protected]

http://art.uniroma2.it/stellato 35

Page 36: VocBench 3: some insights on the forthcoming release

VB 2.x Limitations

• Mainly coming from its parts originally retained from VB1.x

– Hybrid info store with Triple Store/DB doesn’t work

– Data stored in DB for Validation/History is opaque (serialized java objects) thus cannot be efficiently

accessed/refactored

– Total lack of a domain model and appropriate generalization

• New actions require completely new structures in the validation/history

• New data views requires to be completely written from scratch

• Absence of a widget UI library or any re-usable UI components

– GWT does not support UI extensibility

– Relational DB based User Management is not easily portable/extensible

• ST has no severe flaws, yet there is room for improvement

– Plugin architecture still not perfect

• Easy to develop plugins

• less easy to add new extension points in the general architecture)

– Hard to manage OSGi with Spring (actually not advised to work together, Spring DM project has been donated to

Eclipse, but barely updated, yet there is no full replacement for both)

– ST has no support for user management, data validation, history etc..

• These need to be included in the core architecture if a real replacement has to be done

05/07/2017Armando Stellato [email protected]

http://art.uniroma2.it/stellato 36

Page 37: VocBench 3: some insights on the forthcoming release

VB 2.x Still possible improvements?

• There are potential improvements that have not

been addressed/completed due to lack of resources

– More interaction with the Linked Data

• Improved Alignment

• Generation of VoID / LIME descriptions

– Data Lifting from spreadsheets (already available in ST,

planned to be ported on VB)

– ICV: more checks are available from the ST engine; only

dangling concepts check is available in VB

05/07/2017Armando Stellato [email protected]

http://art.uniroma2.it/stellato 37

Page 38: VocBench 3: some insights on the forthcoming release

VB 2.4.x maintenance releases…

…while paving the road for VB3

• Recent VB 2.4 (for those who still didn’t give it a try :-) )

– an “Improved Administration” release, most important changes are:

– per-project assignment of roles to users

– introduction of the PM role

• VB 2.4.1 (will be released soon)

– An “improved performance release”

– Concept Tree browsing is dramatically faster

– Expanding the Concept Tree after clicking on a concept resulted from a search has also been further improved

– Improvements in the organization of capabilities for existing roles (especially wrt new actions such as scheme

management)

• VB 2.4.2 (development shortly following 2.4.1)

– Mostly bugfixes on a few security holes for the PM role

– Bugfixes on other spotted bugs

• …and then a 2.4.3 and 2.4.4 followed with other minor improvements and bugfixes, while we started to

develop VocBench 3

05/07/2017Armando Stellato [email protected]

http://art.uniroma2.it/stellato 38

Page 39: VocBench 3: some insights on the forthcoming release

TOWARDS VOCBENCH 3

…and now…

Page 40: VocBench 3: some insights on the forthcoming release

VocBench 3

• A web-based, multilingual, collaborative development platform

for managing OWL ontologies, SKOS(XL) thesauri and

generic RDF datasets

• Funded by the European Commission ISA² programme

• Its development is managed by the Publications Office of the

EU under contract 10632 (Infeurope S.A.)

• Final delivery planned by the end of July 2017

Page 41: VocBench 3: some insights on the forthcoming release

The VocBench3 Team

05/07/2017 41Armando Stellato [email protected]

http://art.uniroma2.it/stellato

The Developers The Users

a whole community supporting its

development

funding sponsors

other users (just some of them, pls

forgive any omission!)

Page 42: VocBench 3: some insights on the forthcoming release

Technological Stack in VB3: Changes

Lightweight Presentation Layer– Angular (previously known as Angular 2)

Business Logic all in ST, including:– User Management/Auth

– Data Validation/History

Commit to Sesame framework– Nowadays (a) winning middleware

– No relevant triple store is uncompatible with

Sesame

– Recently rebaptized as RDF4J, under the

Eclipse umbrella

– Maintaining a neutral middleware such as

OWLART is no more cost-effective

05/07/2017 42Armando Stellato [email protected]

http://art.uniroma2.it/stellato

Vendor data access layerVendor Triple store

OWLART API

Vendor data access layer

Semantic Turkey

Multi User/Collaboration

Business logic

Presentation (GWT)Presentation (Angular)

Semantic Turkey

All BL including Collaboration

(includes: Spring/AspectJ/OSGi)

High-level data access

Raw triple accessRDF4J

Specific Triple Store

Optimizations (e.g. Search)

Page 43: VocBench 3: some insights on the forthcoming release

From Vocbench 2.0 Components…

05/07/2017Armando Stellato [email protected]

http://art.uniroma2.it/stellato 43

Front end Back end

Administrative

Database

(MySQL)

Triple Store

Middleware

Hibernate

Layer

Semantic

Turkey/

OWLART

API

Gilead

Service

Wrapper

Layer

Google Web

Toolkit

(GWT)

Graph

Visualization

GWT

Incubator

Web services

Page 44: VocBench 3: some insights on the forthcoming release

…to VB 3

05/07/2017Armando Stellato [email protected]

http://art.uniroma2.it/stellato 44

Front end Back end

Possible Admin

Data Serializations

Triple Store

Middleware

Semantic Turkey

A

n

g

u

l

a

r

2

User Management

Project

Management

A

d

m

i

n

i

s

t

r

a

t

i

o

n

File System

Relation DB

Triple Store

Data and Metadata Management

Page 45: VocBench 3: some insights on the forthcoming release

Requirements for VB3

R1. Multilingualism

R2. Controlled Collaboration

R3. Data Interoperability and Consistency

R4. Software Interoperability/Extensibility

R5. Data Scalability

R6. Under-the-hood data

access/modification

R7. Adaptive Context and Ease-of-use

R8. RDF Languages Support

R9. Maintainability (Architecture

and Code Scalability)

R10. Full Editing Capability (RDF

Observability and Reachability)

R11. Provenance

R12. Versioning Support

R13. Metadata Descriptions

R14. Customizable UI

R15. Everything’s RDF

05/07/2017 45Armando Stellato [email protected]

http://art.uniroma2.it/stellato

Page 46: VocBench 3: some insights on the forthcoming release

VB3 Features (1)

• Project Management

– Totally hiding interaction with the underlying triplestore (support for repository access or

creation, providing different configurations, or supporting custom ones)

– Dealing with more datasets

• A main dataset for the working data

• Other datasets for metadata / additional info / validation / history etc…

• Flexible scaleout to different scenarios

– be it an easy&immediate desktop use or a collaborative editing, different options

– every important but resource-consuming feature as optional (e.g. validation, history, etc..)

– Binding between scenarios and possible choices for the above options

• Full extensibility

– Plugins covering services + UI extensions

– Functional extension points

• Triple store specific pluggable optimizations (e.g. search optimization)

05/07/2017 46Armando Stellato [email protected]

http://art.uniroma2.it/stellato

Page 47: VocBench 3: some insights on the forthcoming release

VB3 Features (2)

• ST capabilities not exploited by VB (see DEMOs)

– Sheet2RDF

– Custom Ranges

– ICV: Integrity Constraint Validation

– Alignment Import and Validation

– Linked Data Browsing

• But also re-enable VB capabilities not available in ST

– User Management

– Validation/History

05/07/2017 47Armando Stellato [email protected]

http://art.uniroma2.it/stellato

Page 48: VocBench 3: some insights on the forthcoming release

VB3 Features (3)

• Totally new concepts

– Metadata Registry and Retriever (temporary name)

– Lexical Linked Data (LLD) Registry

– MAPLE: a Mapping supporting framework for enabling

cross-language (OWL, SKOS, SKOSXL) access to data,

and match-making lexical resources through the LLD

Registry

– Interaction with collaboration frameworks (e.g. JIRA)

05/07/2017 48Armando Stellato [email protected]

http://art.uniroma2.it/stellato

Page 49: VocBench 3: some insights on the forthcoming release

Vocbench 3 (and ST) Architecture

Three layered extensible

architecture

• Presentation Layer

– Angular. Vocbench User Interface

• Services Layer

– Enables communication between the client

(Vocbench UI) and the ontology

persistence layer.

– HTTP based Services accessed through the

Ajax paradigm

– OSGi Extensible Servicing System

• Persistence Layer

– Access to ontological knowledge.

– Based on RDF4J Framework

– Requires a dedicated RDF4J Sail expressly

developed for VocBench in order to store

information for projects using History &

Validation

05/07/2017 49Armando Stellato [email protected]

http://art.uniroma2.it/stellato

Page 50: VocBench 3: some insights on the forthcoming release

Extensibility

• Client: Angular

– Angular

– Java / JavaScript API for services

– RDF Widgets (still not developed as a library)

• Services: OSGi

– Service Extensions

– Plugins: e.g. dataset metadata (exporter),

exporter filters, rendering engine,

repository configurer, uri generator

• Data and Models: OSGi

– Connectivity to any triplestore compliant

with RDF4J.

– Compliancy with the sail stack

mechanism is necessary for enabling history

and validation

05/07/2017Armando Stellato [email protected]

http://art.uniroma2.it/stellato 50

Page 51: VocBench 3: some insights on the forthcoming release

New directions: Service Deployment through Spring +

custom controller generation

Current service implementation

if (request.equals(Req.isTopConceptRequest)) {String skosConceptName = setHttpPar(Par.concept);String schemeName = setHttpPar(Par.scheme);checkRequestParametersAllNotNull(Par.concept, Par.scheme);response = isTopConcept(skosConceptName, schemeName);

public Response isTopConcept(String skosConceptName, String schemeName) {SKOSModel skosModel = getSKOSModel();

try {ARTResource[] graphs = getUserNamedGraphs();ARTURIResource skosConcept = retrieveExistingResource(skosModel, skosConceptName, graphs);ARTURIResource skosScheme = retrieveExistingResource(skosModel, schemeName, graphs);return createBooleanResponse(skosModel.isTopConcept(skosConcept, skosScheme, graphs));

} catch (NonExistingRDFResourceException e) {return logAndSendException(e);

} catch (ModelAccessException e) {return logAndSendException(e);

}

}

Separation of service method-controller / automatic generation of controller

public boolean isTopConcept(@present ARTURIResource skosConcept, @Optional(defaultValue = “:mainScheme”) ARTURIResource skosScheme)throws NonExistingRDFResourceException, ModelAccessException {

SKOSModel skosModel = getSKOSModel();ARTResource[] graphs = getUserNamedGraphs();return skosModel.isTopConcept(skosConcept, skosScheme, graphs);

}

Annotations may contain

explicit validation checks with

respect to the application’s

semantics

Arguments and returned

values are now explicitly

managed with their native

types.

Marshalling/Unmarshalling to

the serialization formats

adopted by the service is

demanded to dedicated

components

The method signature then drives the generation of the controller, which is the direct frontend for the service. Exceptions

are serialized in the response (the content of which codes both data and application-level error codes) and data validation

annotations are managed by Spring data validation methods

Page 52: VocBench 3: some insights on the forthcoming release

…and a look further beyond!

05/07/2017Armando Stellato [email protected]

http://art.uniroma2.it/stellato 52

Page 53: VocBench 3: some insights on the forthcoming release

University of Rome “Tor Vergata”______________________________________________________

Time for a demo!

Page 54: VocBench 3: some insights on the forthcoming release

Contacts

VocBench site: http://vocbench.uniroma2.it/

VocBench pages@FAO: http://aims.fao.org/vest-registry/tools/vocbench

You can also follow VB by registering to:

• VocBench Mailing Lists:

– User: http://groups.google.com/group/vocbench-user

– Developer: http://groups.google.com/group/vocbench-developer

• Semantic Turkey Mailing Lists (only for backend related aspects) :

– User: http://groups.google.com/group/semanticturkey-user

– Developer: http://groups.google.com/group/semanticturkey-developer

• AIMS Community Site: http://aims.fao.org/ (you can selected the topics you are interested

into)

05/07/2017 54Armando Stellato [email protected]

http://art.uniroma2.it/stellato

Page 55: VocBench 3: some insights on the forthcoming release

05/07/2017Armando Stellato [email protected]

http://art.uniroma2.it/stellato55/XX