Strabon
changeset 556:157780b4d79b
Modified StrabonBeanWrapper etc to read the "handle" parameter from the beans.xml file.
Notice that the entry describing a query at the beans.xml file has an additional <value>.
Notice that the entry describing a query at the beans.xml file has an additional <value>.
author | Kostis Kyzirakos <kkyzir@di.uoa.gr> |
---|---|
date | Mon Sep 17 21:02:57 2012 +0300 (2012-09-17) |
parents | e3967795041b |
children | 9f107d4df339 |
files | endpoint/WebContent/WEB-INF/beans.xml endpoint/WebContent/query.jsp endpoint/src/main/java/eu/earthobservatory/org/StrabonEndpoint/StrabonBeanWrapper.java endpoint/src/main/java/eu/earthobservatory/org/StrabonEndpoint/StrabonBeanWrapperConfiguration.java |
line diff
1.1 --- a/endpoint/WebContent/WEB-INF/beans.xml Sun Sep 16 22:41:09 2012 +0300 1.2 +++ b/endpoint/WebContent/WEB-INF/beans.xml Mon Sep 17 21:02:57 2012 +0300 1.3 @@ -54,310 +54,353 @@ 1.4 <value>${dbengine}</value> 1.5 </constructor-arg> 1.6 1.7 - <constructor-arg> 1.8 + <constructor-arg> 1.9 <list> 1.10 <list> 1.11 <!-- Bean --> 1.12 <value>Query</value> 1.13 <!-- Format --> 1.14 + <value>KML</value> 1.15 + <!-- Label --> 1.16 + <value>Query 1: Select all CLC information for Venice</value> 1.17 + <!-- Statement --> 1.18 + <value><![CDATA[PREFIX strdf:<http://strdf.di.uoa.gr/ontology#> 1.19 +PREFIX rdf:<http://www.w3.org/1999/02/22-rdf-syntax-ns#> 1.20 +PREFIX rdfs:<http://www.w3.org/2000/01/rdf-schema#> 1.21 +PREFIX teleios:<http://teleios.di.uoa.gr/ontologies/noaOntology.owl#> 1.22 + 1.23 +SELECT ?clc ?clcType ?clcID ?clcCode ?clcRemark ?clcShapeLength ?clcArea ?clcAreaHa ?clcLandUse ?clcGeo 1.24 +WHERE { 1.25 + ?clc a ?clcType . 1.26 + ?clc teleios:hasCode ?clcCode . 1.27 + ?clc teleios:hasID ?clcID . 1.28 + ?clc teleios:hasRemark ?clcRemark . 1.29 + ?clc teleios:hasShape_Leng ?clcShapeLength . 1.30 + ?clc teleios:hasShape_Area ?clcArea . 1.31 + ?clc teleios:hasArea_ha ?clcAreaHa . 1.32 + ?clc teleios:hasLandUse ?clcLandUse . 1.33 + ?clc teleios:hasGeometry ?clcGeo . 1.34 + #Venice 1.35 + FILTER (strdf:inside(?clcGeo, "POLYGON ((12.301451 45.40493,12.398127 45.416817,12.386066 45.46502,12.289288 45.45313,12.301451 45.40493))"^^strdf:WKT)) . 1.36 + #Toulouse 1.37 + #FILTER (strdf:inside(?clcGeo, "POLYGON((1.3816636 43.573734,1.4903361 43.588024,1.4783715 43.634777,1.3696271 43.620483,1.3816636 43.573734))"^^strdf:WKT)) . 1.38 + #Timisoara 1.39 + #FILTER (strdf:inside(?clcGeo, "POLYGON((21.188068 45.7305,21.286903 45.74229,21.275377 45.79014,21.176264 45.778324,21.188068 45.7305))"^^strdf:WKT)) . 1.40 +} 1.41 +]]></value> 1.42 + <!-- Description --> 1.43 + <value></value> 1.44 + <!-- Hander (plain, download, map or map_local)--> 1.45 + <value>map_local</value> 1.46 + </list> 1.47 + <list> 1.48 + <!-- Bean --> 1.49 + <value>Query</value> 1.50 + <!-- Format --> 1.51 + <value>KML</value> 1.52 + <!-- Label --> 1.53 + <value>Query 2: Select all LGD information for Venice</value> 1.54 + <!-- Statement --> 1.55 + <value><![CDATA[PREFIX strdf:<http://strdf.di.uoa.gr/ontology#> 1.56 +PREFIX rdf:<http://www.w3.org/1999/02/22-rdf-syntax-ns#> 1.57 +PREFIX rdfs:<http://www.w3.org/2000/01/rdf-schema#> 1.58 +PREFIX teleios:<http://teleios.di.uoa.gr/ontologies/noaOntology.owl#> 1.59 +PREFIX lgd:<http://linkedgeodata.org/triplify/> 1.60 +PREFIX lgdgeo:<http://www.w3.org/2003/01/geo/wgs84_pos#> 1.61 +PREFIX lgdont:<http://linkedgeodata.org/ontology/> 1.62 + 1.63 +SELECT ?lgd ?lgdDirectType (GROUP_CONCAT(?lgdType ; separator=", ") AS ?lgdTypes) ?lgdLabel ?lgdGeo 1.64 +WHERE { 1.65 + ?lgd lgdont:directType ?lgdDirectType . 1.66 + OPTIONAL { 1.67 + ?lgd a ?lgdType . 1.68 + FILTER ((?lgdType != lgdont:Node) && (?lgdType != ?lgdDirectType)) . 1.69 + } 1.70 + ?lgd rdfs:label ?lgdLabel . 1.71 + ?lgd lgdgeo:geometry ?lgdGeo . 1.72 + #Venice 1.73 + FILTER (strdf:inside(?lgdGeo, "POLYGON ((12.301451 45.40493,12.398127 45.416817,12.386066 45.46502,12.289288 45.45313,12.301451 45.40493))"^^strdf:WKT)) . 1.74 + #Toulouse 1.75 + #FILTER (strdf:inside(?lgdGeo, "POLYGON((1.3816636 43.573734,1.4903361 43.588024,1.4783715 43.634777,1.3696271 43.620483,1.3816636 43.573734))"^^strdf:WKT)) . 1.76 + #Timisoara 1.77 + #FILTER (strdf:inside(?lgdGeo, "POLYGON((21.188068 45.7305,21.286903 45.74229,21.275377 45.79014,21.176264 45.778324,21.188068 45.7305))"^^strdf:WKT)) . 1.78 + 1.79 +} 1.80 +GROUP BY ?lgd ?lgdDirectType ?lgdLabel ?lgdGeo 1.81 + ]]></value> 1.82 + <!-- Description --> 1.83 + <value></value> 1.84 + <!-- Hander (plain, download, map or map_local)--> 1.85 + <value>map_local</value> 1.86 + </list> 1.87 + <list> 1.88 + <!-- Bean --> 1.89 + <value>Query</value> 1.90 + <!-- Format --> 1.91 + <value>KML</value> 1.92 + <!-- Label --> 1.93 + <value>Query 3: Select all Geonames information for Venice</value> 1.94 + <!-- Statement --> 1.95 + <value><![CDATA[PREFIX strdf:<http://strdf.di.uoa.gr/ontology#> 1.96 +PREFIX rdf:<http://www.w3.org/1999/02/22-rdf-syntax-ns#> 1.97 +PREFIX rdfs:<http://www.w3.org/2000/01/rdf-schema#> 1.98 +PREFIX teleios:<http://teleios.di.uoa.gr/ontologies/noaOntology.owl#> 1.99 +PREFIX lgd:<http://linkedgeodata.org/triplify/> 1.100 +PREFIX lgdgeo:<http://www.w3.org/2003/01/geo/wgs84_pos#> 1.101 +PREFIX lgdont:<http://linkedgeodata.org/ontology/> 1.102 +PREFIX geonames:<http://www.geonames.org/ontology#> 1.103 + 1.104 +SELECT ?geoID ?name (GROUP_CONCAT(?altName; separator=", ") AS ?altNames) ?parentFeature ?parentCountry ?parentADM1 ?parentADM2 ?parentADM3 (GROUP_CONCAT(?near; separator=", ") AS ?nearFeatures) ?geoIdGeo 1.105 +WHERE { 1.106 +?geoId geonames:name ?name . 1.107 +OPTIONAL {?geoId geonames:alternateName ?altName } . 1.108 +?geoId geonames:featureClass ?geoFeature . 1.109 +?geoId geonames:countryCode ?country . 1.110 +OPTIONAL {?geoId geonames:parentFeature ?parentFeature . } . 1.111 +OPTIONAL {?geoId geonames:parentCountry ?parentCountry . } . 1.112 +OPTIONAL {?geoId geonames:parentADM1 ?parentADM1 . } . 1.113 +OPTIONAL {?geoId geonames:parentADM2 ?parentADM2 . } . 1.114 +OPTIONAL {?geoId geonames:parentADM3 ?parentADM3 . } . 1.115 +OPTIONAL {?geoId geonames:nearbyFeatures ?near . } . 1.116 +?geoId teleios:hasGeography ?geoIdGeo . 1.117 + #Venice 1.118 + FILTER (strdf:inside(?geoIdGeo, "POLYGON ((12.301451 45.40493,12.398127 45.416817,12.386066 45.46502,12.289288 45.45313,12.301451 45.40493))"^^strdf:WKT)) . 1.119 + #Toulouse 1.120 + #FILTER (strdf:inside(?geoIdGeo, "POLYGON((1.3816636 43.573734,1.4903361 43.588024,1.4783715 43.634777,1.3696271 43.620483,1.3816636 43.573734))"^^strdf:WKT)) . 1.121 + #Timisoara 1.122 + #FILTER (strdf:inside(?geoIdGeo, "POLYGON((21.188068 45.7305,21.286903 45.74229,21.275377 45.79014,21.176264 45.778324,21.188068 45.7305))"^^strdf:WKT)) . 1.123 +} 1.124 +GROUP BY ?geoID ?name ?parentFeature ?parentCountry ?parentADM1 ?parentADM2 ?parentADM3 ?geoIdGeo 1.125 + ]]></value> 1.126 + <!-- Description --> 1.127 + <value></value> 1.128 + <!-- Hander (plain, download, map or map_local)--> 1.129 + <value>map_local</value> 1.130 + </list> 1.131 + <list> 1.132 + <!-- Bean --> 1.133 + <value>Query</value> 1.134 + <!-- Format --> 1.135 + <value>KML</value> 1.136 + <!-- Label --> 1.137 + <value>Query 4: Select all patches and their corresponding labels</value> 1.138 + <!-- Statement --> 1.139 + <value><![CDATA[#select all patches and their labels (Venice) 1.140 +PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> 1.141 +PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> 1.142 +PREFIX dlr: <http://www.earthobservatory.eu/ontologies/dlrOntology.owl#> 1.143 +PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> 1.144 +PREFIX strdf: <http://strdf.di.uoa.gr/ontology#> 1.145 +PREFIX teleios:<http://teleios.di.uoa.gr/ontologies/noaOntology.owl#> 1.146 + 1.147 + 1.148 +SELECT ?g (GROUP_CONCAT(?annotation; separator=", ") AS ?labels) 1.149 +WHERE { 1.150 + ?p rdf:type dlr:Patch . 1.151 + ?p dlr:hasGeometry ?g . 1.152 + ?p dlr:hasLabel ?l . 1.153 + ?l rdf:type dlr:Label . 1.154 + ?l dlr:correspondsTo ?annotation . 1.155 + #Venice 1.156 + FILTER (strdf:inside(?g, "POLYGON ((12.301451 45.40493,12.398127 45.416817,12.386066 45.46502,12.289288 45.45313,12.301451 45.40493))"^^strdf:WKT)) . 1.157 + #Toulouse 1.158 + #FILTER (strdf:inside(?g, "POLYGON((1.3816636 43.573734,1.4903361 43.588024,1.4783715 43.634777,1.3696271 43.620483,1.3816636 43.573734))"^^strdf:WKT)) . 1.159 + #Timisoara 1.160 + #FILTER (strdf:inside(?g, "POLYGON((21.188068 45.7305,21.286903 45.74229,21.275377 45.79014,21.176264 45.778324,21.188068 45.7305))"^^strdf:WKT)) . 1.161 +} 1.162 +GROUP BY ?g 1.163 + ]]></value> 1.164 + <!-- Description --> 1.165 + <value></value> 1.166 + <!-- Hander (plain, download, map or map_local)--> 1.167 + <value>map_local</value> 1.168 + </list> 1.169 + <list> 1.170 + <!-- Bean --> 1.171 + <value>Query</value> 1.172 + <!-- Format --> 1.173 + <value>KML</value> 1.174 + <!-- Label --> 1.175 + <value>Query 5: Select all patches corresponding to water</value> 1.176 + <!-- Statement --> 1.177 + <value><![CDATA[PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> 1.178 +PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> 1.179 +PREFIX dlr: <http://www.earthobservatory.eu/ontologies/dlrOntology.owl#> 1.180 +PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> 1.181 +PREFIX strdf: <http://strdf.di.uoa.gr/ontology#> 1.182 +PREFIX teleios:<http://teleios.di.uoa.gr/ontologies/noaOntology.owl#> 1.183 + 1.184 + 1.185 +SELECT ?g (GROUP_CONCAT(?annotation; separator=", ") AS ?labels) 1.186 +WHERE { 1.187 + ?p rdf:type dlr:Patch . 1.188 + ?p dlr:hasGeometry ?g . 1.189 + ?p dlr:hasLabel ?l . 1.190 + ?l rdf:type dlr:Label . 1.191 + ?l dlr:correspondsTo dlr:Water . 1.192 + #Venice 1.193 + FILTER (strdf:inside(?g, "POLYGON ((12.301451 45.40493,12.398127 45.416817,12.386066 45.46502,12.289288 45.45313,12.301451 45.40493))"^^strdf:WKT)) . 1.194 + #Toulouse 1.195 + #FILTER (strdf:inside(?g, "POLYGON((1.3816636 43.573734,1.4903361 43.588024,1.4783715 43.634777,1.3696271 43.620483,1.3816636 43.573734))"^^strdf:WKT)) . 1.196 + #Timisoara 1.197 + #FILTER (strdf:inside(?g, "POLYGON((21.188068 45.7305,21.286903 45.74229,21.275377 45.79014,21.176264 45.778324,21.188068 45.7305))"^^strdf:WKT)) . 1.198 +} 1.199 +GROUP BY ?g 1.200 + ]]></value> 1.201 + <!-- Description --> 1.202 + <value></value> 1.203 + <!-- Hander (plain, download, map or map_local)--> 1.204 + <value>map_local</value> 1.205 + </list> 1.206 + <list> 1.207 + <!-- Bean --> 1.208 + <value>Query</value> 1.209 + <!-- Format --> 1.210 + <value>KML</value> 1.211 + <!-- Label --> 1.212 + <value>Query 6: Select all patches corresponding to all subclasses of water</value> 1.213 + <!-- Statement --> 1.214 + <value><![CDATA[PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> 1.215 +PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> 1.216 +PREFIX dlr: <http://www.earthobservatory.eu/ontologies/dlrOntology.owl#> 1.217 +PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> 1.218 +PREFIX strdf: <http://strdf.di.uoa.gr/ontology#> 1.219 +PREFIX teleios:<http://teleios.di.uoa.gr/ontologies/noaOntology.owl#> 1.220 + 1.221 + 1.222 +SELECT ?g (GROUP_CONCAT(?annotation; separator=", ") AS ?labels) 1.223 +WHERE { 1.224 + ?p rdf:type dlr:Patch . 1.225 + ?p dlr:hasGeometry ?g . 1.226 + ?p dlr:hasLabel ?l . 1.227 + ?l rdf:type dlr:Label . 1.228 + ?l dlr:correspondsTo ?annotation . 1.229 + ?annotation rdfs:subClassOf dlr:Water . 1.230 + #Venice 1.231 + FILTER (strdf:inside(?g, "POLYGON ((12.301451 45.40493,12.398127 45.416817,12.386066 45.46502,12.289288 45.45313,12.301451 45.40493))"^^strdf:WKT)) . 1.232 + #Toulouse 1.233 + #FILTER (strdf:inside(?g, "POLYGON((1.3816636 43.573734,1.4903361 43.588024,1.4783715 43.634777,1.3696271 43.620483,1.3816636 43.573734))"^^strdf:WKT)) . 1.234 + #Timisoara 1.235 + #FILTER (strdf:inside(?g, "POLYGON((21.188068 45.7305,21.286903 45.74229,21.275377 45.79014,21.176264 45.778324,21.188068 45.7305))"^^strdf:WKT)) . 1.236 +} 1.237 +GROUP BY ?g 1.238 + ]]></value> 1.239 + <!-- Description --> 1.240 + <value></value> 1.241 + <!-- Hander (plain, download, map or map_local)--> 1.242 + <value>map_local</value> 1.243 + </list> 1.244 + <list> 1.245 + <!-- Bean --> 1.246 + <value>Query</value> 1.247 + <!-- Format --> 1.248 <value>HTML</value> 1.249 <!-- Label --> 1.250 - <value>Query 1: Discover raw data and products</value> 1.251 + <value>Query 7: List all features that are inside an area charatecterized as continuous urban fabric according to CLC</value> 1.252 <!-- Statement --> 1.253 - <value><![CDATA[# Discovering raw data and products 1.254 -PREFIX noa: <http://teleios.di.uoa.gr/ontologies/noaOntology.owl#> 1.255 -PREFIX clc: <http://teleios.di.uoa.gr/ontologies/clcOntology.owl#> 1.256 -PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> 1.257 + <value><![CDATA[PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> 1.258 PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> 1.259 +PREFIX dlr: <http://www.earthobservatory.eu/ontologies/dlrOntology.owl#> 1.260 +PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> 1.261 PREFIX strdf: <http://strdf.di.uoa.gr/ontology#> 1.262 -PREFIX teleios: <http://teleios.di.uoa.gr/ontologies/noaOntology.owl#> 1.263 -PREFIX gag: <http://www.semanticweb.org/ontologies/2011/gagKallikratis.rdf#> 1.264 -PREFIX geo: <http://www.w3.org/2003/01/geo/wgs84_pos#> 1.265 -PREFIX georss: <http://www.georss.org/georss/> 1.266 -PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> 1.267 -PREFIX lgdo: <http://linkedgeodata.org/ontology/> 1.268 -PREFIX gn: <http://www.geonames.org/ontology#> 1.269 +PREFIX teleios:<http://teleios.di.uoa.gr/ontologies/noaOntology.owl#> 1.270 +PREFIX geof:<http://www.opengis.net/def/queryLanguage/OGC-GeoSPARQL/1.0/function/> 1.271 1.272 -SELECT ?filename 1.273 -WHERE {?file rdf:type noa:ShpFile ; 1.274 - noa:hasFilename ?filename ; 1.275 - noa:hasAcquisitionTime ?sensingTime . 1.276 - FILTER( str(?sensingTime) >= "2007-08-26T12:00:00" ) . 1.277 - FILTER( str(?sensingTime) <= "2007-08-26T12:30:00" ) . 1.278 - ?file noa:isDerivedFromSensor ?sensor . 1.279 - FILTER( str(?sensor) = "MSG2" ) . 1.280 - ?file noa:producedFromProcessingChain ?chain . 1.281 - FILTER( str(?chain) = "StaticThresholds" ) . 1.282 -}]]></value> 1.283 -<value>Find all shapefiles derived from sensor MSG2 between [2007-08-26T12:00:00,2007-08-26T12:30:00], using dynamic thresholds.</value> 1.284 +SELECT DISTINCT ?clcLandUse ?annotation #?g 1.285 +WHERE { 1.286 + ?p rdf:type dlr:Patch . 1.287 + ?p dlr:hasGeometry ?g . 1.288 + ?p dlr:hasLabel ?l . 1.289 + ?l rdf:type dlr:Label . 1.290 + ?l dlr:correspondsTo ?annotation . 1.291 + FILTER (strdf:inside(?g, "POLYGON ((12.301451 45.40493,12.398127 45.416817,12.386066 45.46502,12.289288 45.45313,12.301451 45.40493))"^^strdf:WKT)) . 1.292 + 1.293 + ?clc a ?clcType . 1.294 + ?clc teleios:hasCode ?clcCode . 1.295 + ?clc teleios:hasID ?clcID . 1.296 + ?clc teleios:hasLandUse teleios:continuousUrbanFabric . 1.297 + ?clc teleios:hasGeometry ?clcGeo . 1.298 + FILTER (strdf:inside(?clcGeo, "POLYGON ((12.301451 45.40493,12.398127 45.416817,12.386066 45.46502,12.289288 45.45313,12.301451 45.40493))"^^strdf:WKT)) . 1.299 + 1.300 + FILTER (geof:sf-contains(?clcGeo, ?g)) . 1.301 +} 1.302 + ]]></value> 1.303 + <!-- Description --> 1.304 + <value></value> 1.305 + <!-- Hander (plain, download, map or map_local)--> 1.306 + <value>plain</value> 1.307 </list> 1.308 <list> 1.309 - <!-- Bean --> 1.310 + <!-- Bean --> 1.311 <value>Query</value> 1.312 <!-- Format --> 1.313 - <value>KMZ</value> 1.314 + <value>HTML</value> 1.315 <!-- Label --> 1.316 - <value>Query 2: Discover Hotspots</value> 1.317 + <value>Query 8: List all features that are inside a CLC</value> 1.318 <!-- Statement --> 1.319 - <value><![CDATA[# Get all hotspots in Pelloponesus at 2007-08-24 1.320 -PREFIX noa: <http://teleios.di.uoa.gr/ontologies/noaOntology.owl#> 1.321 -PREFIX clc: <http://teleios.di.uoa.gr/ontologies/clcOntology.owl#> 1.322 -PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> 1.323 + <value><![CDATA[PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> 1.324 PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> 1.325 +PREFIX dlr: <http://www.earthobservatory.eu/ontologies/dlrOntology.owl#> 1.326 +PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> 1.327 PREFIX strdf: <http://strdf.di.uoa.gr/ontology#> 1.328 -PREFIX teleios: <http://teleios.di.uoa.gr/ontologies/noaOntology.owl#> 1.329 -PREFIX gag: <http://www.semanticweb.org/ontologies/2011/gagKallikratis.rdf#> 1.330 -PREFIX geo: <http://www.w3.org/2003/01/geo/wgs84_pos#> 1.331 -PREFIX georss: <http://www.georss.org/georss/> 1.332 -PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> 1.333 -PREFIX lgdo: <http://linkedgeodata.org/ontology/> 1.334 -PREFIX gn: <http://www.geonames.org/ontology#> 1.335 +PREFIX teleios:<http://teleios.di.uoa.gr/ontologies/noaOntology.owl#> 1.336 +PREFIX geof:<http://www.opengis.net/def/queryLanguage/OGC-GeoSPARQL/1.0/function/> 1.337 1.338 -SELECT ?h ?hAcqTime ?hConfidence ?hConfirmation ?hProvider ?hSensor ?hSatellite (strdf:transform(?hGeo, <http://www.opengis.net/def/crs/EPSG/0/4326>) as ?geo) 1.339 -WHERE { ?h rdf:type noa:Hotspot; 1.340 - noa:hasGeometry ?hGeo; 1.341 - noa:hasAcquisitionTime ?hAcqTime; 1.342 - noa:hasConfidence ?hConfidence; 1.343 - noa:isProducedBy ?hProvider; 1.344 - noa:hasConfirmation ?hConfirmation; 1.345 - noa:isDerivedFromSensor ?hSensor; 1.346 - noa:isDerivedFromSatellite ?hSatellite ; 1.347 - noa:producedFromProcessingChain ?hChain . 1.348 - FILTER(str(?hChain) = "StaticThresholds"). 1.349 - FILTER(?hAcqTime = "2007-08-24T14:45:00"^^xsd:dateTime) . 1.350 - FILTER(strdf:contains("POLYGON((21.027 38.36, 23.77 38.36, 23.77 36.05, 21.027 36.05, 21.027 38.36))"^^ strdf:WKT, ?hGeo)) . 1.351 -}]]></value> 1.352 -<value>Find all hotspots in Pelloponesus derived from the dynamic thresholds processing chain at 2007-08-24T14:45:00. </value> 1.353 - </list> 1.354 - <list> 1.355 - <!-- Bean --> 1.356 - <value>Update</value> 1.357 - <!-- Format --> 1.358 - <value>HTML</value> 1.359 - <!-- Label --> 1.360 - <value>Update A: Invalidate hotspots in sea</value> 1.361 - <!-- Statement --> 1.362 - <value><![CDATA[# Delete hotspots that lie in sea 1.363 -PREFIX noa: <http://teleios.di.uoa.gr/ontologies/noaOntology.owl#> 1.364 -PREFIX clc: <http://teleios.di.uoa.gr/ontologies/clcOntology.owl#> 1.365 -PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> 1.366 -PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> 1.367 -PREFIX strdf: <http://strdf.di.uoa.gr/ontology#> 1.368 -PREFIX teleios: <http://teleios.di.uoa.gr/ontologies/noaOntology.owl#> 1.369 -PREFIX gag: <http://www.semanticweb.org/ontologies/2011/gagKallikratis.rdf#> 1.370 -PREFIX geo: <http://www.w3.org/2003/01/geo/wgs84_pos#> 1.371 -PREFIX georss: <http://www.georss.org/georss/> 1.372 -PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> 1.373 -PREFIX lgdo: <http://linkedgeodata.org/ontology/> 1.374 -PREFIX gn: <http://www.geonames.org/ontology#> 1.375 -DELETE {?h ?property ?object} 1.376 -WHERE { ?h rdf:type noa:Hotspot; 1.377 - noa:hasAcquisitionTime ?hAcqTime; 1.378 - noa:producedFromProcessingChain ?hChain; 1.379 - noa:hasGeometry ?hGeo; 1.380 - ?property ?object. 1.381 - FILTER(str(?hChain) = "StaticThresholds"). 1.382 - FILTER(strdf:contains("POLYGON((21.027 38.36, 23.77 38.36, 23.77 36.05, 21.027 36.05, 21.027 38.36))"^^ strdf:WKT, ?hGeo)). 1.383 - FILTER("2007-08-24T14:45:00"^^xsd:dateTime = ?hAcqTime). 1.384 - OPTIONAL { 1.385 - ?c rdf:type noa:Coastline; 1.386 - noa:hasGeometry ?cGeo. 1.387 - FILTER(strdf:contains("POLYGON((21.027 38.36, 23.77 38.36, 23.77 36.05, 21.027 36.05, 21.027 38.36))"^^ strdf:WKT, ?cGeo)). 1.388 - FILTER(strdf:anyInteract(?hGeo, ?cGeo)) . 1.389 - } 1.390 - FILTER(!bound(?c)). 1.391 -}]]></value> 1.392 -<value>Mark as invalid all hotspots produced by the static thresholds processing chain and are acquired at 2007-08-24T14:45:00 which are located in the sea</value> 1.393 +SELECT ?clcLandUse(GROUP_CONCAT(DISTINCT ?annotation; separator=",\n\t\t\t\t\t ") AS ?annotations) #?g 1.394 +WHERE { 1.395 + ?p rdf:type dlr:Patch . 1.396 + ?p dlr:hasGeometry ?g . 1.397 + ?p dlr:hasLabel ?l . 1.398 + ?l rdf:type dlr:Label . 1.399 + ?l dlr:correspondsTo ?annotation . 1.400 + FILTER (strdf:inside(?g, "POLYGON ((12.301451 45.40493,12.398127 45.416817,12.386066 45.46502,12.289288 45.45313,12.301451 45.40493))"^^strdf:WKT)) . 1.401 + 1.402 + ?clc a ?clcType . 1.403 + ?clc teleios:hasCode ?clcCode . 1.404 + ?clc teleios:hasID ?clcID . 1.405 + ?clc teleios:hasLandUse ?clcLandUse . 1.406 + ?clc teleios:hasGeometry ?clcGeo . 1.407 + FILTER (strdf:inside(?clcGeo, "POLYGON ((12.301451 45.40493,12.398127 45.416817,12.386066 45.46502,12.289288 45.45313,12.301451 45.40493))"^^strdf:WKT)) . 1.408 + 1.409 + FILTER (geof:sf-contains(?clcGeo, ?g)) . 1.410 +} 1.411 +GROUP BY ?clcLandUse 1.412 + ]]></value> 1.413 + <!-- Description --> 1.414 + <value></value> 1.415 + <!-- Hander (plain, download, map or map_local)--> 1.416 + <value></value> 1.417 </list> 1.418 <list> 1.419 - <!-- Bean --> 1.420 - <value>Update</value> 1.421 + <!-- Bean --> 1.422 + <value>Query</value> 1.423 <!-- Format --> 1.424 - <value>HTML</value> 1.425 + <value>HTML</value> 1.426 <!-- Label --> 1.427 - <value>Update B: Refine hotspots in sea</value> 1.428 + <value>Query 9: </value> 1.429 <!-- Statement --> 1.430 - <value><![CDATA[# Refine the geometry of hotspots that partially lie in sea 1.431 -PREFIX noa: <http://teleios.di.uoa.gr/ontologies/noaOntology.owl#> 1.432 -PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> 1.433 -PREFIX strdf: <http://strdf.di.uoa.gr/ontology#> 1.434 -PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> 1.435 - 1.436 - 1.437 -INSERT { ?h noa:isDiscarded "1"^^xsd:int . 1.438 - ?valid rdf:type noa:Hotspot ; 1.439 - noa:hasConfidence ?conf ; 1.440 - noa:hasGeometry ?dif ; 1.441 - noa:hasAcquisitionTime "TIMESTAMP"^^xsd:dateTime ; 1.442 - noa:isDerivedFromSensor "SENSOR"^^xsd:string ; 1.443 - noa:hasConfirmation noa:unknown ; 1.444 - noa:producedFromProcessingChain "PROCESSING_CHAIN"^^xsd:string ; 1.445 - noa:isProducedBy noa:noa ; 1.446 - noa:isDerivedFromSatellite ?sat . 1.447 -} 1.448 -WHERE { 1.449 - SELECT DISTINCT ?h ?hGeo (strdf:intersection(?hGeo, strdf:union(?cGeo)) AS ?dif) (BNODE() AS ?valid) ?conf ?sat 1.450 - WHERE { 1.451 - ?h rdf:type noa:Hotspot ; 1.452 - noa:hasAcquisitionTime ?hAcqTime ; 1.453 - noa:producedFromProcessingChain "PROCESSING_CHAIN"^^xsd:string ; 1.454 - noa:isDerivedFromSensor "SENSOR"^^xsd:string ; 1.455 - noa:hasGeometry ?hGeo ; 1.456 - noa:hasConfidence ?conf ; 1.457 - noa:isDerivedFromSatellite ?sat . 1.458 - FILTER("TIMESTAMP"^^xsd:dateTime = ?hAcqTime) . 1.459 - ?c rdf:type noa:Coastline ; 1.460 - noa:hasGeometry ?cGeo . 1.461 - FILTER(strdf:anyInteract(?hGeo, ?cGeo)) . 1.462 - } 1.463 - GROUP BY ?h ?hGeo ?conf ?sat 1.464 - HAVING strdf:overlap(?hGeo, strdf:union(?cGeo)) 1.465 -} 1.466 -]]></value> 1.467 - <value>Refine hotspots acquired at 2007-08-24T14:45:00 removing the part that lies in the sea. </value> 1.468 + <value><![CDATA[ 1.469 + ]]></value> 1.470 + <!-- Description --> 1.471 + <value></value> 1.472 + <!-- Hander (plain, download, map or map_local)--> 1.473 + <value></value> 1.474 </list> 1.475 <list> 1.476 - <!-- Bean --> 1.477 + <!-- Bean --> 1.478 <value>Query</value> 1.479 <!-- Format --> 1.480 - <value>KMZ</value> 1.481 + <value>HTML</value> 1.482 <!-- Label --> 1.483 - <value>Query 3: Discover coniferous forests</value> 1.484 + <value>Query 10: </value> 1.485 <!-- Statement --> 1.486 - <value><![CDATA[#Get all coniferous forests in Peloponnese 1.487 -PREFIX noa: <http://teleios.di.uoa.gr/ontologies/noaOntology.owl#> 1.488 -PREFIX clc: <http://teleios.di.uoa.gr/ontologies/clcOntology.owl#> 1.489 -PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> 1.490 -PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> 1.491 -PREFIX strdf: <http://strdf.di.uoa.gr/ontology#> 1.492 -PREFIX teleios: <http://teleios.di.uoa.gr/ontologies/noaOntology.owl#> 1.493 -PREFIX gag: <http://www.semanticweb.org/ontologies/2011/gagKallikratis.rdf#> 1.494 -PREFIX geo: <http://www.w3.org/2003/01/geo/wgs84_pos#> 1.495 -PREFIX georss: <http://www.georss.org/georss/> 1.496 -PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> 1.497 -PREFIX lgdo: <http://linkedgeodata.org/ontology/> 1.498 -PREFIX gn: <http://www.geonames.org/ontology#> 1.499 - 1.500 -SELECT ?a ?aGeo 1.501 -WHERE{ ?a rdf:type clc:Area; 1.502 - clc:hasLandUse ?aLandUse; 1.503 - noa:hasGeometry ?aGeo. 1.504 - ?aLandUse rdf:type ?aLandUseType. 1.505 - FILTER(?aLandUseType = clc:ConiferousForest). 1.506 - FILTER(strdf:contains("POLYGON((21.027 38.36, 23.77 38.36, 23.77 36.05, 21.027 36.05, 21.027 38.36))"^^strdf:WKT,?aGeo)). 1.507 -}]]></value> 1.508 -<value>Discover all coniferous forests using the clc ontology </value> 1.509 + <value><![CDATA[ 1.510 + ]]></value> 1.511 + <!-- Description --> 1.512 + <value></value> 1.513 + <!-- Hander (plain, download, map or map_local)--> 1.514 + <value></value> 1.515 </list> 1.516 - <list> 1.517 - <!-- Bean --> 1.518 - <value>Query</value> 1.519 - <!-- Format --> 1.520 - <value>KMZ</value> 1.521 - <!-- Label --> 1.522 - <value>Query 4: Discover primary roads</value> 1.523 - <!-- Statement --> 1.524 - <value><![CDATA[# Get all municipalities of Pelloponnese 1.525 -PREFIX noa: <http://teleios.di.uoa.gr/ontologies/noaOntology.owl#> 1.526 -PREFIX clc: <http://teleios.di.uoa.gr/ontologies/clcOntology.owl#> 1.527 -PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> 1.528 -PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> 1.529 -PREFIX strdf: <http://strdf.di.uoa.gr/ontology#> 1.530 -PREFIX teleios: <http://teleios.di.uoa.gr/ontologies/noaOntology.owl#> 1.531 -PREFIX gag: <http://www.semanticweb.org/ontologies/2011/gagKallikratis.rdf#> 1.532 -PREFIX geo: <http://www.w3.org/2003/01/geo/wgs84_pos#> 1.533 -PREFIX georss: <http://www.georss.org/georss/> 1.534 -PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> 1.535 -PREFIX lgdo: <http://linkedgeodata.org/lontology/> 1.536 -PREFIX gn: <http://www.geonames.org/ontology#> 1.537 - 1.538 -SELECT ?d ?dGeo 1.539 -WHERE { ?d rdf:type gag:Dhmos; 1.540 - strdf:hasGeometry ?dGeo; 1.541 - rdfs:label ?dLabel. 1.542 - FILTER(strdf:contains("POLYGON((21.027 38.36, 23.77 38.36, 23.77 36.05, 21.027 36.05, 21.027 38.36))"^^ strdf:WKT, ?dGeo)). 1.543 -}]]></value> 1.544 -<value>Find all municipalities of Pelloponnese using kallikratis ontology </value> 1.545 - </list> 1.546 - <list> 1.547 - <!-- Bean --> 1.548 - <value>Query</value> 1.549 - <!-- Format --> 1.550 - <value>KMZ</value> 1.551 - <!-- Label --> 1.552 - <value>Query 5: Get all primary roads in Pelloponnese</value> 1.553 - <!-- Statement --> 1.554 - <value><![CDATA[# Get all primary roads in Pelloponnese 1.555 -PREFIX noa: <http://teleios.di.uoa.gr/ontologies/noaOntology.owl#> 1.556 -PREFIX clc: <http://teleios.di.uoa.gr/ontologies/clcOntology.owl#> 1.557 -PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> 1.558 -PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> 1.559 -PREFIX strdf: <http://strdf.di.uoa.gr/ontology#> 1.560 -PREFIX teleios: <http://teleios.di.uoa.gr/ontologies/noaOntology.owl#> 1.561 -PREFIX gag: <http://www.semanticweb.org/ontologies/2011/gagKallikratis.rdf#> 1.562 -PREFIX geo: <http://www.w3.org/2003/01/geo/wgs84_pos#> 1.563 -PREFIX georss: <http://www.georss.org/georss/> 1.564 -PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> 1.565 -PREFIX lgdo: <http://linkedgeodata.org/ontology/> 1.566 -PREFIX gn: <http://www.geonames.org/ontology#> 1.567 - 1.568 -SELECT ?r ?rGeo 1.569 -WHERE { ?r rdf:type ?rType ; 1.570 - noa:hasGeometry ?rGeo . 1.571 - FILTER(?rType = lgdo:Primary) . 1.572 - FILTER(strdf:contains("POLYGON((21.027 38.36, 23.77 38.36, 23.77 36.05, 21.027 36.05,21.027 38.36))"^^strdf:WKT, ?rGeo) ). 1.573 -}]]></value> 1.574 -<value>Get all primary roads in Pelloponnese using the linked geodata ontology </value> 1.575 - </list> 1.576 - <list> 1.577 - <!-- Bean --> 1.578 - <value>Query</value> 1.579 - <!-- Format --> 1.580 - <value>KMZ</value> 1.581 - <!-- Label --> 1.582 - <value>Query 6: Discover hotspots</value> 1.583 - <!-- Statement --> 1.584 - <value><![CDATA[# Get all hotspots in Pelloponesus at 2007-08-24 1.585 -PREFIX noa: <http://teleios.di.uoa.gr/ontologies/noaOntology.owl#> 1.586 -PREFIX clc: <http://teleios.di.uoa.gr/ontologies/clcOntology.owl#> 1.587 -PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> 1.588 -PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> 1.589 -PREFIX strdf: <http://strdf.di.uoa.gr/ontology#> 1.590 -PREFIX teleios: <http://teleios.di.uoa.gr/ontologies/noaOntology.owl#> 1.591 -PREFIX gag: <http://www.semanticweb.org/ontologies/2011/gagKallikratis.rdf#> 1.592 -PREFIX geo: <http://www.w3.org/2003/01/geo/wgs84_pos#> 1.593 -PREFIX georss: <http://www.georss.org/georss/> 1.594 -PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> 1.595 -PREFIX lgdo: <http://linkedgeodata.org/ontology/> 1.596 -PREFIX gn: <http://www.geonames.org/ontology#> 1.597 - 1.598 -SELECT ?h ?hAcqTime (strdf:transform(?hGeo, <http://www.opengis.net/def/crs/EPSG/0/4326>) as ?geo) 1.599 -WHERE { ?h rdf:type noa:Hotspot; 1.600 - noa:hasGeometry ?hGeo; 1.601 - noa:hasAcquisitionTime ?hAcqTime; 1.602 - noa:producedFromProcessingChain ?hChain . 1.603 - FILTER(str(?hChain) = "StaticThresholds"). 1.604 - FILTER(?hAcqTime = "2007-08-24T14:45:00"^^xsd:dateTime) . 1.605 - FILTER(strdf:contains("POLYGON((21.027 38.36, 23.77 38.36, 23.77 36.05, 21.027 36.05, 21.027 38.36))"^^ strdf:WKT, ?hGeo)) . 1.606 - ?a rdf:type clc:Area; 1.607 - clc:hasLandUse ?aLandUse; 1.608 - noa:hasGeometry ?aGeo. 1.609 - ?aLandUse rdf:type ?aLandUseType. 1.610 - FILTER(?aLandUseType = clc:Forest). 1.611 - FILTER(strdf:contains("POLYGON((21.027 38.36, 23.77 38.36, 23.77 36.05, 21.027 36.05, 21.027 38.36))"^^strdf:WKT,?aGeo)). 1.612 - FILTER(strdf:overlap(?aGeo, ?hGeo)) . 1.613 -}]]></value> 1.614 -<value>Find all hotspots located in Pelloponnesian forests and acquired at 2007-08-24T14:45:00 using static thresholds processing chain </value> 1.615 - </list> 1.616 -<!-- <list> --> 1.617 -<!-- Bean --> 1.618 -<!-- <value>Query</value> --> 1.619 -<!-- Format --> 1.620 -<!-- <value>KMZ</value> --> 1.621 -<!-- Label --> 1.622 -<!-- <value></value> --> 1.623 -<!-- Statement --> 1.624 -<!-- <value></value> --> 1.625 -<!-- </list> --> 1.626 </list> 1.627 </constructor-arg> 1.628 </bean>
2.1 --- a/endpoint/WebContent/query.jsp Sun Sep 16 22:41:09 2012 +0300 2.2 +++ b/endpoint/WebContent/query.jsp Mon Sep 17 21:02:57 2012 +0300 2.3 @@ -97,13 +97,8 @@ 2.4 while(entryListIterator.hasNext()) 2.5 { 2.6 StrabonBeanWrapperConfiguration entry = entryListIterator.next(); 2.7 - String handle=""; 2.8 - if(entry.getBean().equals("Query")) 2.9 - { 2.10 - handle="&handle=map"; 2.11 - } 2.12 2.13 - String href="\""+URLEncoder.encode(entry.getBean(),"utf-8")+"?view=HTML"+handle+"&query="+URLEncoder.encode(entry.getStatement(),"utf-8")+"&format="+URLEncoder.encode(entry.getFormat(),"utf-8")+"\""; 2.14 + String href="\""+URLEncoder.encode(entry.getBean(),"utf-8")+"?view=HTML&handle="+entry.getHandle()+"&query="+URLEncoder.encode(entry.getStatement(),"utf-8")+"&format="+URLEncoder.encode(entry.getFormat(),"utf-8")+"\""; 2.15 String title="\""+entry.getTitle()+"\""; 2.16 String label=entry.getLabel(); 2.17 %>
3.1 --- a/endpoint/src/main/java/eu/earthobservatory/org/StrabonEndpoint/StrabonBeanWrapper.java Sun Sep 16 22:41:09 2012 +0300 3.2 +++ b/endpoint/src/main/java/eu/earthobservatory/org/StrabonEndpoint/StrabonBeanWrapper.java Mon Sep 17 21:02:57 2012 +0300 3.3 @@ -69,7 +69,7 @@ 3.4 3.5 while (it.hasNext()) { 3.6 int items = 0; 3.7 - String label = "", bean = "", statement = "", format = "", title=""; 3.8 + String label = "", bean = "", statement = "", format = "", title="", handle=""; 3.9 3.10 if (it.hasNext()) { 3.11 bean = it.next(); 3.12 @@ -89,11 +89,14 @@ 3.13 } 3.14 if (it.hasNext()) { 3.15 title = it.next(); 3.16 - System.out.println("TITLE= "+title); 3.17 items++; 3.18 } 3.19 - if (items == 5) { 3.20 - StrabonBeanWrapperConfiguration entry = new StrabonBeanWrapperConfiguration(label, bean, statement, format, title); 3.21 + if (it.hasNext()) { 3.22 + handle = it.next(); 3.23 + items++; 3.24 + } 3.25 + if (items == 6) { 3.26 + StrabonBeanWrapperConfiguration entry = new StrabonBeanWrapperConfiguration(label, bean, statement, format, title, handle); 3.27 this.entries.add(entry); 3.28 } 3.29
4.1 --- a/endpoint/src/main/java/eu/earthobservatory/org/StrabonEndpoint/StrabonBeanWrapperConfiguration.java Sun Sep 16 22:41:09 2012 +0300 4.2 +++ b/endpoint/src/main/java/eu/earthobservatory/org/StrabonEndpoint/StrabonBeanWrapperConfiguration.java Mon Sep 17 21:02:57 2012 +0300 4.3 @@ -20,13 +20,15 @@ 4.4 private String statement; 4.5 private String format; 4.6 private String title; 4.7 + private String handle; 4.8 4.9 - public StrabonBeanWrapperConfiguration(String label, String bean, String statement, String format, String title) { 4.10 + public StrabonBeanWrapperConfiguration(String label, String bean, String statement, String format, String title, String handle) { 4.11 this.label = label; 4.12 this.bean = bean; 4.13 this.statement = statement; 4.14 this.format = format; 4.15 - this.title=title; 4.16 + this.title = title; 4.17 + this.handle = handle; 4.18 } 4.19 4.20 public String getLabel() { 4.21 @@ -69,5 +71,13 @@ 4.22 public void setFormat(String format) { 4.23 this.format = format; 4.24 } 4.25 + 4.26 + public String getHandle() { 4.27 + return this.handle; 4.28 + } 4.29 + 4.30 + public void setHandle(String handle) { 4.31 + this.handle = handle; 4.32 + } 4.33 } 4.34