Class identifier slot spec'n for unique instances

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

Class identifier slot spec'n for unique instances

Füzi, Peter
Dear Colleauges,

a beginner's question (for Protégé Frames 3.5 modeling) : how should the modeler specify that a Class-slot is the identifier and it is to contain unique values for all the instances in that Class?
After a fair while of browsing through the wiki pages I could not find the explanation in concern.

Thank you in advence,
Peter

_______________________________________________
protege-user mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-user
Reply | Threaded
Open this post in threaded view
|

Re: Class identifier slot spec'n for unique instances

Jean-Louis JANIN
Hello,

To my knowledge, there is no way to specify that the value of a slot is unique. It has to be controlled manually when treating examples in your model and organised otherwise in the data system derived from the ontology. You can specify that a slot or a set of slots may be used as an identifier by stating that one value is obligatory.

Yours,

Jean-Louis Janin

Le 07/03/14 09:33, Füzi, Peter a écrit :
Dear Colleauges,

a beginner's question (for Protégé Frames 3.5 modeling) : how should the modeler specify that a Class-slot is the identifier and it is to contain unique values for all the instances in that Class?
After a fair while of browsing through the wiki pages I could not find the explanation in concern.

Thank you in advence,
Peter


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


_______________________________________________
protege-user mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-user
Reply | Threaded
Open this post in threaded view
|

Re: Class identifier slot spec'n for unique instances

Jonathan Carter-8
In reply to this post by Füzi, Peter
You can define PAL Constraints to specify that a slot value on a specific class should always be unique but these are only evaluated by Protege when those constraints are explicitly checked (e.g. through a tab other than Instances). What this means is that Protege will still let you violate the constraint when you edit your ontology.

The UniqueStringWidget is useful for string slots and I’ve used that a lot but again this just notifies you when a value for this slot in this class (and inheritance hierarchy if it’s an inherited slot) is no longer unique by turning the string red in the GUI. 

Interestingly, we thought that we wanted exactly the behaviour you describe, Peter, but it turned out that that would have been over-constrictive for our purposes and the UniqueStringWidget, which provides warnings, is actually much better.

In practice, what we found was that taking Jean-Louis approach of managing unique values, where we needed those, before we entered them into Protege worked best. As part of that, we created our own String-slot Widget which automatically builds strings from patterns derived from other slot values on a class helped a lot to create ‘fully qualified’ names for things that ensured uniqueness, and we took a similar approach in some of our own import / integration software that bulk-loads things into Protege. 

I think the open-source nature of Protege means that the tools to achieve what you want are there but it would probably require extending the :SLOT system class to add the additional meta data about unique values and then maybe a new Slot Widget to perform the checking of the unique value constraint as the user tries to enter a value into the slot.

Jonathan


Date: Fri, 07 Mar 2014 09:58:02 +0100
From: Jean-Louis JANIN <[hidden email]>
To: [hidden email]
Subject: Re: [protege-user] Class identifier slot spec'n for unique
instances
Message-ID: <[hidden email]>
Content-Type: text/plain; charset="iso-8859-1"; Format="flowed"

Hello,

To my knowledge, there is no way to specify that the value of a slot is 
unique. It has to be controlled manually when treating examples in your 
model and organised otherwise in the data system derived from the 
ontology. You can specify that a slot or a set of slots may be used as 
an identifier by stating that one value is obligatory.

Yours,

Jean-Louis Janin

Le 07/03/14 09:33, F?zi, Peter a ?crit :
Dear Colleauges,

a beginner's question (for Prot?g? Frames 3.5 modeling) : how should 
the modeler specify that a Class-slot is the identifier and it is to 
contain unique values for all the instances in that Class?
After a fair while of browsing through the wiki pages 
<http://protegewiki.stanford.edu/wiki/PrF_UG_classes> I could not find 
the explanation in concern.

Thank you in advence,
Peter


Jonathan Carter

+44 (0)7904 198295






_______________________________________________
protege-user mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-user
Reply | Threaded
Open this post in threaded view
|

Re: Class identifier slot spec'n for unique instances

Füzi, Peter
Hi Jean-Louis,

thanks for the help. My direction is originated in some example ontologies, delivered in the Protege install material.

Afa I remember one sample ontology managed unique instances at a couple of classes. According to my memories, already during early typing the ontology indicated that the frontside part of the string already entered repeats the one in some other instance's identical slot. And ultimately it blocked data entry while the string was a duplicate instance ...

From end-user point of view I guess such applications ought to cope with managing unique keys in some extent. If an ontology is developed in shared way by more users, the knowledge base can soon turn into embarrassing conditions, if such application level controls would not be implemented. 

(A word about my background: mid January I received a real-life challenge, worth to implement in Protege. After some initial Protege study of mine I started to build up a model for the challenge. I tried to apply the simplest structures I found at the previous learning stage, still I realized soon, that checking uniqueness was somehow lost from my model. Facing this situation I reviewed a nice part of the User Guide, but in wain. The reading was too complex for me. This is the road at the end I turned to you with the question.)

Thank you for your kind support.
Peter Fuzi



Hello,

To my knowledge, there is no way to specify that the value of a slot is 
unique. It has to be controlled manually when treating examples in your 
model and organised otherwise in the data system derived from the 
ontology. You can specify that a slot or a set of slots may be used as 
an identifier by stating that one value is obligatory.

Yours,

Jean-Louis Janin

Le 07/03/14 09:33, F?zi, Peter a ?crit :
Dear Colleauges,

a beginner's question (for Prot?g? Frames 3.5 modeling) : how should 
the modeler specify that a Class-slot is the identifier and it is to 
contain unique values for all the instances in that Class?
After a fair while of browsing through the wiki pages 
<http://protegewiki.stanford.edu/wiki/PrF_UG_classes> I could not find 
the explanation in concern.

Thank you in advence,
Peter


Jonathan Carter

+44 (0)7904 198295






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


_______________________________________________
protege-user mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-user
Reply | Threaded
Open this post in threaded view
|

Re: Class identifier slot spec'n for unique instances

Tania Tudorache
In reply to this post by Jean-Louis JANIN
Indeed, you cannot enforce uniqueness of slot values in Protege frames. You can set the cardinality to required (i.e, cardinality one), but you cannot enforce uniqueness.

If you use the name generated for an instance/class (the value of the :NAME slot), they are guaranteed to be unique wrt the ontology.

You may implement your own slot widget that checks the uniqueness of values for a slot. The implementation is straightforward:
http://protege.stanford.edu/doc/pdk/plugins/slot_widget.html

Let me know if you need help with the slot widget.

Tania

On 03/07/2014 12:58 AM, Jean-Louis JANIN wrote:
Hello,

To my knowledge, there is no way to specify that the value of a slot is unique. It has to be controlled manually when treating examples in your model and organised otherwise in the data system derived from the ontology. You can specify that a slot or a set of slots may be used as an identifier by stating that one value is obligatory.

Yours,

Jean-Louis Janin

Le 07/03/14 09:33, Füzi, Peter a écrit :
Dear Colleauges,

a beginner's question (for Protégé Frames 3.5 modeling) : how should the modeler specify that a Class-slot is the identifier and it is to contain unique values for all the instances in that Class?
After a fair while of browsing through the wiki pages I could not find the explanation in concern.

Thank you in advence,
Peter


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



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


_______________________________________________
protege-user mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-user
Reply | Threaded
Open this post in threaded view
|

Re: Class identifier slot spec'n for unique instances

Csongor Nyulas
Administrator
In reply to this post by Füzi, Peter
Hi Peter,

As Tania already mentioned, and others hinted at it, the uniqueness of the :NAME slot is automatically enforced by Protege. That's what you see highlighted in red when you specify a name for a class, instance or slot that has been already used.
Protege DOES NOT provide an automatic way to ensure the uniqueness of other slots. However, you can write your own slot widget that provides you this functionality, as Tania suggested, or you can use other existing widgets and plugins, as suggested by Jonathan, which, although would not enforce uniquness, would help you keep your ontology "consistent".

Csongor

On 03/07/2014 06:00 AM, Füzi, Peter wrote:
Hi Jean-Louis,

thanks for the help. My direction is originated in some example ontologies, delivered in the Protege install material.

Afa I remember one sample ontology managed unique instances at a couple of classes. According to my memories, already during early typing the ontology indicated that the frontside part of the string already entered repeats the one in some other instance's identical slot. And ultimately it blocked data entry while the string was a duplicate instance ...

From end-user point of view I guess such applications ought to cope with managing unique keys in some extent. If an ontology is developed in shared way by more users, the knowledge base can soon turn into embarrassing conditions, if such application level controls would not be implemented. 

(A word about my background: mid January I received a real-life challenge, worth to implement in Protege. After some initial Protege study of mine I started to build up a model for the challenge. I tried to apply the simplest structures I found at the previous learning stage, still I realized soon, that checking uniqueness was somehow lost from my model. Facing this situation I reviewed a nice part of the User Guide, but in wain. The reading was too complex for me. This is the road at the end I turned to you with the question.)

Thank you for your kind support.
Peter Fuzi



Hello,

To my knowledge, there is no way to specify that the value of a slot is 
unique. It has to be controlled manually when treating examples in your 
model and organised otherwise in the data system derived from the 
ontology. You can specify that a slot or a set of slots may be used as 
an identifier by stating that one value is obligatory.

Yours,

Jean-Louis Janin

Le 07/03/14 09:33, F?zi, Peter a ?crit :
Dear Colleauges,

a beginner's question (for Prot?g? Frames 3.5 modeling) : how should 
the modeler specify that a Class-slot is the identifier and it is to 
contain unique values for all the instances in that Class?
After a fair while of browsing through the wiki pages 
<http://protegewiki.stanford.edu/wiki/PrF_UG_classes> I could not find 
the explanation in concern.

Thank you in advence,
Peter


Jonathan Carter

+44 (0)7904 198295






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



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


_______________________________________________
protege-user mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-user
Reply | Threaded
Open this post in threaded view
|

Re: Class identifier slot spec'n for unique instances

samsontu
In reply to this post by Tania Tudorache
Protege frame uses an “InstanceNameWidget” slot widget to enforce uniqueness in the class/instance names. That widget doesn’t appear to be available for other slots. Perhaps you can find the implementation of the widget in the Protege source code and emulate how it is done in your widget.

Samson

On Mar 7, 2014, at 9:57 AM, Tania Tudorache <[hidden email]> wrote:

Indeed, you cannot enforce uniqueness of slot values in Protege frames. You can set the cardinality to required (i.e, cardinality one), but you cannot enforce uniqueness.

If you use the name generated for an instance/class (the value of the :NAME slot), they are guaranteed to be unique wrt the ontology.

You may implement your own slot widget that checks the uniqueness of values for a slot. The implementation is straightforward:
http://protege.stanford.edu/doc/pdk/plugins/slot_widget.html

Let me know if you need help with the slot widget.

Tania

On 03/07/2014 12:58 AM, Jean-Louis JANIN wrote:
Hello,

To my knowledge, there is no way to specify that the value of a slot is unique. It has to be controlled manually when treating examples in your model and organised otherwise in the data system derived from the ontology. You can specify that a slot or a set of slots may be used as an identifier by stating that one value is obligatory.

Yours,

Jean-Louis Janin

Le 07/03/14 09:33, Füzi, Peter a écrit :
Dear Colleauges,

a beginner's question (for Protégé Frames 3.5 modeling) : how should the modeler specify that a Class-slot is the identifier and it is to contain unique values for all the instances in that Class? 
After a fair while of browsing through the wiki pages I could not find the explanation in concern. 

Thank you in advence,
Peter


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



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

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


_______________________________________________
protege-user mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-user
Reply | Threaded
Open this post in threaded view
|

Re: Class identifier slot spec'n for unique instances

Füzi, Peter
Dear All, answering my issue -
Jonathan, Tania, Csongor and Samson,

Your guidance is highly appreciated. I can understand my misbelief :). Behaviour of :NAME slot and most likely my oldstyle sw developer background tricked me slightly. Upon the experience with the sample ontologies I expected it would be a simple "copy-paste" act to implement the uniqueness check on my own slots. Well, this is definitely not the case, I've got it :)

Your explanations are perfect, having them I can better identify the boundaries of Protege and the bondaries of a junior modeler / knowledge capturer, me :). Via interpreting your hints on one hand I can soon refine my model complying with the Protege limits that you highlighted to me; on the other hand they contain promising new points in my attention that are worth for study.

Thanks for your fast and inspiring return!
Special thanks for the expression of your supportiveness in tutoring me ahead as soon as I'd need it.
Peter Füzi



Feladó: "Samson Tu" <[hidden email]>
Címzett: "User support for WebProtege and Protege Desktop" <[hidden email]>
Elküldött üzenetek: Péntek, 2014 Március 7 19:18:35
Tárgy: Re: [protege-user] Class identifier slot spec'n for unique instances

Protege frame uses an “InstanceNameWidget” slot widget to enforce uniqueness in the class/instance names. That widget doesn’t appear to be available for other slots. Perhaps you can find the implementation of the widget in the Protege source code and emulate how it is done in your widget.

Samson

On Mar 7, 2014, at 9:57 AM, Tania Tudorache <[hidden email]> wrote:

Indeed, you cannot enforce uniqueness of slot values in Protege frames. You can set the cardinality to required (i.e, cardinality one), but you cannot enforce uniqueness.

If you use the name generated for an instance/class (the value of the :NAME slot), they are guaranteed to be unique wrt the ontology.

You may implement your own slot widget that checks the uniqueness of values for a slot. The implementation is straightforward:
http://protege.stanford.edu/doc/pdk/plugins/slot_widget.html

Let me know if you need help with the slot widget.

Tania

On 03/07/2014 12:58 AM, Jean-Louis JANIN wrote:
Hello,

To my knowledge, there is no way to specify that the value of a slot is unique. It has to be controlled manually when treating examples in your model and organised otherwise in the data system derived from the ontology. You can specify that a slot or a set of slots may be used as an identifier by stating that one value is obligatory.

Yours,

Jean-Louis Janin

Le 07/03/14 09:33, Füzi, Peter a écrit :
Dear Colleauges,

a beginner's question (for Protégé Frames 3.5 modeling) : how should the modeler specify that a Class-slot is the identifier and it is to contain unique values for all the instances in that Class? 
After a fair while of browsing through the wiki pages I could not find the explanation in concern. 

Thank you in advence,
Peter


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



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

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


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


_______________________________________________
protege-user mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-user
Reply | Threaded
Open this post in threaded view
|

Re: Class identifier slot spec'n for unique instances

Füzi, Peter
In reply to this post by Jonathan Carter-8
Hello Jonathan,

Thank you for your kind guidance.
Reflections of mine, pls. find below.

Regards,
Peter Füzi


"You can define PAL Constraints to specify that a slot value on a specific class should always be unique but these are only evaluated by Protege when those constraints are explicitly checked (e.g. through a tab other than Instances). What this means is that Protege will still let you violate the constraint when you edit your ontology." 
   
 I went into investigating PAL Constraints for a while. I was succeed in finding the TAB, and the wiki page too (http://protegewiki.stanford.edu/wiki/Protege_Axiom_Language_%28PAL%29_Tabs#Detailed_Description. Unfortunately, the detailed documents, Quick Reference Guide and Comprehensive Guide referred on this page were not found on the links. You can help me ahead with a reference to reading in concern if they are available.)  Btw this was my first ever conscious attempt to learn a plugin feature (it illustrated the stage of  the student's learning curve), so far I used only the basic services of Protege Frames.

Your proactive hint helps me a lot, I can better see the use of  the feature in advance - thank you.

--------------
"The UniqueStringWidget is useful for string slots and I’ve used that a lot but again this just notifies you when a value for this slot in this class (and inheritance hierarchy if it’s an inherited slot) is no longer unique by turning the string red in the GUI."

Thank you for this point too. I was succeed in finding it in the Selected Widget Type of Forms Editor. Yes, I can understand its use and agree with you. Even such a feedback (signalling a non-unique string instance within the Class) is excellent to synchronize the knowledge capture effort. To highlight the real-world background of my practice ontology, it contains a Class for human individuals, sportman in a competing community. The number of the set is at least a couple of hundreds. Their representation is a challenge, so the captured information should eliminate the possible range of confusions. Theoretically this is a simple case; but in practice shocking extent of time will be spent for sorting out weaknesses of the data gathered, if there were no proper policies for identification and even more if the capture is managed by a team of field experts.

The model contains some other, non-human Classes, but with analogue significance. Well, this (and my former RDBMS data modeling) background pushed me toward looking a proper technical control for uniqueness check.

"Interestingly, we thought that we wanted exactly the behaviour you describe, Peter, but it turned out that that would have been over-constrictive for our purposes and the UniqueStringWidget, which provides warnings, is actually much better. ... In practice, what we found was that taking Jean-Louis approach of managing unique values, where we needed those, before we entered them into Protege worked best."
 
Thank you for sharing this experience. It is a ray to me, that some new developer carefulness is needed in this field; ontology management should be regarded slightly (?) different way than that of traditional application development and RDBMS modeling within. So far the new feature that I can understand from ontology management, is the balanced effort of parallel or spiral knowledge structuring and data capture. Continuous improvement ... that can never be regarded as depart from the mastering organization, -roles and -practice.

I guess, your highlights help me a nice lot later, when I return using your modeling tools.
With appreciation, P.

_______________________________________________
protege-user mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-user
Reply | Threaded
Open this post in threaded view
|

Re: Class identifier slot spec'n for unique instances

Füzi, Peter
In reply to this post by Tania Tudorache
Dear Tania,

thank you for the feedback and for guiding to the solution approach possible.

I reviewed the link. It is exciting, however it is a feature that should be deferred by me at this stage of my learning. My aim now is that I'd like to setup the most simple ontology for my case, meanwhile I can learn the most relevant basics of Protege.

I do remember this gate what you showed and later I return.
Thanks so much,
Peter Füzi





Feladó: "Tania Tudorache" <[hidden email]>
Címzett: "User support for WebProtege and Protege Desktop" <[hidden email]>
Elküldött üzenetek: Péntek, 2014 Március 7 18:57:45
Tárgy: Re: [protege-user] Class identifier slot spec'n for unique instances

Indeed, you cannot enforce uniqueness of slot values in Protege frames. You can set the cardinality to required (i.e, cardinality one), but you cannot enforce uniqueness.

If you use the name generated for an instance/class (the value of the :NAME slot), they are guaranteed to be unique wrt the ontology.

You may implement your own slot widget that checks the uniqueness of values for a slot. The implementation is straightforward:
http://protege.stanford.edu/doc/pdk/plugins/slot_widget.html

Let me know if you need help with the slot widget.

Tania

On 03/07/2014 12:58 AM, Jean-Louis JANIN wrote:
Hello,

To my knowledge, there is no way to specify that the value of a slot is unique. It has to be controlled manually when treating examples in your model and organised otherwise in the data system derived from the ontology. You can specify that a slot or a set of slots may be used as an identifier by stating that one value is obligatory.

Yours,

Jean-Louis Janin

Le 07/03/14 09:33, Füzi, Peter a écrit :
Dear Colleauges,

a beginner's question (for Protégé Frames 3.5 modeling) : how should the modeler specify that a Class-slot is the identifier and it is to contain unique values for all the instances in that Class?
After a fair while of browsing through the wiki pages I could not find the explanation in concern.

Thank you in advence,
Peter


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



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


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


_______________________________________________
protege-user mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-user
Reply | Threaded
Open this post in threaded view
|

Re: Class identifier slot spec'n for unique instances

Füzi, Peter
In reply to this post by Csongor Nyulas
Hi Csongor,

thank you too, for the confirmation.
I follow your hints and implement my ontology without a strict uniqueness check.

Peter




Feladó: "Csongor Nyulas" <[hidden email]>
Címzett: [hidden email]
Elküldött üzenetek: Péntek, 2014 Március 7 19:16:59
Tárgy: Re: [protege-user] Class identifier slot spec'n for unique instances

Hi Peter,

As Tania already mentioned, and others hinted at it, the uniqueness of the :NAME slot is automatically enforced by Protege. That's what you see highlighted in red when you specify a name for a class, instance or slot that has been already used.
Protege DOES NOT provide an automatic way to ensure the uniqueness of other slots. However, you can write your own slot widget that provides you this functionality, as Tania suggested, or you can use other existing widgets and plugins, as suggested by Jonathan, which, although would not enforce uniquness, would help you keep your ontology "consistent".

Csongor

On 03/07/2014 06:00 AM, Füzi, Peter wrote:
Hi Jean-Louis,

thanks for the help. My direction is originated in some example ontologies, delivered in the Protege install material.

Afa I remember one sample ontology managed unique instances at a couple of classes. According to my memories, already during early typing the ontology indicated that the frontside part of the string already entered repeats the one in some other instance's identical slot. And ultimately it blocked data entry while the string was a duplicate instance ...

From end-user point of view I guess such applications ought to cope with managing unique keys in some extent. If an ontology is developed in shared way by more users, the knowledge base can soon turn into embarrassing conditions, if such application level controls would not be implemented. 

(A word about my background: mid January I received a real-life challenge, worth to implement in Protege. After some initial Protege study of mine I started to build up a model for the challenge. I tried to apply the simplest structures I found at the previous learning stage, still I realized soon, that checking uniqueness was somehow lost from my model. Facing this situation I reviewed a nice part of the User Guide, but in wain. The reading was too complex for me. This is the road at the end I turned to you with the question.)

Thank you for your kind support.
Peter Fuzi



Hello,

To my knowledge, there is no way to specify that the value of a slot is 
unique. It has to be controlled manually when treating examples in your 
model and organised otherwise in the data system derived from the 
ontology. You can specify that a slot or a set of slots may be used as 
an identifier by stating that one value is obligatory.

Yours,

Jean-Louis Janin

Le 07/03/14 09:33, F?zi, Peter a ?crit :
Dear Colleauges,

a beginner's question (for Prot?g? Frames 3.5 modeling) : how should 
the modeler specify that a Class-slot is the identifier and it is to 
contain unique values for all the instances in that Class?
After a fair while of browsing through the wiki pages 
<http://protegewiki.stanford.edu/wiki/PrF_UG_classes> I could not find 
the explanation in concern.

Thank you in advence,
Peter


Jonathan Carter

+44 (0)7904 198295






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



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


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


_______________________________________________
protege-user mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-user
Reply | Threaded
Open this post in threaded view
|

Re: Class identifier slot spec'n for unique instances

Füzi, Peter
In reply to this post by samsontu
Thanks Samson. Upon your hints I get an aquaintance with this widget.

However it comes likely at a later stage of my study, when I want to drill down deeper in the system.

In any way thank you for sharing the idea!




Feladó: "Samson Tu" <[hidden email]>
Címzett: "User support for WebProtege and Protege Desktop" <[hidden email]>
Elküldött üzenetek: Péntek, 2014 Március 7 19:18:35
Tárgy: Re: [protege-user] Class identifier slot spec'n for unique instances

Protege frame uses an “InstanceNameWidget” slot widget to enforce uniqueness in the class/instance names. That widget doesn’t appear to be available for other slots. Perhaps you can find the implementation of the widget in the Protege source code and emulate how it is done in your widget.

Samson

On Mar 7, 2014, at 9:57 AM, Tania Tudorache <[hidden email]> wrote:

Indeed, you cannot enforce uniqueness of slot values in Protege frames. You can set the cardinality to required (i.e, cardinality one), but you cannot enforce uniqueness.

If you use the name generated for an instance/class (the value of the :NAME slot), they are guaranteed to be unique wrt the ontology.

You may implement your own slot widget that checks the uniqueness of values for a slot. The implementation is straightforward:
http://protege.stanford.edu/doc/pdk/plugins/slot_widget.html

Let me know if you need help with the slot widget.

Tania

On 03/07/2014 12:58 AM, Jean-Louis JANIN wrote:
Hello,

To my knowledge, there is no way to specify that the value of a slot is unique. It has to be controlled manually when treating examples in your model and organised otherwise in the data system derived from the ontology. You can specify that a slot or a set of slots may be used as an identifier by stating that one value is obligatory.

Yours,

Jean-Louis Janin

Le 07/03/14 09:33, Füzi, Peter a écrit :
Dear Colleauges,

a beginner's question (for Protégé Frames 3.5 modeling) : how should the modeler specify that a Class-slot is the identifier and it is to contain unique values for all the instances in that Class? 
After a fair while of browsing through the wiki pages I could not find the explanation in concern. 

Thank you in advence,
Peter


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



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

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


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


_______________________________________________
protege-user mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-user
Reply | Threaded
Open this post in threaded view
|

Re: Class identifier slot spec'n for unique instances

Jean-Louis JANIN
In reply to this post by Tania Tudorache
Dear Tania,

Thank you for your answer. I am not interested in such an implementation. It implies some sort of development that I prefer to avoid now as I am not familiar with Java encoding and not looking for that kind of checking.

I have been using Protégé Frames for several years (now 3.4.8 version) to set up a model of a multilingual water lexicon to be implemented  through the contribution in French and in English of scientists, engineers and journalists employed in that domain in a private or a public institution. This work takes place within a PhD thesis prepared at Bordeaux Montaigne University in the linguistics department, after a Master essay on the same subject presented last June and a previous career as a state engineer hydraulics and agriculture oriented in France and abroad (résumés attached). The corpus oriented contributions should be organized at that stage and for the coming years within a workshop set up by the french Académie de l'Eau in Paris and I should be in charge of its organization, including the procurement of useful middleware to the partners (wiki, automatic language treatment, etc.) .

The main innovations of the project are to distinguish three discursive strata before implementing entries in the lexicon and to model the whole thing within a unique ontology, now edited with Protégé Frames. 

I am wondering whether transferring my project to Protégé Owl would be a good idea, in order to simulate on the web, with identified partners of the Académie, a collaborative implementation of the lexicon (entries, definitions, chunks, quotations, corpus ...) and possibly (?) of the conceptual knowledge basis of the domain, already implemented with administrative data ?

I am afraid it would be too much work for me at the start without a real benefit on the collaborative aspect because of the small potential number of scientists and engineers within the water industry and services trained for that type of collaborative work. To illustrate the work under way, I enclose a small part of the ontology recently updated to treat examples of the implementation of quotations from the French dictionary Le Grand Robert. I enclose also a corresponding conceptual graph prepared for a forthcoming meeting on the subject. You will find also a note in French on the pilot project with some illustrations of the implementation process.

Do you know of any training on Protégé Owl taking place in Europe, preferably in French, and of any French or English speaking member of the Protégé Frames or Owl User list that I should contact on that issue ?

Yours sincerely

Jean-Louis Janin
211 rue Turenne
33000 Bordeaux
Tél. : 00 33 (0)5 56 52 84 81
Port. 06 32 58 10 29


Le 07/03/14 18:57, Tania Tudorache a écrit :
Indeed, you cannot enforce uniqueness of slot values in Protege frames. You can set the cardinality to required (i.e, cardinality one), but you cannot enforce uniqueness.

If you use the name generated for an instance/class (the value of the :NAME slot), they are guaranteed to be unique wrt the ontology.

You may implement your own slot widget that checks the uniqueness of values for a slot. The implementation is straightforward:
http://protege.stanford.edu/doc/pdk/plugins/slot_widget.html

Let me know if you need help with the slot widget.

Tania

On 03/07/2014 12:58 AM, Jean-Louis JANIN wrote:
Hello,

To my knowledge, there is no way to specify that the value of a slot is unique. It has to be controlled manually when treating examples in your model and organised otherwise in the data system derived from the ontology. You can specify that a slot or a set of slots may be used as an identifier by stating that one value is obligatory.

Yours,

Jean-Louis Janin

Le 07/03/14 09:33, Füzi, Peter a écrit :
Dear Colleauges,

a beginner's question (for Protégé Frames 3.5 modeling) : how should the modeler specify that a Class-slot is the identifier and it is to contain unique values for all the instances in that Class?
After a fair while of browsing through the wiki pages I could not find the explanation in concern.

Thank you in advence,
Peter


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



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



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


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

=?UTF-8?B?RGXMgWNsYXJhdGlvbiBkZSBsYSB0aGXMgHNlIGVuIHByZcyBcGFyYXRpb24gKGFu?= =?UTF-8?B?Z2xhaXMpLnBkZg==?= (93K) Download Attachment
=?UTF-8?B?RGXMgWNsYXJhdGlvbiBkZSBsYSB0aGXMgHNlIGVuIHByZcyBcGFyYXRpb24gKGZy?= =?UTF-8?B?YW5jzKdhaXMpLnBkZg==?= (92K) Download Attachment
Lexique_1.pins (31K) Download Attachment
Lexique_1.pont (22K) Download Attachment
Lexique_1.pprj (76K) Download Attachment
Le pouvoir des citations_1.png (196K) Download Attachment
Lexeau_pilote_1.pdf (659K) Download Attachment