The aim of this page is to demonstrate that Semantic Web technologies, including Ontologies can really provide useful services for users of Research Information especially:
i. Ontology-driven intelligent information retrieval
ii. Transparent access to data from heterogeneous systems
iii. Dealing with uncertain information
Ontology-driven intelligent information retrieval
The same information can be represented in information system in different ways, described from different point of view due to diversity of data sources, policy-restrictions, or even the position of the author / compiler. The views of the same information can be very different for different categories of information consumers. The ontology-driven information retrieval is intended to
solve problems of discrepancies between the viewpoints of information consumers and description of information in the system;
provide more powerful and sophisticated retrieval facilities, allowing to information consumers to utilize domain knowledge; make it possible for information consumers to investigate in which terms information is described in the system, what is the meaning of
those terms and if it is needed using this knowledge to create new more focused queries
describe why found information satisfies information consumers' requests (i.e. explanation)
The following example shows how ontological descriptions of the terms of an information system can be used to find out relations between those terms to create queries which satisfies user needs (completeness and relevance of returned information)
This ontology is an example ontology, not real one, some facts maybe wrong from political point of view or some types of ontology design. It is just a demonstration.
The demonstration is a database of European projects, programme, organizations. It stores information about objects - such as programmes, projects - each objects is described as belonging to some of the classes.
Base ontology
Classes in blue are defined classes. There are two types of classes - defined and primitive.
If it is said that the FundingOrganization is an organization, which finances some activities and it is also said that class FundingOrganization is primitive class then it means each FundingOrganization finances some activities, but if we know that X is an organization and X finances activities it is not enough to say that X is a FundingOrganization
But if it was said that FundingOrganization is a defined class then each object which is known as organization and which also is known to be financing some activities, it would become FundingOrganization in information system
Classes |
Definition |
Activity |
|
Programme |
|
EUProgramme |
Programme which is financed-by EU or by any EU-country |
ISTProgramme |
one of EU Programmes |
Location |
Any location can be a part-of another location |
City |
|
Continent |
|
Europe |
|
Country |
|
EuropeanCountry |
A country which is a part-of continent Europe |
EUCountry |
A country which is a part-of EU |
Union |
Geopolitical or economical union of countries |
EU |
One of unions, but which is a part of Europe |
Organization |
|
FundingOrganization |
This organization which finances some Activities or Projects |
EUFundingOrganization |
Any funding organization which is situated-in EUCountry |
EuropeanFundingOrganization |
Funding organization which is situated-in Europe |
Proiect |
|
FinancedProject |
Project which is-financed by some of FundingOganization |
EUFinancedProject |
Project which is financed-by EUFundingOrganization |
EuropeanFinancedProject |
Project which is financed-by EuropeanFundingOrganization |
ISTProject |
Project which is a part-of IST Programme |
Slots or Relations |
Properties |
A financed-by Y reverse relation finances When A is financed-by Y then Y finances A |
|
|
|
transitive relation. when X is a part of Y, and Y is a part of Z, then X is a part of Z |
|
Geographical inclusion. transitive relation |
|
Axioms |
Descriptions |
Project which is a part-of any of EUProgrammes is financed-by EU |
When it is known that a project is a part of EUProgramme then we are sure that this project is financed by one of EUFundingOrganizations |
Ontology was created in OilEd tool (click to enhance)
Here the OilEd source file, the DAML representation of ontology
Ontology was verified in the Description Logic classifier FaCT, which implements SHIQ Description Logics. OilEd provides a front end to the classifier.
After ontology verification and classifying its terms, the verifier asserted new statements about relations between classes
Some of them
Statement |
Proof |
ISTProject is an EUProject |
1. fact: ISTProject is a part of ISTProgramme, 2. fact: ISTProgramme is a EUProgramme 3. statement: ISTProject is a part of EUProgramme 4. 3 + Axiom -> ISTProject is financed by EU 5. 4 + definition of EUFinancedProject -> IST is an EUFinancedProject |
EUFinancedProject is an EuropeanFinancedPtroject |
1. EUFinancedProject is financed by FundingOrganization which situated in EU 2. EU is situated in Europe 3. 1 + 2 + transitiveness of situated-in EUFinancedProject is financed by organization which is situated in Europe 4. 3 + definition of EuropeanFinancedProject -> EUFinancedProject is an EuropeanFinancedProject |
Such reasoning performed by Description Logic can
1. increase knowledge of the data of users of the information system, helping them understand more precisely the data stored in the system and their own needs (user gets information that IST project is EU project, despite it was not directly asserted in the system - this can help a user in search of IST projects )
2. provide mechanism for implementing more correct query facility which utilizes new knowledge to find more complete answers on users' requests - eg. on request of IST projects, the databases of EU projects will also be searched
3. provide facility to describe results of answer to user - eg. why IST project was returned on EU projects request
FaCT http://www.cs.man.ac.uk/~horrocks/FaCT/ Description Logic classifier. Lisp and CORBA interface
OilEd http://img.cs.man.ac.uk/oil/ Ontology editor for DAML, OIL ontologies, which provide front-end interface to FaCT
Some of my advice in addition to tool's documentation:
If you would like to work with FaCT through LISP interface load KRIS-interface type in LISP console (load 'KRIS-interface.lisp) Of course, do not forget to point your full path to file
Queries
all subconcepts of given - (all-subs EUFinancedProjects), etc
If you need to debug "conversation" between front-end and classifier use "Server" console, menu logging -< on, then after verification of project menu KB - > tells. It is much better then to see just the Log
After running the classifier on the ontology in OilEd, new inferred subclass relations will be seen as usual in OilEd.
I acknowledge comments and suggestions from Prof. Keith Jeffery (UK)