PowerPoint-Präsentation - Universität der Bundeswehr München

A Theory for Model-based Transformation
Applied to Computer-Supported
Preservation in Digital Archives
Thomas Triebsees
Universität der Bundeswehr München
Department of Computer Science
[email protected]
Tucson, 27th March 2007
Thomas Triebsees, Uwe M. Borghoff, Dptmt. of Computer Science
1
Agenda
I.
Research Context
II.
Motivating Example
III.
Declarative, Preservation-Centric
Approach for Model
Transformation
IV.
Preservation Language
V.
Results / Conclusions / Remarks
Thomas Triebsees, Uwe M. Borghoff, Dptmt. of Computer Science
2
Research Context
 Long-term preservation of digital material
 Two facets:
o Preservation procedure
o Technical environment
 Preservation approaches:
o Emulation
o Migration
o Hybrid
}
preserve information
 Technical environment
o usually highly modularized and complex
Thomas Triebsees, Uwe M. Borghoff, Dptmt. of Computer Science
3
Motivating Example
Customer
User
Archive
Archiver
INGEST
Browser
extractMetadata
storePerm
CI
EXPOSE
Permanent Storage
PStorage 1
PStorage 2
store
respond
BII
UI
Web Storage
PStorage m
Server 1
Server 2
...
REQUEST /
RESPONSE
Server n
...
Transformation
Integratable into
system specifications
Appropriate language
elements
Abstraction from different
implementations
Contribution: Declarative, domain-specific, preservation-centric language
that facilitates to specify preservation requirements
Thomas Triebsees, Uwe M. Borghoff, Dptmt. of Computer Science
4
III. Declarative, Preservation-Centric
Approach for Model Transformation
Thomas Triebsees, Uwe M. Borghoff, Dptmt. of Computer Science
5
Approach – System Model and
Transformation Semantics
Model elements
-Typed Entities
-Associations
-Functions
Transformation algorithm = sequence of basic operations
Archive
State A
A
System State
Archive
A'
System State A'
basic operation
(create object)
Thomas Triebsees, Uwe M. Borghoff, Dptmt. of Computer Science
System State A''
basic operation
(set association)
6
Approach - Preservation
Concept (= semantic property)
implements
Context 1
implements
…
specify preservation of
…
Context n
defines
Constraints
Preservation
language
source context
respect
Transform.
algorithms
Thomas Triebsees, Uwe M. Borghoff, Dptmt. of Computer Science
used to
generate /
implement
target context
7
Example – Abstraction through
Contexts and Concepts
Context
Concept
Context AWeb
BWeb
Website
AWeb
<name>
src
Website
0..1
φ
(FOPL)
eP
*
0..1
1
Folder
1
1
…
…
<name>.html
…
<name>
HTMLFile
1
BWeb
<name>.html
html
*
File
…
*
Tag
…
resources
trg
PDFFile
ψ
(FOPL)
Thomas Triebsees, Uwe M. Borghoff, Dptmt. of Computer Science
…
…
…
…
8
Example – Specifying the
Preservation Task
Calculation
Concept Website
source
<name>
AWeb
start.html
…
…
<name>.html
…
Website
calc.pdf
0..1
overview
<name>
eP
1
Folder
doclist.html
<name>.html
1
HTMLFile
html
…
…
calculation2005
…
…
EXPOSE
δ
…
resources
BWeb
…
…
…
Thomas Triebsees, Uwe M. Borghoff, Dptmt. of Computer Science
?
9
Example - Typed Entities
start.html
HTMLFile
start.html
<html>
<head/>
h:HTML
name : String
location : String
content : Tag
<html>
t11:Tag
<body>
…
<a href=“…“></a>
…
</body>
</html>
<head>
<body>
t111:Tag
t112:Tag
<title>
<a>
t1111:Tag
t1121:Tag
Tag
name : String
attrs
: Seq<String x String>
content : Seq<(String | Tag>
Thomas Triebsees, Uwe M. Borghoff, Dptmt. of Computer Science
10
IV. Preservation Language
Thomas Triebsees, Uwe M. Borghoff, Dptmt. of Computer Science
11
Preservation Language –
Transformation Constraints
Archive State A'
System
A
h → HTMLFile
h
Archive
A'
System State A'
h‘
trans(δ | h → h‘)
h:HTMLFile
δ
name = "start.html"
location = "/… /source"
content = <...>
Thomas Triebsees, Uwe M. Borghoff, Dptmt. of Computer Science
δ(h):HTMLFile
name = ?
location = ?
content = ?
12
Preservation Language – Object
Preservation Constraints
h → HTMLFile
trans(δ | h → h‘)
presO(h → HTMLFile, h[HTMLFile-{ location,
}])
content
post(δ) ≡ { name(h‘) = name(h) }
HTMLFile-{ location,
content }
h:HTMLFile
name
name = "start.html"
location = "/… /source"
content = <...>
δ(h):HTMLFile
name = "start.html"
location = ?
content = <...>
δ
Thomas Triebsees, Uwe M. Borghoff, Dptmt. of Computer Science
13
Preservation Language –
Concept Preservation
Constraints
presK({w → Website}, Website(w,f,h), AWeb, BWeb)
location,
presO(h → HTMLFile, h[HTMLFile-{ content }])
Concept Website
Context AWeb
w: „Calculation“
Context BWeb
δ
„Calculation“
δ(w): ____________
eP
eP
f: „source“
δ(f): ________
„source“
„start.html“
δ(h): __________
f‘: „html“
f‘‘: „resources“
h: „start.html“
Thomas Triebsees, Uwe M. Borghoff, Dptmt. of Computer Science
14
V. Results / Conclusion / Remarks
Thomas Triebsees, Uwe M. Borghoff, Dptmt. of Computer Science
15
Conclusion
 Constraint definitions show generality (abstraction
from specification language)
 Prototypical implementation available
 Website migration example:
o ≈ 300 files
o ≈ 20 concepts
o ≈ 700 constraints
o ≈ 2300 affected objects
Thomas Triebsees, Uwe M. Borghoff, Dptmt. of Computer Science
16
Conclusion
Strengths:
 State-based approach
 Powerful object model
 Abstraction via concepts; specification language need not necessarily
be FOPL
 Intuitive constraint definition for application domain
 Coherently formal underpinning
 Limits:
 Generation of parallel migration algorithms
 Undecidability of FOPL
 Generating algorithms for comprehensive model reconstructions
 Efficiency
Thomas Triebsees, Uwe M. Borghoff, Dptmt. of Computer Science
17
Subject to your questions…
Thomas Triebsees
Universität der Bundeswehr München
Department of Computer Science
[email protected]
Thomas Triebsees, Uwe M. Borghoff, Dptmt. of Computer Science
18
Constraint-based Migration
Advantages of declarative approach
 easily integratable into system specifications
 focus on critical issues
 abstraction from implementation, thus platform
independent
 formal treatment possible
Thomas Triebsees, Uwe M. Borghoff, Dptmt. of Computer Science
19
Approach
Conceptual overview
source model
instance
concept def.
target model
instance
constraints
(1) Preprocessing
(2) Concept
recognition
(3) Algorithm
generation
(4) Algorithm
execution
object model
extended
object model
migration alg.
target object
model
Thomas Triebsees, Uwe M. Borghoff, Dptmt. of Computer Science
(5) Postprocessing
20