In simple words, do we need:

inf.getResource(URI of FACup)  ?

I did not use it so far.

On Thu, Jan 12, 2017 at 5:57 PM, neha gupta <[email protected]> wrote:

> I want to ask Lorenz, about the Then part of the rule:
>
> THEN    -> team FavoriteLeague is FACup
>
> FACup is the resource in my owl (just followed Create Instance tab in
> Protege and Protege has give it the default URI like other resources in the
> file).
>
> Before we execute the rule, is it must that we should declare it in Java
> code like we do in Jena class before using it in Rules like
> OntClass team = model.getOntClass(ns + "Team")
>
> Because I am sure the problem lies in the resource FACup (or its URI).
>
> Regards
>
> On Thu, Jan 12, 2017 at 5:43 PM, Lorenz B. <[email protected]
> leipzig.de> wrote:
>
>> I don't understand your problem now, sorry. It's too confusing.
>>
>> You said that you changed the whole ontology: upload it somewhere such
>> that we can see it
>>
>> Show the final rule that doesn't work, not in pseudo-syntax but how you
>> use it in Jena.
>>
>> Upload the code somewhere
>>
>> > I am sorry for any inconvenience I have created. I really dont know how
>> to
>> > create minimal code snippet or uses Github.
>> >
>> > Coming to the problem, what I noticed is the problem is in the object
>> i-e
>> > FACup here.
>> > team1  FavoriteLeague  FACup
>> >
>> > Because I made changes and coming to the down, used different properties
>> > (in place of  FavoriteLeague), and made the rule simple to:
>> > If x is a Team, then x FavoriteLeague is FACup ,
>> > If x is a Team, then x Wins is FACup etc just for simplicity.
>> >
>> > In a nutshell, changed everything except object of rule FACup and it
>> > appears in Annotation area so the problem for sure is in the URI of
>> FACup.
>> >
>> > Now about resources FACup, PremierLeague, ChampionsLeague, these are not
>> > associated with anything in the ontology (neither Types of anything, nor
>> > data/object assertions), rather I just created it in Protege with URI
>> like
>> > other resources.
>> > URI of Team Class: http://www.semanticweb.org/soccer#Team
>> > URI of FavoriteCategory : http://www.semanticweb.org/soc
>> cer#FavoriteCategory
>> > and URI of FACup: http://www.semanticweb.org/soccer#FACup
>> >
>> > So I dont know if it is mandatory to get the value of resource
>> > http://www.semanticweb.org/soccer#FACup first before the rules executes
>> > because simple putting it in the rules not working for me.
>> >
>> > Sorry once again.
>> >
>> >
>> > On Thu, Jan 12, 2017 at 12:12 PM, Lorenz B. <
>> > [email protected]> wrote:
>> >
>> >> in your last answer you wrote
>> >>
>> >> *String ns="http://www.semanticweb.org/soccer
>> >> <http://www.semanticweb.org/soccer#FACupGoals>#";*
>> >>
>> >> if you provide us no information and the information that you provide
>> is
>> >> of such poor quality, then it's not possible to help you.
>> >>
>> >> Last time that I'll write this here:
>> >>
>> >> 1. provide the WHOLE ontology (there are many services only where you
>> >> can put your file online for free)
>> >> 2. show the minimal code snippet that makes it possible to see that it
>> >> doesn't work
>> >>
>> >> Or put everything into a Github project
>> >>
>> >>
>> >>> Hi Lorenz, the ns is wrong, how?
>> >>>
>> >>> String ns="http://www.semanticweb.org/soccer#
>> >>>
>> >>> Rule:
>> >>>
>> >>> (?x http://www.w3.org/1999/02/22-rdf-syntax-ns#type http://
>> >>> www.semanticweb.org/soccer#Team) "
>> >>>
>> >>>  + "( ?x http://www.semanticweb.org/soccer#FACupGoals  ?goals )" +
>> >>>
>> >>>         "greaterThan(?goals,30)
>> >>>          + " ->  (?x  http://www.semanticweb.org/soc
>> cer#FavioriteLeague
>> >>> http://www.semanticweb.org/soccer#FACup  )]
>> >>>
>> >>>
>> >>> On Thu, Jan 12, 2017 at 1:03 AM, Lorenz Buehmann <
>> >>> [email protected]> wrote:
>> >>>
>> >>>> On 11.01.2017 22:10, neha gupta wrote:
>> >>>>> Hello Lorenz, I am sure I have used the FavoriteLeague as Data
>> Property
>> >>>> in
>> >>>>> Protege and it has the same URI as other data properties and other
>> >>>>> resources in the ontology ie  http://www.semanticweb.org/soccer#
>> >>>>> <http://www.semanticweb.org/soccer#FACupGoals>FavoriteLeague.
>> >>>>>
>> >>>>> I have changed the spelling of FavoriteLeague. to FavoLeague,
>> >> favLeague,
>> >>>>> but every time the same disappointing result.
>> >>>>> My namespace is also same in whole program:
>> >>>>>
>> >>>>> *String ns="http://www.semanticweb.org/soccer
>> >>>>> <http://www.semanticweb.org/soccer#FACupGoals>#";*
>> >>>> Ehm that's a totally wrong namespace declaration. To be honest, I
>> don't
>> >>>> understand why you don't see this...and the namespace in the rule is
>> >>>> obviously NOT the same then
>> >>>>> favleague is declared as:
>> >>>>>
>> >>>>>  *OntProperty favleague=model.getOntProperty(ns+
>> "FavoriteLeague");*
>> >>>> Please tell me, what do you think is the concatenation of the String
>> in
>> >>>> the variable ns and the String "FavoriteLeague" ?
>> >>>>
>> >>>>
>> >>>>> //All my data properties are declared like this and it works.  For
>> ex:
>> >>>> Goal
>> >>>>> property
>> >>>>> OntProperty goals=model.getOntProperty(ns+ "Goals");
>> >>>>>
>> >>>>>
>> >>>>> On Wed, Jan 11, 2017 at 9:41 PM, Lorenz Buehmann <
>> >>>>> [email protected]> wrote:
>> >>>>>
>> >>>>>> Chris is right. It's beginning to become annoying if youalways
>> ignore
>> >>>>>> our advices to show data + the code - all the code. Even now you
>> >> omitted
>> >>>>>> information like
>> >>>>>>
>> >>>>>> * the declaration of the variable ns
>> >>>>>>
>> >>>>>> * the declaration of the variable favcat
>> >>>>>>
>> >>>>>>
>> >>>>>> And indeed the data. IF you have anywhere in the code and/or data a
>> >>>>>> typo, the rule not "fire", thus no data will be inferred. In your
>> >> case,
>> >>>>>> I'm pretty sure that data is inferred (you said that Protege shows
>> it
>> >> as
>> >>>>>> annotation) - but the inferred property is nowhere declared as
>> >>>>>> owl:DatatypeProperty in the ontology. This is mandotory for OWL/OWL
>> >>>>>> API/Protege
>> >>>>>>
>> >>>>>>
>> >>>>>> On 11.01.2017 16:48, neha gupta wrote:
>> >>>>>>> I used like this
>> >>>>>>>
>> >>>>>>>  *OntProperty favleague=model.getOntProperty(ns+
>> >> "FavioriteLeague");*
>> >>>>>>> Then I wrote this rule:
>> >>>>>>>
>> >>>>>>> (?x http://www.w3.org/1999/02/22-rdf-syntax-ns#type
>> >>>>>>> http://www.semanticweb.org/soccer#Team) "
>> >>>>>>>
>> >>>>>>>  + "( ?x http://www.semanticweb.org/soccer#FACupGoals  ?goals )"
>> +
>> >>>>>>>
>> >>>>>>>         "greaterThan(?goals,30)
>> >>>>>>>          + " ->  (?x  http://www.semanticweb.org/
>> >>>> soccer#FavioriteLeague
>> >>>>>>> http://www.semanticweb.org/soccer#FACup  )]";
>> >>>>>>> //FACupe is resource in the ontology:
>> >>>>>>>
>> >>>>>>> Then
>> >>>>>>>   *inf.listStatements(null,favcat,(RDFNode)null);*
>> >>>>>>>
>> >>>>>>>
>> >>>>>>> I think the problem is not in typo because I run similar rule for
>> >>>> another
>> >>>>>>> data property FavioriteStadium and it also saves in Annotation
>> area.
>> >>>>>>>
>> >>>>>>> On Wed, Jan 11, 2017 at 6:31 PM, Chris Dollin <
>> >>>>>> [email protected]>
>> >>>>>>> wrote:
>> >>>>>>>
>> >>>>>>>> On 11/01/17 15:15, neha gupta wrote:
>> >>>>>>>>
>> >>>>>>>>> Even this not works
>> >>>>>>>>>
>> >>>>>>>>>  inf.listStatements(null,favleague,(RDFNode)null);
>> >>>>>>>>>
>> >>>>>>>>> Gives the result but in Annotation area of Protege
>> >>>>>>>>>
>> >>>>>>>> COMPLETE MINIMAL EXAMPLE, please. You have so many
>> >>>>>>>> errors & omissions in the code you show us we can't
>> >>>>>>>> tell which one is the one you're asking about.
>> >>>>>>>>
>> >>>>>>>> If Protege is putting things in the annotation area
>> >>>>>>>> I'd guess that means the thing isn't declared as either
>> >>>>>>>> a DataProperty or an ObjectProperty. Given your erratic
>> >>>>>>>> spelling that's quite likely.
>> >>>>>>>>
>> >>>>>>>>
>> >>>>>>>> Chris
>> >>>>>>>>
>> >>>>>>>> --
>> >>>>>>>> "He could not weigh up which was worse and so tried not to think
>> >> about
>> >>>>>>>> either."
>> >>>>>>>>                                                 /The
>> Spellgrinder's
>> >>>>>>>> Apprentice/
>> >>>>>>>>
>> >>>>>>>> Epimorphics Ltd, http://www.epimorphics.com
>> >>>>>>>> Registered address: Court Lodge, 105 High Street, Portishead,
>> >> Bristol
>> >>>>>> BS20
>> >>>>>>>> 6PT
>> >>>>>>>> Epimorphics Ltd. is a limited company registered in England
>> (number
>> >>>>>>>> 7016688)
>> >>>>>>>>
>> >> --
>> >> Lorenz Bühmann
>> >> AKSW group, University of Leipzig
>> >> Group: http://aksw.org - semantic web research center
>> >>
>> >>
>> --
>> Lorenz Bühmann
>> AKSW group, University of Leipzig
>> Group: http://aksw.org - semantic web research center
>>
>>
>

Reply via email to