Hi Andy,

Thanks for the answer.

> It looks like the node table is corrupted from a previous run after
> non-transactional update and exisitng the JVM without calling
> TDB.sync(dataset)

I'm really a Jena/TDB beginner, so please bear with me, but as I've
been (1) "tdbloading" my store and (2) "tdbquerying" simple select
SPARQL queries right away, it would seem to me that no
non-transactional update has been performed anyhow. To be sure, I just
reloaded it (assuming that re-running tdbquery completely overrides
any previous problem of the kind you describe).

>> select (count(?x) as ?cnt)
>> where { ?x rdfs:subClassOf* ?y }
>
>> select (count(?x) as ?cnt)
>> where { ?x rdfs:subClassOf ?y }
>
> In the first case, the system does need to access the node value of ?y
> because * is done by a general engine on nodes where as the plain pattern
> does not access the string that represents ?y so never touches some parts of
> the node table.

If I understand you well, shouldn't then this query

select ?x ?y
where { ?x rdfs:subClassOf* ?y }

work? It's still producing the same error though, even after a fresh tdbload.

Christian

Reply via email to