Problem with "circular" restriction

View: New views
10 Messages — Rating Filter:   Alert me  

Problem with "circular" restriction

by andrea.brundo :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Problem with "circular" restriction

Hello all,

I'm not a programmer (well, I used to be back in the late 90s… OO programming, of course) but I try to use Protege all the same… I am convinced it's not just for the programmer that it is useful :-)

So, I apologize for my questions… I promise I won't abuse your patience. Well, I'll try to… Please tell me in case I fail ;op

The problem:

I have a class, let's say "Document" whose instances may have an hasRecipient from class "Recipient". "Document" instances may also have a "hasPostman" from class "Postman". "Document", "Recipient" and "Postman" are mutually disjoint.

Both "Postman" and "Recipient" have subclasses, let's say - just as an example - "GoodLookingPostman" and "PoshRecipient".

"GoodLookingPostman" has the following necessary restriction: "isCompetentOf some PoshRecipient". Property "isCompetentOf", as obvious, is the inverse of property "hasCompetent".

Now, I create a "Document" instance with the Individuals tab. I have to red (mandatory) properties to link: hasRecipient and hasPostman.

I create a new recipient from class "PoshRecipient" (i.e., the specialised one)
I create a new postman from class "Postman" (i.e., the generic one)

And her we are to the point: I want to write a restriction, somewhere, so that the reasoner can infer that the "Postman" instance actually is a "GoodLookingPostman" - since it is necessary in order to satisfy the restriction.

Problem is, I always end up with a "circularity" issue like this:

hasRecipient some (hasCompetent some (isPostmanOf ???))

Where I should substitute ??? with somethign that says that we are talking of the very same instance from which we started, not a generic one.

Is there a way to do this? Any Idea?
I hope I was clear…

Thanks in advance,
Andrea Brundo


_______________________________________________
protege-owl mailing list
protege-owl@...
https://mailman.stanford.edu/mailman/listinfo/protege-owl

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

Re: Problem with "circular" restriction

by Thomas Russ :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

I didn't fully understand the model that you are trying to write, but  
I'll try to comment on it anyway.

On Jun 26, 2008, at 3:46 AM, <andrea.brundo@...> wrote:

> The problem:
>
> I have a class, let's say "Document" whose instances may have an  
> hasRecipient from class "Recipient". "Document" instances may also  
> have a "hasPostman" from class "Postman". "Document", "Recipient"  
> and "Postman" are mutually disjoint.
>
> Both "Postman" and "Recipient" have subclasses, let's say - just as  
> an example - "GoodLookingPostman" and "PoshRecipient".
>
> "GoodLookingPostman" has the following necessary restriction:  
> "isCompetentOf some PoshRecipient". Property "isCompetentOf", as  
> obvious, is the inverse of property "hasCompetent".
>
> Now, I create a "Document" instance with the Individuals tab. I have  
> to red (mandatory) properties to link: hasRecipient and hasPostman.
>
> I create a new recipient from class "PoshRecipient" (i.e., the  
> specialised one)
> I create a new postman from class "Postman" (i.e., the generic one)
>
> And her we are to the point: I want to write a restriction,  
> somewhere, so that the reasoner can infer that the "Postman"  
> instance actually is a "GoodLookingPostman" - since it is necessary  
> in order to satisfy the restriction.
>
First of all, if it is truly necessary to satisfy an existing  
restriction, the reasoner will already conclude it.

But let's assume you are asking about how to write such a  
restriction.  I'm assuming, based in part on what follows that the  
restriction you want to have is that

    a PoshRecipient has a GoodLookingPostman

> Problem is, I always end up with a "circularity" issue like this:
>
> hasRecipient some (hasCompetent some (isPostmanOf ???))
>
Perhaps it is sufficient to write:

   PoshRecipient: hasCompetent some GoodLookingPostman

Doe that adequately capture what you want to say?

> Where I should substitute ??? with somethign that says that we are  
> talking of the very same instance from which we started, not a  
> generic one.
>

It may also be possible to achieve what you want by appropriate  
naming.  Just create a named class for the restriction  
(isPostmanOf ???) and use that.  Again, that is not going to allow you  
to talk about the particular instance that you want.

> Is there a way to do this? Any Idea?
>
In general, in OWL 1.0 there is no way to write a constraint between  
the values of two properties.  In other words, you can't express the  
concept "Man whose boss is his brother", since that requires equating  
the fillers of two different properties.  For that you need a more  
expressive representation language than what OWL provides.

OWL 1.1/2.0 has a more limited form of this where you can combine  
(limited) property chains with a self-reflexive assertion.  But I  
haven't really done any work with OWL 1.1, so I can't comment  
effectively about how that would be used in this case.

The other alternative is to use a first-order logic representation  
language.  But then you don't get the OWL tools.

_______________________________________________
protege-owl mailing list
protege-owl@...
https://mailman.stanford.edu/mailman/listinfo/protege-owl

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

R: Problem with "circular" restriction

by andrea.brundo :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Thanks for your reply, Thomas.
Comments below

> -----Messaggio originale-----
> Da: protege-owl-bounces@...
> [mailto:protege-owl-bounces@...] Per conto di
> Thomas Russ
> Inviato: giovedì 26 giugno 2008 19.29
> A: User support for the Protege-OWL editor
> Oggetto: Re: [protege-owl] Problem with "circular" restriction
>
> I didn't fully understand the model that you are trying to
> write, but I'll try to comment on it anyway.
>
> On Jun 26, 2008, at 3:46 AM, <andrea.brundo@...> wrote:
> > The problem:
> >
> > I have a class, let's say "Document" whose instances may have an
> > hasRecipient from class "Recipient". "Document" instances may also
> > have a "hasPostman" from class "Postman". "Document", "Recipient"
> > and "Postman" are mutually disjoint.
> >
> > Both "Postman" and "Recipient" have subclasses, let's say -
> just as an
> > example - "GoodLookingPostman" and "PoshRecipient".
> >
> > "GoodLookingPostman" has the following necessary restriction:  
> > "isCompetentOf some PoshRecipient". Property "isCompetentOf", as
> > obvious, is the inverse of property "hasCompetent".
> >
> > Now, I create a "Document" instance with the Individuals
> tab. I have
> > to red (mandatory) properties to link: hasRecipient and hasPostman.
> >
> > I create a new recipient from class "PoshRecipient" (i.e., the
> > specialised one) I create a new postman from class "Postman" (i.e.,
> > the generic one)
> >
> > And her we are to the point: I want to write a restriction,
> somewhere,
> > so that the reasoner can infer that the "Postman"
> > instance actually is a "GoodLookingPostman" - since it is
> necessary in
> > order to satisfy the restriction.
> >
> First of all, if it is truly necessary to satisfy an existing
> restriction, the reasoner will already conclude it.
>
> But let's assume you are asking about how to write such a
> restriction.  

Yes, that's what I meant. Sorry if I wasn't clear.
 

> I'm assuming, based in part on what follows
> that the restriction you want to have is that
>
>     a PoshRecipient has a GoodLookingPostman
>
> > Problem is, I always end up with a "circularity" issue like this:
> >
> > hasRecipient some (hasCompetent some (isPostmanOf ???))
> >
> Perhaps it is sufficient to write:
>
>    PoshRecipient: hasCompetent some GoodLookingPostman
>
> Doe that adequately capture what you want to say?

This way, any instance of PoshRecipient would be requested to have such a relation. Which is an unwanted behaviour.

>
> > Where I should substitute ??? with somethign that says that we are
> > talking of the very same instance from which we started,
> not a generic
> > one.
> >
>
> It may also be possible to achieve what you want by
> appropriate naming.  Just create a named class for the
> restriction (isPostmanOf ???) and use that.  Again, that is
> not going to allow you to talk about the particular instance
> that you want.
>

Yep!

> > Is there a way to do this? Any Idea?
> >
> In general, in OWL 1.0 there is no way to write a constraint
> between the values of two properties.  In other words, you
> can't express the concept "Man whose boss is his brother",
> since that requires equating the fillers of two different
> properties.  For that you need a more expressive
> representation language than what OWL provides.
>
> OWL 1.1/2.0 has a more limited form of this where you can combine
> (limited) property chains with a self-reflexive assertion.  
> But I haven't really done any work with OWL 1.1, so I can't
> comment effectively about how that would be used in this case.

I guessed that... But, unfortunately, I'm even less proficient in OWL 1.1 / 2.0 then I am in OWL 1.0!

>
> The other alternative is to use a first-order logic
> representation language.  But then you don't get the OWL tools.
>

Stuck in the corner...

But, is there any other way I can enforce that "if a document recipient is a PoshRecipient, the Postman must be a GoodLookingPostman"? I can hardly believe there is no way to do it...

> _______________________________________________
> protege-owl mailing list
> protege-owl@...
> https://mailman.stanford.edu/mailman/listinfo/protege-owl
>
> Instructions for unsubscribing:
> http://protege.stanford.edu/doc/faq.html#01a.03 
>
_______________________________________________
protege-owl mailing list
protege-owl@...
https://mailman.stanford.edu/mailman/listinfo/protege-owl

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

Re: R: Problem with "circular" restriction

by Thomas Russ :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


On Jun 27, 2008, at 5:48 AM, <andrea.brundo@...> wrote:

>
> But, is there any other way I can enforce that "if a document  
> recipient is a PoshRecipient, the Postman must be a  
> GoodLookingPostman"? I can hardly believe there is no way to do it...

I can think of a general way to do this, but I'm not sure exactly how  
to express this in OWL.

What you would want to do is separate the sufficient conditions from  
the necessary ones.

So, you would define a new class with necessary restrictions:

   SpecialDocument =>  recipient some PoshRecipient ^
                       hasPostman some GoodLookingPostman

and then two separate sufficient conditions:

   recipient some PoshRecipient => SpecialDocument

   hasPostman some GoodLookingPostman => SpecialDocument

you want to have the two separate sufficient conditions so that you  
would only need one of them to conclude that SpecialDocument is true,  
and then have the necessary conditions give you the other part of the  
inference you seek.

This will handle the case at the document end, but it still won't  
create a direct connection between the recipient and the postman.  I'm  
pretty sure that such an inference is beyond what OWL is capable of  
inferring.



_______________________________________________
protege-owl mailing list
protege-owl@...
https://mailman.stanford.edu/mailman/listinfo/protege-owl

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

Re: R: Problem with "circular" restriction

by Nick Drummond :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

How about.

PoshRecipient -> receives only (Document and deliveredBy some GoodLookingPostman)

Nick

On Fri, Jun 27, 2008 at 8:22 PM, Thomas Russ <tar@...> wrote:

On Jun 27, 2008, at 5:48 AM, <andrea.brundo@...> wrote:

>
> But, is there any other way I can enforce that "if a document
> recipient is a PoshRecipient, the Postman must be a
> GoodLookingPostman"? I can hardly believe there is no way to do it...

I can think of a general way to do this, but I'm not sure exactly how
to express this in OWL.

What you would want to do is separate the sufficient conditions from
the necessary ones.

So, you would define a new class with necessary restrictions:

  SpecialDocument =>  recipient some PoshRecipient ^
                      hasPostman some GoodLookingPostman

and then two separate sufficient conditions:

  recipient some PoshRecipient => SpecialDocument

  hasPostman some GoodLookingPostman => SpecialDocument

you want to have the two separate sufficient conditions so that you
would only need one of them to conclude that SpecialDocument is true,
and then have the necessary conditions give you the other part of the
inference you seek.

This will handle the case at the document end, but it still won't
create a direct connection between the recipient and the postman.  I'm
pretty sure that such an inference is beyond what OWL is capable of
inferring.



_______________________________________________
protege-owl mailing list
protege-owl@...
https://mailman.stanford.edu/mailman/listinfo/protege-owl

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


_______________________________________________
protege-owl mailing list
protege-owl@...
https://mailman.stanford.edu/mailman/listinfo/protege-owl

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

R: R: Problem with "circular" restriction

by andrea.brundo :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Thomas, Nick,

Thanks for your support.

I tried to represent you an easier case for the sake of simplicity, but it looks like I obtained the opposite. I won't repeat that mistake.

The ontology I'm trying to develop is about document management. Amongst other issues, I want to manage incoming documents for different sets of users.

Such documents, along with other treatment, must be labeled according to the recipient.

As such, there is:

- a superclass (Document) for all documents, with children defining specific categories of documents

- a superclass (Recipient) for all the different sets of users (quite a taxonomy)

- a superclass (Label) for all the labels (this is a taxonomy, too. But not the same tree as the set of users)

- Subclasses of Recipient are mapped to subclasses of Label via the hasLabel/isLabelOf property.

One of the rules I'm trying to write is this: "Documents of types 1,2 and 3 must be labeled with the label related to the recipient". As you can see, it's not for all the document types, and the relationship which has to be used in order to infer the type of the label is a relationship between the recipient and the label.

Is there any way I can do this in Protege?

Thanks again!

Andrea



Da: protege-owl-bounces@... [mailto:protege-owl-bounces@...] Per conto di Nick Drummond
Inviato: lunedì 30 giugno 2008 12.38
A: User support for the Protege-OWL editor
Oggetto: Re: [protege-owl] R: Problem with "circular" restriction

How about.

PoshRecipient -> receives only (Document and deliveredBy some GoodLookingPostman)

Nick

On Fri, Jun 27, 2008 at 8:22 PM, Thomas Russ <tar@...> wrote:

On Jun 27, 2008, at 5:48 AM, <andrea.brundo@...> wrote:

>
> But, is there any other way I can enforce that "if a document
> recipient is a PoshRecipient, the Postman must be a
> GoodLookingPostman"? I can hardly believe there is no way to do it...

I can think of a general way to do this, but I'm not sure exactly how
to express this in OWL.

What you would want to do is separate the sufficient conditions from
the necessary ones.

So, you would define a new class with necessary restrictions:

  SpecialDocument =>  recipient some PoshRecipient ^
                      hasPostman some GoodLookingPostman

and then two separate sufficient conditions:

  recipient some PoshRecipient => SpecialDocument

  hasPostman some GoodLookingPostman => SpecialDocument

you want to have the two separate sufficient conditions so that you
would only need one of them to conclude that SpecialDocument is true,
and then have the necessary conditions give you the other part of the
inference you seek.

This will handle the case at the document end, but it still won't
create a direct connection between the recipient and the postman.  I'm
pretty sure that such an inference is beyond what OWL is capable of
inferring.



_______________________________________________
protege-owl mailing list
protege-owl@...
https://mailman.stanford.edu/mailman/listinfo/protege-owl

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


_______________________________________________
protege-owl mailing list
protege-owl@...
https://mailman.stanford.edu/mailman/listinfo/protege-owl

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

R: R: R: Problem with "circular" restriction

by andrea.brundo :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hello?
 
I understand my questions are somewhat not the cleariest ones, and I really appreciate both your effort and patience in answering at the former emails!
 
But... It's quite frustrating getting no answer :p
You can also answer "buzz off until you have made your mind clearer", if you feel to... ;oppp
 
Just joking, I understand it's not easy to manage such lists and my emails really require an extra effort to understand...
 
TIA, again
 
Andrea


Da: protege-owl-bounces@... [mailto:protege-owl-bounces@...] Per conto di andrea.brundo@...
Inviato: lunedì 30 giugno 2008 15.25
A: protege-owl@...
Oggetto: [protege-owl] R: R: Problem with "circular" restriction

Thomas, Nick,

Thanks for your support.

I tried to represent you an easier case for the sake of simplicity, but it looks like I obtained the opposite. I won't repeat that mistake.

The ontology I'm trying to develop is about document management. Amongst other issues, I want to manage incoming documents for different sets of users.

Such documents, along with other treatment, must be labeled according to the recipient.

As such, there is:

- a superclass (Document) for all documents, with children defining specific categories of documents

- a superclass (Recipient) for all the different sets of users (quite a taxonomy)

- a superclass (Label) for all the labels (this is a taxonomy, too. But not the same tree as the set of users)

- Subclasses of Recipient are mapped to subclasses of Label via the hasLabel/isLabelOf property.

One of the rules I'm trying to write is this: "Documents of types 1,2 and 3 must be labeled with the label related to the recipient". As you can see, it's not for all the document types, and the relationship which has to be used in order to infer the type of the label is a relationship between the recipient and the label.

Is there any way I can do this in Protege?

Thanks again!

Andrea



Da: protege-owl-bounces@... [mailto:protege-owl-bounces@...] Per conto di Nick Drummond
Inviato: lunedì 30 giugno 2008 12.38
A: User support for the Protege-OWL editor
Oggetto: Re: [protege-owl] R: Problem with "circular" restriction

How about.

PoshRecipient -> receives only (Document and deliveredBy some GoodLookingPostman)

Nick

On Fri, Jun 27, 2008 at 8:22 PM, Thomas Russ <tar@...> wrote:

On Jun 27, 2008, at 5:48 AM, <andrea.brundo@...> wrote:

>
> But, is there any other way I can enforce that "if a document
> recipient is a PoshRecipient, the Postman must be a
> GoodLookingPostman"? I can hardly believe there is no way to do it...

I can think of a general way to do this, but I'm not sure exactly how
to express this in OWL.

What you would want to do is separate the sufficient conditions from
the necessary ones.

So, you would define a new class with necessary restrictions:

  SpecialDocument =>  recipient some PoshRecipient ^
                      hasPostman some GoodLookingPostman

and then two separate sufficient conditions:

  recipient some PoshRecipient => SpecialDocument

  hasPostman some GoodLookingPostman => SpecialDocument

you want to have the two separate sufficient conditions so that you
would only need one of them to conclude that SpecialDocument is true,
and then have the necessary conditions give you the other part of the
inference you seek.

This will handle the case at the document end, but it still won't
create a direct connection between the recipient and the postman.  I'm
pretty sure that such an inference is beyond what OWL is capable of
inferring.



_______________________________________________
protege-owl mailing list
protege-owl@...
https://mailman.stanford.edu/mailman/listinfo/protege-owl

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


_______________________________________________
protege-owl mailing list
protege-owl@...
https://mailman.stanford.edu/mailman/listinfo/protege-owl

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

Re: R: R: Problem with "circular" restriction

by Nick Drummond :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Andrea,

I'm not sure I'm completely clear on your usecase, but it seems likely that you can represent this.

I would guess a superclass of the types of docs that must have a label related to recipients.
Or you can just create this without the named superclass:

(Document1 or Document2 or Document3) -> hasLabel some (relatedTo some Recipient)

"Doc types 1, 2 or 3 must have a label related to a recipient"

What you can't easily do in OWL is say the document has a recipient and this is the same as the label's recipient.

Nick


On Mon, Jun 30, 2008 at 2:24 PM, <andrea.brundo@...> wrote:

Thomas, Nick,

Thanks for your support.

I tried to represent you an easier case for the sake of simplicity, but it looks like I obtained the opposite. I won't repeat that mistake.

The ontology I'm trying to develop is about document management. Amongst other issues, I want to manage incoming documents for different sets of users.

Such documents, along with other treatment, must be labeled according to the recipient.

As such, there is:

- a superclass (Document) for all documents, with children defining specific categories of documents

- a superclass (Recipient) for all the different sets of users (quite a taxonomy)

- a superclass (Label) for all the labels (this is a taxonomy, too. But not the same tree as the set of users)

- Subclasses of Recipient are mapped to subclasses of Label via the hasLabel/isLabelOf property.

One of the rules I'm trying to write is this: "Documents of types 1,2 and 3 must be labeled with the label related to the recipient". As you can see, it's not for all the document types, and the relationship which has to be used in order to infer the type of the label is a relationship between the recipient and the label.

Is there any way I can do this in Protege?

Thanks again!

Andrea



Da: protege-owl-bounces@... [mailto:protege-owl-bounces@...] Per conto di Nick Drummond
Inviato: lunedì 30 giugno 2008 12.38
A: User support for the Protege-OWL editor
Oggetto: Re: [protege-owl] R: Problem with "circular" restriction

How about.

PoshRecipient -> receives only (Document and deliveredBy some GoodLookingPostman)

Nick

On Fri, Jun 27, 2008 at 8:22 PM, Thomas Russ <tar@...> wrote:

On Jun 27, 2008, at 5:48 AM, <andrea.brundo@...> wrote:

>
> But, is there any other way I can enforce that "if a document
> recipient is a PoshRecipient, the Postman must be a
> GoodLookingPostman"? I can hardly believe there is no way to do it...

I can think of a general way to do this, but I'm not sure exactly how
to express this in OWL.

What you would want to do is separate the sufficient conditions from
the necessary ones.

So, you would define a new class with necessary restrictions:

  SpecialDocument =>  recipient some PoshRecipient ^
                      hasPostman some GoodLookingPostman

and then two separate sufficient conditions:

  recipient some PoshRecipient => SpecialDocument

  hasPostman some GoodLookingPostman => SpecialDocument

you want to have the two separate sufficient conditions so that you
would only need one of them to conclude that SpecialDocument is true,
and then have the necessary conditions give you the other part of the
inference you seek.

This will handle the case at the document end, but it still won't
create a direct connection between the recipient and the postman.  I'm
pretty sure that such an inference is beyond what OWL is capable of
inferring.



_______________________________________________
protege-owl mailing list
protege-owl@...
https://mailman.stanford.edu/mailman/listinfo/protege-owl

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


_______________________________________________
protege-owl mailing list
protege-owl@...
https://mailman.stanford.edu/mailman/listinfo/protege-owl

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



_______________________________________________
protege-owl mailing list
protege-owl@...
https://mailman.stanford.edu/mailman/listinfo/protege-owl

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

R: R: R: Problem with "circular" restriction

by andrea.brundo :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Thanks, Nick :)
 
Comments below..


Da: protege-owl-bounces@... [mailto:protege-owl-bounces@...] Per conto di Nick Drummond
Inviato: lunedì 7 luglio 2008 14.24
A: User support for the Protege-OWL editor
Oggetto: Re: [protege-owl] R: R: Problem with "circular" restriction

Andrea,

I'm not sure I'm completely clear on your usecase ....
 
I developed this use case for a reasearch of mine, I'd like to investigate "uncommon" patterns where (this is my thesis) ontologies can help.
This case, it is intended to investigate some service-delivery business cases where items must be managed in outsourcing according to not-so-clear rules initially set by customers.
... , but it seems likely that you can represent this. 

I would guess a superclass of the types of docs that must have a label related to recipients.
Or you can just create this without the named superclass:

(Document1 or Document2 or Document3) -> hasLabel some (relatedTo some Recipient)

"Doc types 1, 2 or 3 must have a label related to a recipient"

What you can't easily do in OWL is say the document has a recipient and this is the same as the label's recipient.
 
... Which, unfortunately, seems to be my case. And, in fact, I am not easily doing it :-) i.e., I'm not doing it at all, since I've not found a way to do it - yet.
I hoped Protege-OWL would have been self-sufficient for me, but maybe it is not? Is that's the case, what plugin or else can be of help?
Scopes and functionalities of the various SWRL, Jess, Jena, etc are quite unclear to me...
 
Nick

_______________________________________________
protege-owl mailing list
protege-owl@...
https://mailman.stanford.edu/mailman/listinfo/protege-owl

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

Re: R: R: R: Problem with "circular" restriction

by Nick Drummond :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

I am no SWRL expert, but it allows variables and should allow you to hook the Doc recipient and the Label recipient together.

I'll leave it up to the SWRL crew to confirm this.

Nick

On Mon, Jul 7, 2008 at 1:59 PM, <andrea.brundo@...> wrote:
Thanks, Nick :)
 
Comments below..


Da: protege-owl-bounces@... [mailto:protege-owl-bounces@...] Per conto di Nick Drummond
Inviato: lunedì 7 luglio 2008 14.24

A: User support for the Protege-OWL editor
Oggetto: Re: [protege-owl] R: R: Problem with "circular" restriction

Andrea,

I'm not sure I'm completely clear on your usecase ....
 
I developed this use case for a reasearch of mine, I'd like to investigate "uncommon" patterns where (this is my thesis) ontologies can help.
This case, it is intended to investigate some service-delivery business cases where items must be managed in outsourcing according to not-so-clear rules initially set by customers.
... , but it seems likely that you can represent this. 

I would guess a superclass of the types of docs that must have a label related to recipients.
Or you can just create this without the named superclass:

(Document1 or Document2 or Document3) -> hasLabel some (relatedTo some Recipient)

"Doc types 1, 2 or 3 must have a label related to a recipient"

What you can't easily do in OWL is say the document has a recipient and this is the same as the label's recipient.
 
... Which, unfortunately, seems to be my case. And, in fact, I am not easily doing it :-) i.e., I'm not doing it at all, since I've not found a way to do it - yet.
I hoped Protege-OWL would have been self-sufficient for me, but maybe it is not? Is that's the case, what plugin or else can be of help?
Scopes and functionalities of the various SWRL, Jess, Jena, etc are quite unclear to me...
 
Nick

_______________________________________________
protege-owl mailing list
protege-owl@...
https://mailman.stanford.edu/mailman/listinfo/protege-owl

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



_______________________________________________
protege-owl mailing list
protege-owl@...
https://mailman.stanford.edu/mailman/listinfo/protege-owl

Instructions for unsubscribing: http://protege.stanford.edu/doc/faq.html#01a.03 
LightInTheBox - Buy quality products at wholesale price