The Data View: Editing Edoal alignments

Intro

The data view page for the Edoal projects differs a lot from the others. Instead of the "classic" two-sections page structure, with the data structure on the left and the resource view on the right, here the page adopts a three-columns subdivision: in the left and right columns there are the data structures of the two datasets involved in the Edoal project, at the center there is a panel that allows the management of the alignments.

edoal data view

The side panels contain the tree/list structures essential to the alignment. In the specific case shown in the figure above, where the two aligned datasets are both SKOS thesauri, the panels contain the skos:Concept tree and the skos:ConceptScheme list (needed in order to eventually restrict the view of the concept tree to different schemes).

Alignment creation

The central column has two panels: the lower one, which takes up most of the column, allows to manage existing alignments, while the upper one is used to define new ones. When the user selects a resource in one of the side panels, the same is shown in the New alignment panel. It is then possible to select one of the relations available and set a measure between 0 and 1 (the higher it is, the more trustworthy the relation). Clicking the Create button will add the new alignment to the Alignments list below.

The relations available for alignments are those defined by INRIA's Alignment API:

Alignments management

The Alignments panel located in the central column lists the available mappings. This panel contains a table with five columns:

There are three action buttons on the right side of the panel header. The first one, two arrowheads, is enabled only when an alignment is selected in the table. It allows to highlight the two entities of the alignment in the side panels. The button with the minus icon simply removes the selected alignment. Finally, the last button refreshes the list of alignments.

When selecting a mapping property (using the selector under Mapping prop column) the system suggests one or more properties suitable for the type of resources involved in the alignment and the type of relation. The following table defines the possible combinations.

Relation ▶ = > < % InstanceOf HasInstance
▼ Entity Role
Property owl:equivalentProperty; owl:sameAs rdfs:subPropertyOf owl:propertyDisjointWith rdf:Type
Concept skos:exactMatch; skos:closeMatch skos:narrowMatch skos:broadMatch skos:broadMatch; rdf:type skos:narrowMatch
Class owl:equivalentClass; owl:sameAs rdfs:subClassOf owl:disjointWith rdf:type
Individual owl:sameAs owl:differentFrom rdf:type

So, as shown in the example below, the properties suggested for an alignment between two concepts and a = relation are skos:exactMatch and skos:closeMatch. Note: Given that aligning two resources of different types would not make sense, only the type of the left entity role is taken into account.

Additionally, as shown in the sample above, an "Other..." option is available under the Mapping prop selector. This option allows the selection of a property, different from the ones suggested by default, by picking it from the property tree.

Once a custom property has been set, the system will suggest it, in addition to the default ones, whenever choosing a mapping property for the same role-relation pair. As you can see in the following image, rdfs:seeAlso is suggested, in addition to the default skos:exactMatch and skos:closeMatch, since it is already used in another alignment between concepts with = relation.