Hello Izhar,

from the error messages I guess that the data is invalid:


[line: 2, col: 10] Expected BNode or IRI: Got: 
[STRING2:56e1613a0dd8e408f1ca4d9d]


You can check line 2 or post here at least the beginning of the file
(~10 lines or something) that you load into TDB.


Lorenz

> Hi,
>
> I just started learning Jena programming and have very little acquaintance 
> with its APIs. I ran the following code using TDB and a SPARQL query just to 
> test it but I got some errors after running the program. Here is the code:
>
>
> public class TDBexample2 {
>
>
>     public static void main(String[] args) {
>
>         FileManager fm = FileManager.get();
>
>         fm.addLocatorClassLoader(TDBexample2.class.getClassLoader());
>
>         InputStream in = 
> fm.open("/Users/izharullah/workspace/MyTDB/Soil1A.jsonld");
>
>
>         Location location = Location.create 
> ("/Users/izharullah/workspace/MyTDB");
>
>
>         // Load some initial data
>
>         
> TDBLoader.load(TDBInternal.getBaseDatasetGraphTDB(TDBFactory.createDatasetGraph(location)),
>  in, false);
>
>
>
>         String queryString =
>
>
>
>             "SELECT (COUNT(*) AS ?count) { " +
>
>             "    ?s ?p ?o . " +
>
>             "}" ;
>
>
>
>
>
>         Dataset dataset = TDBFactory.createDataset(location);
>
>         dataset.begin(ReadWrite.READ);
>
>         try {
>
>             Query query = QueryFactory.create(queryString);
>
>             QueryExecution qexec = QueryExecutionFactory.create(query, 
> dataset);
>
>             try {
>
>                 ResultSet results = qexec.execSelect();
>
>                 while ( results.hasNext() ) {
>
>                     QuerySolution soln = results.nextSolution();
>
>                     Literal count = soln.getLiteral("count");
>
>                     System.out.println(count);
>
>                 }
>
>             } finally {
>
>                 qexec.close();
>
>             }
>
>         } finally {
>
>             dataset.end();
>
>         }
>
>     }
>
>
> }
>
>
> I got some unexpected errors, here is the snapshot:
>
>
> Exception in thread "main" org.apache.jena.riot.RiotException: [line: 2, col: 
> 10] Expected BNode or IRI: Got: [STRING2:56e1613a0dd8e408f1ca4d9d]
>
> at 
> org.apache.jena.riot.system.ErrorHandlerFactory$ErrorHandlerStd.fatal(ErrorHandlerFactory.java:136)
>
> at org.apache.jena.riot.lang.LangEngine.raiseException(LangEngine.java:165)
>
> at org.apache.jena.riot.lang.LangEngine.exceptionDirect(LangEngine.java:158)
>
> at org.apache.jena.riot.lang.LangEngine.exception(LangEngine.java:151)
>
> at org.apache.jena.riot.lang.LangNTuple.checkIRIOrBNode(LangNTuple.java:90)
>
> at org.apache.jena.riot.lang.LangNQuads.parseOne(LangNQuads.java:86)
>
> at org.apache.jena.riot.lang.LangNQuads.runParser(LangNQuads.java:54)
>
> at org.apache.jena.riot.lang.LangBase.parse(LangBase.java:42)
>
> at 
> org.apache.jena.riot.RDFParserRegistry$ReaderRIOTLang.read(RDFParserRegistry.java:178)
>
> at org.apache.jena.riot.RDFDataMgr.process(RDFDataMgr.java:859)
>
> at org.apache.jena.riot.RDFDataMgr.parse(RDFDataMgr.java:698)
>
> at org.apache.jena.riot.RDFDataMgr.parse(RDFDataMgr.java:677)
>
> at 
> org.apache.jena.tdb.store.bulkloader.BulkLoader.loadQuads$(BulkLoader.java:152)
>
> at 
> org.apache.jena.tdb.store.bulkloader.BulkLoader.loadDataset(BulkLoader.java:115)
>
> at org.apache.jena.tdb.TDBLoader.loadDataset$(TDBLoader.java:265)
>
> at org.apache.jena.tdb.TDBLoader.loadDataset(TDBLoader.java:200)
>
> at org.apache.jena.tdb.TDBLoader.load(TDBLoader.java:85)
>
> at TDBexample2.main(TDBexample2.java:28)
>
>
> Can someone help me what is the problem with the code?
>
> Many thanks in advance.
>
>
> Best regards,
>
>
> Izhar
>
>
-- 
Lorenz Bühmann
AKSW group, University of Leipzig
Group: http://aksw.org - semantic web research center

Reply via email to