On Wed, 2008-10-01 at 21:48 +0700, Ivan Mikhailov wrote:
> Sergio,
> 
> On commercial Virtuoso I get more informative diagnostics, than a silent
> crash:

Good to know it.

> Variable 'v1' is used in the query result set but not assigned.
> Ditto ?v2. ?v2 is not reported only because the compiler has no way to
> report more than one error.

That's probably an error of mine rewriting the query on the fly. The
right one is:

INSERT INTO GRAPH <http://localhost/new> {
  _:v rdf:type ns:Class .
  _:v ns:prop1 ?v2 .
  ?v1 ns:prop2 _:v .
  _:v ns:prop2 ns:Instance
}
FROM <http://localhost/>
WHERE {
  {
    SELECT ?v1 ?v2 count(?post) as ?posts count(?reply) as ?replies
    WHERE {
      ?v1 rdf:type sioc:User .
      ?v2 sioc:has_subscriber ?v1 .
      ?v2 rdf:type sioc:Forum .
      ?v1 sioc:creator_of ?post .
      OPTIONAL {
        ?reply sioc:reply_of ?post .
      }
    }
  }
  FILTER (?replies > (?posts-?replies))
}

Can you check it, please? We checked, and switching to a
SELECT/CONSTRUCT works fine, but not with an INSERT.

> I'll fix VOS and send a patch that will prevent crash.

Thanks.

Best,

-- 
Sergio Fernández - sergio.fernan...@fundacionctic.org
R&D Deparment
CTIC Foundation - www.fundacionctic.org
Phone: +34 984 29 12 12
Fax:  +34 984 39 06 12
Edificio Centros Tecnológicos
Parque Científico Tecnológico
33203 Cabueñes - Gijón - Asturias - Spain


Reply via email to