The demo application focuses on the problem of matchmaking for mathematical
services, where semantics play a critical role in determining the applicability
or otherwise of a service and for which OpenMath descriptions of pre-
and postconditions are used.
The demo application developed in course of this research of matchmaking of
numeric and symbolic services consists of an architecture which supports five kinds
of match plug-in which are developed to date:
- Basic structural match: compares the OpenMath symbol element structures
(e.g. OMA, OMS, OMV etc.) of the query with the service description in the
repository.
- Syntax and ontology match: performs not only a structural match but also
compares the content dictionary values of an OMS symbol.
- Algebraic equivalence match: compares the query with the service description
by using algebraic means.
- Value substitution match: compares the query and a service return the same
value by substituting random values for each variable in the expression.
- Decomposition match: in case a service cannot be found the decomposition
match lookups equivalent mathematical expressions and queries the service
repository accordingly.
The matchmaker uses the individual match scores from the plug-ins to compute a
ranking by applicability of the services in order to provide the user with a best score
result.
|