You need Model::createTypedLiteral https://jena.apache.org/documentation/notes/typed-literals.html#basic-api-operations
On Thu, 26 Oct 2023 at 12.24, Steve Vestal <steve.ves...@galois.com> wrote: > If I reconstruct using > > Literal dataLiteral = resultGraph.createLiteral(objectDataValue); > > it always says the type is string > > 1^^xsd:string > stringB^^ xsd:string > 123.456^^xsd:string > 2023-10-06T12:05:10Z^^xsd:string > > On 10/26/2023 4:17 AM, Steve Vestal wrote: > > What is the best way to reconstruct a typed Literal from a SPARQL > > SELECT result? > > > > I have a SPARQL SELECT query issued against an OntModel in this way: > > > > QueryExecution structureRowsExec = > > QueryExecutionFactory.create(structureRowsQuery, owlOntModel); > > > > Here are some example triples in the query: > > > > ?a2 > > < > http://www.galois.com/indigo/test/structure_datatypes_test#floatProperty> > > ?dataVar1. > > ?a2 > > < > http://www.galois.com/indigo/test/structure_datatypes_test#dateTimeProperty> > > > ?dataVar2. > > > > The OntModel being queried was created using typed literals, e.g., > > > > > > DataPropertyAssertion( struct:floatProperty struct:indivA2 > > "123.456"^^xsd:float ) > > DataPropertyAssertion( struct:dateTimeProperty struct:indivA2 > > "2023-10-06T12:05:10Z"^^xsd:dateTime ) > > > > When I look at the ?dataVar1 and ?dataVar2 results in a row, I get > > things like: > > > > 1 > > stringB > > 123.456 > > 2023-10-06T12:05:10Z > > > > What is a good way to reconstruct a typed Literal from the query > > results? Is there a SPARQL option to show full typed literal strings? > > Something that can be added to the query? A utility method that can > > identify the XSD schema simple data type when given a result value > > string? > > > > >