What I mean is... (with an example): As far as I understand, these are valid triples that I can load into Fuseki/Jena at the same time in the same graph
:alice :age "25"^^xsd:string; :bob :age "20"^^xsd:integer; If then I execute this query: SELECT * WHERE { ?s :age ?age . FILTER (?age < 30) } should Jena raise an error (because there is a :age property with a value that is not integer), or should it simply ignore :alice entirely because the type of the property (string) doesn't match the type that I'm querying for? > Sent: Monday, July 19, 2021 at 12:40 PM > From: "Andy Seaborne" <a...@apache.org> > To: users@jena.apache.org > Subject: Re: Does Jena use duck typing? > > It store triples/quads. > Think of it as a table of triples and table of quads > > Comparison is defined by XQuery/XPath Functions and Operators. > > But maybe I don't understand what's behind the question. > > On 19/07/2021 07:02, Laura Morales wrote: > > How is Jena able to index and search/compare properties with different data > > types? > > For example if I have this graph > > > > :alice :foobar "2021-07-16"^^xsd:date; > > :alice :foobar "foobar"^^xsd:string; > > :alice :foobar "42"^^xsd:integer; > > You can't compare "2021-07-16"^^xsd:date with an xsd:string or an > xsd:integer. > > They have different value spaces. > > Andy