You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jena.apache.org by an...@apache.org on 2013/01/25 14:40:39 UTC

svn commit: r1438509 - in /jena/trunk: jena-arq/ReleaseNotes.txt jena-arq/src/main/java/arq/cmdline/ModDatasetGeneral.java jena-arq/src/main/java/arq/rsparql.java jena-tdb/ReleaseNotes.txt jena-tdb/src/main/java/tdb/cmdline/ModTDBDataset.java

Author: andy
Date: Fri Jan 25 13:40:39 2013
New Revision: 1438509

URL: http://svn.apache.org/viewvc?rev=1438509&view=rev
Log:
arq.sparql - read data from any triples or quads format.
tdbquery - align arg naming with arq.sparql for convenience.

Modified:
    jena/trunk/jena-arq/ReleaseNotes.txt
    jena/trunk/jena-arq/src/main/java/arq/cmdline/ModDatasetGeneral.java
    jena/trunk/jena-arq/src/main/java/arq/rsparql.java
    jena/trunk/jena-tdb/ReleaseNotes.txt
    jena/trunk/jena-tdb/src/main/java/tdb/cmdline/ModTDBDataset.java

Modified: jena/trunk/jena-arq/ReleaseNotes.txt
URL: http://svn.apache.org/viewvc/jena/trunk/jena-arq/ReleaseNotes.txt?rev=1438509&r1=1438508&r2=1438509&view=diff
==============================================================================
--- jena/trunk/jena-arq/ReleaseNotes.txt (original)
+++ jena/trunk/jena-arq/ReleaseNotes.txt Fri Jan 25 13:40:39 2013
@@ -6,6 +6,7 @@ ChangeLog for ARQ
 ==== Jena 2.10.0
 
 + Consolidation of versions numbers.
++ Command line SPARQL query reads all data formats (triples and quads) for --data 
 
 * JENA-379 : Incorrect results from a property paths with same subject and object variable.  
 + Introduce RDFParserOutput as output interface for parsers (was Sink<Triple> or Sink<Quad>)

Modified: jena/trunk/jena-arq/src/main/java/arq/cmdline/ModDatasetGeneral.java
URL: http://svn.apache.org/viewvc/jena/trunk/jena-arq/src/main/java/arq/cmdline/ModDatasetGeneral.java?rev=1438509&r1=1438508&r2=1438509&view=diff
==============================================================================
--- jena/trunk/jena-arq/src/main/java/arq/cmdline/ModDatasetGeneral.java (original)
+++ jena/trunk/jena-arq/src/main/java/arq/cmdline/ModDatasetGeneral.java Fri Jan 25 13:40:39 2013
@@ -18,11 +18,8 @@
 
 package arq.cmdline;
 
-import java.util.ArrayList ;
 import java.util.List ;
 
-import org.apache.jena.riot.Lang ;
-import org.apache.jena.riot.RDFLanguages ;
 import org.apache.jena.riot.RDFDataMgr ;
 import arq.cmd.CmdException ;
 
@@ -44,26 +41,33 @@ import com.hp.hpl.jena.util.LocationMapp
 public class ModDatasetGeneral extends ModDataset
 {
     // See also ModDatasetAssembler
-    protected final ArgDecl graphDecl      = new ArgDecl(ArgDecl.HasValue, "graph", "data") ;
+    protected final ArgDecl graphDecl      = new ArgDecl(ArgDecl.HasValue, "graph") ;
+    protected final ArgDecl dataDecl      = new ArgDecl(ArgDecl.HasValue, "data") ;
     protected final ArgDecl namedGraphDecl = new ArgDecl(ArgDecl.HasValue, "named", "namedgraph", "namedGraph", "namedData", "nameddata") ;
     //protected final ArgDecl dataFmtDecl    = new ArgDecl(ArgDecl.HasValue, "fmt", "format") ;
     //protected final ArgDecl dirDecl        = new ArgDecl(ArgDecl.HasValue, "dir") ;
     protected final ArgDecl lmapDecl       = new ArgDecl(ArgDecl.HasValue, "lmap") ;
- 
+    
+    private List<String> dataURLs                = null ;
     private List<String> graphURLs               = null ;
     private List<String> namedGraphURLs          = null ;
     private DataFormat dataSyntax        = null ;
     private FileManager fileManager     = FileManager.get() ;    
 
+    protected ModDatasetGeneral() {}
+    
     @Override
     public void registerWith(CmdGeneral cl)
     {
         cl.getUsage().startCategory("Dataset") ;
+        cl.add(dataDecl,
+               "--data=FILE",
+               "Data for the datset - triple or quad formats") ;
         cl.add(graphDecl,
-               "--graph",
+               "--graph=FILE",
                "Graph for default graph of the datset") ;
         cl.add(namedGraphDecl,
-               "--namedGraph",
+               "--namedGraph=FILE",
                "Add a graph into the dataset as a named graph") ;
         //cl.add(dirDecl) ;
         //cl.add(dataFmtDecl) ;
@@ -75,6 +79,7 @@ public class ModDatasetGeneral extends M
     @Override
     public void processArgs(CmdArgModule cmdLine)
     {
+        dataURLs = cmdLine.getValues(dataDecl) ;
         graphURLs = cmdLine.getValues(graphDecl) ;
         namedGraphURLs = cmdLine.getValues(namedGraphDecl) ;
         
@@ -90,7 +95,8 @@ public class ModDatasetGeneral extends M
     public Dataset createDataset()
     {
         // If nothing specified to the module.  Leave alone and hope the query has FROM/FROM NAMED
-        if ( (graphURLs == null || graphURLs.size() == 0) &&
+        if (  ( dataURLs == null || dataURLs.size() == 0) &&
+              (graphURLs == null || graphURLs.size() == 0) &&
               (namedGraphURLs == null || namedGraphURLs.size() == 0 ) )
             return null ;
         
@@ -105,27 +111,14 @@ public class ModDatasetGeneral extends M
     protected void addGraphs(Dataset ds)
     {
         try {
-            if ( (graphURLs != null) || (namedGraphURLs != null) )
+            if ( dataURLs != null )
             {
-                // Do quads
-                List<String> triples = new ArrayList<String>() ;
-                List<String> quads = new ArrayList<String>() ;
-                
-                for ( String fn : graphURLs )
-                {
-                    Lang lang = RDFLanguages.filenameToLang(fn) ; 
-                    
-                    if ( RDFLanguages.isQuads(lang) )
-                        quads.add(fn) ;
-                    else
-                        triples.add(fn) ;
-                }
-                
-                for ( String fn : quads )
-                    RDFDataMgr.read(ds.asDatasetGraph(), fn) ;
-                dataset = 
-                    DatasetUtils.addInGraphs(ds, triples, namedGraphURLs, fileManager, null) ;
+                for ( String url : dataURLs )
+                    RDFDataMgr.read(ds, url) ;
             }
+            
+            if ( (graphURLs != null) || (namedGraphURLs != null) )
+                ds = DatasetUtils.addInGraphs(ds, graphURLs, namedGraphURLs, fileManager, null) ;
         } 
         catch (LabelExistsException ex)
         { throw new CmdException(ex.getMessage()) ; }

Modified: jena/trunk/jena-arq/src/main/java/arq/rsparql.java
URL: http://svn.apache.org/viewvc/jena/trunk/jena-arq/src/main/java/arq/rsparql.java?rev=1438509&r1=1438508&r2=1438509&view=diff
==============================================================================
--- jena/trunk/jena-arq/src/main/java/arq/rsparql.java (original)
+++ jena/trunk/jena-arq/src/main/java/arq/rsparql.java Fri Jan 25 13:40:39 2013
@@ -20,7 +20,6 @@ package arq;
 
 import arq.cmd.CmdException ;
 import arq.cmdline.CmdARQ ;
-import arq.cmdline.ModDatasetGeneral ;
 import arq.cmdline.ModQueryIn ;
 import arq.cmdline.ModRemote ;
 import arq.cmdline.ModResultsOut ;
@@ -36,7 +35,6 @@ public class rsparql extends CmdARQ
 {
     protected ModQueryIn    modQuery =      new ModQueryIn() ;
     protected ModRemote     modRemote =     new ModRemote() ;
-    protected ModDatasetGeneral modDesc =   new ModDatasetGeneral() ;
     protected ModResultsOut modResults =    new ModResultsOut() ;
 
     public static void main (String... argv)
@@ -50,7 +48,6 @@ public class rsparql extends CmdARQ
         super(argv) ;
         super.addModule(modRemote) ;
         super.addModule(modQuery) ;
-        super.addModule(modDesc) ;
         super.addModule(modResults) ;
     }
     
@@ -70,10 +67,7 @@ public class rsparql extends CmdARQ
 
         try {
             String serviceURL = modRemote.getServiceURL() ;
-            QueryExecution qe = QueryExecutionFactory.sparqlService(serviceURL, query,
-                                                                    modDesc.getGraphURLs(),
-                                                                    modDesc.getNamedGraphURLs()) ;
-
+            QueryExecution qe = QueryExecutionFactory.sparqlService(serviceURL, query) ;
             if ( modRemote.usePost() )
                 HttpQuery.urlLimit = 0 ;
 

Modified: jena/trunk/jena-tdb/ReleaseNotes.txt
URL: http://svn.apache.org/viewvc/jena/trunk/jena-tdb/ReleaseNotes.txt?rev=1438509&r1=1438508&r2=1438509&view=diff
==============================================================================
--- jena/trunk/jena-tdb/ReleaseNotes.txt (original)
+++ jena/trunk/jena-tdb/ReleaseNotes.txt Fri Jan 25 13:40:39 2013
@@ -5,6 +5,7 @@ ChangeLog for TDB
 
 ** TDB 0.10.0 depends on Jena 2.10.0 (ARQ 2.10.0)
 
++ Command line tdbquery: --mem (or --data) reads into an in-memory dadaset and executes the query.
 + JENA-289 : QueryExecution timeouts now cause TDB BGPs to timeout even if they produce no output. 
 + JENA-363 : Fix to handling of integers with absolute values between 2^56 and 2^63.  
 + JENA-346 : Further fixes for default union graph + write transactions.

Modified: jena/trunk/jena-tdb/src/main/java/tdb/cmdline/ModTDBDataset.java
URL: http://svn.apache.org/viewvc/jena/trunk/jena-tdb/src/main/java/tdb/cmdline/ModTDBDataset.java?rev=1438509&r1=1438508&r2=1438509&view=diff
==============================================================================
--- jena/trunk/jena-tdb/src/main/java/tdb/cmdline/ModTDBDataset.java (original)
+++ jena/trunk/jena-tdb/src/main/java/tdb/cmdline/ModTDBDataset.java Fri Jan 25 13:40:39 2013
@@ -46,7 +46,7 @@ public class ModTDBDataset extends ModDa
     // Mixes assembler, location and "tdb"
     // Can make a single model or a dataset
     
-    private ArgDecl argMem                  = new ArgDecl(ArgDecl.HasValue, "mem") ;
+    private ArgDecl argMem                  = new ArgDecl(ArgDecl.HasValue, "mem", "data") ;
     private ModTDBAssembler modAssembler    = new ModTDBAssembler() ;
     private String inMemFile                = null ;