aligning OWL-DL ontologies

classic Classic list List threaded Threaded
8 messages Options
Reply | Threaded
Open this post in threaded view
|

aligning OWL-DL ontologies

Jane Eisenstein-2
I tried to use the Protege 3.3 beta PromptTab to create a mapping  
between the classes and properties in two OWL-DL ontologies. The UI  
appeared to support this, but the resulting mappings-simple.pprj only  
contains mappings for the properties.

Is it possible to align OWL-DL ontologies using Prompt? If so, is it  
possible to translate the resulting mapping ontology into OWL?

If Prompt doesn't support aligning OWL classes, are there any OWL  
tools that can be used to  align/map instances of one ontology into  
instances of another ontology.

Jane Eisenstein

_______________________________________________
protege-owl mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-owl

Instructions for unsubscribing: http://protege.stanford.edu/doc/faq.html#01a.03 
Reply | Threaded
Open this post in threaded view
|

Re: aligning OWL-DL ontologies

Martin O'Connor

We have been using SWRL to do this type of mapping. It does typically  
require use of the non-safe built-in swrlx:createOWLThing from the  
SWRLX experimental built-in library [1], however.

To give you a flavour:

Say you want to map all instances of class A in ontology ont1 to  
instances of class B in ont2. You can do the mapping as follows:

ont1:A(?a) -> ont2:B(?a)

However, if you want to create a new individual in ont2, life gets  
interesting because SWRL does no allow convenient individual creation.  
This is where the createOWLThing built-in comes into play. Say, you  
want to create a new individual of class B with ont1:hasName property  
values from A placed in ont2:name property:

ont1:A(?a) ^ ont1:hasName(?a, ?name) ^ swrlx:createOWLThing(?b, ?a) ->  
ont2:B(?b) ^ ont2:name(?b, ?name)

Martin

[1] http://protege.cim3.net/cgi-bin/wiki.pl?SWRLExtensionsBuiltIns

> -------- Original Message --------
> Subject: [protege-owl] aligning OWL-DL ontologies
> Date: Wed, 4 Jul 2007 16:51:07 -0400
> From: Jane Eisenstein <[hidden email]>
>
> If Prompt doesn't support aligning OWL classes, are there any OWL
> tools that can be used to  align/map instances of one ontology into
> instances of another ontology.
>
> Jane Eisenstein
>
> _______________________________________________
> protege-owl mailing list
> [hidden email]
> https://mailman.stanford.edu/mailman/listinfo/protege-owl
>
> Instructions for unsubscribing:
> http://protege.stanford.edu/doc/faq.html#01a.03


_______________________________________________
protege-owl mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-owl

Instructions for unsubscribing: http://protege.stanford.edu/doc/faq.html#01a.03 
Reply | Threaded
Open this post in threaded view
|

Re: aligning OWL-DL ontologies

Jane Eisenstein-2
Mapping OWL using SWRL is an interesting idea. There are several  
types of mappings needed (concept to concept, property to property,  
concept to property, etc). Creating SWRL rules and built ins for each  
would be necessary. This could be quite time consuming for mapping  
between any two ontologies. However, I can see that using SWRL would  
eliminate the need to find a way to specify special logic for  
particular mapping situations.

The only publicly available ontology mapping support I found was in  
Prompt and OntoMap (part of OntoStudio). Unfortunately, Prompt  
doesn't (appear) to support mapping OWL ontologies and OntoMap adds  
the mappings to the source ontology, which it stores in its own format.

I preferred Prompt's approach of creating a separate mapping ontology  
and using mapping facility (which I couldn't locate) to perform the  
mapping. Is it out of the question to extend Prompt to work with OWL  
ontologies or is it just a matter of finding time/resources?

In the meantime, I'll probably write my own configuration driven  
mapping facility as I've done before.

Jane

On Jul 9, 2007, at 5:11 AM, Martin O'Connor wrote:

>
> We have been using SWRL to do this type of mapping. It does typically
> require use of the non-safe built-in swrlx:createOWLThing from the
> SWRLX experimental built-in library [1], however.
>
> To give you a flavour:
>
> Say you want to map all instances of class A in ontology ont1 to
> instances of class B in ont2. You can do the mapping as follows:
>
> ont1:A(?a) -> ont2:B(?a)
>
> However, if you want to create a new individual in ont2, life gets
> interesting because SWRL does no allow convenient individual creation.
> This is where the createOWLThing built-in comes into play. Say, you
> want to create a new individual of class B with ont1:hasName property
> values from A placed in ont2:name property:
>
> ont1:A(?a) ^ ont1:hasName(?a, ?name) ^ swrlx:createOWLThing(?b, ?a) ->
> ont2:B(?b) ^ ont2:name(?b, ?name)
>
> Martin
>
> [1] http://protege.cim3.net/cgi-bin/wiki.pl?SWRLExtensionsBuiltIns
>
>> -------- Original Message --------
>> Subject: [protege-owl] aligning OWL-DL ontologies
>> Date: Wed, 4 Jul 2007 16:51:07 -0400
>> From: Jane Eisenstein <[hidden email]>
>>
>> If Prompt doesn't support aligning OWL classes, are there any OWL
>> tools that can be used to  align/map instances of one ontology into
>> instances of another ontology.
>>
>> Jane Eisenstein
>>
>> _______________________________________________
>> protege-owl mailing list
>> [hidden email]
>> https://mailman.stanford.edu/mailman/listinfo/protege-owl
>>
>> Instructions for unsubscribing:
>> http://protege.stanford.edu/doc/faq.html#01a.03
>
>
> _______________________________________________
> protege-owl mailing list
> [hidden email]
> https://mailman.stanford.edu/mailman/listinfo/protege-owl
>
> Instructions for unsubscribing: http://protege.stanford.edu/doc/ 
> faq.html#01a.03
>

_______________________________________________
protege-owl mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-owl

Instructions for unsubscribing: http://protege.stanford.edu/doc/faq.html#01a.03 
Reply | Threaded
Open this post in threaded view
|

Re: aligning OWL-DL ontologies

Matthew Horridge
Hi Martin, Jane,

I can't see why you would need SWRL to do this ....... please correct  
me if I'm wrong ......

>> We have been using SWRL to do this type of mapping. It does typically
>> require use of the non-safe built-in swrlx:createOWLThing from the
>> SWRLX experimental built-in library [1], however.
>>
>> To give you a flavour:
>>
>> Say you want to map all instances of class A in ontology ont1 to
>> instances of class B in ont2. You can do the mapping as follows:
>>
>> ont1:A(?a) -> ont2:B(?a)

Doesn't this just say that if a is an instance of A then it is also  
an instance of B?  In other words, you could represent this with a  
vanilla subclass axiom in OWL i.e. A subClassOf B - no extensions  
necessary and you get complete inference results as well.

Cheers,

Matthew

_______________________________________________
protege-owl mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-owl

Instructions for unsubscribing: http://protege.stanford.edu/doc/faq.html#01a.03 
Reply | Threaded
Open this post in threaded view
|

Re: aligning OWL-DL ontologies

Matthew Horridge
(Forwarded to the list on behalf of Martin)


> This was a trivial example. A typical mapping rule will navigate to
> a set of nodes in a source ontology and also navigate to a node in
> the target ontology and map the source nodes to children of this
> node in the target ontology. These rules can get pretty elaborate.
>

Fair enough :)  Are there any SWRL examples like this on the Wiki?  I
think it would be great to have some more complex examples.

Cheers,

Matthew



> Martin
>
> Quoting Matthew Horridge <[hidden email]>:
>
>
>> Hi Martin, Jane,
>>
>> I can't see why you would need SWRL to do this ....... please correct
>> me if I'm wrong ......
>>
>>
>>>> We have been using SWRL to do this type of mapping. It does
>>>> typically
>>>> require use of the non-safe built-in swrlx:createOWLThing from the
>>>> SWRLX experimental built-in library [1], however.
>>>>
>>>> To give you a flavour:
>>>>
>>>> Say you want to map all instances of class A in ontology ont1 to
>>>> instances of class B in ont2. You can do the mapping as follows:
>>>>
>>>> ont1:A(?a) -> ont2:B(?a)
>>>>
>>
>> Doesn't this just say that if a is an instance of A then it is also
>> an instance of B?  In other words, you could represent this with a
>> vanilla subclass axiom in OWL i.e. A subClassOf B - no extensions
>> necessary and you get complete inference results as well.
>>
>> Cheers,
>>
>> Matthew
>>
>> _______________________________________________
>> protege-owl mailing list
>> [hidden email]
>> https://mailman.stanford.edu/mailman/listinfo/protege-owl
>>
>> Instructions for unsubscribing:  http://protege.stanford.edu/doc/
>> faq.html#01a.03
>>
>>
>
>
>

_______________________________________________
protege-owl mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-owl

Instructions for unsubscribing: http://protege.stanford.edu/doc/faq.html#01a.03 
Reply | Threaded
Open this post in threaded view
|

Re: aligning OWL-DL ontologies

Jane Eisenstein-2
In reply to this post by Matthew Horridge
Matthew,

Not all mappings are so simple. I am currently working with instances  
from a ontology that essentially consists of two classes: Container  
and ContainerItem. The items in a container may need to map into a  
hierarchy of instances from several different classes in the target  
ontology. In some cases, contextual information is known based on the  
particular container subclass that is not represented in its  
contained items. Handling such information requires special logic.

Matthew and Martin,

Thanks for pointing out that a lot of the mappings can be implemented  
via subclass axioms. I had been assuming a new instance in the target  
ontology would need to be created for each instance in the source  
ontology.

Jane

On Jul 10, 2007, at 5:23 AM, Matthew Horridge wrote:

> Hi Martin, Jane,
>
> I can't see why you would need SWRL to do this ....... please  
> correct me if I'm wrong ......
>
>>> We have been using SWRL to do this type of mapping. It does  
>>> typically
>>> require use of the non-safe built-in swrlx:createOWLThing from the
>>> SWRLX experimental built-in library [1], however.
>>>
>>> To give you a flavour:
>>>
>>> Say you want to map all instances of class A in ontology ont1 to
>>> instances of class B in ont2. You can do the mapping as follows:
>>>
>>> ont1:A(?a) -> ont2:B(?a)
>
> Doesn't this just say that if a is an instance of A then it is also  
> an instance of B?  In other words, you could represent this with a  
> vanilla subclass axiom in OWL i.e. A subClassOf B - no extensions  
> necessary and you get complete inference results as well.
>
> Cheers,
>
> Matthew
>
>

_______________________________________________
protege-owl mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-owl

Instructions for unsubscribing: http://protege.stanford.edu/doc/faq.html#01a.03 
Reply | Threaded
Open this post in threaded view
|

Re: aligning OWL-DL ontologies

Matthew Horridge

On 11 Jul 2007, at 12:31, Jane Eisenstein wrote:

> Matthew,
>
> Not all mappings are so simple. I am currently working with instances
> from a ontology that essentially consists of two classes: Container
> and ContainerItem. The items in a container may need to map into a
> hierarchy of instances from several different classes in the target
> ontology. In some cases, contextual information is known based on the
> particular container subclass that is not represented in its
> contained items. Handling such information requires special logic.
>
> Matthew and Martin,
>
> Thanks for pointing out that a lot of the mappings can be implemented
> via subclass axioms.

Just to add to this....

I've usually seen equivalent classes axioms used more than subclass  
axioms.

Cheers,

Matthew


> I had been assuming a new instance in the target
> ontology would need to be created for each instance in the source
> ontology.
>
> Jane
>
> On Jul 10, 2007, at 5:23 AM, Matthew Horridge wrote:
>
>> Hi Martin, Jane,
>>
>> I can't see why you would need SWRL to do this ....... please
>> correct me if I'm wrong ......
>>
>>>> We have been using SWRL to do this type of mapping. It does
>>>> typically
>>>> require use of the non-safe built-in swrlx:createOWLThing from the
>>>> SWRLX experimental built-in library [1], however.
>>>>
>>>> To give you a flavour:
>>>>
>>>> Say you want to map all instances of class A in ontology ont1 to
>>>> instances of class B in ont2. You can do the mapping as follows:
>>>>
>>>> ont1:A(?a) -> ont2:B(?a)
>>
>> Doesn't this just say that if a is an instance of A then it is also
>> an instance of B?  In other words, you could represent this with a
>> vanilla subclass axiom in OWL i.e. A subClassOf B - no extensions
>> necessary and you get complete inference results as well.
>>
>> Cheers,
>>
>> Matthew
>>
>>
>
> _______________________________________________
> protege-owl mailing list
> [hidden email]
> https://mailman.stanford.edu/mailman/listinfo/protege-owl
>
> Instructions for unsubscribing: http://protege.stanford.edu/doc/ 
> faq.html#01a.03

_______________________________________________
protege-owl mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-owl

Instructions for unsubscribing: http://protege.stanford.edu/doc/faq.html#01a.03 
Reply | Threaded
Open this post in threaded view
|

Re: aligning OWL-DL ontologies

JMiller

Matthew,

Can you give a simple example describing when (and why) it is better to use an equivalent class axiom than subclass?

Jim



Matthew Horridge <[hidden email]>
Sent by: [hidden email]

07/11/2007 07:29 AM

Please respond to
User support for the Protege-OWL editor        <[hidden email]>

To
[hidden email], User support for the Protege-OWL editor <[hidden email]>
cc
Subject
Re: [protege-owl] aligning OWL-DL ontologies






On 11 Jul 2007, at 12:31, Jane Eisenstein wrote:

> Matthew,
>
> Not all mappings are so simple. I am currently working with instances
> from a ontology that essentially consists of two classes: Container
> and ContainerItem. The items in a container may need to map into a
> hierarchy of instances from several different classes in the target
> ontology. In some cases, contextual information is known based on the
> particular container subclass that is not represented in its
> contained items. Handling such information requires special logic.
>
> Matthew and Martin,
>
> Thanks for pointing out that a lot of the mappings can be implemented
> via subclass axioms.

Just to add to this....

I've usually seen equivalent classes axioms used more than subclass  
axioms.

Cheers,

Matthew


> I had been assuming a new instance in the target
> ontology would need to be created for each instance in the source
> ontology.
>
> Jane
>
> On Jul 10, 2007, at 5:23 AM, Matthew Horridge wrote:
>
>> Hi Martin, Jane,
>>
>> I can't see why you would need SWRL to do this ....... please
>> correct me if I'm wrong ......
>>
>>>> We have been using SWRL to do this type of mapping. It does
>>>> typically
>>>> require use of the non-safe built-in swrlx:createOWLThing from the
>>>> SWRLX experimental built-in library [1], however.
>>>>
>>>> To give you a flavour:
>>>>
>>>> Say you want to map all instances of class A in ontology ont1 to
>>>> instances of class B in ont2. You can do the mapping as follows:
>>>>
>>>> ont1:A(?a) -> ont2:B(?a)
>>
>> Doesn't this just say that if a is an instance of A then it is also
>> an instance of B?  In other words, you could represent this with a
>> vanilla subclass axiom in OWL i.e. A subClassOf B - no extensions
>> necessary and you get complete inference results as well.
>>
>> Cheers,
>>
>> Matthew
>>
>>
>
> _______________________________________________
> protege-owl mailing list
> [hidden email]
> https://mailman.stanford.edu/mailman/listinfo/protege-owl
>
> Instructions for unsubscribing: http://protege.stanford.edu/doc/
> faq.html#01a.03

_______________________________________________
protege-owl mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-owl

Instructions for unsubscribing: http://protege.stanford.edu/doc/faq.html#01a.03


_______________________________________________
protege-owl mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-owl

Instructions for unsubscribing: http://protege.stanford.edu/doc/faq.html#01a.03