Yes Andy, I tried this and it flushed an error message. Thats why I asked
it if it is possible and if yes, in what way we can use the String in rule.

+ " ->  (?x  http://www.semanticweb.org/soccer#FavioriteLeague

http://www.semanticweb.org/soccer# <http://www.semanticweb.org/soccer#FACup>
"FACup"

On Fri, Jan 13, 2017 at 5:25 PM, Andy Seaborne <a...@apache.org> wrote:

>
>
> On 13/01/17 13:36, neha gupta wrote:
>
>> Hello Lorenz, I am sorry.
>>
>> Can we use FACup as string rather than a resource.
>>
>
> Have you tried this?
>
> You are asking something you can debug locally.
>
> I mean it is also
>> possible, if allowed by rules, that we use something like this
>>
>> (?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#
>> <http://www.semanticweb.org/soccer#FACup>"FACup"
>>
>> )]";
>>
>> FACup, ChampLeague etc are just some plain strings.
>>
>>
>> On Fri, Jan 13, 2017 at 12:26 AM, Lorenz Buehmann <
>> buehm...@informatik.uni-leipzig.de> wrote:
>>
>> Again, you ignored my suggestion to UPLOAD THE WHOLE ONTOLOGY and SHOW
>>> US THE WHOLE RULE that does not work.
>>>
>>> Not having an individual FACup in your ontology is not really an
>>> explanation for me that a property will be rendered as annotation
>>> property in Protege after rule execution and storing the data with Jena.
>>>
>>>
>>> On 12.01.2017 15:57, neha gupta 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. <
>>>> buehm...@informatik.uni-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/
>>>>>>
>>>>> soccer#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. <
>>>>>> buehm...@informatik.uni-leipzig.de> 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/
>>>>>>>>
>>>>>>> soccer#FavioriteLeague
>>>>>
>>>>>> http://www.semanticweb.org/soccer#FACup  )]
>>>>>>>>
>>>>>>>>
>>>>>>>> On Thu, Jan 12, 2017 at 1:03 AM, Lorenz Buehmann <
>>>>>>>> buehm...@informatik.uni-leipzig.de> 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 <
>>>>>>>>>> buehm...@informatik.uni-leipzig.de> 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 <
>>>>>>>>>>>>
>>>>>>>>>>> chris.dol...@epimorphics.com>
>>>>>>>>>>>
>>>>>>>>>>>> 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