Description
Processing a file with a language tag fails when trying to creating a Literal. RDF4J is stricter about creating Literals with type "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString" and fails.
The following RDF/JSON file fails to process when it tries to create a triple containing a "en" language Literal.
{ "http://rya.apache.org/ns/" : { "http://rya.apache.org/ns/title/" : [ { "value" : "Bob's Homepage", "type" : "literal", "lang" : "en" } ] } }
This is likely happening when converting to/from Statements/RyaStatements.
2018-04-24 16:26:47,728 ERROR [pool-4-thread-1] mongodb.AbstractMongoIndexer (AbstractMongoIndexer.java:prepareStatementForStorage(178)) - Unable to parse the statement: RyaStatement{subject=RyaType{dataType=http://www.w3.org/2001/XMLSchema#anyURI, data='http://rya.apache.org/ns/'}, predicate=RyaType{dataType=http://www.w3.org/2001/XMLSchema#anyURI, data='http://rya.apache.org/ns/title/'}, object=RyaType{dataType=http://www.w3.org/1999/02/22-rdf-syntax-ns#langString, data='Bob's Homepage'}, context=null, qualifier=null, columnVisibility=U, value=null, timestamp=1524601607671}
java.lang.IllegalArgumentException: datatype rdf:langString requires a language tag
at org.eclipse.rdf4j.model.impl.SimpleLiteral.<init>(SimpleLiteral.java:99)
at org.eclipse.rdf4j.model.impl.AbstractValueFactory.createLiteral(AbstractValueFactory.java:118)
at org.apache.rya.api.resolver.RyaToRdfConversions.convertLiteral(RyaToRdfConversions.java:52)
at org.apache.rya.api.resolver.RyaToRdfConversions.convertValue(RyaToRdfConversions.java:59)
at org.apache.rya.api.resolver.RyaToRdfConversions.convertStatement(RyaToRdfConversions.java:72)
at org.apache.rya.indexing.mongodb.AbstractMongoIndexer.prepareStatementForStorage(AbstractMongoIndexer.java:171)
at org.apache.rya.indexing.mongodb.AbstractMongoIndexer.storeStatement(AbstractMongoIndexer.java:158)
at org.apache.rya.indexing.mongodb.AbstractMongoIndexer.storeStatement(AbstractMongoIndexer.java:154)
at org.apache.rya.mongodb.MongoDBRyaDAO.add(MongoDBRyaDAO.java:201)
at org.apache.rya.rdftriplestore.RdfCloudTripleStoreConnection.addStatementInternal(RdfCloudTripleStoreConnection.java:177)
at org.eclipse.rdf4j.sail.helpers.AbstractSailConnection.endUpdateInternal(AbstractSailConnection.java:632)
at org.eclipse.rdf4j.sail.helpers.AbstractSailConnection.endUpdate(AbstractSailConnection.java:593)
at org.eclipse.rdf4j.sail.helpers.AbstractSailConnection.flush(AbstractSailConnection.java:386)
at org.eclipse.rdf4j.repository.sail.SailRepositoryConnection.commit(SailRepositoryConnection.java:167)
Attachments
Issue Links
- links to