Function Interoperability George Athanasopoulos, Ed Fox, Yannis Ioannidis, George Kakaletris,...

Post on 05-Jan-2016

214 views 0 download

Tags:

Transcript of Function Interoperability George Athanasopoulos, Ed Fox, Yannis Ioannidis, George Kakaletris,...

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

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