Re: [ANN] GSoC 2015 Project Mid-term Evaluation (PASS)
Hi, How to integrate my code into the code base? Which of the following one is the desired approach: 1) confidencesun/jena:JENA-491 - apache/jena:master 2) confidencesun/jena:JENA-491 - confidencesun/jena:master - apache/jena:master 3) confidencesun/jena:JENA-491 - apache/jena:JENA-491 - apache/jena:master regards, Qihong On Tue, Jul 7, 2015 at 1:48 AM, Andy Seaborne a...@apache.org wrote: On 05/07/15 15:49, Qihong Lin wrote: Hi, Please check my latest commits [1]. Hi Qihong, As in my other message, that has crossed over at the same time you sent this, it is time to work out the process for delivering to the Jena codebase. Let's start with changes to jena-arq. You will need to work with your mentor for this. Please can we have the discussions regularly on this list. It will make integrating the code into the code base much easier - at the moment, it's quite hard to see how that can be achieved. The latest commit has 300+ changed files almost all from merging with Jena master not your changes. I'm afraid that finding the relevant parts to review from such a large number of files is somewhat difficult. It breaks the github review tools for a start! Andy I just completed the function of QueryEngineHTTP.execConstructQuads(). You can try out the example of query_construct_quad_01() in TestQuery [2]. I'll improve the tests later on, with more questions in the other thread. Thanks! Regards, Qihong [1] https://github.com/confidencesun/jena/commit/07afdbf0fe635d41c302b25a9c51f43802ea903a [2] https://github.com/confidencesun/jena/blob/JENA-491/jena-fuseki2/jena-fuseki-core/src/test/java/org/apache/jena/fuseki/TestQuery.java On Sat, Jul 4, 2015 at 10:08 PM, Ying Jiang jpz6311...@gmail.com wrote: Hi all, FYI, Google announced the mid-term evaluation result of GSoC 2015 project yesterday. The Jena project of Extend CONSTRUCT to build quads (JENA-491) passed the evaluation. Hi Qihong, Thanks a lot for your contribution last month! We expect your excellent work in the coming weeks. The status of the project is a little ahead of the schedule. But the rest work is also challenging. You're supposed to integrate JENA-491 into Fuseki. In addition, the tests should be improved in accordance with the original test framework of jena-arq. Have fun! Cheers, Ying Jiang
Re: [GSoC 2015 - JENA-491] JavaCC with master.jj
Hi, I've studied the jena tests. It looks like that the syntax tests are generated by syn.sh. But the execution tests are not generated by scripts, which are written by hand one by one. Is that true? Since I have enough time, I'd like to directly go for the syn.sh and syn-arq.sh to generate tests for constructing quads. Thanks! regards, Qihong On Tue, Jun 16, 2015 at 9:24 PM, Andy Seaborne a...@apache.org wrote: On 16/06/15 09:06, Qihong Lin wrote: Hi, Thanks! I just marked GRAPH mandatory, and it worked without producing the warnings. I'll look into the details later. By the way, if the new parser is ready, how to test it? I mean, where to drop the unit test code and the query strings to be tested? I'm confused with org.apache.jena.sparql.junit.QueryTest (is that what I need to deal with?). Any guideline or documentation for arq test? regards, Qihong Most testing of queries is by externally defined manifest files (manifest.ttl) jena-arq/testing/ARQ For now, keep it clean and start a new directory jena-arq/testing/ARQ/ConstructQuads with both syntax and execution tests. This is just to keep everything in one place for now. See jena-arq/testing/ARQ/Syntax/Syntax-ARQ/manifest.ttl and jena-arq/testing/ARQ/Construct/manifest.ttl. A manifest can have syntax and execution tests - it so happens that they are in separate places in the current test suite which was input the the working group. A syntax test looks like: :test_1 rdf:type mfx:PositiveSyntaxTestARQ ; dawgt:approval dawgt:NotClassified ; mf:namesyntax-select-expr-01.arq ; mf:action syntax-select-expr-01.arq ;. to parse syntax-select-expr-01.arq, expecting it to be good, and an execution test is an action and a result: :someExecutionTest rdf:type mfx:TestQuery ; mf:nameConstruct Quads 1 ; mf:action [ qt:query q-construct-1.rq ; qt:data data-1.ttl ] ; mf:result results-construct-1.ttl . an action is a query and a data file. There are different styles of layout in different places. The test suite has grown incrementally over the years of SPARQL 1.0 and SPARQL 1.1. Some test come from outside the project. You can test from the command line using the arq.qparse tool. See other message. There is a command qtest for running manifests. Background FYI: You won't need this when put everything in jena-arq/testing/ARQ/ConstructQuads but to explain: the main test syntax suites are auto-generated by syn.sh Part of that is syn-arq.sh. But hand writing syntax easier for now. Andy
Re: [ANN] GSoC 2015 Project Mid-term Evaluation (PASS)
On 09/07/15 15:08, Qihong Lin wrote: Hi, How to integrate my code into the code base? Which of the following one is the desired approach: 1) confidencesun/jena:JENA-491 - apache/jena:master 2) confidencesun/jena:JENA-491 - confidencesun/jena:master - apache/jena:master 3) confidencesun/jena:JENA-491 - apache/jena:JENA-491 - apache/jena:master regards, Qihong I don't know the workflow you used with Marmotta last year. Where I'd like to get to is a pull request (PR) from confidencesun/jena to apache/jena. That PR should cover changes to jena-arq, so master.jj, the interface changes to QueryExecution, the implementation (local dataset) and tests to cover syntax and also to cover execution. Not QueryEngineHTTP for now (nothing to test it with at this point). If you prefer, we can split this up in one PR for syntax - master.jj and syntax tests - and one PR for QueryExecution, implementation and tests. The PR should just be changes you have made, so merging in apache/jena:master before making the pull request and resolving any conflicts should mean that the PR is just the new material from where ever the new work is currently should be done. [I'm a bit confused because the last commits you linked to previously with [1] are commits merged from jena master - there may be commits related to the title add construct quads support to Fuseki but I can't find them ... but then github isn't happy with 341 files changed so I don't know what might have been truncated.] When the PR is done, we can use the github tools to check and review the code so as to prepare it for merging. Does this all make sense? Andy