Function InteroperabilityGeorge Athanasopoulos, Ed Fox, Yannis Ioannidis, George Kakaletris, Natalia Manola, Carlo Meghini, Andreas Rauber,
Dagobert Soergel
DL.org Autumn School
Digital Libraries and Digital Repositories: Modelling, Best Practices & Interoperability
Layout
• What is interoperability?• Why is it needed for?• Pre-requisites• Interoperability Cases• Function Interoperability Levels• Interoperability Issues
– Issues – Solutions
• 2010 Odyssey• Topics for discussion/exercise
2
DL.org Autumn School
Digital Libraries and Digital Repositories: Modelling, Best Practices & Interoperability
What is Interoperability ?
• “ability of a system to work with or use the parts or equipment of another system” [Merriam-Webster dictionary]
• “Interoperability is a property of a product or system, whose interfaces are completely understood, to work with other products or systems, present or future, without any restricted access or implementation” [Wikipedia]
• “The ability of two or more systems or components to exchange information and to use the information that has been exchanged” [IEEE definition]
3
DL.org Autumn School
Digital Libraries and Digital Repositories: Modelling, Best Practices & Interoperability
DL Function Interoperability – Part 1
Can be though of as ….
4
DL A DL B
Functions Functions
DL.org Autumn School
Digital Libraries and Digital Repositories: Modelling, Best Practices & Interoperability
Compatibility
5
DL.org Autumn School
Digital Libraries and Digital Repositories: Modelling, Best Practices & Interoperability
Product Compatibility as Interoperability
• From a user perspective product compatibility allows the user to adapt to a new system quickly
6
DL.org Autumn School
Digital Libraries and Digital Repositories: Modelling, Best Practices & Interoperability
What if interoperability was possible..
Then we could: • Provide users of one DL access to the content
and functionality of other DLs • Harmonize the user experience provided by
different DLs so that the user who has learned to use one DL can use easily other DLs
• Save effort in creating new DLs, or adding functionality to an existing DL, by reusing existing software components
7
DL.org Autumn School
Digital Libraries and Digital Repositories: Modelling, Best Practices & Interoperability
Are we missing something ?
• A template for the description of functions
• A catalog/registry of existing functions
8
DL.org Autumn School
Digital Libraries and Digital Repositories: Modelling, Best Practices & Interoperability
Interoperability Cases: A process-based point of
view
• Function Fa can use the functionality offered by Fb, by– Fa can use Fb as a plug-in (static) – Fa can call Fb as a service (dynamic)
9
DL.org Autumn School
Digital Libraries and Digital Repositories: Modelling, Best Practices & Interoperability
Interoperability Cases: A process-based point of
view (cont)• Replaceability:
– If Function Fa can operate in environment E and Fb can also operate in E, then Fb can replace Fa, or a user can be given a choice between Fa and Fb
10
DL.org Autumn School
Digital Libraries and Digital Repositories: Modelling, Best Practices & Interoperability
Interoperability Cases: A data-based point of view
• If Function Fa can operate on the output of Fb then Fa and Fb are interoperable – Fa and Fb may also exchange data (possibly back and forth) as
they run concurrently
• Function Fa is interoperable with a given data set D or a given data format DF if Fa can make use of the data in data set D or of data formatted according to DF
• If function Fa is interoperable with a given data set D or data format DF and function Fb is also compatible with D or DF, respectively , then Fb can replace Fa, or a user can be given a choice between Fa and Fb
11
DL.org Autumn School
Digital Libraries and Digital Repositories: Modelling, Best Practices & Interoperability
Interoperability Cases: A user-based point of view
• Functions Fa and Fb are (cross-) product-compatible if a user who has learned to use Fa can also use Fb
12
DL.org Autumn School
Digital Libraries and Digital Repositories: Modelling, Best Practices & Interoperability
Interoperability Dimensions
• the static vs dynamic dimension, which deals with the degree of dynamicity of the interaction between the functions: – static, if the interaction must be implemented
at development time – dynamic, if the interaction can happen at run
time
13
DL.org Autumn School
Digital Libraries and Digital Repositories: Modelling, Best Practices & Interoperability
Interoperability Dimensions (cont)
• the form of interaction: – composition: the functions carry out two
different tasks and one of the two can invoke the other one for executing some required activity
– replacement: the functions carry out the same task in possibly alternative ways, and one can be replaced by the other
14
DL.org Autumn School
Digital Libraries and Digital Repositories: Modelling, Best Practices & Interoperability
DL Function Interoperability – Part 2
• A digital library (DL A) is interoperable with another digital library (DL B) on a function (F) iff either DL A or DL B can invoke F and/or combine F with other functions, with or without the use of brokers
15
DL.org Autumn School
Digital Libraries and Digital Repositories: Modelling, Best Practices & Interoperability
DL Product Compatibility
• Digital library B is product compatible with DL A with respect to functionality if – DL B provides all the functions DL A provides– DL B uses the same interface to invoke
functions as DL A• includes naming of functions, shape and color of
buttons, screen layout, command names and syntax
16
DL.org Autumn School
Digital Libraries and Digital Repositories: Modelling, Best Practices & Interoperability
Interoperability Levels
• Achieving function interoperability facilitates/depends on– Syntactic Interoperability – Semantic Interoperability – Functional Interoperability – Behavioral Interoperability – Organizational/Business/Procedural
Interoperability
17
DL FUNCTION INTEROPERABILITY ISSUES &
SOLUTIONS18
DL.org Autumn School
Digital Libraries and Digital Repositories: Modelling, Best Practices & Interoperability
19
Function Interoperability Issues
• Interface/API incompatibilities: Function interface includes information related to the input/output and the manners one should use to operate a function
• Pre/Post Condition differences: Pre- conditions & Post-conditions includes conditions that must hold prior to and after the invocation of a function
• Behavioral incompatibilities: Behavior specifications include information on the set of possible interactions supported by a specific function
• Composite Function Incompatibilities: Issues related to the
interoperation of complex functions• Ontology/Taxonomy Issues: Ontologies/Taxonomies provide a
vocabulary for specifying the actual function semantics
DL.org Autumn School
Digital Libraries and Digital Repositories: Modelling, Best Practices & Interoperability
API/Interface Incompatibilities
• Function API/Interface captures information related to the input/output and the manners one should use to operate a function– Interfaces could be either graphical or programming
ones
20
DL.org Autumn School
Digital Libraries and Digital Repositories: Modelling, Best Practices & Interoperability
API/Interface Incompatibilities (cont)
21
FaFa
FbFb
Fa : DL-A Searcho a1: keyword (String)o a2: type of content (e.g. video, text)o o1: list of results (URIs)
a1
a2
a1a2a3
o1
o1Fb : DL-B Searcho a1: keyword (String)o a2: content age (e.g. >1990)o a3: list of personal preferences (e.g. movies, cartoons) o o1: list of results (content)
DL.org Autumn School
Digital Libraries and Digital Repositories: Modelling, Best Practices & Interoperability
Pre/Post Condition Incompatibilities
• Preconditions and Postconditions provide a specification of the conditions that hold for a function to be called and the ones that hold after its execution respectively
22
DL.org Autumn School
Digital Libraries and Digital Repositories: Modelling, Best Practices & Interoperability
Pre/Post Condition Incompatibilities (cont)
23
FaFa
FbFb
Fa : DL-A Search o pr.c1: a1 must be a single wordo pr.c2: type of content must be {video, text, image}o ps.c1: results include forbidden material
a1
a2
a1
a2
o1
o1 Fb : DL-B Searcho pr.c1: a1 may include sentenceso pr.c2: type of content must be {video, audio, text}o pr.c3: user location must be in Greece
o a1: keyword (String), a2: type of content (e.g. multimedia, text)o o1: list of results (URIs)
DL.org Autumn School
Digital Libraries and Digital Repositories: Modelling, Best Practices & Interoperability
Behavioral Incompatibilities
• Function behavior can be conceived as the set of possible interactions supported by a specific function– It expresses the perception of an external observer
described in terms of supported input/output exchanges their (logical or time) ordering and constraints
24
DL.org Autumn School
Digital Libraries and Digital Repositories: Modelling, Best Practices & Interoperability
Behavioral Incompatibilities (cont)
25
FaFa
FbFb
a1
a2
a1
a2
o1
o1
o a1: keyword (String), a2: preference filters (e.g. thrillers, cartoons)o o1: list of results (URIs)
Fa : DL-A Search o a1, a2: are provided in the beginning and can not be changed afterwardso o1: results are returned in set of pages accessed one after the other (e.g. Google)
Fb : DL-B Searcho a1, a2: can be altered after first execution to refine resultso o1: results are returned all at once (e.g Wikipedia)
DL.org Autumn School
Digital Libraries and Digital Repositories: Modelling, Best Practices & Interoperability
Composite Function Incompatibilities
• Function composition interoperability can be considered at two levels: – the level of constituent functions i.e. integration of
simple (or atomic) functions– the level of composite functions i.e. interoperation of
complex functions
• The concerns related to the interoperation of complex functions include issues such as the replaceability of complex functions or the compatibility of employed composition styles
26
DL.org Autumn School
Digital Libraries and Digital Repositories: Modelling, Best Practices & Interoperability
Composite Function Incompatibilities (cont)
27
DL.org Autumn School
Digital Libraries and Digital Repositories: Modelling, Best Practices & Interoperability
Function Ontology/Taxonomy
Incompatibilities• The precise specification of functions requires a
very detailed typology or ontology i.e. a vocabulary for specifying the actual semantics
• The use of a common vocabulary for the description of functions provides the necessary basis upon which DLs may cooperate either in an automated or a 'manual' manner
28
DL.org Autumn School
Digital Libraries and Digital Repositories: Modelling, Best Practices & Interoperability
Function Ontology/Taxonomy
Incompatibilities (cont)• Ontology
–Discover• Navigate
• Browse
• Search – quick search – advanced search
29
DL.org Autumn School
Digital Libraries and Digital Repositories: Modelling, Best Practices & Interoperability
Function Ontology/Taxonomy
Incompatibilities (cont)
30
SOLUTIONS
31
DL.org Autumn School
Digital Libraries and Digital Repositories: Modelling, Best Practices & Interoperability
Classification of Interoperability Approaches
• Agreement based / Static: Use of a set of principles (e.g. interfaces, etc) that achieve a limited amount of homogeneity among heterogeneous functions
• Mediation based : guarantee a high level of autonomy among the interacting functions, by isolating the interoperability machinery and implementing it in components which link the interacting functions
32
DL.org Autumn School
Digital Libraries and Digital Repositories: Modelling, Best Practices & Interoperability
Agreement-based Approaches
• A static definition of functions in terms of : – Interfaces e.g. I/Os– Behavior– Pre/Post –conditions
• An old & successfully applied solution– E.g. RosettaNet & e-Framework
33
DL.org Autumn School
Digital Libraries and Digital Repositories: Modelling, Best Practices & Interoperability
Agreement based Approaches (cont)
34
FaFaa1 o1
DL.org Autumn School
Digital Libraries and Digital Repositories: Modelling, Best Practices & Interoperability
Mediation-based Approaches
• Static Mediation: Mediators are constructed in a static (non-automated) manner for specific cases
• Dynamic Mediation: Mediators are constructed in a dynamic (automated) manner based on the use of appropriate descriptions and formal methods
35
DL.org Autumn School
Digital Libraries and Digital Repositories: Modelling, Best Practices & Interoperability
Static Mediation
• Well tested and applied approach • Used in many existing systems
36
FaFa FbFba1
a2
a1o1 o1
FcFca1
a2o1
DL.org Autumn School
Digital Libraries and Digital Repositories: Modelling, Best Practices & Interoperability
Dynamic Mediation
• Relies on the use of formal – Descriptions of functions (i.e. mathematical/logic based descriptions) and
– Methods for the identification of mediators
• Used in research-based context
37
FaFaa1
a2o1
FbFba1
a2o1
Fa SpecFa
Spec
Fb SpecFb
Spec
Constr.
Constr.
DL.org Autumn School
Digital Libraries and Digital Repositories: Modelling, Best Practices & Interoperability
Composite Function Interoperation
• Formal approaches relying on the description of complex function choreographies
• Any other ideas ??????
38
DL.org Autumn School
Digital Libraries and Digital Repositories: Modelling, Best Practices & Interoperability
Ontology/Taxonomy Interoperation
• Ontology mapping: involves the creation of a set of rules and axioms that precisely define how terms from one ontology relate with terms from the other ontology
• Ontology alignment: has the role of bringing the involved ontologies in a mutual agreement. The ontologies are kept separately but at least one of them has to be altered such as the involved ontologies are ”aligned” (i.e. they match) in their overlapping parts
• Ontology merging: results in creation of a new ontology that replaces the original ontologies. The merging can be done either by unification (all the terms from the involved ontologies are included and mismatches between the overlapping ones are resolved) or by intersection (only the overlapping terms are included and their mismatches reconciliated)
39
DL.org Autumn School
Digital Libraries and Digital Repositories: Modelling, Best Practices & Interoperability
2010 Odyssey in Athens
• Integrating what?– Search capabilities offered by Wikipedia, Europeana,
Amazon
• To provide what ? – an account of the topic (taken from Wikipedia)– a list of resources in Europe related to the topic
(Europeana)– a list of the available publications on the topic
(Amazon)– the links between these three
40
DL.org Autumn School
Digital Libraries and Digital Repositories: Modelling, Best Practices & Interoperability
2010 Odyssey in Athens: Providing a Solution
• Have in mind the following:– Why do we need it ?– What are original/initial constraints ?– What will be our outcome?– Does it relate to any one of the presented
issues/solutions?
41DL.org Autumn SchoolDigital Libraries and Digital Repositories: Modelling, Best Practices & Interoperability
DL.org Autumn School
Digital Libraries and Digital Repositories: Modelling, Best Practices & Interoperability
Describing the Solution
1. Overview Context of the proposed approach including pointers to detailed description of it
2. RequirementsConditions under which the solution might be used
3. ResultsChanges resulting from the usage of the solution
4. Implementation guidelinesHow the changes are produced
• AssessmentQualitative evaluation of the proposed solution
42
Information available at:Functionality WG
Functionality Interoperability State-of-the-Art Report
DL.org Autumn School
Digital Libraries and Digital Repositories: Modelling, Best Practices & Interoperability
Hands-On: Topics
• What are the discovery functions offered by your DLs?– Describe them in terms of the RM– Can they interoperate with Google Search?– Can they interoperate among them?
• Is the web a DL ?– Why not ?– Will it ever be ?
44