I don't care. Best solution would be to open a Github project with a minimal running example.
On 18.01.2017 18:13, Sidra shah wrote: > Hello Lorenz, where should I upload my file? > > On Wed, Jan 18, 2017 at 6:26 PM, Lorenz Buehmann < > [email protected]> wrote: > >> >> On 18.01.2017 14:43, Sidra shah wrote: >>> Similarly, how can I make BestCategory as data property? When I take it >> as >>> object property, it does not behave likely I really want. >> Whatever this means. >> (I'm not sure if you really understand the difference between object and >> data property.) >>> When I take BestCategory as data property and execute the rule, it saves >> my >>> BestCategory as Annotation property. I have made the Domain of >> BestCategory >>> property as Category and range as String. >> No no no, now we're at the same point and level we had in the discussion >> with neha gupta. >> Either your provide the whole ontology and the code, or we have to stop >> here. >>> I do not know when taken as object property, it is saved as >> objectproperty >>> assertions and when taken as data property, it is saved as Annotations. >>> I wish I could share the screen shot of my ontology so that you get more >>> clear picture of my problem. >> Screenshots of Protege do not help us, since the "real" data including >> URIs and naming would be missing. >> Upload the WHOLE ONTOLOGY + the WHOLE RUNNING CODE somewhere. >>> Best regards >>> >>> On Wed, Jan 18, 2017 at 4:14 PM, Sidra shah <[email protected]> >> wrote: >>>> Hello Lorenz, its not giving me the exception now but it does not >> display >>>> the message JOption,. It does not read the * if (s1=="CatPhysics")* >>>> >>>> >>>> RDFNode phFav=indiv.getPropertyValue(favcat); >>>> if (phFav!=null){ >>>> RDFNode l1=phFav.asResource(); >>>> >>>> >>>> String s1=l1.toString(); >>>> } >>>> >>>> if (s1=="CatPhysics"){ >>>> JOptionPane.showMessageDialog(null, "Phyics category"); >>>> } >>>> >>>> >>>> >>>> On Wed, Jan 18, 2017 at 2:12 PM, Sidra shah <[email protected]> >>>> wrote: >>>> >>>>> Thank you Lorenz, let me read the document you mention here. I will >> come >>>>> back after reading and applying. >>>>> >>>>> Best regards >>>>> >>>>> On Wed, Jan 18, 2017 at 1:46 PM, Lorenz B. >> <[email protected] >>>>> ig.de> wrote: >>>>> >>>>>> What is for you the "value of a resource"? The URI? >>>>>> >>>>>> There is only one good source for developers, and that's Javadoc [1] - >>>>>> that's why we always refer to if people have questions. >>>>>> >>>>>> asResource() converts the RDFNode object to a resource >>>>>> >>>>>> [1] >>>>>> https://jena.apache.org/documentation/javadoc/jena/org/apach >>>>>> e/jena/rdf/model/RDFNode.html >>>>>> >>>>>>> Hello Lorenz, this was the question I was expected to ask? I mean >>>>>> values of >>>>>>> BestCategory are resources. >>>>>>> Kindly if you can guide me how to get the value, I searched it on the >>>>>> web >>>>>>> but could not found any related resources. >>>>>>> >>>>>>> Kind regards >>>>>>> >>>>>>> On Wed, Jan 18, 2017 at 10:57 AM, Lorenz B. < >>>>>>> [email protected]> wrote: >>>>>>> >>>>>>>>> OntModel model2=ModelFactory.createOntologyModel( >>>>>>>> OntModelSpec.OWL_DL_MEM); >>>>>>>>> InputStream in =FileManager.get().open("F://20-8.owl"); >>>>>>>>> if (in==null) { >>>>>>>>> throw new IllegalArgumentException( "File: " + " >> not >>>>>>>>> found"); >>>>>>>>> } model2.read(in,""); >>>>>>>>> >>>>>>>>> String ns=" >>>>>>>>> http://www.semanticweb.org/t/ontologies/2016/7/myOWL#"; >>>>>>>>> >>>>>>>>> OntProperty favcat=model2.getOntProperty(ns+ >> "BestCategory"); >>>>>>>>> String name=jTextField1.getText(); >>>>>>>>> Individual indiv = user1.createIndividual(ns + name); >>>>>>>>> RDFNode phFav=indiv.getPropertyValue(favcat); >>>>>>>>> if (phFav!=null){ >>>>>>>>> Literal l1=phFav.asLiteral(); >>>>>>>> If BestCategory is an object property, why do you cast the value as >>>>>>>> literal?! >>>>>>>>> s1=l1.toString(); } >>>>>>>>> } >>>>>>>>> if (s1=="CatPhysics"){ >>>>>>>>> JOptionPane.showMessageDialog(null, "Physics"); >>>>>>>>> } >>>>>>>>> >>>>>>>>> The rule itself is >>>>>>>>> >>>>>>>>> String rule ="[rule1: ( ?x http://www.semanticweb.org/ >>>>>>>>> t/ontologies/2016/7/myOWL#Physics_Preferred_Category ?cat1 )" + >>>>>>>>> "( ?x http://www.semanticweb.org/t/ontologies/2016/7/myOWL# >>>>>>>>> Chem_Preferred_Category ?cat2 )" + >>>>>>>>> "( ?x http://www.semanticweb.org/t/o >>>>>> ntologies/2016/7/myOWL#Geo_ >>>>>>>>> Preferred_Category ?cat3 )" + >>>>>>>>> "greaterThan(?cat1,?cat2), greaterThan(?cat1,?cat3)" >>>>>>>>> + " -> (?x http://www.semanticweb.org/t/ >>>>>>>>> ontologies/2016/7/myOWL#BestCategory >> http://www.semanticweb.org/t/ >>>>>>>>> ontologies/2016/7/myOWL#BestCategory#Physics )]"; >>>>>>>>> >>>>>>>>> >>>>>>>>> The BestCategory is object property. >>>>>>>>> >>>>>>>>> Regards >>>>>>>>> >>>>>>>>> >>>>>>>>> On Tue, Jan 17, 2017 at 8:16 PM, Andy Seaborne <[email protected]> >>>>>> wrote: >>>>>>>>>> A Complete, Minimal Example please. >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> Partial code, no data is not complete. >>>>>>>>>> It must compile and run to be complete. >>>>>>>>>> >>>>>>>>>> Minimal means only what is necessary to ask the question not the >>>>>> whole >>>>>>>>>> data or whole application. >>>>>>>>>> >>>>>>>>>> Andy >>>>>>>>>> >>>>>>>>>> On 17/01/17 17:14, Sidra shah wrote: >>>>>>>>>> >>>>>>>>>>> I am surprise that when there is no value in BestCategory, it >>>>>> gives me >>>>>>>> no >>>>>>>>>>> error and when the rule executes and value comes in BestCategory, >>>>>> it >>>>>>>> gives >>>>>>>>>>> me now *"RequiredLiteralException*" >>>>>>>>>>> >>>>>>>>>>> The code I used here is >>>>>>>>>>> >>>>>>>>>>> OntProperty favcat=model2.getOntProperty(ns+ "BestCategory"); >>>>>>>>>>> >>>>>>>>>>> RDFNode phFav=indiv.getPropertyValue(favcat); >>>>>>>>>>> if (phFav!=null){ >>>>>>>>>>> Literal l1=phFav.asLiteral(); >>>>>>>>>>> >>>>>>>>>>> s1=l1.toString();} >>>>>>>>>>> >>>>>>>>>>> if (s1=="CatPhysics"){ >>>>>>>>>>> JOptionPane.showMessageDialog(null, "Physics"); >>>>>>>>>>> } >>>>>>>>>>> >>>>>>>>>>> Best regards >>>>>>>>>>> >>>>>>>>>>> On Tue, Jan 17, 2017 at 5:53 PM, Sidra shah < >>>>>> [email protected]> >>>>>>>>>>> wrote: >>>>>>>>>>> >>>>>>>>>>> Hello Chris, thanks a lot for your suggestion. >>>>>>>>>>>> Best regards. >>>>>>>>>>>> >>>>>>>>>>>> On Tue, Jan 17, 2017 at 5:37 PM, Chris Dollin < >>>>>>>>>>>> [email protected]> wrote: >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>>> On 17/01/17 13:30, Sidra shah wrote: >>>>>>>>>>>>> >>>>>>>>>>>>> Hi Lorenz, I am sorry but with much regards, you discussed here >>>>>> the >>>>>>>>>>>>>> problem, not the solution :) :) >>>>>>>>>>>>>> >>>>>>>>>>>>>> I know this if there is no value, there must be Null >> exception, >>>>>>>>>>>>>> >>>>>>>>>>>>> This is not true. >>>>>>>>>>>>> >>>>>>>>>>>>> but can you suggest me a way where we dodge the compiler >>>>>>>>>>>>> >>>>>>>>>>>>> No "dodging" of the compiler is required. Instead, just write >>>>>>>>>>>>> perfectly ordinary code that tests to see if the result of >>>>>>>>>>>>> getPropertyValue is null, and take one action if it isn't and >>>>>>>>>>>>> a different one if it is. >>>>>>>>>>>>> >>>>>>>>>>>>> There's nothing special about this. You don't need to use >>>>>>>>>>>>> break (which is for escaping from loops); just an if >>>>>>>>>>>>> with suitable then and else parts. >>>>>>>>>>>>> >>>>>>>>>>>>> I know this is more a Java problem, but any help I will >>>>>> appreciate. >>>>>>>>>>>>> Find someone /local/ doing the same or similar course and talk >> to >>>>>>>>>>>>> them (and have them talk to you) about programming and this >>>>>>>>>>>>> problem. I don't mean copy each other's work; I mean use each >>>>>>>>>>>>> other to understand what the problem is about and how the code >>>>>>>>>>>>> works. Each of you will know things that the other doesn't; >>>>>> share. >>>>>>>>>>>>> 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 >>>>>> >>>>>> >>
