Typing OpenDLib Repository Service: Strengths of an Information Object Type Language 1st European...

30
Typing OpenDLib Repository Service: Strengths of an Information Object Type Language 1st European Workshop on the use of information object Repository Systems in Digital Libraries (DORSDL), in conjunction with ECDL2006 Leonardo Candela, Donatella Castelli Paolo Manghi, Pasquale Pagano Centro Nazionale delle Ricerche Pisa, Italy
  • date post

    19-Dec-2015
  • Category

    Documents

  • view

    217
  • download

    0

Transcript of Typing OpenDLib Repository Service: Strengths of an Information Object Type Language 1st European...

Page 1: Typing OpenDLib Repository Service: Strengths of an Information Object Type Language 1st European Workshop on the use of information object Repository.

Typing OpenDLib Repository Service: Strengths of an Information Object Type Language

1st European Workshop on the use of information object Repository Systems in Digital Libraries (DORSDL), in conjunction with ECDL2006

Leonardo Candela, Donatella CastelliPaolo Manghi, Pasquale Pagano

Centro Nazionale delle Ricerche Pisa, Italy

Page 2: Typing OpenDLib Repository Service: Strengths of an Information Object Type Language 1st European Workshop on the use of information object Repository.

3

DORSDL Workshop - 21th of September, 2006

DBMS

DB Systems: realizing a DB Application

System Interface

DBMS

Typed Data Model(Type Language)

Application

Page 3: Typing OpenDLib Repository Service: Strengths of an Information Object Type Language 1st European Workshop on the use of information object Repository.

4

DORSDL Workshop - 21th of September, 2006

DBMS

DB Systems: type definition

System Interface

DBMS

Application

Managers

Typed Data Model(Type Language)

Projects

Page 4: Typing OpenDLib Repository Service: Strengths of an Information Object Type Language 1st European Workshop on the use of information object Repository.

5

DORSDL Workshop - 21th of September, 2006

DBMS

DB Systems: storage creation

System Interface

DBMS

Application

M P

Typed Data Model(Type Language)

Managers Projects

Page 5: Typing OpenDLib Repository Service: Strengths of an Information Object Type Language 1st European Workshop on the use of information object Repository.

6

DORSDL Workshop - 21th of September, 2006

DBMS

DB Systems: Application Usage

System Interface

DBMS

Application

M P

Typed Data Model(Type Language)

Managers Projects

Componenton Managers and Projects

Page 6: Typing OpenDLib Repository Service: Strengths of an Information Object Type Language 1st European Workshop on the use of information object Repository.

7

DORSDL Workshop - 21th of September, 2006

DBMS

DB Systems

System Interface

DBMS

Application

D1 D2M P

Typed Data Model(Type Language)

Managers Projects

Componenton Managers and Projects

Page 7: Typing OpenDLib Repository Service: Strengths of an Information Object Type Language 1st European Workshop on the use of information object Repository.

8

DORSDL Workshop - 21th of September, 2006

DB Systems: additions

System Interface

DBMS

Application

D1 D2 D3

Budgets

Componenton Managers and Projects

Componenton Budgets

M P B

Typed Data Model(Type Language)

Managers Projects

Page 8: Typing OpenDLib Repository Service: Strengths of an Information Object Type Language 1st European Workshop on the use of information object Repository.

9

DORSDL Workshop - 21th of September, 2006

Relational DB System

System Interface

RelationalDBMS

Application

D1 D2 D3TabM TabP TabB

Relational Model(SQL schema)

Componenton Managers and Projects

Componenton Budgets

TableBudgets

TableManagers

TableProjects

Page 9: Typing OpenDLib Repository Service: Strengths of an Information Object Type Language 1st European Workshop on the use of information object Repository.

10

DORSDL Workshop - 21th of September, 2006

Typed Data Models: advantages

Application development and maintenanceFunctionality and content are kept

independent from each otherType correctness: components must be type-

conformantModularityReuse: component-wise and data wise

Page 10: Typing OpenDLib Repository Service: Strengths of an Information Object Type Language 1st European Workshop on the use of information object Repository.

11

DORSDL Workshop - 21th of September, 2006

Typed Data Models: advantages

Type-driven physical storageData integrity: data can be handled according

to their associated structure onlyType information can be exploited to optimize

space storage and access time

Page 11: Typing OpenDLib Repository Service: Strengths of an Information Object Type Language 1st European Workshop on the use of information object Repository.

12

DORSDL Workshop - 21th of September, 2006

DL Applications and (Type-less) Repository Services DL Applications are built exploiting Repository Services Repository Services concentrate on physical

management of Information objects Based on a Type-less Information Object Model Offer a set of primitives to

Manage an Information Space of information objects: add, delete, update, search

Manage metadata records: efficient storing (XML), indexing, mapping, harvesting, publishing, etc.

Extra features: behaviors, communities, users… Historical reasons:

Originally DLs were flat catalogues of pairs file-metadata or metadata only

Page 12: Typing OpenDLib Repository Service: Strengths of an Information Object Type Language 1st European Workshop on the use of information object Repository.

13

DORSDL Workshop - 21th of September, 2006

Gaps of Type-less Repository Services

DL Applications must “encode” The notion of typed collection of information objects, seen as a

collection of objects with the same structure - Prototypes address this problem (K. Saidis et Al, ECDL2006)

The notion of methods (functionality) of the objects of a given typed collection

Applications are hard to write, maintain, reuse, and extend

No type safety and data integrity The objects into the store are not aware of their type

All the advantages of DB Systems are lost…

Page 13: Typing OpenDLib Repository Service: Strengths of an Information Object Type Language 1st European Workshop on the use of information object Repository.

14

DORSDL Workshop - 21th of September, 2006

Gaps of Type-less Repository Services

System Interface

Repository Service

InformationObject Model

Application

Objects

Componenton Objects

and Rep primitives

Component:Typed Collections

and methods

data

Page 14: Typing OpenDLib Repository Service: Strengths of an Information Object Type Language 1st European Workshop on the use of information object Repository.

15

DORSDL Workshop - 21th of September, 2006

Things have changed…

DL Applications are becoming common DL specific issues arise, regarding both

information spaces and functionalities Need for systematic approaches, in order

to maximize reuse and minimize effortSystems for supporting DL-specific,

customizable, and optimized functionalities to DL Applications designers and developers

Page 15: Typing OpenDLib Repository Service: Strengths of an Information Object Type Language 1st European Workshop on the use of information object Repository.

16

DORSDL Workshop - 21th of September, 2006

Things have changed… Information Space Towards richer Information Object Models

Collections of Complex objects: MF, files, relations, and behaviors

Structured Objects: objects as a compound of other objects, e.g. photo albums, etc.

Dynamic Objects: dynamic created contentObject features: provenance and preservationUsers-Objects relationship: copyrights,

access rights, authentication, etc.Others…

Page 16: Typing OpenDLib Repository Service: Strengths of an Information Object Type Language 1st European Workshop on the use of information object Repository.

17

DORSDL Workshop - 21th of September, 2006

Things have changed…Functionalities Towards system primitives

User profilingUser recommendationsObject VersioningOAI-PMH HarvestingVirtual Object Collection managementOthers…

Page 17: Typing OpenDLib Repository Service: Strengths of an Information Object Type Language 1st European Workshop on the use of information object Repository.

18

DORSDL Workshop - 21th of September, 2006

Our goal Design and develop a Typed Repository

Service, along the line of DB Systems

Typed Information Object Model (OO)

Collection Table

Relational Model

<Type, Set of information objects> <Structure, Set of Records>

Type algebra Relational Algebra

Page 18: Typing OpenDLib Repository Service: Strengths of an Information Object Type Language 1st European Workshop on the use of information object Repository.

19

DORSDL Workshop - 21th of September, 2006

Typed Repository Service

A type defines a set of objects with the same structure and the operations (methods) that can be applied to them

A Collection is a named set of objects defined according to the type assigned to the Collection

A Repository Service Instance is a set of Collections A Repository Service “exposes” to Applications

components all Collections defined in its active Instance Applications can manage, search, and manipulate

objects of Collection according to the methods (functionalities) exposed by the relative type

Page 19: Typing OpenDLib Repository Service: Strengths of an Information Object Type Language 1st European Workshop on the use of information object Repository.

20

DORSDL Workshop - 21th of September, 2006

Typed Repository Service

System Interface

Typed Repository Service

Typed Information Object Model(Type algebra)

Application

DO1 DO2 DO3

Articles Notes Refs

Componenton Notes and Refs

Componenton Articles

A N R

TypeCollection

Page 20: Typing OpenDLib Repository Service: Strengths of an Information Object Type Language 1st European Workshop on the use of information object Repository.

21

DORSDL Workshop - 21th of September, 2006

DL Type Algebra

A Type is characterized by: A (possibly empty) set of type properties, i.e.

attributes that depend on the Type features A (possibly empty) set of Metadata Fields (MF)

describing all objects of the Type, to be defined by the DL Designer

A Collection of a given Type offers the primitives (methods) to Search objects according to type properties Search objects according to the MF Add and Delete objects into and from the Collection

Page 21: Typing OpenDLib Repository Service: Strengths of an Information Object Type Language 1st European Workshop on the use of information object Repository.

22

DORSDL Workshop - 21th of September, 2006

DL Type Algebra

Coll ::= Name = Type, Coll | Name = Virtual(Q, Name) |

Type ::= Raw(MF, FileFormats, behaviors)

| Relation(MF, Type1, Type2, [1:1|1:n|n:n]) | Aggregation(MF, Type)

| Union(Name1,…,Namen) | RawView(MF, FileFormats, behaviors) | Name | Others

Page 22: Typing OpenDLib Repository Service: Strengths of an Information Object Type Language 1st European Workshop on the use of information object Repository.

23

DORSDL Workshop - 21th of September, 2006

Raw type: “ground” objects

Raw(MF, file formats, behaviors(in, out))Object methods

Update MF Upload manifestation/change link Update behaviors

Class methods Search by MF Search by full-text

Page 23: Typing OpenDLib Repository Service: Strengths of an Information Object Type Language 1st European Workshop on the use of information object Repository.

24

DORSDL Workshop - 21th of September, 2006

Relation Type: “association” objects

Relation(MF, T1,T2, [1:1|1:n | n:n ])Object methods

Update MF Update the two related objects Get the two related objects

Class methods Add and Delete Relation Objects Search by MF Search objects related to a given object

Page 24: Typing OpenDLib Repository Service: Strengths of an Information Object Type Language 1st European Workshop on the use of information object Repository.

25

DORSDL Workshop - 21th of September, 2006

Aggregation Type

A = Aggregation(MF, MF’ + ordering, B)

BA(MF)

Hidden Relation Typeused by Aggregation

(MF’ and an ordering number)

Object methods Add, remove object of B from aggregation Get aggregated objects Search through aggregated objects: by MF or by ordering

Class methods Add and Delete Aggregation Objects Search by MF

Page 25: Typing OpenDLib Repository Service: Strengths of an Information Object Type Language 1st European Workshop on the use of information object Repository.

26

DORSDL Workshop - 21th of September, 2006

Example: Annotations to ArticlesArticles = Raw(<Title, Author, Year>, PDF)Notes = Raw(<Date, Text, Author>)Anns = Relation(Articles, Notes, [n:n])

Applications can Add&Delete articles, notes, and annotations objects Given an article object A, reach its notes through

Anns.getRelated(A) Search all notes inserted in a given period through

Notes.search(“Date between x an y”) The store can

Create specific indices for each MF format Create a full-text index for PDFs Find the best way to compress PDF and the MF formats

available

Page 26: Typing OpenDLib Repository Service: Strengths of an Information Object Type Language 1st European Workshop on the use of information object Repository.

27

DORSDL Workshop - 21th of September, 2006

Towards DL Systems

MF mappings: managed by the administrators Consequences for storage optimization?

Behavior management: managed by administrators Limited to file manipulators or more than that, i.e. Web Services?

OAI-PMH publishing, harvesting, and aggregation Store distribution and organization Object navigation

Include objects as values for Metadata Fields? Query language?

Page 27: Typing OpenDLib Repository Service: Strengths of an Information Object Type Language 1st European Workshop on the use of information object Repository.

28

DORSDL Workshop - 21th of September, 2006

Towards DL Systems

System Interface

Typed Repository Service

Typed Information Object Model(Type algebra)

Application

DO1 DO2 DO3

Articles Notes Refs

Componenton Notes and Refs

Componenton Articles

A N R

MF mappings Behaviors

OA

I-P

MH

Pub

lishi

ng –

har

vest

ing

aggr

egat

ing

Page 28: Typing OpenDLib Repository Service: Strengths of an Information Object Type Language 1st European Workshop on the use of information object Repository.

29

DORSDL Workshop - 21th of September, 2006

OpenDLib Repository Service

Rich Document Model: DoMDL Repository Service tailored to DoMDL Repository Services

Can be configured to handle objects that respect a specific subset of DoMDL, thanks to T-DoMDL

Export DoMDL information objects

Page 29: Typing OpenDLib Repository Service: Strengths of an Information Object Type Language 1st European Workshop on the use of information object Repository.

30

DORSDL Workshop - 21th of September, 2006

Light T-DoMDL

Coll ::= Name = Vs, Coll

| Name = Virtual(Q,Name), Coll

|

Vs::= Version(A) | A

A ::= Aggregation(T1,…,Tn)

T ::= Raw[file formats] | A

Page 30: Typing OpenDLib Repository Service: Strengths of an Information Object Type Language 1st European Workshop on the use of information object Repository.

31

DORSDL Workshop - 21th of September, 2006

Conclusions and future issues

Experiment Motivation: Digital Libraries call for Systems Implementing T-DoMDL in OpenDLib Repository Service

Next steps Support full type algebra Exploring query languages and storage optimization Experiment Repository Development

Future: towards fully-fledged DL Systems Preservation OAI-PMH Harvesting and publishing User Rights Management (Collections) More…