Hi
I have a problem creating LangLiteral in MarkLogic. Not sure if MarkLogic Jena supports creating language tagged strings.
Model statementsToAdd = ModelFactory.createDefaultModel();
statementsToAdd.add(
stmt.getSubject(),
stmt.getPredicate(),
ResourceFactory.createLangLiteral(
langString.getObject().asLiteral().getLexicalForm(),
langString.getPredicate().getLocalName()));
The above line of code throws error.
Exception in thread "Timer-3" java.lang.IllegalArgumentException: No enum constant com.marklogic.client.semantics.RDFTypes.LANGSTRING
at java.lang.Enum.valueOf(Enum.java:238)
at com.marklogic.client.semantics.RDFTypes.valueOf(RDFTypes.java:22)
at com.marklogic.semantics.jena.MarkLogicDatasetGraph.bindObject(MarkLogicDatasetGraph.java:165)
at com.marklogic.semantics.jena.client.TriplesWriteBuffer.flush(TriplesWriteBuffer.java:65)
at com.marklogic.semantics.jena.client.TripleBuffer.run(TripleBuffer.java:75)
at java.util.TimerThread.mainLoop(Timer.java:555)
at java.util.TimerThread.run(Timer.java:505)
No enum constant com.marklogic.client.semantics.RDFTypes.LANGSTRING
langString.getObject().asLiteral().getLexicalForm() returns a string and langString.getPredicate().getLocalName() returns en-us, en-gb or en etc...
If I use the exact same code but with Virtuoso Jena API instead then it works, I will be able to create language tagged string like so in Virtuoso
Hi I have a problem creating LangLiteral in MarkLogic. Not sure if MarkLogic Jena supports creating language tagged strings.
The above line of code throws error.
langString.getObject().asLiteral().getLexicalForm()
returns a string andlangString.getPredicate().getLocalName()
returnsen-us
,en-gb
oren
etc...If I use the exact same code but with Virtuoso Jena API instead then it works, I will be able to create language tagged string like so in Virtuoso
Thanks