Thank for the answer ANdy, but it only change the error to :

Exception in thread "main" 
com.hp.hpl.jena.assembler.exceptions.NoSpecificTypeException: the root 
<http://www.thesis_project.org#spatial_dataset> has no most specific type that 
is a subclass of ja:Object
at 
com.hp.hpl.jena.assembler.assemblers.AssemblerGroup$PlainAssemblerGroup.open(AssemblerGroup.java:113)
    at 
com.hp.hpl.jena.assembler.assemblers.AssemblerGroup$ExpandingAssemblerGroup.open(AssemblerGroup.java:81)
    at 
com.hp.hpl.jena.assembler.assemblers.AssemblerBase.open(AssemblerBase.java:52)
    at 
com.hp.hpl.jena.assembler.assemblers.AssemblerBase.open(AssemblerBase.java:48)
    at com.hp.hpl.jena.query.DatasetFactory.assemble(DatasetFactory.java:267)
    at com.hp.hpl.jena.query.DatasetFactory.assemble(DatasetFactory.java:242)



It seems that it's an assembler relative problem/
Considering this error message I read the documentation about assembler 
(Assembler quicksart/Assembler How to/inside assembler).

It seems strange that I get this error message that inform me that my spatial 
dataset hasn't any specific type because as far as I understand assembler 
definition, this line of my config file :

:spatial_dataset rdf:type spatial:SpatialDataset ;

specify that it is a "spatial:SpatialDataset", and so is more specific than 
just a generic object.

Did I miss mandatory properties that must be used ?
And also, do the spatial assembler has its own description ? I searched for a 
while about "http://jena.apache.org/spatial#"; and dont find anything. I suppose 
so that this is only a link to a pure java class that is invoke behind the 
scene.

VAISSE-LESTEVEN Arthur.



________________________________
 De : Andy Seaborne <[email protected]>
À : "[email protected]" <[email protected]>; Arthur Vaïsse-Lesteven 
<[email protected]> 
Envoyé le : Jeudi 10 juillet 2014 19h29
Objet : Re: Jena Spatial - How to create a SpatialDataset
 

Inline ...

On 10 July 2014 16:42, Arthur Vaïsse-Lesteven <[email protected]> wrote:
> Hi everyone,
> I present you my apologies in advance for the long text.
>
> I searched for a while before asking to the mailing list how to instantiate a 
> SpatialDataset, but I still fail my attempts of doing it.
>
>
> Here is my problem : I have some RDF data with some
 that are localized geographically.
> Here come an extract of RDF(N-TRIPLES) data that I have :
>

...

> And I use the following config.ttl file :
> __________________________________________________________________________________________________________________
> ## A config based on the example furnished with the tutorial at 
> http://jena.apache.org/documentation/query/spatial-query.html
> @prefix :             <http://www.thesis_project.org#> .
> @prefix rdf:
>  <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
> @prefix rdfs:        <http://www.w3.org/2000/01/rdf-schema#> .
> @prefix tdb:        <http://jena.hpl.hp.com/2008/tdb#> .
> @prefix ja:            <http://jena.hpl.hp.com/2005/11/Assembler#> .
> @prefix spatial:    <http://jena.apache.org/spatial#> .
> @prefix wgs:        <http://www.w3.org/2003/01/geo/wgs84_pos#>
>
> # TDB
> [] ja:loadClass "com.hp.hpl.jena.tdb.TDB" .
> tdb:DatasetTDB  rdfs:subClassOf
>  ja:RDFDataset .
> tdb:GraphTDB    rdfs:subClassOf      ja:Model
 .
>
> # Spatial
> [] ja:loadClass "org.apache.jena.query.spatial.SpatialQuery" .
> spatial:SpatialtDataset  rdfs:subClassOf  ja:RDFDataset .

Typo - not "SpatialtDataset" - but "SpatialDataset" (there is an extra
"t" before "D" in your config file)

I'm not in a position to test this but it does correlate to the error.


> spatial:SpatialIndexLucene  rdfs:subClassOf   spatial:SpatialIndex .
>
> ##
 ---------------------------------------------------------------
> :spatial_dataset rdf:type spatial:SpatialDataset ;
>     spatial:dataset   <#dataset> ;
>
>  spatial:index     <#indexLucene> ;
>     .
>
> <#dataset> rdf:type      tdb:DatasetTDB ;
>     tdb:location "--mem--" ;
>
>  tdb:unionDefaultGraph true ;
>     .
>
> <#indexLucene> a spatial:SpatialIndexLucene ;
>     #spatial:directory <file:Lucene> ;
>     spatial:directory "mem" ;
>     spatial:definition <#definition> ;
>     .
>
> <#definition> a spatial:EntityDefinition ;
>     spatial:entityField      "uri" ;
>     spatial:geoField     "geo" ;
>     # custom geo predicates for 1) Latitude/Longitude
>  Format
>     spatial:hasSpatialPredicatePairs ([ spatial:latitude wgs:lat ; 
>spatial:longitude wgs:long ]) ;
>     .
> __________________________________________________________________________________________________________________
>
> I really don't understand what I'm missing.
> As far as
>  I understood, the process consist in :
>     - create an index model ( here the standard one that use wsg84 lat/long 
>properties of resources )[#3]
>     - define a binding between model attributes and RDF properties using the 
>configuration file [#1]
>     - build a dataset that contains resources compliant with the index 
>previously defined (loading my RDF data into a Model) + the binding[#2]
>
>     - give a storage space for the spatial index ( a "in memory" one in my 
>case)[#4]
>     - fill the index the entity of the dataset[#5]
>
> But This code fail with the following error :
>
> Exception in thread "main"
> com.hp.hpl.jena.assembler.exceptions.NoSpecificTypeException: the root
> <http://www.thesis_project.org#spatial_dataset> has no most
> specific type that is a subclass of ja:Object
>     at
 
com.hp.hpl.jena.assembler.assemblers.AssemblerGroup$PlainAssemblerGroup.open(AssemblerGroup.java:113)
>     at 
>com.hp.hpl.jena.assembler.assemblers.AssemblerGroup$ExpandingAssemblerGroup.open(AssemblerGroup.java:81)
>     at 
>com.hp.hpl.jena.assembler.assemblers.AssemblerBase.open(AssemblerBase.java:52)
>     at 
>com.hp.hpl.jena.assembler.assemblers.AssemblerBase.open(AssemblerBase.java:48)
>     at
>  com.hp.hpl.jena.query.DatasetFactory.assemble(DatasetFactory.java:267)
>     at com.hp.hpl.jena.query.DatasetFactory.assemble(DatasetFactory.java:242)
>     at Main.main(Main.java:30)
>
> I don't understand this error. Could someone explain me what is wrong in this 
> "minimal" use case ?
>
> Sincerely,
> VAISSE-LESTEVEN Arthur.

Reply via email to