Ontologies

snufflevoicelessInternet and Web Development

Oct 22, 2013 (3 years and 11 months ago)

54 views

Ontologies

Course 582407: Software Agent Technology

Santtu Toivonen, VTT Technical Research Centre of Finland

14.2.2006

VTT TECHNICAL RESEARCH CENTRE OF FINLAND

14.2.2006

About me


Work


Senior Research Scientist


VTT Technical Research Centre of Finland


Education


Master of Arts


University of Helsinki, major in Cognitive Science


Interests


Agent communication


Ontologies for agents


Distribution of cognition


Context
-
awareness

VTT TECHNICAL RESEARCH CENTRE OF FINLAND

14.2.2006

Outline


What is an ontology?


What is a concept?


A simple ontology


Size and scope of an ontology


Ontology management


The Semantic Web


Some ontology representation languages and tools


Further material


Hands
-
on example


Ontology design with Protégé


Ontology querying with Pellet

VTT TECHNICAL RESEARCH CENTRE OF FINLAND

14.2.2006

Ontology… hmmm, sounds familiar


You have come across ontologies before in this course:












… but what are they?

(cfp


:sender (agent
-
identifier :name j)


:receiver (set (agent
-
identifier :name i))


:content


"((action (agent
-
identifier :name i)


(sell plum 50))


(any ?x (and (= (price plum) ?x) (< ?x 10))))"


:
ontology

fruit
-
market


:language fipa
-
sl)

VTT TECHNICAL RESEARCH CENTRE OF FINLAND

14.2.2006

What is an ontology?


Webster:


Main Entry: on∙tol∙o∙gy


Pronunciation: än
-
'tä
-
l&
-
jE


Function:
noun


Etymology: New Latin
ontologia
, from
ont
-

+
-
logia

-
logy


Date: circa 1721

1

: a branch of metaphysics concerned with the nature and relations of
being

2

: a particular theory about the nature of being or the kinds of existents



http://www.m
-
w.com/home.htm

VTT TECHNICAL RESEARCH CENTRE OF FINLAND

14.2.2006

What is an ontology?


Tom Gruber:


Short answer: An ontology is a specification of a conceptualization.


[…] an ontology is a description (like a formal specification of a
program) of the concepts and relationships that can exist for an agent
or a community of agents.



http://www
-
ksl.stanford.edu/kst/what
-
is
-
an
-
ontology.html

VTT TECHNICAL RESEARCH CENTRE OF FINLAND

14.2.2006

What is an ontology?


Nicola Guarino:


[…] in AI, an ontology refers to an engineering artifact, constituted by
a specific vocabulary used to describe a certain reality, plus a set of
explicit assumptions regarding the intended meaning of the
vocabulary words.



http://citeseer.nj.nec.com/guarino98formal.html

VTT TECHNICAL RESEARCH CENTRE OF FINLAND

14.2.2006

Ontologies vs. data models


No strict line in between, but ontologies are


more general


more reusable


intended for multiple purposes, goals, and users


more easily shareable


take stand on semantics of concepts (as opposed to mere structure
and integrity)

VTT TECHNICAL RESEARCH CENTRE OF FINLAND

14.2.2006

What is a concept?


Concepts (among other things)


are in general language
-
independent (words 'cat' and 'kissa' denote
the same concept)


are mental or logical representations of reality


are related to other concepts


do not need symbols but hold them for means of communication


A concept has


intension

or meaning


extension
, i.e., the set of objects that the concept refers to


On the difference between intension and extension, consider phrases
"Evening star" and "Morning star" that have different meanings (intension)
yet both refer to planet Venus (extension)


Ontology is mainly concerned with intension

VTT TECHNICAL RESEARCH CENTRE OF FINLAND

14.2.2006

"Semiotic Triangle" (or one version of it)

Sign or term

Intension

Extension

'Cat'

VTT TECHNICAL RESEARCH CENTRE OF FINLAND

14.2.2006

"Semiotic Triangle" (contd.)

Sign or term

Intension

Extension

'Frank'

VTT TECHNICAL RESEARCH CENTRE OF FINLAND

14.2.2006

"Semiotic Triangle" (contd.)

Sign or term

Intension

Extension

'Frank is a cat'

VTT TECHNICAL RESEARCH CENTRE OF FINLAND

14.2.2006

A simple example ontology

Boat

Car

Vehicle

subClassOf

VTT TECHNICAL RESEARCH CENTRE OF FINLAND

14.2.2006

Almost as simple

Car

Vehicle

subClassOf

Wheel

hasPart

VTT TECHNICAL RESEARCH CENTRE OF FINLAND

14.2.2006

Gets a bit tricky...

Car

Vehicle

subClassOf

Wheel

Property

Class

type

type

type

type

type

hasPart

VTT TECHNICAL RESEARCH CENTRE OF FINLAND

14.2.2006

… relations multiply easily

Car

Vehicle

subClassOf

Wheel

Property

Class

type

type

type

type

type

Thing

subClassOf

hasPart

VTT TECHNICAL RESEARCH CENTRE OF FINLAND

14.2.2006

… and that was just a toy example!!



(we will continue this example in the hands
-
on exercise)

VTT TECHNICAL RESEARCH CENTRE OF FINLAND

14.2.2006

Some characteristics of ontology


Concepts


abstract or concrete, elementary or composite, real or fictitious


can have attributes (properties)


Taxonomy (typically at least subclass
-
relation)


Other relations


connected to, on top of, owns, precedes, …


unary vs. binary vs. n
-
ary relations


Axioms (sentences that are always true)


axioms typically built using logic (first or higher order)


Instances, Individuals, Facts, Claims


extension


Production rules and inference mechanisms

VTT TECHNICAL RESEARCH CENTRE OF FINLAND

14.2.2006

Size and scope of an ontology


Two extremes (the reality something in between):


One huge ontology that captures "everything"


One (small) ontology for each specific application

O

A

A

A

A

A

A

A

A

A

A

A

A

A

A

O

O

O

O

O

O

O

A

O

VTT TECHNICAL RESEARCH CENTRE OF FINLAND

14.2.2006

"One large ontology" approach


Benefits


few or no internal inconsistencies


for an application developer easier to find


uniform documentation


less overlapping work!


Drawbacks


who maintains it?


who is responsible?


heavy and slow to use (both for human user and for application)


difficult to take into account everybody's opinions and wishes at
design time and when updating


Example: Cyc

VTT TECHNICAL RESEARCH CENTRE OF FINLAND

14.2.2006

"Several small ontologies" approach


Benefits


ontologies fit well the application demands


faster to use


easier to form complete picture of an ontology (fewer concepts and
interrelations)


Drawbacks


different ontologies do not fit together without either


central coordination body or


ontology alignment software


coincidence


overlapping work
-

same concepts defined in multiple ontologies,
either in the same way or (even worse!) differently

M

VTT TECHNICAL RESEARCH CENTRE OF FINLAND

14.2.2006

Some mixed / other approaches

O

A

A

A

A

A

O

O

O

O

O

upper

ontology

A

A

A

A

A

O

O

O

O

O

O

O

O

domains

O

A

A

A

A

A

A

A

O

M

O

mediating

software

A

A

A

A

A

A

A

none

VTT TECHNICAL RESEARCH CENTRE OF FINLAND

14.2.2006

Which of the approaches to use with agent systems (in the long run)?


Agent
-
systems are typically distributed systems


agent
-
systems consisting of but one agent are rare and often not useful




agents typically need to communicate with each other




agents should understand each other


People often design and implement agents independently, unaware of
the other developers


agents' understanding each other is (partly) based on ontologies


O

A

A

A

A

A

A

A

O

M

O

O

A

A

A

A

A

O

O

O

O

O

VTT TECHNICAL RESEARCH CENTRE OF FINLAND

14.2.2006

Ontology management


Individuals and instances change over time, whereas ontologies are
intended to be relatively stable and static


but…




ontology
management

is needed


Issues on interdependencies


upper ontology


domain ontologies


domain ontology


domain ontology


ontology


applications


Approaches for cross
-
usage of concepts defined in multiple ontologies


integration

(take existing ontologies and build a new one)


merge

(unify existing ontologies)


alignment software

(“runtime” approach)

M

VTT TECHNICAL RESEARCH CENTRE OF FINLAND

14.2.2006

Ontology management (contd.)


Ontology
versioning

is an important aspect


Five ways for an ontology to change

1.
Changes in the conceptual hierarchy (logical changes)

2.
Changes in the documentation of the concepts (non
-
logical changes)

3.
Renaming concepts (identifier changes)

4.
Defining new concepts

5.
Deleting concepts



Prospective

usage: using data sources that conform with
the previous version of the ontology via the new version



Retrospective

usage: using data sources that conform with
the new version of the ontology via the previous version


A
0

O
0

O
1

A
1

A
0

O
0

O
1

A
1

VTT TECHNICAL RESEARCH CENTRE OF FINLAND

14.2.2006

Ontology management (contd.)


Compatibility types

1.
Complete compatible revisions


the semantics of the ontology is not changed, for example,
syntactic

changes
or updates of natural language descriptions; this type of change is compatible
in both prospective and retrospective use

2.
Backward compatible revisions


the semantics of the ontology are changed in such a way that the interpretation
of data via the new ontology is the same as when using the previous version of
the ontology, for example, the addition of an independent class; this type of
change is compatible in
prospective use

3.
Upward compatible revisions


the semantics of the ontology is changed is such a way that an older version
can be used to interpret newer data sources correctly, for example, the removal
of an independent class; this revision is compatible in
retrospective use

4.
Incompatible revisions


the semantics of the ontology is changed in such a way that the interpretation
of old data sources is invalid, for example, changing the place in the hierarchy
of a class; this type of change is incompatible in both prospective use and
retrospective use

A
0

O
0

O
1

A
1

A
0

O
0

O
1

A
1

VTT TECHNICAL RESEARCH CENTRE OF FINLAND

14.2.2006

The case of Semantic Web


Gathers a lot of attention at the moment


ontology as a buzzword


"Next generation of the Web", "intelligent Web", "autonomous Web", …


Core idea: "The Semantic Web is not a separate Web but an extension of
the current one, in which information is given well
-
defined meaning, better
enabling computers and people to work in cooperation."


From Berners
-
Lee et al., 2001.




Semantic Web vs. WWW as it is at the moment (emphasis on layout and
structure of (HTML etc.) pages)


Machine
-
understandable content of Semantic Web is defined in ontologies


Relationship and relevance to this course: machine
-
processing of Semantic
Web content likely to happen via agents (or something alike)


Sign of the times: ISWC, the International Semantic Web Conference,
gathered around 500 participants in 2005 (reportedly more than the 2005
WWW conference)

Gartner,

2005

VTT TECHNICAL RESEARCH CENTRE OF FINLAND

14.2.2006

The "layer cake" of Semantic Web

Reprinted from a presentation by Tim Berners
-
Lee in XML2000 Conference,

URL: http://www.w3.org/2000/Talks/1206
-
xml2k
-
tbl/

VTT TECHNICAL RESEARCH CENTRE OF FINLAND

14.2.2006

Technologies of Semantic Web


RDF (Resource Description Framework)


Triples: Subject, Predicate, Object


RDFS (RDF Schema)


Vocabulary definitions for RDF (cf. DTD and XML Schema for XML)


subClassOf, type, domain, range, ...


DAML (DARPA Agent Markup Language)


OIL (Ontology Inference Layer or Ontology Interchange Language)


OWL (Web Ontology Language)


DAML, OIL


DAML+OIL


OWL

US

Europe

W3C

VTT TECHNICAL RESEARCH CENTRE OF FINLAND

14.2.2006

OWL


OWL builds on the work of DAML+OIL


DAML+OIL an extension of RDF Schema


W3C Recommendation since 10.2.2004


Inconsistencies with RDF(S) and DAML+OIL


problems with the layered
approach presented earlier


three versions of OWL:


OWL Full


Union of OWL and RDF(S)


OWL DL (Description Logics)


Restricted to DL/FOL fragment (


DAML+OIL)


OWL Lite


Subset of OWL DL


VTT TECHNICAL RESEARCH CENTRE OF FINLAND

14.2.2006

OWL
-
S


OWL Services is a language for describing Web Services


Acronyms often mentioned as Web Services technologies:


WSDL, Web Services Description Language


SOAP, Simple Object Access Protocol


UDDI, Universal Description, Discovery and Integration


However, these technologies are insufficient for describing the semantics
of Web Services in a machine
-
understandable manner (what the services
do and how they do it)




enter
OWL
-
S


Builds on OWL, current version 1.1 (November 2004)


(draft version 1.2 also online)


http://www.daml.org/services/owl
-
s/


Cf. agent communication: inputs, outputs, preconditions, and effects


Possible to map OWL
-
S to WSDL


Ankolekar et al. (2002)

VTT TECHNICAL RESEARCH CENTRE OF FINLAND

14.2.2006

Ontology Querying in the Semantic Web


SQL
-
like languages for retrieving parts of information defined in ontologies


Many languages to choose from, e.g.:


RQL, RDF Query Language (ICS
-
FORTH)


SeRQL, Sesame RDF Query Language (OpenRDF)


TRIPLE (DFKI & DERI)


SPARQL


W3C Working Draft 23 since November 2005


RDQL, RDF Data Query Language (Hewlett Packard)


W3C Member Submission since 9 January 2004


RDFQL (Intellidimension)


SquishQL, RSQL, etc.


Agents utilizing external ontologies serialized with Semantic Web technologies
can use these query languages

VTT TECHNICAL RESEARCH CENTRE OF FINLAND

14.2.2006

Some other ontology representation languages


"Traditional" ontology representation languages (
not

Web
-
based)


Ontolingua (based on KIF)


OKBC, Open Knowledge Base Connectivity


OCML, Operational Conceptual Modeling Language


LOOM


FLogic, Frame Logic


Web
-
based ontology representation languages


XOL, XML
-
Based Ontology Exchange Language


SHOE, Simple HTML Ontology Extension


VTT TECHNICAL RESEARCH CENTRE OF FINLAND

14.2.2006

Some ontology representation languages compared

+

+

+

+

+

+

+

+

+

+

+/
-

+

+

+/
-

-

+

+

+

+

+/
-

+

+

+/
-

-

-

-

+

+

+

+

+

-

-

-

-

-

+

+

+

+

+

+

+

+

-

+

+/
-

+

+

+

-

-

-

+

-

-

+

+

-

-

-

-

+/
-

Concepts

Relations

Functions

Procedures

Instances

Axioms

Production

rules

Ontol

OKBC

OCML

LOOM

FLogic

XOL

SHOE

RDF(S)

OIL

"traditional"

Web
-
based

VTT TECHNICAL RESEARCH CENTRE OF FINLAND

14.2.2006

Summary of ontology representation language comparison


For
interchanging

ontologies on and over the Web, Web
-
based languages
are a better solution


For
representing

or
modeling

ontologies, "traditional" languages are a
better solution as far as the expressiveness is concerned


However, XML based languages function well for taxonomies with a
relatively simple structure


For performing
reasoning
, "traditional" languages are a better choice



Source: Gorcho and Gómez
-
Pérez (2000)


Note: some languages
have developed since they wrote the article
(e.g. OIL


DAML+OIL


OWL)

VTT TECHNICAL RESEARCH CENTRE OF FINLAND

14.2.2006

The case of Cyc


Cycorp: "It's just common sense"


In CycL over 1 000 000 hand
-
entered assertions (or "rules") designed to
capture a large portion of what we normally consider consensus
knowledge about the world ("river flows downhill" etc.)


Sometimes so called microtheories are however necessary


difference with domain ontologies?




Nevertheless exemplifies the "One large ontology" approach!


Opencyc: an open source subset of Cyc


6 000 concepts: an upper ontology for all of human consensus reality.


60 000 assertions about the 6 000 concepts, interrelating them,
constraining them, in effect (partially) defining them.


Opencyc has OWL serialization


Note however that Cyc is not a Semantic Web phenomenon but
been under development since 1984


There also exists CycL
-
to
-
Lisp, CycL
-
to
-
C, etc. translators

VTT TECHNICAL RESEARCH CENTRE OF FINLAND

14.2.2006

Standard Upper Ontology (SUO)


IEEE: http://suo.ieee.org/


SUMO (Suggested Upper Merged Ontology)


http://ontology.teknowledge.com/


Serializations in KIF, OWL, LOOM


Web
-
based ontology browser:
http://virtual.cvut.cz:8080/ksmsaWeb/browser/title


SUO IFF (Information Flow Framework)


IFF provides the terminology, semantics and principled foundation for
a metalevel ontological framework


a framework for sharing
ontologies, manipulating ontologies as objects, relating ontologies
through morphisms, partitioning ontologies, composing ontologies via
colimits, discussing ontological structure, noting dependencies
between ontologies, declaring the use of other ontologies, etc

VTT TECHNICAL RESEARCH CENTRE OF FINLAND

14.2.2006

Some ontology tools


Protégé

(Ontology editor)


Lots of plugins: OKBC, RDF(S), OWL, UML, Prolog, Jess, OWL
-
S, etc.


http://protege.stanford.edu/, http://protege.stanford.edu/plugins/owl/


Jena


Java API for manipulating RDF, RDF(S), and OWL


http://www.hpl.hp.com/semweb/jena.htm, http://jena.sourceforge.net/


Pellet


Open
-
source Java
-
based OWL DL reasoner


http://www.mindswap.org/2003/pellet/


RDF Validator


For testing ontology code on RDF level: http://www.w3.org/RDF/Validator/


Ontolingua


collaborative environment to browse, create, edit, modify, and use
ontologies


http://www.ksl.stanford.edu/software/ontolingua/

VTT TECHNICAL RESEARCH CENTRE OF FINLAND

14.2.2006

The role of ontologies in agent communication


Used by agents when trying to make sense of each other


Case of FIPA: Ontology is denoted by one parameter in an ACL message
(along with other parameters: sender, receiver, content, reply
-
with, reply
-
by, in
-
reply
-
to, envelope, language, protocol, and conversation
-
id)


Example:








http://www.fipa.org/specs/fipa00061/


http://www.fipa.org/specs/fipa00037/

(cfp


:sender (agent
-
identifier :name j)


:receiver (set (agent
-
identifier :name i))


:content


"((action (agent
-
identifier :name i)


(sell plum 50))


(any ?x (and (= (price plum) ?x) (< ?x 10))))"


:
ontology

fruit
-
market


:language fipa
-
sl)

VTT TECHNICAL RESEARCH CENTRE OF FINLAND

14.2.2006

The role of ontologies in agent communication (contd.)


Ontology is referenced from within an ACL message and it determines the
semantics of the concepts used in the content language


However, ontologies themselves might
concern whatever topics


One interesting case would be to
"ontologize" agent communication


For example interaction protocols
(Conversation layer) might be
described in an ontology external to
the agents


The agents could download the interaction protocol descriptions and
modify their behavior accordingly


Ontology of actions or tasks vs. ontology of facts


Know
-
how vs. know
-
that

VTT TECHNICAL RESEARCH CENTRE OF FINLAND

14.2.2006

The role of ontologies in agent communication (contd.)

VTT TECHNICAL RESEARCH CENTRE OF FINLAND

14.2.2006

Further material

Articles, presentations and books


Thomas R. Gruber (1993): A Translation Approach to Portable Ontology
Specifications.
Knowledge Acquisition
, 5(2):199
-
220. http://ksl
-
web.stanford.edu/KSL_Abstracts/KSL
-
92
-
71.html


Thomas R. Gruber (1993):
Toward principles for the design of ontologies
used for knowledge sharing.

http://ksl
-
web.stanford.edu/KSL_Abstracts/KSL
-
93
-
04.html


Allen Newell (1982): The Knowledge Level.
Artificial Intelligence

18(1): 87
-
127.


Ankolekar et al. (2002): DAML
-
S: Web Service Description for the
Semantic Web.
Proceedings of the First International Semantic Web
Conference (ISWC2002)
. 348
-
363. Heidelberg, Germany: Springer
-
Verlag.
http://link.springer.de/link/service/series/0558/bibs/2342/23420348.htm

VTT TECHNICAL RESEARCH CENTRE OF FINLAND

14.2.2006

Further material
(contd.)

Articles, presentations and books (contd.)


Gottlob Frege (1892): Über Sinn und Bedeutung. In:
Zeitschrift für
Philosophie und philosophische Kritik

100: 25
-
50.


Meersman et al. (2002): Data modelling versus Ontology engineering. In
ACM SIGMOD Record
, December 2002.
http://www.acm.org/sigmod/record/issues/0212/SPECIAL/2.Meersman.pdf


John F. Sowa (2000):
Knowledge Representation
. Pacific Grove, CA:
Brooks/Cole.


Tim Berners
-
Lee, James Hendler, and Ora Lassila (2001): The Semantic
Web. In
Scientific American
, May 2001.
http://www.sciam.com/article.cfm?articleID=00048144
-
10D2
-
1C70
-
84A9809EC588EF21


Peter Haase et.al. (2004):
A comparison of RDF query languages. In
Proceedings of the Third International Semantic Web Conference
,
Hiroshima, Japan, 2004.
http://www.aifb.uni
-
karlsruhe.de/WBS/pha/rdf
-
query/rdfquery.pdf

VTT TECHNICAL RESEARCH CENTRE OF FINLAND

14.2.2006

Further material
(contd.)

Articles, presentations and books (contd.)


James Hendler (2001): Agents and the Semantic Web. In
IEEE Intelligent
Systems
, (16:2): 33
-
37.


Ian Horrocks (2002):
OWL Overview
, OntoWeb SIG2 meeting, Innsbruck,
Austria, December 17th 2002. PoverPoint slides:
http://www.cs.man.ac.uk/~horrocks/OntoWeb/SIG/OWL
-
overview.ppt


Oscar Gorcho and Asunción Gómez
-
Pérez (2000): Evaluating knowledge
representation and reasoning capabilities of ontology specification
languages. In
Proceedings of the ECAI 2000 Workshop on Applications of
Ontologies and Problem
-
Solving Methods
, Berlin, 2000.
http://delicias.dia.fi.upm.es/articulos/ocorcho/corchoetal_ecai00_ws.pdf


H. Sofia Pinto, A. Gómez
-
Pérez, J. P. Martins. Some Issues on Ontology
Integration. In
Proceedings of IJCAI99's Workshop on Ontologies and
Problem Solving Methods: Lessons Learned and Future Trends
, 1999.
http://citeseer.ist.psu.edu/pinto99some.html

VTT TECHNICAL RESEARCH CENTRE OF FINLAND

14.2.2006

Further material
(contd.)

Articles, presentations and books (contd.)


Nicola Guarino (1998): Formal Ontology and Information Systems. In
Formal Ontology in Information Systems. Proceedings of FOIS’98, Trento,
Italy, 6
-
8 June 1998
. Amsterdam, IOS Press, pp. 3
-
15.
http://citeseer.nj.nec.com/guarino98formal.html


Nicola Guarino, Christopher Welty, and Christopher Partridge (2000):
Towards Ontology
-
Based Harmonization of Web Content Standards. In
Proceedings of

Conceptual Modeling for E
-
Business and the Web, ER
2000 Workshops on Conceptual Modeling Approaches for E
-
Business and
The World Wide Web and Conceptual Modeling, Salt Lake City, Utah,
USA, October 9
-
12, 2000
. Springer LNCS 1921, pp. 1
-
6.
http://link.springer.de/link/service/series/0558/papers/1921/19210001.pdf


M. Klein and D. Fensel. Ontology Versioning on the Semantic Web. In
Proceedings of the International Semantic Web Working Symposium
(
SWWS), Stanford University, California, USA, July, 2001.
http://www.semanticweb.org/SWWS/program/full/paper56.pdf

VTT TECHNICAL RESEARCH CENTRE OF FINLAND

14.2.2006

Further material
(contd.)

Activities, initiatives, web sites, etc.


CYC: http://www.cyc.com/, http://www.opencyc.org


SUO: http://suo.ieee.org/


OntoWeb, KnowledgeWeb: http://www.ontoweb.org/,
http://knowledgeweb.semanticweb.org/


Semantic Web community portal: http://www.semanticweb.org/


W3C Semantic Web activity: http://www.w3.org/2001/sw/


OWL: http://www.w3.org/2001/sw/WebOnt/


The ISWC conferences: http://iswc200{2,3,4,5,6}.semanticweb.org/


Laboratory for Applied Ontology in the Institute of Cognitive Sciences and
Technology (ISTC) of Italian National Research Council:
http://www.loa
-
cnr.it/


VTT TECHNICAL RESEARCH CENTRE OF FINLAND

14.2.2006

Ontology design with Protégé OWL plugin

VTT TECHNICAL RESEARCH CENTRE OF FINLAND

14.2.2006

VTT TECHNICAL RESEARCH CENTRE OF FINLAND

14.2.2006

VTT TECHNICAL RESEARCH CENTRE OF FINLAND

14.2.2006

VTT TECHNICAL RESEARCH CENTRE OF FINLAND

14.2.2006

VTT TECHNICAL RESEARCH CENTRE OF FINLAND

14.2.2006

VTT TECHNICAL RESEARCH CENTRE OF FINLAND

14.2.2006

VTT TECHNICAL RESEARCH CENTRE OF FINLAND

14.2.2006