Hello Lorenz, believe me I have tried this before I write my problem here
in the forum but the problem persists. I also tried if s1!=null. .
RDFNode physicsBestCat=indiv.getPropertyValue(bestcat);
Literal l1=physicsBestCat.asLiteral();
if (l1!=null){
String s1=l1.toString();
if (s1=="Physics"){
}}
Regards
On Tue, Jan 17, 2017 at 3:48 PM, Lorenz B. <
[email protected]> wrote:
> Sorry, but the answer is too obvious, especially for a student in
> computer science.
>
> What about checking if the literal is NULL before calling toString()?
>
> > Hello, I asked about this rule few days ago.
> > String rule ="[rule1: ( ?x http://www.semanticweb.org/t/o
> > ntologies/2016/7/myOWL#Physics_Preferred_Category ?cat1 )" +
> > "( ?x http://www.semanticweb.org/t/ontologies/2016/7/myOWL#Chem_Pr
> > eferred_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 saved but as you know a user will select all the
> three
> > categories in the quiz, then the rule will execute, otherwise the user
> the
> > user will have not the property BestCategory.
> >
> > When I want to extract the value of BestCategory for some operation, for
> > first time users to the quiz, it gives me Null Pointer Exception, and
> > rightly so because the user has no value of BestCategory.
> >
> > RDFNode physicsBestCat=indiv.getPropertyValue(bestcat);
> > Literal l1=physicsBestCat.asLiteral();
> >
> > //*here I think is the exception is*
> > String s1=l1.toString();
> >
> > if (s1=="Physics"){
> > }
> >
> > How should I handle this problem please?
> >
> > Much regards
> >
> --
> Lorenz Bühmann
> AKSW group, University of Leipzig
> Group: http://aksw.org - semantic web research center
>
>