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

Reply via email to