Open nichtich opened 5 years ago
Maybe as a separate service.
A first version could be limited to indirect 1-to-1 mappings from a specific concept (from
and fromScheme
) to another vocabulary (toScheme
) via a specific vocabulary (via
). The three vocabularies fromScheme
, via
and toScheme
must be distinct. The algorithm would be:
/mappings/infer
with via
as toScheme
to get the primary result set./mappings/infer
with the cᵢ as from
and original toScheme
, so there is a secondary result set for each cᵢ.This could be provided at /mappings/infer
(#177) as well, triggered by the parameter via
.
An example: Given three vocabularies A, B, C two mappings and a hierarchical relation:
Query from Atomic Physics in A toScheme C via B:
Worst case performance is when no mapping type is used to restrict inference.
Given a concept A look up all mappings from this concept (A-B1, A-B2 ...). Then look up all mappings from Bn to concept in a selected target scheme. Example:
The schemes of middle concepts are used as "mapping hubs".
Two issues:
Combination of mapping types:
Marked by *: to be discussed
This combination rules (how to infer mappings from other mappings) should be part of jskos-tools.
Query parameters:
from
+toScheme
orto
+fromScheme
via=*
orvia=uris|notations
to select which schemes to include as mapping hubsThis gives best results for simple and exact 1-to-1 mappings but should also help in other cases.