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]> 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/apache/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/ > ontologies/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 > >
