You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@jena.apache.org by Sidra shah <s....@gmail.com> on 2017/02/03 15:18:42 UTC

Query works in Protege, not in Jena code

Hello, This query works fine and get data i-e Questions, answers, choices
and their score. But when I want to include object property hasComplexity
(its values are 1,2,3,4,5) and try to order it, its not working. (The query
still get data but not in order).
While this works inside Protege and show questions in order:
SELECT *
WHERE { ?questions dd:hasCategory dd:CatPhysics ; dd:hasLevel dd:levEasy ;
dd:hasComplexity ?y} order by ?y


//This query is in Jena code: I copy here it in Jena syntax

 "SELECT  * " +
                " WHERE { "
               + "?Qs mo:Question ?QsDesc. "

                + "?QS mo:hasAnswers ?AnsQ. "
                + "?AnsQ mo:hasQuestion ?Qs. "
                + "?AnsQ mo:ChoiceOne ?ANSONE."
                + "?AnsQ mo:ChoiceTwo ?ANSWTWO."
                + "?AnsQ mo:ChoiceThree ?ANSWTHREE."
                + "?AnsQ mo:CorrChoice ?ANSCORR. "
               + "?Qs mo:hasCategory ?Cat. "
                + "?Cat mo:category ?CatName. "
                + "?Qs mo:hasLevel ?lev. "

               + "?lev mo:level ?LevName. "
               + "?Qs mo:hasScore ?point."
               + "?point mo:score ?Score. "

                 + "?Qs mo:hasComplexity ?l. "

                + "FILTER ( ?CatName ='"+ctg+"' ). "
                + "FILTER ( ?LevName ='"+lvl+"' ). "


           + "}"
                   + "ORDER BY  (?l) "
                + "";

Re: Query works in Protege, not in Jena code

Posted by "Lorenz B." <bu...@informatik.uni-leipzig.de>.
1. Sample data means to have some instance data and not only a part of
the schema. Nobody here wants to generate instance data in order to test
the query locally.
2. And please use Turtle, RDF/XML is totally verbose.

As we already said, put the WHOLE data - that means the ontology
including the schema and instance data that you load with Jena -
somewhere online. Github is the most simple one.

And then show the sample code, that means the Java code snippet.

And show the sample output, i.e. the result you get back by Jena and
especially HOW you process the Resultset object.
> The print out of query in console is:
>
> SELECT  *  WHERE { ?Qs mo:Question ?QsDesc.
>  ?QS mo:hasAnswers ?AnsQ.
> ?AnsQ mo:hasQuestion ?Qs.
>  ?AnsQ mo:ChoiceOne ?ANSONE.
> ?AnsQ mo:ChoiceTwo ?ANSWTWO.
> ?AnsQ mo:ChoiceThree ?ANSWTHREE.
> ?AnsQ mo:CorrChoice ?ANSCORR.
> ?Qs mo:hasCategory ?Cat.
> ?Cat mo:category ?CatName.
> ?Qs mo:hasLevel ?lev.
> ?lev mo:level ?LevName.
> ?Qs mo:hasScore ?point.?point mo:score ?Score.
>  ?Qs mo:hasComplexity ?l.
>  FILTER ( ?CatName ='Physics' ). FILTER ( ?LevName ='Easy' ). }ORDER BY  ?l
>
> On Sat, Feb 4, 2017 at 7:52 PM, Sidra shah <s....@gmail.com> wrote:
>
>> I have included the hasComplexity property values just in five questions
>> and it loads only these five questions, it means it recognizes this
>> property but again not in order.
>>
>> Regards
>>
>> On Sat, Feb 4, 2017 at 7:44 PM, Sidra shah <s....@gmail.com> wrote:
>>
>>> Hello, I copied the object properties here. I have object property (which
>>> has problem) hasComplexity. Its domain is Question and range is Complexity
>>> class. Complexity class have now members A,B,C
>>>
>>>
>>>
>>> <?xml version="1.0"?>
>>>
>>>
>>> <!DOCTYPE rdf:RDF [
>>>     <!ENTITY owl "http://www.w3.org/2002/07/owl#" >
>>>     <!ENTITY xsd "http://www.w3.org/2001/XMLSchema#" >
>>>     <!ENTITY rdfs "http://www.w3.org/2000/01/rdf-schema#" >
>>>     <!ENTITY rdf "http://www.w3.org/1999/02/22-rdf-syntax-ns#" >
>>>     <!ENTITY named "http://www.semanticweb.org/t/ontologies/2016/7/named#"
>>>     <!ENTITY myOWL "http://www.semanticweb.org/t/ontologies/2016/7/myOWL#"
>>> ]>
>>>
>>>
>>> <rdf:RDF xmlns="http://www.semanticweb.org/t/ontologies/2016/7/myOWL#"
>>>      xml:base="http://www.semanticweb.org/t/ontologies/2016/7/myOWL"
>>>      xmlns:named="http://www.semanticweb.org/t/ontologies/2016/7/named#"
>>>      xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
>>>      xmlns:owl="http://www.w3.org/2002/07/owl#"
>>>      xmlns:xsd="http://www.w3.org/2001/XMLSchema#"
>>>      xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
>>>      xmlns:myOWL="http://www.semanticweb.org/t/ontologies/2016/7/myOWL#">
>>>     <owl:Ontology rdf:about="http://www.semantic
>>> web.org/t/ontologies/2016/7/myOWL"/>
>>>
>>>
>>>
>>>     <!--
>>>     ////////////////////////////////////////////////////////////
>>> ///////////////////////////
>>>     //
>>>     // Object Properties
>>>     //
>>>     ////////////////////////////////////////////////////////////
>>> ///////////////////////////
>>>      -->
>>>
>>>
>>>
>>>
>>>
>>>
>>>     <!-- http://www.semanticweb.org/t/ontologies/2016/7/myOWL#hasAnswers
>>> -->
>>>
>>>     <owl:ObjectProperty rdf:about="&myOWL;hasAnswers">
>>>         <rdf:type rdf:resource="&owl;InverseFunctionalProperty"/>
>>>         <rdfs:range rdf:resource="&myOWL;Answers"/>
>>>         <rdfs:domain rdf:resource="&myOWL;Questions"/>
>>>         <owl:inverseOf rdf:resource="&myOWL;hasQuestion"/>
>>>     </owl:ObjectProperty>
>>>
>>>
>>>
>>>     <!-- http://www.semanticweb.org/t/ontologies/2016/7/myOWL#hasCategory
>>> -->
>>>
>>>     <owl:ObjectProperty rdf:about="&myOWL;hasCategory"/>
>>>
>>>
>>>
>>>     <!-- http://www.semanticweb.org/t/ontologies/2016/7/myOWL#hasComp
>>> lexity -->
>>>
>>>     <owl:ObjectProperty rdf:about="&myOWL;hasComplexity">
>>>         <rdfs:range rdf:resource="&myOWL;Complexity"/>
>>>         <rdfs:domain rdf:resource="&myOWL;Questions"/>
>>>     </owl:ObjectProperty>
>>>
>>>
>>>
>>>     <!-- http://www.semanticweb.org/t/ontologies/2016/7/myOWL#hasLevel
>>> -->
>>>
>>>     <owl:ObjectProperty rdf:about="&myOWL;hasLevel"/>
>>>
>>>
>>>
>>>     <!-- http://www.semanticweb.org/t/ontologies/2016/7/myOWL#hasQuestion
>>> -->
>>>
>>>     <owl:ObjectProperty rdf:about="&myOWL;hasQuestion">
>>>         <rdf:type rdf:resource="&owl;InverseFunctionalProperty"/>
>>>         <rdfs:domain rdf:resource="&myOWL;Answers"/>
>>>         <rdfs:range rdf:resource="&myOWL;Questions"/>
>>>     </owl:ObjectProperty>
>>>
>>>
>>>
>>>     <!-- http://www.semanticweb.org/t/ontologies/2016/7/myOWL#hasScore
>>> -->
>>>
>>>     <owl:ObjectProperty rdf:about="&myOWL;hasScore"/>
>>>
>>>
>>>
>>> On Sat, Feb 4, 2017 at 6:58 PM, Andy Seaborne <an...@apache.org> wrote:
>>>
>>>>
>>>> On 04/02/17 14:38, A. Soroka wrote:
>>>>
>>>>> Thank you Lorenz, you mean I copy the turtle of my ontology here? It
>>>>>> will be very large?
>>>>>>
>>>>> Then put it on a site like Github or Pastebin and put a link in your
>>>>> message.
>>>>>
>>>> Then create a small sample that illustrates the problem.
>>>>
>>>> A minimal-complete-example is not a dump of everything you have.  It is
>>>> creating a focused question.  In fact, just the act of creating it can help
>>>> you understand the problem.
>>>>
>>>>     Andy
>>>>
>>>>
>>>>
>>>>> ---
>>>>> A. Soroka
>>>>> The University of Virginia Library
>>>>>
>>>>> On Feb 4, 2017, at 7:45 AM, Sidra shah <s....@gmail.com> wrote:
>>>>>> Thank you Lorenz, you mean I copy the turtle of my ontology here? It
>>>>>> will
>>>>>> be very large?
>>>>>>
>>>>>> Actually what makes me confuse, when I run the same query in
>>>>>> Protege(with
>>>>>> all Qs,Ans/Options), it works and order the questions.
>>>>>> In Jena, the order by part does not work.
>>>>>>
>>>>>> Regards
>>>>>>
>>>>>> On Sat, Feb 4, 2017 at 2:50 PM, Lorenz B. <
>>>>>> buehmann@informatik.uni-leipzig.de> wrote:
>>>>>>
>>>>>> Sample data is not an abstract description of the data...it is proper
>>>>>>> instance data, in best case in TURTLE syntax.
>>>>>>>
>>>>>>> Sample code is still missing.
>>>>>>>
>>>>>>> Sample output is not telling me that something does not work as
>>>>>>> expected...
>>>>>>>
>>>>>>> "Not in the oder you want" is no real specification. The query will
>>>>>>> order by the URIs of the complexity values. If not it's a bug.
>>>>>>>
>>>>>>> But again, we need sample data, sample, code, which is also know as
>>>>>>> MWE.
>>>>>>> And also the Jena version is interesting for the developers.
>>>>>>>
>>>>>>> SELECT *
>>>>>>>> WHERE { ?questions dd:hasCategory dd:CatPhysics ; dd:hasLevel
>>>>>>>> dd:levEasy
>>>>>>>>
>>>>>>> ;
>>>>>>>
>>>>>>>> dd:hasComplexity ?y} order by ?y
>>>>>>>>
>>>>>>>> Lorenz, Each question has three categories (subjects), has level ,
>>>>>>>> and
>>>>>>>> recently I added hasComplexity which has values 1-5. I have added a
>>>>>>>> Complexity class and its members are 1-5 numbers. Domain is Question
>>>>>>>>
>>>>>>> class
>>>>>>>
>>>>>>>> and range is Complexity class.
>>>>>>>> The query inside Jena works, load questions/answers/choices etc but
>>>>>>>> not
>>>>>>>>
>>>>>>> in
>>>>>>>
>>>>>>>> the order I want.
>>>>>>>>
>>>>>>>> Regards
>>>>>>>>
>>>>>>>> On Sat, Feb 4, 2017 at 1:44 PM, Lorenz B. <
>>>>>>>> buehmann@informatik.uni-leipzig.de> wrote:
>>>>>>>>
>>>>>>>> That doesn't answer my question. Can you try to compare the same
>>>>>>>>> queries
>>>>>>>>> please?
>>>>>>>>>
>>>>>>>>> Moreover what's missing:
>>>>>>>>>
>>>>>>>>> 1. sample code
>>>>>>>>> 2. sample data
>>>>>>>>> 3. sample output
>>>>>>>>>
>>>>>>>>> The queries are different because in Protege I retrieve only
>>>>>>>>>> questions
>>>>>>>>>>
>>>>>>>>> and
>>>>>>>>>
>>>>>>>>>> their complexity number while in Jena I get questions, answers,
>>>>>>>>>>
>>>>>>>>> choices,
>>>>>>>> scores and its complexity order.
>>>>>>>>>> Regards
>>>>>>>>>>
>>>>>>>>>> On Fri, Feb 3, 2017 at 6:36 PM, Sidra shah <s.shahcyprus@gmail.com
>>>>>>>>> wrote:
>>>>>>>>>
>>>>>>>>>> Thank you Lorenz, 1,2,3,4,5 are resources and it has URIs. Question
>>>>>>>>>> has
>>>>>>>> object property and value will be selected from one of the five
>>>>>>>>>>> values
>>>>>>>>>>>
>>>>>>>>>> in
>>>>>>>>>> the owl file.
>>>>>>>>>>> Regards
>>>>>>>>>>>
>>>>>>>>>>> On Fri, Feb 3, 2017 at 6:26 PM, Lorenz Buehmann
>>>>>>>>>>>
>>>>>>>>>> <buehmann@informatik.uni-
>>>>>>>>>> leipzig.de> wrote:
>>>>>>>>>>> "object property hasComplexity (its values are 1,2,3,4,5)"
>>>>>>>>>>>> -> why do you say it's an object property if the values are
>>>>>>>>>>>>
>>>>>>>>>>> numerical?
>>>>>>>>>>>> Moreover, you compare two different queries and then say one
>>>>>>>>>>>> works in
>>>>>>>>>>>> Protege, the other not. That is a totally useless statement. It
>>>>>>>>>>>>
>>>>>>>>>>> should
>>>>>>>> be clear that you should compare the SAME queries
>>>>>>>>>>>>
>>>>>>>>>>>> It remains open what kind of RDF term the complexity values
>>>>>>>>>>>> are...literals or resources
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> On 03.02.2017 16:18, Sidra shah wrote:
>>>>>>>>>>>>
>>>>>>>>>>>>> Hello, This query works fine and get data i-e Questions,
>>>>>>>>>>>>> answers,
>>>>>>>>>>>>>
>>>>>>>>>>>> choices
>>>>>>>>>>>>
>>>>>>>>>>>>> and their score. But when I want to include object property
>>>>>>>>>>>>>
>>>>>>>>>>>> hasComplexity
>>>>>>>>>>>>
>>>>>>>>>>>>> (its values are 1,2,3,4,5) and try to order it, its not working.
>>>>>>>>>>>>>
>>>>>>>>>>>> (The
>>>>>>>> query
>>>>>>>>>>>>> still get data but not in order).
>>>>>>>>>>>>> While this works inside Protege and show questions in order:
>>>>>>>>>>>>> SELECT *
>>>>>>>>>>>>> WHERE { ?questions dd:hasCategory dd:CatPhysics ; dd:hasLevel
>>>>>>>>>>>>>
>>>>>>>>>>>> dd:levEasy ;
>>>>>>>>>>>>
>>>>>>>>>>>>> dd:hasComplexity ?y} order by ?y
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> //This query is in Jena code: I copy here it in Jena syntax
>>>>>>>>>>>>>
>>>>>>>>>>>>> "SELECT  * " +
>>>>>>>>>>>>>                " WHERE { "
>>>>>>>>>>>>>               + "?Qs mo:Question ?QsDesc. "
>>>>>>>>>>>>>
>>>>>>>>>>>>>                + "?QS mo:hasAnswers ?AnsQ. "
>>>>>>>>>>>>>                + "?AnsQ mo:hasQuestion ?Qs. "
>>>>>>>>>>>>>                + "?AnsQ mo:ChoiceOne ?ANSONE."
>>>>>>>>>>>>>                + "?AnsQ mo:ChoiceTwo ?ANSWTWO."
>>>>>>>>>>>>>                + "?AnsQ mo:ChoiceThree ?ANSWTHREE."
>>>>>>>>>>>>>                + "?AnsQ mo:CorrChoice ?ANSCORR. "
>>>>>>>>>>>>>               + "?Qs mo:hasCategory ?Cat. "
>>>>>>>>>>>>>                + "?Cat mo:category ?CatName. "
>>>>>>>>>>>>>                + "?Qs mo:hasLevel ?lev. "
>>>>>>>>>>>>>
>>>>>>>>>>>>>               + "?lev mo:level ?LevName. "
>>>>>>>>>>>>>               + "?Qs mo:hasScore ?point."
>>>>>>>>>>>>>               + "?point mo:score ?Score. "
>>>>>>>>>>>>>
>>>>>>>>>>>>>                 + "?Qs mo:hasComplexity ?l. "
>>>>>>>>>>>>>
>>>>>>>>>>>>>                + "FILTER ( ?CatName ='"+ctg+"' ). "
>>>>>>>>>>>>>                + "FILTER ( ?LevName ='"+lvl+"' ). "
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>           + "}"
>>>>>>>>>>>>>                   + "ORDER BY  (?l) "
>>>>>>>>>>>>>                + "";
>>>>>>>>>>>>>
>>>>>>>>>>>>> --
>>>>>>>>> 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
>>>>>>>
>>>>>>>
>>>>>>>
-- 
Lorenz B�hmann
AKSW group, University of Leipzig
Group: http://aksw.org - semantic web research center


Re: Query works in Protege, not in Jena code

Posted by Sidra shah <s....@gmail.com>.
The print out of query in console is:

SELECT  *  WHERE { ?Qs mo:Question ?QsDesc.
 ?QS mo:hasAnswers ?AnsQ.
?AnsQ mo:hasQuestion ?Qs.
 ?AnsQ mo:ChoiceOne ?ANSONE.
?AnsQ mo:ChoiceTwo ?ANSWTWO.
?AnsQ mo:ChoiceThree ?ANSWTHREE.
?AnsQ mo:CorrChoice ?ANSCORR.
?Qs mo:hasCategory ?Cat.
?Cat mo:category ?CatName.
?Qs mo:hasLevel ?lev.
?lev mo:level ?LevName.
?Qs mo:hasScore ?point.?point mo:score ?Score.
 ?Qs mo:hasComplexity ?l.
 FILTER ( ?CatName ='Physics' ). FILTER ( ?LevName ='Easy' ). }ORDER BY  ?l

On Sat, Feb 4, 2017 at 7:52 PM, Sidra shah <s....@gmail.com> wrote:

> I have included the hasComplexity property values just in five questions
> and it loads only these five questions, it means it recognizes this
> property but again not in order.
>
> Regards
>
> On Sat, Feb 4, 2017 at 7:44 PM, Sidra shah <s....@gmail.com> wrote:
>
>> Hello, I copied the object properties here. I have object property (which
>> has problem) hasComplexity. Its domain is Question and range is Complexity
>> class. Complexity class have now members A,B,C
>>
>>
>>
>> <?xml version="1.0"?>
>>
>>
>> <!DOCTYPE rdf:RDF [
>>     <!ENTITY owl "http://www.w3.org/2002/07/owl#" >
>>     <!ENTITY xsd "http://www.w3.org/2001/XMLSchema#" >
>>     <!ENTITY rdfs "http://www.w3.org/2000/01/rdf-schema#" >
>>     <!ENTITY rdf "http://www.w3.org/1999/02/22-rdf-syntax-ns#" >
>>     <!ENTITY named "http://www.semanticweb.org/t/ontologies/2016/7/named#"
>> >
>>     <!ENTITY myOWL "http://www.semanticweb.org/t/ontologies/2016/7/myOWL#"
>> >
>> ]>
>>
>>
>> <rdf:RDF xmlns="http://www.semanticweb.org/t/ontologies/2016/7/myOWL#"
>>      xml:base="http://www.semanticweb.org/t/ontologies/2016/7/myOWL"
>>      xmlns:named="http://www.semanticweb.org/t/ontologies/2016/7/named#"
>>      xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
>>      xmlns:owl="http://www.w3.org/2002/07/owl#"
>>      xmlns:xsd="http://www.w3.org/2001/XMLSchema#"
>>      xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
>>      xmlns:myOWL="http://www.semanticweb.org/t/ontologies/2016/7/myOWL#">
>>     <owl:Ontology rdf:about="http://www.semantic
>> web.org/t/ontologies/2016/7/myOWL"/>
>>
>>
>>
>>     <!--
>>     ////////////////////////////////////////////////////////////
>> ///////////////////////////
>>     //
>>     // Object Properties
>>     //
>>     ////////////////////////////////////////////////////////////
>> ///////////////////////////
>>      -->
>>
>>
>>
>>
>>
>>
>>     <!-- http://www.semanticweb.org/t/ontologies/2016/7/myOWL#hasAnswers
>> -->
>>
>>     <owl:ObjectProperty rdf:about="&myOWL;hasAnswers">
>>         <rdf:type rdf:resource="&owl;InverseFunctionalProperty"/>
>>         <rdfs:range rdf:resource="&myOWL;Answers"/>
>>         <rdfs:domain rdf:resource="&myOWL;Questions"/>
>>         <owl:inverseOf rdf:resource="&myOWL;hasQuestion"/>
>>     </owl:ObjectProperty>
>>
>>
>>
>>     <!-- http://www.semanticweb.org/t/ontologies/2016/7/myOWL#hasCategory
>> -->
>>
>>     <owl:ObjectProperty rdf:about="&myOWL;hasCategory"/>
>>
>>
>>
>>     <!-- http://www.semanticweb.org/t/ontologies/2016/7/myOWL#hasComp
>> lexity -->
>>
>>     <owl:ObjectProperty rdf:about="&myOWL;hasComplexity">
>>         <rdfs:range rdf:resource="&myOWL;Complexity"/>
>>         <rdfs:domain rdf:resource="&myOWL;Questions"/>
>>     </owl:ObjectProperty>
>>
>>
>>
>>     <!-- http://www.semanticweb.org/t/ontologies/2016/7/myOWL#hasLevel
>> -->
>>
>>     <owl:ObjectProperty rdf:about="&myOWL;hasLevel"/>
>>
>>
>>
>>     <!-- http://www.semanticweb.org/t/ontologies/2016/7/myOWL#hasQuestion
>> -->
>>
>>     <owl:ObjectProperty rdf:about="&myOWL;hasQuestion">
>>         <rdf:type rdf:resource="&owl;InverseFunctionalProperty"/>
>>         <rdfs:domain rdf:resource="&myOWL;Answers"/>
>>         <rdfs:range rdf:resource="&myOWL;Questions"/>
>>     </owl:ObjectProperty>
>>
>>
>>
>>     <!-- http://www.semanticweb.org/t/ontologies/2016/7/myOWL#hasScore
>> -->
>>
>>     <owl:ObjectProperty rdf:about="&myOWL;hasScore"/>
>>
>>
>>
>> On Sat, Feb 4, 2017 at 6:58 PM, Andy Seaborne <an...@apache.org> wrote:
>>
>>>
>>>
>>> On 04/02/17 14:38, A. Soroka wrote:
>>>
>>>> Thank you Lorenz, you mean I copy the turtle of my ontology here? It
>>>>> will be very large?
>>>>>
>>>>
>>>> Then put it on a site like Github or Pastebin and put a link in your
>>>> message.
>>>>
>>>
>>> Then create a small sample that illustrates the problem.
>>>
>>> A minimal-complete-example is not a dump of everything you have.  It is
>>> creating a focused question.  In fact, just the act of creating it can help
>>> you understand the problem.
>>>
>>>     Andy
>>>
>>>
>>>
>>>> ---
>>>> A. Soroka
>>>> The University of Virginia Library
>>>>
>>>> On Feb 4, 2017, at 7:45 AM, Sidra shah <s....@gmail.com> wrote:
>>>>>
>>>>> Thank you Lorenz, you mean I copy the turtle of my ontology here? It
>>>>> will
>>>>> be very large?
>>>>>
>>>>> Actually what makes me confuse, when I run the same query in
>>>>> Protege(with
>>>>> all Qs,Ans/Options), it works and order the questions.
>>>>> In Jena, the order by part does not work.
>>>>>
>>>>> Regards
>>>>>
>>>>> On Sat, Feb 4, 2017 at 2:50 PM, Lorenz B. <
>>>>> buehmann@informatik.uni-leipzig.de> wrote:
>>>>>
>>>>> Sample data is not an abstract description of the data...it is proper
>>>>>> instance data, in best case in TURTLE syntax.
>>>>>>
>>>>>> Sample code is still missing.
>>>>>>
>>>>>> Sample output is not telling me that something does not work as
>>>>>> expected...
>>>>>>
>>>>>> "Not in the oder you want" is no real specification. The query will
>>>>>> order by the URIs of the complexity values. If not it's a bug.
>>>>>>
>>>>>> But again, we need sample data, sample, code, which is also know as
>>>>>> MWE.
>>>>>> And also the Jena version is interesting for the developers.
>>>>>>
>>>>>> SELECT *
>>>>>>> WHERE { ?questions dd:hasCategory dd:CatPhysics ; dd:hasLevel
>>>>>>> dd:levEasy
>>>>>>>
>>>>>> ;
>>>>>>
>>>>>>> dd:hasComplexity ?y} order by ?y
>>>>>>>
>>>>>>> Lorenz, Each question has three categories (subjects), has level ,
>>>>>>> and
>>>>>>> recently I added hasComplexity which has values 1-5. I have added a
>>>>>>> Complexity class and its members are 1-5 numbers. Domain is Question
>>>>>>>
>>>>>> class
>>>>>>
>>>>>>> and range is Complexity class.
>>>>>>> The query inside Jena works, load questions/answers/choices etc but
>>>>>>> not
>>>>>>>
>>>>>> in
>>>>>>
>>>>>>> the order I want.
>>>>>>>
>>>>>>> Regards
>>>>>>>
>>>>>>> On Sat, Feb 4, 2017 at 1:44 PM, Lorenz B. <
>>>>>>> buehmann@informatik.uni-leipzig.de> wrote:
>>>>>>>
>>>>>>> That doesn't answer my question. Can you try to compare the same
>>>>>>>> queries
>>>>>>>> please?
>>>>>>>>
>>>>>>>> Moreover what's missing:
>>>>>>>>
>>>>>>>> 1. sample code
>>>>>>>> 2. sample data
>>>>>>>> 3. sample output
>>>>>>>>
>>>>>>>> The queries are different because in Protege I retrieve only
>>>>>>>>> questions
>>>>>>>>>
>>>>>>>> and
>>>>>>>>
>>>>>>>>> their complexity number while in Jena I get questions, answers,
>>>>>>>>>
>>>>>>>> choices,
>>>>>>
>>>>>>> scores and its complexity order.
>>>>>>>>>
>>>>>>>>> Regards
>>>>>>>>>
>>>>>>>>> On Fri, Feb 3, 2017 at 6:36 PM, Sidra shah <s.shahcyprus@gmail.com
>>>>>>>>> >
>>>>>>>>>
>>>>>>>> wrote:
>>>>>>>>
>>>>>>>>> Thank you Lorenz, 1,2,3,4,5 are resources and it has URIs. Question
>>>>>>>>>>
>>>>>>>>> has
>>>>>>
>>>>>>> object property and value will be selected from one of the five
>>>>>>>>>> values
>>>>>>>>>>
>>>>>>>>> in
>>>>>>>>
>>>>>>>>> the owl file.
>>>>>>>>>>
>>>>>>>>>> Regards
>>>>>>>>>>
>>>>>>>>>> On Fri, Feb 3, 2017 at 6:26 PM, Lorenz Buehmann
>>>>>>>>>>
>>>>>>>>> <buehmann@informatik.uni-
>>>>>>>>
>>>>>>>>> leipzig.de> wrote:
>>>>>>>>>>
>>>>>>>>>> "object property hasComplexity (its values are 1,2,3,4,5)"
>>>>>>>>>>>
>>>>>>>>>>> -> why do you say it's an object property if the values are
>>>>>>>>>>>
>>>>>>>>>> numerical?
>>>>>>
>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> Moreover, you compare two different queries and then say one
>>>>>>>>>>> works in
>>>>>>>>>>> Protege, the other not. That is a totally useless statement. It
>>>>>>>>>>>
>>>>>>>>>> should
>>>>>>
>>>>>>> be clear that you should compare the SAME queries
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> It remains open what kind of RDF term the complexity values
>>>>>>>>>>> are...literals or resources
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> On 03.02.2017 16:18, Sidra shah wrote:
>>>>>>>>>>>
>>>>>>>>>>>> Hello, This query works fine and get data i-e Questions,
>>>>>>>>>>>> answers,
>>>>>>>>>>>>
>>>>>>>>>>> choices
>>>>>>>>>>>
>>>>>>>>>>>> and their score. But when I want to include object property
>>>>>>>>>>>>
>>>>>>>>>>> hasComplexity
>>>>>>>>>>>
>>>>>>>>>>>> (its values are 1,2,3,4,5) and try to order it, its not working.
>>>>>>>>>>>>
>>>>>>>>>>> (The
>>>>>>
>>>>>>> query
>>>>>>>>>>>
>>>>>>>>>>>> still get data but not in order).
>>>>>>>>>>>> While this works inside Protege and show questions in order:
>>>>>>>>>>>> SELECT *
>>>>>>>>>>>> WHERE { ?questions dd:hasCategory dd:CatPhysics ; dd:hasLevel
>>>>>>>>>>>>
>>>>>>>>>>> dd:levEasy ;
>>>>>>>>>>>
>>>>>>>>>>>> dd:hasComplexity ?y} order by ?y
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> //This query is in Jena code: I copy here it in Jena syntax
>>>>>>>>>>>>
>>>>>>>>>>>> "SELECT  * " +
>>>>>>>>>>>>                " WHERE { "
>>>>>>>>>>>>               + "?Qs mo:Question ?QsDesc. "
>>>>>>>>>>>>
>>>>>>>>>>>>                + "?QS mo:hasAnswers ?AnsQ. "
>>>>>>>>>>>>                + "?AnsQ mo:hasQuestion ?Qs. "
>>>>>>>>>>>>                + "?AnsQ mo:ChoiceOne ?ANSONE."
>>>>>>>>>>>>                + "?AnsQ mo:ChoiceTwo ?ANSWTWO."
>>>>>>>>>>>>                + "?AnsQ mo:ChoiceThree ?ANSWTHREE."
>>>>>>>>>>>>                + "?AnsQ mo:CorrChoice ?ANSCORR. "
>>>>>>>>>>>>               + "?Qs mo:hasCategory ?Cat. "
>>>>>>>>>>>>                + "?Cat mo:category ?CatName. "
>>>>>>>>>>>>                + "?Qs mo:hasLevel ?lev. "
>>>>>>>>>>>>
>>>>>>>>>>>>               + "?lev mo:level ?LevName. "
>>>>>>>>>>>>               + "?Qs mo:hasScore ?point."
>>>>>>>>>>>>               + "?point mo:score ?Score. "
>>>>>>>>>>>>
>>>>>>>>>>>>                 + "?Qs mo:hasComplexity ?l. "
>>>>>>>>>>>>
>>>>>>>>>>>>                + "FILTER ( ?CatName ='"+ctg+"' ). "
>>>>>>>>>>>>                + "FILTER ( ?LevName ='"+lvl+"' ). "
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>           + "}"
>>>>>>>>>>>>                   + "ORDER BY  (?l) "
>>>>>>>>>>>>                + "";
>>>>>>>>>>>>
>>>>>>>>>>>> --
>>>>>>>> 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
>>>>>>
>>>>>>
>>>>>>
>>>>
>>
>

Re: Query works in Protege, not in Jena code

Posted by Sidra shah <s....@gmail.com>.
I have included the hasComplexity property values just in five questions
and it loads only these five questions, it means it recognizes this
property but again not in order.

Regards

On Sat, Feb 4, 2017 at 7:44 PM, Sidra shah <s....@gmail.com> wrote:

> Hello, I copied the object properties here. I have object property (which
> has problem) hasComplexity. Its domain is Question and range is Complexity
> class. Complexity class have now members A,B,C
>
>
>
> <?xml version="1.0"?>
>
>
> <!DOCTYPE rdf:RDF [
>     <!ENTITY owl "http://www.w3.org/2002/07/owl#" >
>     <!ENTITY xsd "http://www.w3.org/2001/XMLSchema#" >
>     <!ENTITY rdfs "http://www.w3.org/2000/01/rdf-schema#" >
>     <!ENTITY rdf "http://www.w3.org/1999/02/22-rdf-syntax-ns#" >
>     <!ENTITY named "http://www.semanticweb.org/t/ontologies/2016/7/named#"
> >
>     <!ENTITY myOWL "http://www.semanticweb.org/t/ontologies/2016/7/myOWL#"
> >
> ]>
>
>
> <rdf:RDF xmlns="http://www.semanticweb.org/t/ontologies/2016/7/myOWL#"
>      xml:base="http://www.semanticweb.org/t/ontologies/2016/7/myOWL"
>      xmlns:named="http://www.semanticweb.org/t/ontologies/2016/7/named#"
>      xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
>      xmlns:owl="http://www.w3.org/2002/07/owl#"
>      xmlns:xsd="http://www.w3.org/2001/XMLSchema#"
>      xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
>      xmlns:myOWL="http://www.semanticweb.org/t/ontologies/2016/7/myOWL#">
>     <owl:Ontology rdf:about="http://www.semanticweb.org/t/ontologies/
> 2016/7/myOWL"/>
>
>
>
>     <!--
>     ////////////////////////////////////////////////////////////
> ///////////////////////////
>     //
>     // Object Properties
>     //
>     ////////////////////////////////////////////////////////////
> ///////////////////////////
>      -->
>
>
>
>
>
>
>     <!-- http://www.semanticweb.org/t/ontologies/2016/7/myOWL#hasAnswers
> -->
>
>     <owl:ObjectProperty rdf:about="&myOWL;hasAnswers">
>         <rdf:type rdf:resource="&owl;InverseFunctionalProperty"/>
>         <rdfs:range rdf:resource="&myOWL;Answers"/>
>         <rdfs:domain rdf:resource="&myOWL;Questions"/>
>         <owl:inverseOf rdf:resource="&myOWL;hasQuestion"/>
>     </owl:ObjectProperty>
>
>
>
>     <!-- http://www.semanticweb.org/t/ontologies/2016/7/myOWL#hasCategory
> -->
>
>     <owl:ObjectProperty rdf:about="&myOWL;hasCategory"/>
>
>
>
>     <!-- http://www.semanticweb.org/t/ontologies/2016/7/myOWL#
> hasComplexity -->
>
>     <owl:ObjectProperty rdf:about="&myOWL;hasComplexity">
>         <rdfs:range rdf:resource="&myOWL;Complexity"/>
>         <rdfs:domain rdf:resource="&myOWL;Questions"/>
>     </owl:ObjectProperty>
>
>
>
>     <!-- http://www.semanticweb.org/t/ontologies/2016/7/myOWL#hasLevel -->
>
>     <owl:ObjectProperty rdf:about="&myOWL;hasLevel"/>
>
>
>
>     <!-- http://www.semanticweb.org/t/ontologies/2016/7/myOWL#hasQuestion
> -->
>
>     <owl:ObjectProperty rdf:about="&myOWL;hasQuestion">
>         <rdf:type rdf:resource="&owl;InverseFunctionalProperty"/>
>         <rdfs:domain rdf:resource="&myOWL;Answers"/>
>         <rdfs:range rdf:resource="&myOWL;Questions"/>
>     </owl:ObjectProperty>
>
>
>
>     <!-- http://www.semanticweb.org/t/ontologies/2016/7/myOWL#hasScore -->
>
>     <owl:ObjectProperty rdf:about="&myOWL;hasScore"/>
>
>
>
> On Sat, Feb 4, 2017 at 6:58 PM, Andy Seaborne <an...@apache.org> wrote:
>
>>
>>
>> On 04/02/17 14:38, A. Soroka wrote:
>>
>>> Thank you Lorenz, you mean I copy the turtle of my ontology here? It
>>>> will be very large?
>>>>
>>>
>>> Then put it on a site like Github or Pastebin and put a link in your
>>> message.
>>>
>>
>> Then create a small sample that illustrates the problem.
>>
>> A minimal-complete-example is not a dump of everything you have.  It is
>> creating a focused question.  In fact, just the act of creating it can help
>> you understand the problem.
>>
>>     Andy
>>
>>
>>
>>> ---
>>> A. Soroka
>>> The University of Virginia Library
>>>
>>> On Feb 4, 2017, at 7:45 AM, Sidra shah <s....@gmail.com> wrote:
>>>>
>>>> Thank you Lorenz, you mean I copy the turtle of my ontology here? It
>>>> will
>>>> be very large?
>>>>
>>>> Actually what makes me confuse, when I run the same query in
>>>> Protege(with
>>>> all Qs,Ans/Options), it works and order the questions.
>>>> In Jena, the order by part does not work.
>>>>
>>>> Regards
>>>>
>>>> On Sat, Feb 4, 2017 at 2:50 PM, Lorenz B. <
>>>> buehmann@informatik.uni-leipzig.de> wrote:
>>>>
>>>> Sample data is not an abstract description of the data...it is proper
>>>>> instance data, in best case in TURTLE syntax.
>>>>>
>>>>> Sample code is still missing.
>>>>>
>>>>> Sample output is not telling me that something does not work as
>>>>> expected...
>>>>>
>>>>> "Not in the oder you want" is no real specification. The query will
>>>>> order by the URIs of the complexity values. If not it's a bug.
>>>>>
>>>>> But again, we need sample data, sample, code, which is also know as
>>>>> MWE.
>>>>> And also the Jena version is interesting for the developers.
>>>>>
>>>>> SELECT *
>>>>>> WHERE { ?questions dd:hasCategory dd:CatPhysics ; dd:hasLevel
>>>>>> dd:levEasy
>>>>>>
>>>>> ;
>>>>>
>>>>>> dd:hasComplexity ?y} order by ?y
>>>>>>
>>>>>> Lorenz, Each question has three categories (subjects), has level , and
>>>>>> recently I added hasComplexity which has values 1-5. I have added a
>>>>>> Complexity class and its members are 1-5 numbers. Domain is Question
>>>>>>
>>>>> class
>>>>>
>>>>>> and range is Complexity class.
>>>>>> The query inside Jena works, load questions/answers/choices etc but
>>>>>> not
>>>>>>
>>>>> in
>>>>>
>>>>>> the order I want.
>>>>>>
>>>>>> Regards
>>>>>>
>>>>>> On Sat, Feb 4, 2017 at 1:44 PM, Lorenz B. <
>>>>>> buehmann@informatik.uni-leipzig.de> wrote:
>>>>>>
>>>>>> That doesn't answer my question. Can you try to compare the same
>>>>>>> queries
>>>>>>> please?
>>>>>>>
>>>>>>> Moreover what's missing:
>>>>>>>
>>>>>>> 1. sample code
>>>>>>> 2. sample data
>>>>>>> 3. sample output
>>>>>>>
>>>>>>> The queries are different because in Protege I retrieve only
>>>>>>>> questions
>>>>>>>>
>>>>>>> and
>>>>>>>
>>>>>>>> their complexity number while in Jena I get questions, answers,
>>>>>>>>
>>>>>>> choices,
>>>>>
>>>>>> scores and its complexity order.
>>>>>>>>
>>>>>>>> Regards
>>>>>>>>
>>>>>>>> On Fri, Feb 3, 2017 at 6:36 PM, Sidra shah <s....@gmail.com>
>>>>>>>>
>>>>>>> wrote:
>>>>>>>
>>>>>>>> Thank you Lorenz, 1,2,3,4,5 are resources and it has URIs. Question
>>>>>>>>>
>>>>>>>> has
>>>>>
>>>>>> object property and value will be selected from one of the five values
>>>>>>>>>
>>>>>>>> in
>>>>>>>
>>>>>>>> the owl file.
>>>>>>>>>
>>>>>>>>> Regards
>>>>>>>>>
>>>>>>>>> On Fri, Feb 3, 2017 at 6:26 PM, Lorenz Buehmann
>>>>>>>>>
>>>>>>>> <buehmann@informatik.uni-
>>>>>>>
>>>>>>>> leipzig.de> wrote:
>>>>>>>>>
>>>>>>>>> "object property hasComplexity (its values are 1,2,3,4,5)"
>>>>>>>>>>
>>>>>>>>>> -> why do you say it's an object property if the values are
>>>>>>>>>>
>>>>>>>>> numerical?
>>>>>
>>>>>>
>>>>>>>>>>
>>>>>>>>>> Moreover, you compare two different queries and then say one
>>>>>>>>>> works in
>>>>>>>>>> Protege, the other not. That is a totally useless statement. It
>>>>>>>>>>
>>>>>>>>> should
>>>>>
>>>>>> be clear that you should compare the SAME queries
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> It remains open what kind of RDF term the complexity values
>>>>>>>>>> are...literals or resources
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> On 03.02.2017 16:18, Sidra shah wrote:
>>>>>>>>>>
>>>>>>>>>>> Hello, This query works fine and get data i-e Questions, answers,
>>>>>>>>>>>
>>>>>>>>>> choices
>>>>>>>>>>
>>>>>>>>>>> and their score. But when I want to include object property
>>>>>>>>>>>
>>>>>>>>>> hasComplexity
>>>>>>>>>>
>>>>>>>>>>> (its values are 1,2,3,4,5) and try to order it, its not working.
>>>>>>>>>>>
>>>>>>>>>> (The
>>>>>
>>>>>> query
>>>>>>>>>>
>>>>>>>>>>> still get data but not in order).
>>>>>>>>>>> While this works inside Protege and show questions in order:
>>>>>>>>>>> SELECT *
>>>>>>>>>>> WHERE { ?questions dd:hasCategory dd:CatPhysics ; dd:hasLevel
>>>>>>>>>>>
>>>>>>>>>> dd:levEasy ;
>>>>>>>>>>
>>>>>>>>>>> dd:hasComplexity ?y} order by ?y
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> //This query is in Jena code: I copy here it in Jena syntax
>>>>>>>>>>>
>>>>>>>>>>> "SELECT  * " +
>>>>>>>>>>>                " WHERE { "
>>>>>>>>>>>               + "?Qs mo:Question ?QsDesc. "
>>>>>>>>>>>
>>>>>>>>>>>                + "?QS mo:hasAnswers ?AnsQ. "
>>>>>>>>>>>                + "?AnsQ mo:hasQuestion ?Qs. "
>>>>>>>>>>>                + "?AnsQ mo:ChoiceOne ?ANSONE."
>>>>>>>>>>>                + "?AnsQ mo:ChoiceTwo ?ANSWTWO."
>>>>>>>>>>>                + "?AnsQ mo:ChoiceThree ?ANSWTHREE."
>>>>>>>>>>>                + "?AnsQ mo:CorrChoice ?ANSCORR. "
>>>>>>>>>>>               + "?Qs mo:hasCategory ?Cat. "
>>>>>>>>>>>                + "?Cat mo:category ?CatName. "
>>>>>>>>>>>                + "?Qs mo:hasLevel ?lev. "
>>>>>>>>>>>
>>>>>>>>>>>               + "?lev mo:level ?LevName. "
>>>>>>>>>>>               + "?Qs mo:hasScore ?point."
>>>>>>>>>>>               + "?point mo:score ?Score. "
>>>>>>>>>>>
>>>>>>>>>>>                 + "?Qs mo:hasComplexity ?l. "
>>>>>>>>>>>
>>>>>>>>>>>                + "FILTER ( ?CatName ='"+ctg+"' ). "
>>>>>>>>>>>                + "FILTER ( ?LevName ='"+lvl+"' ). "
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>           + "}"
>>>>>>>>>>>                   + "ORDER BY  (?l) "
>>>>>>>>>>>                + "";
>>>>>>>>>>>
>>>>>>>>>>> --
>>>>>>> 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
>>>>>
>>>>>
>>>>>
>>>
>

Re: Query works in Protege, not in Jena code

Posted by Sidra shah <s....@gmail.com>.
Hello, I copied the object properties here. I have object property (which
has problem) hasComplexity. Its domain is Question and range is Complexity
class. Complexity class have now members A,B,C



<?xml version="1.0"?>


<!DOCTYPE rdf:RDF [
    <!ENTITY owl "http://www.w3.org/2002/07/owl#" >
    <!ENTITY xsd "http://www.w3.org/2001/XMLSchema#" >
    <!ENTITY rdfs "http://www.w3.org/2000/01/rdf-schema#" >
    <!ENTITY rdf "http://www.w3.org/1999/02/22-rdf-syntax-ns#" >
    <!ENTITY named "http://www.semanticweb.org/t/ontologies/2016/7/named#" >
    <!ENTITY myOWL "http://www.semanticweb.org/t/ontologies/2016/7/myOWL#" >
]>


<rdf:RDF xmlns="http://www.semanticweb.org/t/ontologies/2016/7/myOWL#"
     xml:base="http://www.semanticweb.org/t/ontologies/2016/7/myOWL"
     xmlns:named="http://www.semanticweb.org/t/ontologies/2016/7/named#"
     xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
     xmlns:owl="http://www.w3.org/2002/07/owl#"
     xmlns:xsd="http://www.w3.org/2001/XMLSchema#"
     xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
     xmlns:myOWL="http://www.semanticweb.org/t/ontologies/2016/7/myOWL#">
    <owl:Ontology rdf:about="
http://www.semanticweb.org/t/ontologies/2016/7/myOWL"/>



    <!--

///////////////////////////////////////////////////////////////////////////////////////
    //
    // Object Properties
    //

///////////////////////////////////////////////////////////////////////////////////////
     -->






    <!-- http://www.semanticweb.org/t/ontologies/2016/7/myOWL#hasAnswers -->

    <owl:ObjectProperty rdf:about="&myOWL;hasAnswers">
        <rdf:type rdf:resource="&owl;InverseFunctionalProperty"/>
        <rdfs:range rdf:resource="&myOWL;Answers"/>
        <rdfs:domain rdf:resource="&myOWL;Questions"/>
        <owl:inverseOf rdf:resource="&myOWL;hasQuestion"/>
    </owl:ObjectProperty>



    <!-- http://www.semanticweb.org/t/ontologies/2016/7/myOWL#hasCategory
-->

    <owl:ObjectProperty rdf:about="&myOWL;hasCategory"/>



    <!-- http://www.semanticweb.org/t/ontologies/2016/7/myOWL#hasComplexity
-->

    <owl:ObjectProperty rdf:about="&myOWL;hasComplexity">
        <rdfs:range rdf:resource="&myOWL;Complexity"/>
        <rdfs:domain rdf:resource="&myOWL;Questions"/>
    </owl:ObjectProperty>



    <!-- http://www.semanticweb.org/t/ontologies/2016/7/myOWL#hasLevel -->

    <owl:ObjectProperty rdf:about="&myOWL;hasLevel"/>



    <!-- http://www.semanticweb.org/t/ontologies/2016/7/myOWL#hasQuestion
-->

    <owl:ObjectProperty rdf:about="&myOWL;hasQuestion">
        <rdf:type rdf:resource="&owl;InverseFunctionalProperty"/>
        <rdfs:domain rdf:resource="&myOWL;Answers"/>
        <rdfs:range rdf:resource="&myOWL;Questions"/>
    </owl:ObjectProperty>



    <!-- http://www.semanticweb.org/t/ontologies/2016/7/myOWL#hasScore -->

    <owl:ObjectProperty rdf:about="&myOWL;hasScore"/>



On Sat, Feb 4, 2017 at 6:58 PM, Andy Seaborne <an...@apache.org> wrote:

>
>
> On 04/02/17 14:38, A. Soroka wrote:
>
>> Thank you Lorenz, you mean I copy the turtle of my ontology here? It will
>>> be very large?
>>>
>>
>> Then put it on a site like Github or Pastebin and put a link in your
>> message.
>>
>
> Then create a small sample that illustrates the problem.
>
> A minimal-complete-example is not a dump of everything you have.  It is
> creating a focused question.  In fact, just the act of creating it can help
> you understand the problem.
>
>     Andy
>
>
>
>> ---
>> A. Soroka
>> The University of Virginia Library
>>
>> On Feb 4, 2017, at 7:45 AM, Sidra shah <s....@gmail.com> wrote:
>>>
>>> Thank you Lorenz, you mean I copy the turtle of my ontology here? It will
>>> be very large?
>>>
>>> Actually what makes me confuse, when I run the same query in Protege(with
>>> all Qs,Ans/Options), it works and order the questions.
>>> In Jena, the order by part does not work.
>>>
>>> Regards
>>>
>>> On Sat, Feb 4, 2017 at 2:50 PM, Lorenz B. <
>>> buehmann@informatik.uni-leipzig.de> wrote:
>>>
>>> Sample data is not an abstract description of the data...it is proper
>>>> instance data, in best case in TURTLE syntax.
>>>>
>>>> Sample code is still missing.
>>>>
>>>> Sample output is not telling me that something does not work as
>>>> expected...
>>>>
>>>> "Not in the oder you want" is no real specification. The query will
>>>> order by the URIs of the complexity values. If not it's a bug.
>>>>
>>>> But again, we need sample data, sample, code, which is also know as MWE.
>>>> And also the Jena version is interesting for the developers.
>>>>
>>>> SELECT *
>>>>> WHERE { ?questions dd:hasCategory dd:CatPhysics ; dd:hasLevel
>>>>> dd:levEasy
>>>>>
>>>> ;
>>>>
>>>>> dd:hasComplexity ?y} order by ?y
>>>>>
>>>>> Lorenz, Each question has three categories (subjects), has level , and
>>>>> recently I added hasComplexity which has values 1-5. I have added a
>>>>> Complexity class and its members are 1-5 numbers. Domain is Question
>>>>>
>>>> class
>>>>
>>>>> and range is Complexity class.
>>>>> The query inside Jena works, load questions/answers/choices etc but not
>>>>>
>>>> in
>>>>
>>>>> the order I want.
>>>>>
>>>>> Regards
>>>>>
>>>>> On Sat, Feb 4, 2017 at 1:44 PM, Lorenz B. <
>>>>> buehmann@informatik.uni-leipzig.de> wrote:
>>>>>
>>>>> That doesn't answer my question. Can you try to compare the same
>>>>>> queries
>>>>>> please?
>>>>>>
>>>>>> Moreover what's missing:
>>>>>>
>>>>>> 1. sample code
>>>>>> 2. sample data
>>>>>> 3. sample output
>>>>>>
>>>>>> The queries are different because in Protege I retrieve only questions
>>>>>>>
>>>>>> and
>>>>>>
>>>>>>> their complexity number while in Jena I get questions, answers,
>>>>>>>
>>>>>> choices,
>>>>
>>>>> scores and its complexity order.
>>>>>>>
>>>>>>> Regards
>>>>>>>
>>>>>>> On Fri, Feb 3, 2017 at 6:36 PM, Sidra shah <s....@gmail.com>
>>>>>>>
>>>>>> wrote:
>>>>>>
>>>>>>> Thank you Lorenz, 1,2,3,4,5 are resources and it has URIs. Question
>>>>>>>>
>>>>>>> has
>>>>
>>>>> object property and value will be selected from one of the five values
>>>>>>>>
>>>>>>> in
>>>>>>
>>>>>>> the owl file.
>>>>>>>>
>>>>>>>> Regards
>>>>>>>>
>>>>>>>> On Fri, Feb 3, 2017 at 6:26 PM, Lorenz Buehmann
>>>>>>>>
>>>>>>> <buehmann@informatik.uni-
>>>>>>
>>>>>>> leipzig.de> wrote:
>>>>>>>>
>>>>>>>> "object property hasComplexity (its values are 1,2,3,4,5)"
>>>>>>>>>
>>>>>>>>> -> why do you say it's an object property if the values are
>>>>>>>>>
>>>>>>>> numerical?
>>>>
>>>>>
>>>>>>>>>
>>>>>>>>> Moreover, you compare two different queries and then say one works
>>>>>>>>> in
>>>>>>>>> Protege, the other not. That is a totally useless statement. It
>>>>>>>>>
>>>>>>>> should
>>>>
>>>>> be clear that you should compare the SAME queries
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> It remains open what kind of RDF term the complexity values
>>>>>>>>> are...literals or resources
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> On 03.02.2017 16:18, Sidra shah wrote:
>>>>>>>>>
>>>>>>>>>> Hello, This query works fine and get data i-e Questions, answers,
>>>>>>>>>>
>>>>>>>>> choices
>>>>>>>>>
>>>>>>>>>> and their score. But when I want to include object property
>>>>>>>>>>
>>>>>>>>> hasComplexity
>>>>>>>>>
>>>>>>>>>> (its values are 1,2,3,4,5) and try to order it, its not working.
>>>>>>>>>>
>>>>>>>>> (The
>>>>
>>>>> query
>>>>>>>>>
>>>>>>>>>> still get data but not in order).
>>>>>>>>>> While this works inside Protege and show questions in order:
>>>>>>>>>> SELECT *
>>>>>>>>>> WHERE { ?questions dd:hasCategory dd:CatPhysics ; dd:hasLevel
>>>>>>>>>>
>>>>>>>>> dd:levEasy ;
>>>>>>>>>
>>>>>>>>>> dd:hasComplexity ?y} order by ?y
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> //This query is in Jena code: I copy here it in Jena syntax
>>>>>>>>>>
>>>>>>>>>> "SELECT  * " +
>>>>>>>>>>                " WHERE { "
>>>>>>>>>>               + "?Qs mo:Question ?QsDesc. "
>>>>>>>>>>
>>>>>>>>>>                + "?QS mo:hasAnswers ?AnsQ. "
>>>>>>>>>>                + "?AnsQ mo:hasQuestion ?Qs. "
>>>>>>>>>>                + "?AnsQ mo:ChoiceOne ?ANSONE."
>>>>>>>>>>                + "?AnsQ mo:ChoiceTwo ?ANSWTWO."
>>>>>>>>>>                + "?AnsQ mo:ChoiceThree ?ANSWTHREE."
>>>>>>>>>>                + "?AnsQ mo:CorrChoice ?ANSCORR. "
>>>>>>>>>>               + "?Qs mo:hasCategory ?Cat. "
>>>>>>>>>>                + "?Cat mo:category ?CatName. "
>>>>>>>>>>                + "?Qs mo:hasLevel ?lev. "
>>>>>>>>>>
>>>>>>>>>>               + "?lev mo:level ?LevName. "
>>>>>>>>>>               + "?Qs mo:hasScore ?point."
>>>>>>>>>>               + "?point mo:score ?Score. "
>>>>>>>>>>
>>>>>>>>>>                 + "?Qs mo:hasComplexity ?l. "
>>>>>>>>>>
>>>>>>>>>>                + "FILTER ( ?CatName ='"+ctg+"' ). "
>>>>>>>>>>                + "FILTER ( ?LevName ='"+lvl+"' ). "
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>           + "}"
>>>>>>>>>>                   + "ORDER BY  (?l) "
>>>>>>>>>>                + "";
>>>>>>>>>>
>>>>>>>>>> --
>>>>>> 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
>>>>
>>>>
>>>>
>>

Re: Query works in Protege, not in Jena code

Posted by Andy Seaborne <an...@apache.org>.

On 04/02/17 14:38, A. Soroka wrote:
>> Thank you Lorenz, you mean I copy the turtle of my ontology here? It will be very large?
>
> Then put it on a site like Github or Pastebin and put a link in your message.

Then create a small sample that illustrates the problem.

A minimal-complete-example is not a dump of everything you have.  It is 
creating a focused question.  In fact, just the act of creating it can 
help you understand the problem.

     Andy

>
> ---
> A. Soroka
> The University of Virginia Library
>
>> On Feb 4, 2017, at 7:45 AM, Sidra shah <s....@gmail.com> wrote:
>>
>> Thank you Lorenz, you mean I copy the turtle of my ontology here? It will
>> be very large?
>>
>> Actually what makes me confuse, when I run the same query in Protege(with
>> all Qs,Ans/Options), it works and order the questions.
>> In Jena, the order by part does not work.
>>
>> Regards
>>
>> On Sat, Feb 4, 2017 at 2:50 PM, Lorenz B. <
>> buehmann@informatik.uni-leipzig.de> wrote:
>>
>>> Sample data is not an abstract description of the data...it is proper
>>> instance data, in best case in TURTLE syntax.
>>>
>>> Sample code is still missing.
>>>
>>> Sample output is not telling me that something does not work as expected...
>>>
>>> "Not in the oder you want" is no real specification. The query will
>>> order by the URIs of the complexity values. If not it's a bug.
>>>
>>> But again, we need sample data, sample, code, which is also know as MWE.
>>> And also the Jena version is interesting for the developers.
>>>
>>>> SELECT *
>>>> WHERE { ?questions dd:hasCategory dd:CatPhysics ; dd:hasLevel dd:levEasy
>>> ;
>>>> dd:hasComplexity ?y} order by ?y
>>>>
>>>> Lorenz, Each question has three categories (subjects), has level , and
>>>> recently I added hasComplexity which has values 1-5. I have added a
>>>> Complexity class and its members are 1-5 numbers. Domain is Question
>>> class
>>>> and range is Complexity class.
>>>> The query inside Jena works, load questions/answers/choices etc but not
>>> in
>>>> the order I want.
>>>>
>>>> Regards
>>>>
>>>> On Sat, Feb 4, 2017 at 1:44 PM, Lorenz B. <
>>>> buehmann@informatik.uni-leipzig.de> wrote:
>>>>
>>>>> That doesn't answer my question. Can you try to compare the same queries
>>>>> please?
>>>>>
>>>>> Moreover what's missing:
>>>>>
>>>>> 1. sample code
>>>>> 2. sample data
>>>>> 3. sample output
>>>>>
>>>>>> The queries are different because in Protege I retrieve only questions
>>>>> and
>>>>>> their complexity number while in Jena I get questions, answers,
>>> choices,
>>>>>> scores and its complexity order.
>>>>>>
>>>>>> Regards
>>>>>>
>>>>>> On Fri, Feb 3, 2017 at 6:36 PM, Sidra shah <s....@gmail.com>
>>>>> wrote:
>>>>>>> Thank you Lorenz, 1,2,3,4,5 are resources and it has URIs. Question
>>> has
>>>>>>> object property and value will be selected from one of the five values
>>>>> in
>>>>>>> the owl file.
>>>>>>>
>>>>>>> Regards
>>>>>>>
>>>>>>> On Fri, Feb 3, 2017 at 6:26 PM, Lorenz Buehmann
>>>>> <buehmann@informatik.uni-
>>>>>>> leipzig.de> wrote:
>>>>>>>
>>>>>>>> "object property hasComplexity (its values are 1,2,3,4,5)"
>>>>>>>>
>>>>>>>> -> why do you say it's an object property if the values are
>>> numerical?
>>>>>>>>
>>>>>>>>
>>>>>>>> Moreover, you compare two different queries and then say one works in
>>>>>>>> Protege, the other not. That is a totally useless statement. It
>>> should
>>>>>>>> be clear that you should compare the SAME queries
>>>>>>>>
>>>>>>>>
>>>>>>>> It remains open what kind of RDF term the complexity values
>>>>>>>> are...literals or resources
>>>>>>>>
>>>>>>>>
>>>>>>>> On 03.02.2017 16:18, Sidra shah wrote:
>>>>>>>>> Hello, This query works fine and get data i-e Questions, answers,
>>>>>>>> choices
>>>>>>>>> and their score. But when I want to include object property
>>>>>>>> hasComplexity
>>>>>>>>> (its values are 1,2,3,4,5) and try to order it, its not working.
>>> (The
>>>>>>>> query
>>>>>>>>> still get data but not in order).
>>>>>>>>> While this works inside Protege and show questions in order:
>>>>>>>>> SELECT *
>>>>>>>>> WHERE { ?questions dd:hasCategory dd:CatPhysics ; dd:hasLevel
>>>>>>>> dd:levEasy ;
>>>>>>>>> dd:hasComplexity ?y} order by ?y
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> //This query is in Jena code: I copy here it in Jena syntax
>>>>>>>>>
>>>>>>>>> "SELECT  * " +
>>>>>>>>>                " WHERE { "
>>>>>>>>>               + "?Qs mo:Question ?QsDesc. "
>>>>>>>>>
>>>>>>>>>                + "?QS mo:hasAnswers ?AnsQ. "
>>>>>>>>>                + "?AnsQ mo:hasQuestion ?Qs. "
>>>>>>>>>                + "?AnsQ mo:ChoiceOne ?ANSONE."
>>>>>>>>>                + "?AnsQ mo:ChoiceTwo ?ANSWTWO."
>>>>>>>>>                + "?AnsQ mo:ChoiceThree ?ANSWTHREE."
>>>>>>>>>                + "?AnsQ mo:CorrChoice ?ANSCORR. "
>>>>>>>>>               + "?Qs mo:hasCategory ?Cat. "
>>>>>>>>>                + "?Cat mo:category ?CatName. "
>>>>>>>>>                + "?Qs mo:hasLevel ?lev. "
>>>>>>>>>
>>>>>>>>>               + "?lev mo:level ?LevName. "
>>>>>>>>>               + "?Qs mo:hasScore ?point."
>>>>>>>>>               + "?point mo:score ?Score. "
>>>>>>>>>
>>>>>>>>>                 + "?Qs mo:hasComplexity ?l. "
>>>>>>>>>
>>>>>>>>>                + "FILTER ( ?CatName ='"+ctg+"' ). "
>>>>>>>>>                + "FILTER ( ?LevName ='"+lvl+"' ). "
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>           + "}"
>>>>>>>>>                   + "ORDER BY  (?l) "
>>>>>>>>>                + "";
>>>>>>>>>
>>>>> --
>>>>> 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
>>>
>>>
>

Re: Query works in Protege, not in Jena code

Posted by "A. Soroka" <aj...@virginia.edu>.
> Thank you Lorenz, you mean I copy the turtle of my ontology here? It will be very large?

Then put it on a site like Github or Pastebin and put a link in your message.

---
A. Soroka
The University of Virginia Library

> On Feb 4, 2017, at 7:45 AM, Sidra shah <s....@gmail.com> wrote:
> 
> Thank you Lorenz, you mean I copy the turtle of my ontology here? It will
> be very large?
> 
> Actually what makes me confuse, when I run the same query in Protege(with
> all Qs,Ans/Options), it works and order the questions.
> In Jena, the order by part does not work.
> 
> Regards
> 
> On Sat, Feb 4, 2017 at 2:50 PM, Lorenz B. <
> buehmann@informatik.uni-leipzig.de> wrote:
> 
>> Sample data is not an abstract description of the data...it is proper
>> instance data, in best case in TURTLE syntax.
>> 
>> Sample code is still missing.
>> 
>> Sample output is not telling me that something does not work as expected...
>> 
>> "Not in the oder you want" is no real specification. The query will
>> order by the URIs of the complexity values. If not it's a bug.
>> 
>> But again, we need sample data, sample, code, which is also know as MWE.
>> And also the Jena version is interesting for the developers.
>> 
>>> SELECT *
>>> WHERE { ?questions dd:hasCategory dd:CatPhysics ; dd:hasLevel dd:levEasy
>> ;
>>> dd:hasComplexity ?y} order by ?y
>>> 
>>> Lorenz, Each question has three categories (subjects), has level , and
>>> recently I added hasComplexity which has values 1-5. I have added a
>>> Complexity class and its members are 1-5 numbers. Domain is Question
>> class
>>> and range is Complexity class.
>>> The query inside Jena works, load questions/answers/choices etc but not
>> in
>>> the order I want.
>>> 
>>> Regards
>>> 
>>> On Sat, Feb 4, 2017 at 1:44 PM, Lorenz B. <
>>> buehmann@informatik.uni-leipzig.de> wrote:
>>> 
>>>> That doesn't answer my question. Can you try to compare the same queries
>>>> please?
>>>> 
>>>> Moreover what's missing:
>>>> 
>>>> 1. sample code
>>>> 2. sample data
>>>> 3. sample output
>>>> 
>>>>> The queries are different because in Protege I retrieve only questions
>>>> and
>>>>> their complexity number while in Jena I get questions, answers,
>> choices,
>>>>> scores and its complexity order.
>>>>> 
>>>>> Regards
>>>>> 
>>>>> On Fri, Feb 3, 2017 at 6:36 PM, Sidra shah <s....@gmail.com>
>>>> wrote:
>>>>>> Thank you Lorenz, 1,2,3,4,5 are resources and it has URIs. Question
>> has
>>>>>> object property and value will be selected from one of the five values
>>>> in
>>>>>> the owl file.
>>>>>> 
>>>>>> Regards
>>>>>> 
>>>>>> On Fri, Feb 3, 2017 at 6:26 PM, Lorenz Buehmann
>>>> <buehmann@informatik.uni-
>>>>>> leipzig.de> wrote:
>>>>>> 
>>>>>>> "object property hasComplexity (its values are 1,2,3,4,5)"
>>>>>>> 
>>>>>>> -> why do you say it's an object property if the values are
>> numerical?
>>>>>>> 
>>>>>>> 
>>>>>>> Moreover, you compare two different queries and then say one works in
>>>>>>> Protege, the other not. That is a totally useless statement. It
>> should
>>>>>>> be clear that you should compare the SAME queries
>>>>>>> 
>>>>>>> 
>>>>>>> It remains open what kind of RDF term the complexity values
>>>>>>> are...literals or resources
>>>>>>> 
>>>>>>> 
>>>>>>> On 03.02.2017 16:18, Sidra shah wrote:
>>>>>>>> Hello, This query works fine and get data i-e Questions, answers,
>>>>>>> choices
>>>>>>>> and their score. But when I want to include object property
>>>>>>> hasComplexity
>>>>>>>> (its values are 1,2,3,4,5) and try to order it, its not working.
>> (The
>>>>>>> query
>>>>>>>> still get data but not in order).
>>>>>>>> While this works inside Protege and show questions in order:
>>>>>>>> SELECT *
>>>>>>>> WHERE { ?questions dd:hasCategory dd:CatPhysics ; dd:hasLevel
>>>>>>> dd:levEasy ;
>>>>>>>> dd:hasComplexity ?y} order by ?y
>>>>>>>> 
>>>>>>>> 
>>>>>>>> //This query is in Jena code: I copy here it in Jena syntax
>>>>>>>> 
>>>>>>>> "SELECT  * " +
>>>>>>>>                " WHERE { "
>>>>>>>>               + "?Qs mo:Question ?QsDesc. "
>>>>>>>> 
>>>>>>>>                + "?QS mo:hasAnswers ?AnsQ. "
>>>>>>>>                + "?AnsQ mo:hasQuestion ?Qs. "
>>>>>>>>                + "?AnsQ mo:ChoiceOne ?ANSONE."
>>>>>>>>                + "?AnsQ mo:ChoiceTwo ?ANSWTWO."
>>>>>>>>                + "?AnsQ mo:ChoiceThree ?ANSWTHREE."
>>>>>>>>                + "?AnsQ mo:CorrChoice ?ANSCORR. "
>>>>>>>>               + "?Qs mo:hasCategory ?Cat. "
>>>>>>>>                + "?Cat mo:category ?CatName. "
>>>>>>>>                + "?Qs mo:hasLevel ?lev. "
>>>>>>>> 
>>>>>>>>               + "?lev mo:level ?LevName. "
>>>>>>>>               + "?Qs mo:hasScore ?point."
>>>>>>>>               + "?point mo:score ?Score. "
>>>>>>>> 
>>>>>>>>                 + "?Qs mo:hasComplexity ?l. "
>>>>>>>> 
>>>>>>>>                + "FILTER ( ?CatName ='"+ctg+"' ). "
>>>>>>>>                + "FILTER ( ?LevName ='"+lvl+"' ). "
>>>>>>>> 
>>>>>>>> 
>>>>>>>>           + "}"
>>>>>>>>                   + "ORDER BY  (?l) "
>>>>>>>>                + "";
>>>>>>>> 
>>>> --
>>>> 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
>> 
>> 


Re: Query works in Protege, not in Jena code

Posted by Sidra shah <s....@gmail.com>.
Thank you Lorenz, you mean I copy the turtle of my ontology here? It will
be very large?

Actually what makes me confuse, when I run the same query in Protege(with
all Qs,Ans/Options), it works and order the questions.
In Jena, the order by part does not work.

Regards

On Sat, Feb 4, 2017 at 2:50 PM, Lorenz B. <
buehmann@informatik.uni-leipzig.de> wrote:

> Sample data is not an abstract description of the data...it is proper
> instance data, in best case in TURTLE syntax.
>
> Sample code is still missing.
>
> Sample output is not telling me that something does not work as expected...
>
> "Not in the oder you want" is no real specification. The query will
> order by the URIs of the complexity values. If not it's a bug.
>
> But again, we need sample data, sample, code, which is also know as MWE.
> And also the Jena version is interesting for the developers.
>
> > SELECT *
> > WHERE { ?questions dd:hasCategory dd:CatPhysics ; dd:hasLevel dd:levEasy
> ;
> > dd:hasComplexity ?y} order by ?y
> >
> > Lorenz, Each question has three categories (subjects), has level , and
> > recently I added hasComplexity which has values 1-5. I have added a
> > Complexity class and its members are 1-5 numbers. Domain is Question
> class
> > and range is Complexity class.
> > The query inside Jena works, load questions/answers/choices etc but not
> in
> > the order I want.
> >
> > Regards
> >
> > On Sat, Feb 4, 2017 at 1:44 PM, Lorenz B. <
> > buehmann@informatik.uni-leipzig.de> wrote:
> >
> >> That doesn't answer my question. Can you try to compare the same queries
> >> please?
> >>
> >> Moreover what's missing:
> >>
> >> 1. sample code
> >> 2. sample data
> >> 3. sample output
> >>
> >>> The queries are different because in Protege I retrieve only questions
> >> and
> >>> their complexity number while in Jena I get questions, answers,
> choices,
> >>> scores and its complexity order.
> >>>
> >>> Regards
> >>>
> >>> On Fri, Feb 3, 2017 at 6:36 PM, Sidra shah <s....@gmail.com>
> >> wrote:
> >>>> Thank you Lorenz, 1,2,3,4,5 are resources and it has URIs. Question
> has
> >>>> object property and value will be selected from one of the five values
> >> in
> >>>> the owl file.
> >>>>
> >>>> Regards
> >>>>
> >>>> On Fri, Feb 3, 2017 at 6:26 PM, Lorenz Buehmann
> >> <buehmann@informatik.uni-
> >>>> leipzig.de> wrote:
> >>>>
> >>>>> "object property hasComplexity (its values are 1,2,3,4,5)"
> >>>>>
> >>>>> -> why do you say it's an object property if the values are
> numerical?
> >>>>>
> >>>>>
> >>>>> Moreover, you compare two different queries and then say one works in
> >>>>> Protege, the other not. That is a totally useless statement. It
> should
> >>>>> be clear that you should compare the SAME queries
> >>>>>
> >>>>>
> >>>>> It remains open what kind of RDF term the complexity values
> >>>>> are...literals or resources
> >>>>>
> >>>>>
> >>>>> On 03.02.2017 16:18, Sidra shah wrote:
> >>>>>> Hello, This query works fine and get data i-e Questions, answers,
> >>>>> choices
> >>>>>> and their score. But when I want to include object property
> >>>>> hasComplexity
> >>>>>> (its values are 1,2,3,4,5) and try to order it, its not working.
> (The
> >>>>> query
> >>>>>> still get data but not in order).
> >>>>>> While this works inside Protege and show questions in order:
> >>>>>> SELECT *
> >>>>>> WHERE { ?questions dd:hasCategory dd:CatPhysics ; dd:hasLevel
> >>>>> dd:levEasy ;
> >>>>>> dd:hasComplexity ?y} order by ?y
> >>>>>>
> >>>>>>
> >>>>>> //This query is in Jena code: I copy here it in Jena syntax
> >>>>>>
> >>>>>>  "SELECT  * " +
> >>>>>>                 " WHERE { "
> >>>>>>                + "?Qs mo:Question ?QsDesc. "
> >>>>>>
> >>>>>>                 + "?QS mo:hasAnswers ?AnsQ. "
> >>>>>>                 + "?AnsQ mo:hasQuestion ?Qs. "
> >>>>>>                 + "?AnsQ mo:ChoiceOne ?ANSONE."
> >>>>>>                 + "?AnsQ mo:ChoiceTwo ?ANSWTWO."
> >>>>>>                 + "?AnsQ mo:ChoiceThree ?ANSWTHREE."
> >>>>>>                 + "?AnsQ mo:CorrChoice ?ANSCORR. "
> >>>>>>                + "?Qs mo:hasCategory ?Cat. "
> >>>>>>                 + "?Cat mo:category ?CatName. "
> >>>>>>                 + "?Qs mo:hasLevel ?lev. "
> >>>>>>
> >>>>>>                + "?lev mo:level ?LevName. "
> >>>>>>                + "?Qs mo:hasScore ?point."
> >>>>>>                + "?point mo:score ?Score. "
> >>>>>>
> >>>>>>                  + "?Qs mo:hasComplexity ?l. "
> >>>>>>
> >>>>>>                 + "FILTER ( ?CatName ='"+ctg+"' ). "
> >>>>>>                 + "FILTER ( ?LevName ='"+lvl+"' ). "
> >>>>>>
> >>>>>>
> >>>>>>            + "}"
> >>>>>>                    + "ORDER BY  (?l) "
> >>>>>>                 + "";
> >>>>>>
> >> --
> >> 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
>
>

Re: Query works in Protege, not in Jena code

Posted by "Lorenz B." <bu...@informatik.uni-leipzig.de>.
Sample data is not an abstract description of the data...it is proper
instance data, in best case in TURTLE syntax.

Sample code is still missing.

Sample output is not telling me that something does not work as expected...

"Not in the oder you want" is no real specification. The query will
order by the URIs of the complexity values. If not it's a bug.

But again, we need sample data, sample, code, which is also know as MWE.
And also the Jena version is interesting for the developers.

> SELECT *
> WHERE { ?questions dd:hasCategory dd:CatPhysics ; dd:hasLevel dd:levEasy ;
> dd:hasComplexity ?y} order by ?y
>
> Lorenz, Each question has three categories (subjects), has level , and
> recently I added hasComplexity which has values 1-5. I have added a
> Complexity class and its members are 1-5 numbers. Domain is Question class
> and range is Complexity class.
> The query inside Jena works, load questions/answers/choices etc but not in
> the order I want.
>
> Regards
>
> On Sat, Feb 4, 2017 at 1:44 PM, Lorenz B. <
> buehmann@informatik.uni-leipzig.de> wrote:
>
>> That doesn't answer my question. Can you try to compare the same queries
>> please?
>>
>> Moreover what's missing:
>>
>> 1. sample code
>> 2. sample data
>> 3. sample output
>>
>>> The queries are different because in Protege I retrieve only questions
>> and
>>> their complexity number while in Jena I get questions, answers, choices,
>>> scores and its complexity order.
>>>
>>> Regards
>>>
>>> On Fri, Feb 3, 2017 at 6:36 PM, Sidra shah <s....@gmail.com>
>> wrote:
>>>> Thank you Lorenz, 1,2,3,4,5 are resources and it has URIs. Question has
>>>> object property and value will be selected from one of the five values
>> in
>>>> the owl file.
>>>>
>>>> Regards
>>>>
>>>> On Fri, Feb 3, 2017 at 6:26 PM, Lorenz Buehmann
>> <buehmann@informatik.uni-
>>>> leipzig.de> wrote:
>>>>
>>>>> "object property hasComplexity (its values are 1,2,3,4,5)"
>>>>>
>>>>> -> why do you say it's an object property if the values are numerical?
>>>>>
>>>>>
>>>>> Moreover, you compare two different queries and then say one works in
>>>>> Protege, the other not. That is a totally useless statement. It should
>>>>> be clear that you should compare the SAME queries
>>>>>
>>>>>
>>>>> It remains open what kind of RDF term the complexity values
>>>>> are...literals or resources
>>>>>
>>>>>
>>>>> On 03.02.2017 16:18, Sidra shah wrote:
>>>>>> Hello, This query works fine and get data i-e Questions, answers,
>>>>> choices
>>>>>> and their score. But when I want to include object property
>>>>> hasComplexity
>>>>>> (its values are 1,2,3,4,5) and try to order it, its not working. (The
>>>>> query
>>>>>> still get data but not in order).
>>>>>> While this works inside Protege and show questions in order:
>>>>>> SELECT *
>>>>>> WHERE { ?questions dd:hasCategory dd:CatPhysics ; dd:hasLevel
>>>>> dd:levEasy ;
>>>>>> dd:hasComplexity ?y} order by ?y
>>>>>>
>>>>>>
>>>>>> //This query is in Jena code: I copy here it in Jena syntax
>>>>>>
>>>>>>  "SELECT  * " +
>>>>>>                 " WHERE { "
>>>>>>                + "?Qs mo:Question ?QsDesc. "
>>>>>>
>>>>>>                 + "?QS mo:hasAnswers ?AnsQ. "
>>>>>>                 + "?AnsQ mo:hasQuestion ?Qs. "
>>>>>>                 + "?AnsQ mo:ChoiceOne ?ANSONE."
>>>>>>                 + "?AnsQ mo:ChoiceTwo ?ANSWTWO."
>>>>>>                 + "?AnsQ mo:ChoiceThree ?ANSWTHREE."
>>>>>>                 + "?AnsQ mo:CorrChoice ?ANSCORR. "
>>>>>>                + "?Qs mo:hasCategory ?Cat. "
>>>>>>                 + "?Cat mo:category ?CatName. "
>>>>>>                 + "?Qs mo:hasLevel ?lev. "
>>>>>>
>>>>>>                + "?lev mo:level ?LevName. "
>>>>>>                + "?Qs mo:hasScore ?point."
>>>>>>                + "?point mo:score ?Score. "
>>>>>>
>>>>>>                  + "?Qs mo:hasComplexity ?l. "
>>>>>>
>>>>>>                 + "FILTER ( ?CatName ='"+ctg+"' ). "
>>>>>>                 + "FILTER ( ?LevName ='"+lvl+"' ). "
>>>>>>
>>>>>>
>>>>>>            + "}"
>>>>>>                    + "ORDER BY  (?l) "
>>>>>>                 + "";
>>>>>>
>> --
>> 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


Re: Query works in Protege, not in Jena code

Posted by Sidra shah <s....@gmail.com>.
SELECT *
WHERE { ?questions dd:hasCategory dd:CatPhysics ; dd:hasLevel dd:levEasy ;
dd:hasComplexity ?y} order by ?y

Lorenz, Each question has three categories (subjects), has level , and
recently I added hasComplexity which has values 1-5. I have added a
Complexity class and its members are 1-5 numbers. Domain is Question class
and range is Complexity class.
The query inside Jena works, load questions/answers/choices etc but not in
the order I want.

Regards

On Sat, Feb 4, 2017 at 1:44 PM, Lorenz B. <
buehmann@informatik.uni-leipzig.de> wrote:

> That doesn't answer my question. Can you try to compare the same queries
> please?
>
> Moreover what's missing:
>
> 1. sample code
> 2. sample data
> 3. sample output
>
> > The queries are different because in Protege I retrieve only questions
> and
> > their complexity number while in Jena I get questions, answers, choices,
> > scores and its complexity order.
> >
> > Regards
> >
> > On Fri, Feb 3, 2017 at 6:36 PM, Sidra shah <s....@gmail.com>
> wrote:
> >
> >> Thank you Lorenz, 1,2,3,4,5 are resources and it has URIs. Question has
> >> object property and value will be selected from one of the five values
> in
> >> the owl file.
> >>
> >> Regards
> >>
> >> On Fri, Feb 3, 2017 at 6:26 PM, Lorenz Buehmann
> <buehmann@informatik.uni-
> >> leipzig.de> wrote:
> >>
> >>> "object property hasComplexity (its values are 1,2,3,4,5)"
> >>>
> >>> -> why do you say it's an object property if the values are numerical?
> >>>
> >>>
> >>> Moreover, you compare two different queries and then say one works in
> >>> Protege, the other not. That is a totally useless statement. It should
> >>> be clear that you should compare the SAME queries
> >>>
> >>>
> >>> It remains open what kind of RDF term the complexity values
> >>> are...literals or resources
> >>>
> >>>
> >>> On 03.02.2017 16:18, Sidra shah wrote:
> >>>> Hello, This query works fine and get data i-e Questions, answers,
> >>> choices
> >>>> and their score. But when I want to include object property
> >>> hasComplexity
> >>>> (its values are 1,2,3,4,5) and try to order it, its not working. (The
> >>> query
> >>>> still get data but not in order).
> >>>> While this works inside Protege and show questions in order:
> >>>> SELECT *
> >>>> WHERE { ?questions dd:hasCategory dd:CatPhysics ; dd:hasLevel
> >>> dd:levEasy ;
> >>>> dd:hasComplexity ?y} order by ?y
> >>>>
> >>>>
> >>>> //This query is in Jena code: I copy here it in Jena syntax
> >>>>
> >>>>  "SELECT  * " +
> >>>>                 " WHERE { "
> >>>>                + "?Qs mo:Question ?QsDesc. "
> >>>>
> >>>>                 + "?QS mo:hasAnswers ?AnsQ. "
> >>>>                 + "?AnsQ mo:hasQuestion ?Qs. "
> >>>>                 + "?AnsQ mo:ChoiceOne ?ANSONE."
> >>>>                 + "?AnsQ mo:ChoiceTwo ?ANSWTWO."
> >>>>                 + "?AnsQ mo:ChoiceThree ?ANSWTHREE."
> >>>>                 + "?AnsQ mo:CorrChoice ?ANSCORR. "
> >>>>                + "?Qs mo:hasCategory ?Cat. "
> >>>>                 + "?Cat mo:category ?CatName. "
> >>>>                 + "?Qs mo:hasLevel ?lev. "
> >>>>
> >>>>                + "?lev mo:level ?LevName. "
> >>>>                + "?Qs mo:hasScore ?point."
> >>>>                + "?point mo:score ?Score. "
> >>>>
> >>>>                  + "?Qs mo:hasComplexity ?l. "
> >>>>
> >>>>                 + "FILTER ( ?CatName ='"+ctg+"' ). "
> >>>>                 + "FILTER ( ?LevName ='"+lvl+"' ). "
> >>>>
> >>>>
> >>>>            + "}"
> >>>>                    + "ORDER BY  (?l) "
> >>>>                 + "";
> >>>>
> >>>
> --
> Lorenz Bühmann
> AKSW group, University of Leipzig
> Group: http://aksw.org - semantic web research center
>
>

Re: Query works in Protege, not in Jena code

Posted by "Lorenz B." <bu...@informatik.uni-leipzig.de>.
That doesn't answer my question. Can you try to compare the same queries
please?

Moreover what's missing:

1. sample code
2. sample data
3. sample output

> The queries are different because in Protege I retrieve only questions and
> their complexity number while in Jena I get questions, answers, choices,
> scores and its complexity order.
>
> Regards
>
> On Fri, Feb 3, 2017 at 6:36 PM, Sidra shah <s....@gmail.com> wrote:
>
>> Thank you Lorenz, 1,2,3,4,5 are resources and it has URIs. Question has
>> object property and value will be selected from one of the five values in
>> the owl file.
>>
>> Regards
>>
>> On Fri, Feb 3, 2017 at 6:26 PM, Lorenz Buehmann <buehmann@informatik.uni-
>> leipzig.de> wrote:
>>
>>> "object property hasComplexity (its values are 1,2,3,4,5)"
>>>
>>> -> why do you say it's an object property if the values are numerical?
>>>
>>>
>>> Moreover, you compare two different queries and then say one works in
>>> Protege, the other not. That is a totally useless statement. It should
>>> be clear that you should compare the SAME queries
>>>
>>>
>>> It remains open what kind of RDF term the complexity values
>>> are...literals or resources
>>>
>>>
>>> On 03.02.2017 16:18, Sidra shah wrote:
>>>> Hello, This query works fine and get data i-e Questions, answers,
>>> choices
>>>> and their score. But when I want to include object property
>>> hasComplexity
>>>> (its values are 1,2,3,4,5) and try to order it, its not working. (The
>>> query
>>>> still get data but not in order).
>>>> While this works inside Protege and show questions in order:
>>>> SELECT *
>>>> WHERE { ?questions dd:hasCategory dd:CatPhysics ; dd:hasLevel
>>> dd:levEasy ;
>>>> dd:hasComplexity ?y} order by ?y
>>>>
>>>>
>>>> //This query is in Jena code: I copy here it in Jena syntax
>>>>
>>>>  "SELECT  * " +
>>>>                 " WHERE { "
>>>>                + "?Qs mo:Question ?QsDesc. "
>>>>
>>>>                 + "?QS mo:hasAnswers ?AnsQ. "
>>>>                 + "?AnsQ mo:hasQuestion ?Qs. "
>>>>                 + "?AnsQ mo:ChoiceOne ?ANSONE."
>>>>                 + "?AnsQ mo:ChoiceTwo ?ANSWTWO."
>>>>                 + "?AnsQ mo:ChoiceThree ?ANSWTHREE."
>>>>                 + "?AnsQ mo:CorrChoice ?ANSCORR. "
>>>>                + "?Qs mo:hasCategory ?Cat. "
>>>>                 + "?Cat mo:category ?CatName. "
>>>>                 + "?Qs mo:hasLevel ?lev. "
>>>>
>>>>                + "?lev mo:level ?LevName. "
>>>>                + "?Qs mo:hasScore ?point."
>>>>                + "?point mo:score ?Score. "
>>>>
>>>>                  + "?Qs mo:hasComplexity ?l. "
>>>>
>>>>                 + "FILTER ( ?CatName ='"+ctg+"' ). "
>>>>                 + "FILTER ( ?LevName ='"+lvl+"' ). "
>>>>
>>>>
>>>>            + "}"
>>>>                    + "ORDER BY  (?l) "
>>>>                 + "";
>>>>
>>>
-- 
Lorenz B�hmann
AKSW group, University of Leipzig
Group: http://aksw.org - semantic web research center


Re: Query works in Protege, not in Jena code

Posted by Sidra shah <s....@gmail.com>.
The queries are different because in Protege I retrieve only questions and
their complexity number while in Jena I get questions, answers, choices,
scores and its complexity order.

Regards

On Fri, Feb 3, 2017 at 6:36 PM, Sidra shah <s....@gmail.com> wrote:

> Thank you Lorenz, 1,2,3,4,5 are resources and it has URIs. Question has
> object property and value will be selected from one of the five values in
> the owl file.
>
> Regards
>
> On Fri, Feb 3, 2017 at 6:26 PM, Lorenz Buehmann <buehmann@informatik.uni-
> leipzig.de> wrote:
>
>> "object property hasComplexity (its values are 1,2,3,4,5)"
>>
>> -> why do you say it's an object property if the values are numerical?
>>
>>
>> Moreover, you compare two different queries and then say one works in
>> Protege, the other not. That is a totally useless statement. It should
>> be clear that you should compare the SAME queries
>>
>>
>> It remains open what kind of RDF term the complexity values
>> are...literals or resources
>>
>>
>> On 03.02.2017 16:18, Sidra shah wrote:
>> > Hello, This query works fine and get data i-e Questions, answers,
>> choices
>> > and their score. But when I want to include object property
>> hasComplexity
>> > (its values are 1,2,3,4,5) and try to order it, its not working. (The
>> query
>> > still get data but not in order).
>> > While this works inside Protege and show questions in order:
>> > SELECT *
>> > WHERE { ?questions dd:hasCategory dd:CatPhysics ; dd:hasLevel
>> dd:levEasy ;
>> > dd:hasComplexity ?y} order by ?y
>> >
>> >
>> > //This query is in Jena code: I copy here it in Jena syntax
>> >
>> >  "SELECT  * " +
>> >                 " WHERE { "
>> >                + "?Qs mo:Question ?QsDesc. "
>> >
>> >                 + "?QS mo:hasAnswers ?AnsQ. "
>> >                 + "?AnsQ mo:hasQuestion ?Qs. "
>> >                 + "?AnsQ mo:ChoiceOne ?ANSONE."
>> >                 + "?AnsQ mo:ChoiceTwo ?ANSWTWO."
>> >                 + "?AnsQ mo:ChoiceThree ?ANSWTHREE."
>> >                 + "?AnsQ mo:CorrChoice ?ANSCORR. "
>> >                + "?Qs mo:hasCategory ?Cat. "
>> >                 + "?Cat mo:category ?CatName. "
>> >                 + "?Qs mo:hasLevel ?lev. "
>> >
>> >                + "?lev mo:level ?LevName. "
>> >                + "?Qs mo:hasScore ?point."
>> >                + "?point mo:score ?Score. "
>> >
>> >                  + "?Qs mo:hasComplexity ?l. "
>> >
>> >                 + "FILTER ( ?CatName ='"+ctg+"' ). "
>> >                 + "FILTER ( ?LevName ='"+lvl+"' ). "
>> >
>> >
>> >            + "}"
>> >                    + "ORDER BY  (?l) "
>> >                 + "";
>> >
>>
>>
>

Re: Query works in Protege, not in Jena code

Posted by Sidra shah <s....@gmail.com>.
Thank you Lorenz, 1,2,3,4,5 are resources and it has URIs. Question has
object property and value will be selected from one of the five values in
the owl file.

Regards

On Fri, Feb 3, 2017 at 6:26 PM, Lorenz Buehmann <
buehmann@informatik.uni-leipzig.de> wrote:

> "object property hasComplexity (its values are 1,2,3,4,5)"
>
> -> why do you say it's an object property if the values are numerical?
>
>
> Moreover, you compare two different queries and then say one works in
> Protege, the other not. That is a totally useless statement. It should
> be clear that you should compare the SAME queries
>
>
> It remains open what kind of RDF term the complexity values
> are...literals or resources
>
>
> On 03.02.2017 16:18, Sidra shah wrote:
> > Hello, This query works fine and get data i-e Questions, answers, choices
> > and their score. But when I want to include object property hasComplexity
> > (its values are 1,2,3,4,5) and try to order it, its not working. (The
> query
> > still get data but not in order).
> > While this works inside Protege and show questions in order:
> > SELECT *
> > WHERE { ?questions dd:hasCategory dd:CatPhysics ; dd:hasLevel dd:levEasy
> ;
> > dd:hasComplexity ?y} order by ?y
> >
> >
> > //This query is in Jena code: I copy here it in Jena syntax
> >
> >  "SELECT  * " +
> >                 " WHERE { "
> >                + "?Qs mo:Question ?QsDesc. "
> >
> >                 + "?QS mo:hasAnswers ?AnsQ. "
> >                 + "?AnsQ mo:hasQuestion ?Qs. "
> >                 + "?AnsQ mo:ChoiceOne ?ANSONE."
> >                 + "?AnsQ mo:ChoiceTwo ?ANSWTWO."
> >                 + "?AnsQ mo:ChoiceThree ?ANSWTHREE."
> >                 + "?AnsQ mo:CorrChoice ?ANSCORR. "
> >                + "?Qs mo:hasCategory ?Cat. "
> >                 + "?Cat mo:category ?CatName. "
> >                 + "?Qs mo:hasLevel ?lev. "
> >
> >                + "?lev mo:level ?LevName. "
> >                + "?Qs mo:hasScore ?point."
> >                + "?point mo:score ?Score. "
> >
> >                  + "?Qs mo:hasComplexity ?l. "
> >
> >                 + "FILTER ( ?CatName ='"+ctg+"' ). "
> >                 + "FILTER ( ?LevName ='"+lvl+"' ). "
> >
> >
> >            + "}"
> >                    + "ORDER BY  (?l) "
> >                 + "";
> >
>
>

Re: Query works in Protege, not in Jena code

Posted by Lorenz Buehmann <bu...@informatik.uni-leipzig.de>.
"object property hasComplexity (its values are 1,2,3,4,5)"

-> why do you say it's an object property if the values are numerical?


Moreover, you compare two different queries and then say one works in
Protege, the other not. That is a totally useless statement. It should
be clear that you should compare the SAME queries


It remains open what kind of RDF term the complexity values
are...literals or resources


On 03.02.2017 16:18, Sidra shah wrote:
> Hello, This query works fine and get data i-e Questions, answers, choices
> and their score. But when I want to include object property hasComplexity
> (its values are 1,2,3,4,5) and try to order it, its not working. (The query
> still get data but not in order).
> While this works inside Protege and show questions in order:
> SELECT *
> WHERE { ?questions dd:hasCategory dd:CatPhysics ; dd:hasLevel dd:levEasy ;
> dd:hasComplexity ?y} order by ?y
>
>
> //This query is in Jena code: I copy here it in Jena syntax
>
>  "SELECT  * " +
>                 " WHERE { "
>                + "?Qs mo:Question ?QsDesc. "
>
>                 + "?QS mo:hasAnswers ?AnsQ. "
>                 + "?AnsQ mo:hasQuestion ?Qs. "
>                 + "?AnsQ mo:ChoiceOne ?ANSONE."
>                 + "?AnsQ mo:ChoiceTwo ?ANSWTWO."
>                 + "?AnsQ mo:ChoiceThree ?ANSWTHREE."
>                 + "?AnsQ mo:CorrChoice ?ANSCORR. "
>                + "?Qs mo:hasCategory ?Cat. "
>                 + "?Cat mo:category ?CatName. "
>                 + "?Qs mo:hasLevel ?lev. "
>
>                + "?lev mo:level ?LevName. "
>                + "?Qs mo:hasScore ?point."
>                + "?point mo:score ?Score. "
>
>                  + "?Qs mo:hasComplexity ?l. "
>
>                 + "FILTER ( ?CatName ='"+ctg+"' ). "
>                 + "FILTER ( ?LevName ='"+lvl+"' ). "
>
>
>            + "}"
>                    + "ORDER BY  (?l) "
>                 + "";
>