Aklakan commented on issue #3473:
URL: https://github.com/apache/jena/issues/3473#issuecomment-3344221418

   So far I was not able to reproduce the issue reported in the mail that when 
using the spatial indexer, the recomputed index would only be active after a 
restart of Fuseki. Perhaps its really an issue when using the default graph - 
all my experiments used named graphs (see screencast below).
   
   A screencast of the issue and the used query would be helpful.
   
   Notes:
   * Setting `geosparql:inference true` indeed materializes inferred RDFS data 
during startup. Because materialization alters data, this feature was not 
relevant to us and we did not look much into it. However, I don't see how this 
would conflict with the spatial indexer UI/API that would just operate on the 
materialized data.
   * The screencast shows that replacing the index with fewer graphs - as 
expected - is reflected on the next query without Fuseki restart. Indexing all 
graphs later also works as expected without restart (not part of the screencast 
because indexing took very long).
   
   
https://github.com/user-attachments/assets/fb2af6d3-4d06-4520-8693-8600fc519f42
   
   For reference, I used [yasgui](https://yasgui.triply.cc/) for visualization 
and this query that selects 1000 geometries from each graph in the given 
polygon:
   
   ```sparql
   PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
   PREFIX geof: <http://www.opengis.net/def/function/geosparql/>
   PREFIX spatial: <http://jena.apache.org/spatial#>
   PREFIX geo: <http://www.opengis.net/ont/geosparql#>
   
   SELECT ?graph ?geom ?geomColor ?geomTooltip (?geomTooltip AS ?geomLabel) {
     VALUES ?polygon {
       "POLYGON ((6.475457372470345 51.7037981703763, 6.475457372470346 
51.2481032780451, 7.544268491722988 51.24810327804511, 7.544268491722988 
51.70379817037631, 6.475457372470345 51.7037981703763))"^^geo:wktLiteral
     }
     GRAPH ?graph {}
   
     LATERAL {  
       SELECT * {
         GRAPH ?graph {
           ?x spatial:intersectBoxGeom(?polygon) .
           ?x geo:hasGeometry/geo:asWKT ?geom .
           FILTER(geof:sfIntersects(?geom, ?polygon))
         }
       } LIMIT 1000
     }
     
     # Color geometries based on the graph that contains them
     BIND (concat('#', substr(sha1(str(?graph)), 1, 6)) AS ?geomColor)
     
     BIND(strdt('Entity <a href="' + STR(?x) + '">' + STR(?x) + '</a> from 
graph ' + STR(?graph), rdf:HTML) as ?geomTooltip)
   }
   ```
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to