In Protégé 3... are Properties defined independently of any class?

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

In Protégé 3... are Properties defined independently of any class?

Paulo Urbano
If I read any book about OWL it is said that properties are DEFINED INDEPENDENTLY OF ANY CLASS, and that we should abandon the Object Oriented Programming (OOP) View in which a Class corresponds to an Object and a Property corresponds to a variable of the object Class.
In the semantic web world and in OWL this means that I should be able to assert that a certain individual I has a certain value V for property P, without asserting before that he belongs to class C, and thus we could instead infer its class based on the properties he is involved with, making use of semantics related to the properties' domains and ranges.

For example if I have this triple:

(Louis age  17)

and that if the class Person is the domain of the age property than I should infer that Louis is a Person. I should not be obliged to declared before asserting the triple that Louis is a Person.
 
BUT Protégé 3.4.3 does not allow that I can create an individual without declaring his class, or does it?


In the rdfs (and owl) semantics we know that:

IF
P  rdfs:domain  D.
and
x P y
THEN
x rdfs:type D


Regards
Paulo



 

_______________________________________________
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: In Protégé 3... are Properties defined independently of any class?

Thomas Russ

On Feb 27, 2010, at 7:50 AM, Paulo Urbano wrote:

> If I read any book about OWL it is said that properties are DEFINED  
> INDEPENDENTLY OF ANY CLASS, and that we should abandon the Object  
> Oriented Programming (OOP) View in which a Class corresponds to an  
> Object and a Property corresponds to a variable of the object Class.
> In the semantic web world and in OWL this means that I should be  
> able to assert that a certain individual I has a certain value V for  
> property P, without asserting before that he belongs to class C, and  
> thus we could instead infer its class based on the properties he is  
> involved with, making use of semantics related to the properties'  
> domains and ranges.
>
> For example if I have this triple:
>
> (Louis age  17)
>
> and that if the class Person is the domain of the age property than  
> I should infer that Louis is a Person. I should not be obliged to  
> declared before asserting the triple that Louis is a Person.
>
> BUT Protégé 3.4.3 does not allow that I can create an individual  
> without declaring his class, or does it?

You can create an individual of type Thing which gives you the same  
result, since everything is an instance of thing.


_______________________________________________
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: In Protégé 3... are Properties defined independently of any class?

Paulo Urbano
Ok I discovered the way to do it.

I am not able to create an individual belonging to owl:Thing — The
button (for new individuals) is inhibited.
So I can create a subClass of owl:Thing and superClasse of Person that I
call MyThing and I can create an individual: Louis
But in order to assert that Louis has age 17, the slot age does not
appear on Louis slots because the domain of property age is Person, not
MyThing.
I have to assert a triple using the "switch to triples" button. And then
I can infer that Louis is a Person (the domain of age property). Great!

So I can assert that a certain individual is the subject of a certain
property without having to declare before that the individual belongs to
the domain of that property!!!
And I can infer the class of that individual (it is just the domain
classes of the properties he is involved in).


BUT I cannot do the same if I want to use the range.


Let's imagine that the property fatherOf has domain and range Person.
And I would like to say that (Michael hasFather Louis) with Michael (a
Person) but without having to declare Louis a Person (range of hasFather).
I cannot do it with Protégé, or I could not do it even making use of the
"switch to triples" button.

Is there any way?
Paulo



But I did not manage to be able to say that

>
> On Feb 27, 2010, at 7:50 AM, Paulo Urbano wrote:
>
>> If I read any book about OWL it is said that properties are DEFINED
>> INDEPENDENTLY OF ANY CLASS, and that we should abandon the Object
>> Oriented Programming (OOP) View in which a Class corresponds to an
>> Object and a Property corresponds to a variable of the object Class.
>> In the semantic web world and in OWL this means that I should be able
>> to assert that a certain individual I has a certain value V for
>> property P, without asserting before that he belongs to class C, and
>> thus we could instead infer its class based on the properties he is
>> involved with, making use of semantics related to the properties'
>> domains and ranges.
>>
>> For example if I have this triple:
>>
>> (Louis age 17)
>>
>> and that if the class Person is the domain of the age property than I
>> should infer that Louis is a Person. I should not be obliged to
>> declared before asserting the triple that Louis is a Person.
>>
>> BUT Protégé 3.4.3 does not allow that I can create an individual
>> without declaring his class, or does it?
>
> You can create an individual of type Thing which gives you the same
> result, since everything is an instance of thing.
>
>
> _______________________________________________
> 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: In Protégé 3... are Properties defined independently of any class?

Matthew Horridge
Hi Paulo,

Have you tried Protege 4?  It doesn't impose syntactic restrictions like Protege 3 does.  You won't get the nice Protege 3 forms, but you can enter relationships (property assertions) in a table/list like view.

Cheers,

Matthew


On 1 Mar 2010, at 19:49, Paulo Urbano wrote:

> Ok I discovered the way to do it.
>
> I am not able to create an individual belonging to owl:Thing — The button (for new individuals) is inhibited.
> So I can create a subClass of owl:Thing and superClasse of Person that I call MyThing and I can create an individual: Louis
> But in order to assert that Louis has age 17, the slot age does not appear on Louis slots because the domain of property age is Person, not MyThing.
> I have to assert a triple using the "switch to triples" button. And then I can infer that Louis is a Person (the domain of age property). Great!
>
> So I can assert that a certain individual is the subject of a certain property without having to declare before that the individual belongs to the domain of that property!!!
> And I can infer the class of that individual (it is just the domain classes of the properties he is involved in).
>
>
> BUT I cannot do the same if I want to use the range.
>
>
> Let's imagine that the property fatherOf has domain and range Person.
> And I would like to say that (Michael hasFather Louis) with Michael (a Person) but without having to declare Louis a Person (range of hasFather).
> I cannot do it with Protégé, or I could not do it even making use of the "switch to triples" button.
>
> Is there any way?
> Paulo
>
>
>
> But I did not manage to be able to say that
>>
>> On Feb 27, 2010, at 7:50 AM, Paulo Urbano wrote:
>>
>>> If I read any book about OWL it is said that properties are DEFINED INDEPENDENTLY OF ANY CLASS, and that we should abandon the Object Oriented Programming (OOP) View in which a Class corresponds to an Object and a Property corresponds to a variable of the object Class.
>>> In the semantic web world and in OWL this means that I should be able to assert that a certain individual I has a certain value V for property P, without asserting before that he belongs to class C, and thus we could instead infer its class based on the properties he is involved with, making use of semantics related to the properties' domains and ranges.
>>>
>>> For example if I have this triple:
>>>
>>> (Louis age 17)
>>>
>>> and that if the class Person is the domain of the age property than I should infer that Louis is a Person. I should not be obliged to declared before asserting the triple that Louis is a Person.
>>>
>>> BUT Protégé 3.4.3 does not allow that I can create an individual without declaring his class, or does it?
>>
>> You can create an individual of type Thing which gives you the same result, since everything is an instance of thing.
>>
>>
>> _______________________________________________
>> 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: In Protégé 3... are Properties defined independently of any class?

Paulo Urbano
OK I will see Protégé 4....

Regards
Paulo

Matthew Horridge wrote:

> Hi Paulo,
>
> Have you tried Protege 4?  It doesn't impose syntactic restrictions like Protege 3 does.  You won't get the nice Protege 3 forms, but you can enter relationships (property assertions) in a table/list like view.
>
> Cheers,
>
> Matthew
>
>
> On 1 Mar 2010, at 19:49, Paulo Urbano wrote:
>
>  
>> Ok I discovered the way to do it.
>>
>> I am not able to create an individual belonging to owl:Thing — The button (for new individuals) is inhibited.
>> So I can create a subClass of owl:Thing and superClasse of Person that I call MyThing and I can create an individual: Louis
>> But in order to assert that Louis has age 17, the slot age does not appear on Louis slots because the domain of property age is Person, not MyThing.
>> I have to assert a triple using the "switch to triples" button. And then I can infer that Louis is a Person (the domain of age property). Great!
>>
>> So I can assert that a certain individual is the subject of a certain property without having to declare before that the individual belongs to the domain of that property!!!
>> And I can infer the class of that individual (it is just the domain classes of the properties he is involved in).
>>
>>
>> BUT I cannot do the same if I want to use the range.
>>
>>
>> Let's imagine that the property fatherOf has domain and range Person.
>> And I would like to say that (Michael hasFather Louis) with Michael (a Person) but without having to declare Louis a Person (range of hasFather).
>> I cannot do it with Protégé, or I could not do it even making use of the "switch to triples" button.
>>
>> Is there any way?
>> Paulo
>>
>>
>>
>> But I did not manage to be able to say that
>>    
>>> On Feb 27, 2010, at 7:50 AM, Paulo Urbano wrote:
>>>
>>>      
>>>> If I read any book about OWL it is said that properties are DEFINED INDEPENDENTLY OF ANY CLASS, and that we should abandon the Object Oriented Programming (OOP) View in which a Class corresponds to an Object and a Property corresponds to a variable of the object Class.
>>>> In the semantic web world and in OWL this means that I should be able to assert that a certain individual I has a certain value V for property P, without asserting before that he belongs to class C, and thus we could instead infer its class based on the properties he is involved with, making use of semantics related to the properties' domains and ranges.
>>>>
>>>> For example if I have this triple:
>>>>
>>>> (Louis age 17)
>>>>
>>>> and that if the class Person is the domain of the age property than I should infer that Louis is a Person. I should not be obliged to declared before asserting the triple that Louis is a Person.
>>>>
>>>> BUT Protégé 3.4.3 does not allow that I can create an individual without declaring his class, or does it?
>>>>        
>>> You can create an individual of type Thing which gives you the same result, since everything is an instance of thing.
>>>
>>>
>>> _______________________________________________
>>> 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
>  

_______________________________________________
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