view ChangeLog @ 1527:ba8fb069b2ca

Merged with default branch.
author Panayiotis Smeros <>
date Wed Nov 11 13:28:26 2015 +0000 (2015-11-11)
parents c349f282f45f 38b0c0a12614
children 6cc6a1963350
line source
1 Wed Mar 11 21:02:48 2015 Pyravlos Team
3 * Bug #73, modified appendBuffer function to take the srid into
4 consideration even if the argument is a constant (wktLiteral
5 or strdf literal)
7 * Update jar references on scripts used by the debian packaging.
8 Previously these references pointed only (incorrectly) to
11 * Updated package names (since repositories cannot include capital
12 letters + runtime and endpoint-exec must have different names
14 * Version 3.3.1 released.
16 * Bug #58, added script that is invoked my maven to also update the
17 version described in the deb/control file of the runtime and
18 endpoint-exec components.
20 * Related to bug #58, but it generally enhances Strabon; The runtime
21 component has also been debianized. Dependencies are added to
22 /usr/share/jdeb/lib/strabon-runtime. ClassPath and strabon script
23 have also been updated accordingly (strabon-cmd)
25 * Bug #58: Maven creates the debian package conditionally. Use
26 -Ddebian=true in the mvn package command.
28 * Bug #58: Added dependencies - java, postgresql, tomcat. Also, added
29 a strabon-init script that detects the postgis installation path
30 and sets up the template_postgis. Finally the script creates a db
31 called "endpoint" (assuming it does not already exist) that is used
32 for the strabon-endpoint command.
34 * Fixed an issue that returned null SRID when unmarshalling GML geometries if
35 the SRID did not follow one of the supported formats by GML-JTS. To fix that
36 we added a function that handles these cases by reading the userData variable
37 that JTS provides.
39 * Fixed a bug that would return no results when a variable that results
40 from a BIND clause appears in the FILTER or in the projection of a
41 query and is inside a spatial function.
42 (bug #78:
44 * Fixed the precision of the geometry literals in GeoJSON writer. Now,
45 this defaults to the precision model of JTS (equals to 16). Prior to
46 this it was fixed to 4.
48 * Now the GeoJSON writer is aware of the kind of typed literals (e.g.,
49 numeric, boolean, calendar, etc.) and prints the corresponding
50 values according to these types.
52 * Fixed a bug that would not return the correct result or would fail
53 when a spatial function involved a constant and a variable.
54 (bug #74:
56 * Fixed a bug that would not return the correct spatial datatype of a
57 projected geometry literal stored in the database.
58 (bug #71:
60 * Now, geometries expressed in CRS84 and a `geo:wktLiteral' datatype
61 are assigned the correct CRS, i.e., EPSG:4326 with a longitude
62 latitude axis order.
64 * Now, we report a parse error when a constant geometry given in a
65 SELECT or HAVING clause is not well-formed according to the WKT
66 specification.
67 (bug #69:
69 * Function `geof:convexHull' is now supported in a Having clause.
71 * Fixed older implementation of `strdf:distance' that would expect two
72 arguments instead of three when present in a HAVING clause.
74 * Fixed a bug that would cause a class cast exception for grounded
75 expressions with function nesting in the SELECT or HAVING clause.
77 * Fixed a bug in which `postgis:ST_Centroid' did not work in the SELECT
78 clause with input geometries from the database.
80 * Fixed a bug that `geof:getSRID' would return an integer instead of a
81 the URI corrresponding to the CRS that the input geometry was
82 expressed.
83 (bug #32:
84 * Fixed a bug that would raise an exception for queries involving two
85 UNION graph patterns and a projection to a predicate or a URI in
86 general.
87 (bug #53:
89 Wed Sep 17 20:14:12 2014 Pyravlos Team
91 * Version 3.2.10 released.
93 * The test suite of Strabon has now reached a mature level. It
94 contains tests for both stSPARQL and GeoSPARQL query languages and
95 most of the compliance tests covered in the specification of
96 GeoSPARQL (well, only those tests for the components that we have
97 chosen to implement).
99 * The endpoint now parses Accept headers with multiple values and uses
100 the first mimetype corresponding to a valid stSPARQLQueryResultFormat.
101 (bug #64:
103 * The endpoint now registers a handler for SIGTERM signals, so that if
104 it is run from the command-line (endpoint-exec), then the closing of
105 the connection will be ultimately called.
106 (bug #40:
108 * Strabon goes debian v1. the endpoint-exec jar is now given in a .deb
109 format. By dpkg-ing it, one can run a stand alone strabon endpoint
110 locally.
111 (bug #45
113 * Fixed a bug in which Strabon hanged when a unary spatial construct
114 had a ternary spatial construct as argument.
115 (bug #45
117 * Fixed a bug according to which spatial functions in ORDER BY were not
118 evaluated at all.
119 (bug #62:
121 * Fixed a bug according to which spatial boolean functions appearing
122 in the SELECT clause were raising a NULL pointer exception.
123 (bug #34:
125 * Fixed a bug in queries that contain variables that exist inside
126 spatial functions in select and do not exist in the where clause
127 made Strabon throw a NULL pointer exception.
128 (bug #51
130 * Various changes in the interface and behavior of Strabon Endpoint:
131 - Revised the logos and the sample queries.
132 - Results query limit is set to zero (unlimited).
133 - Users can now store RDF data that is present in a file on the
134 client side (the file is uploaded to the server).
135 - Credentials are now required for uploading files or executing
136 UPDATE queries, unless Strabon Endpoint runs locally (localhost).
137 - When viewing the results of queries in HTML, any URI is now an
138 active link to itself. Previously, that URI was being DESCRIBEd
139 and one was being transferred to a page viewing the result of the
140 DESCRIBE query.
141 - The DESCRIBE functionality can now be accessed through the menu bar.
143 * Fixed a bug where strdf:intersection function did not work as an
144 aggregate when used without 'GROUP BY'.
145 (bug #46
148 Sat Oct 19 23:37:23 2013 Pyravlos Team
150 * Version 3.2.9 released.
152 * Added support for the following google chart types: PieChart,
153 AreaChart and ColumnChart to strabon endpoint.
155 * Added Timemap as new results format in Strabon endpoint. This
156 option displays results in a map and a timeline on the same time,
157 using the Timemap js library (
158 The KMLWriter has been extended for that purpose, by transforming
159 dateTime values that are included in the result set into the respective
160 TimeStamp KML primitive (
161 In the "temporals" branch, the values of the strdf:period datatype
162 are converted into the respective KML TimeSpan primitive.
164 * Added extension function <> which is
165 mapped to the ST_Centroid(geometry) extension function of PostGIS.
166 See also: <>.
168 * Added extension function <> which is
169 mapped to the ST_MakeLine(geometry, geometry) extension function of
170 PostGIS. See also: <>.
172 * Added PostGIS vocabulary class.
174 * Added support of all SPARQL result types provided by Sesame (json,
175 xml, csv, tsv, binary). To get the respective writer, just prepend the
176 string "SPARQL/", e.g., "SPARQL/JSON". This is to ensure that we
177 support all SPARQL result formats of the SPARQL Protocol.
179 * Fixed a bug where a non-implemented extension function would make
180 Strabon throw a NULL pointer exception. Now we get away with it
181 through a warning.
183 * Strabon endpoint now publishes the URIs of the supported units of
184 measure for use in strdf:distance and geof:distance functions of
185 stSPARQL and GeoSPARQL, respectively. The URIs are those defined by
186 OGC Units of Measure 1.0 specification which may be found at
187 Strabon endpoint publishes
188 the URIs at http://localhost:8080/endpoint/Capabilities.
190 * Created new module with name 'vocab` and artifactId
191 'strabon-vocabulary` and moved there. Other
192 vocabularies have been added as well, such as Simple Features, and
193 GeoSPARQL.
195 * Strabon endpoint now publishes the URIs of the supported extension
196 functions for stSPARQL and GeoSPARQL. One should access them by
197 hitting the link http://localhost:8080/endpoint/Capabilities.
199 * Support for parsing EPSG URIs in geometry literals with datatype
200 geo:wktLiteral.
201 (bug #33:
203 * Endpoint Client now supports querying of Virtuoso and Parliament endpoints.
205 * Endpoint Client now supports store and update operations, but only
206 for Strabon Endpoints.
208 *Modified the NQUADSTranslator so that the rewritten triples are
209 immediately flushed to the database once they are created.
211 *In the N-Quads format, the fourth element is *optional*. Made proper
212 modification to the storage manager to coply to the specification
213 described here: Now files in
214 NQUADS format can contain quads *or* triples in order to be stored
215 successfully in Strabon.
217 *Fixed bug that occurs when storing periods having "UC" as ending
218 point.
220 *Added an initial set of tests on temporal operations in the
221 testsuite module.
223 *Completed support for temporal updates
225 *Moved vocabulary related to the temporal features of Strabon to the
226 respective "vocabulary" project
228 *The evaluation of temporal joins in the database does not produce
229 cartesian products in the database
231 * GeoSPARQL functions sfCrosses, sfOverlaps, ehOverlaps do not use the
232 ST_Relate PostGIS function (bug #24:
234 * All Simple Features functions of GeoSPARQL do not use the ST_Relate
235 PostGIS function
237 * Added diffTime function. This function performs the difference
238 between two literals of xsd:time datatype and returns a literal of
239 the xsd:time datatype as well.
241 * Added a testsuite package in default branch. Full tester guide can be found
242 in README. Among other, most of GeoSPARQL compliance tests
243 (, pg. 53) have been
244 implemented.
246 * Changed the definition and implementation of strdf:distance function, by
247 adopting the definition of GeoSPARQL.
248 (bug #23:
250 * Changed the definition and implementation of strdf:buffer function, by
251 adopting the definition of GeoSPARQL.
252 (bug #35:
254 * Added geof:distance and geof:buffer functions, which have the same definition
255 with strdf:distance and strdf:buffer respectively.
256 (bug #32:
258 * Added a download button when performing describe and construct queries at the
259 endpoint.
260 (bug #38:
262 * Fixed a bug, where XMLWriter and TSVWriter did not return geometries with the
263 SRID.
264 (bug #47:
266 * Fixed a bug where the GeoSPARQL construct functions did not return the datatype
267 geo:wktLiteral datatype but strdf:WKT.
269 Tue Mar 26 13:28:26 2013 Pyravlos Team
271 * Version 3.2.8 released.
273 * Added support for handling (storing/querying) GeoSPARQL datatypes.
274 (bug #31:
276 * Fixed a bug in StoreOp that wouldn't close the connection, neither
277 rollback the transaction upon an exception. This had as a side effect
278 the abnormal termination of StoreOp (through for example the use of
279 Ctrl-C signal) which was leaving the database locked.
281 * Fixed bug where spatial aggregates (e.g., union) didn't work as
282 expected when the query didn't contain a `GROUP BY' clause.
283 (bug #22:
285 * Updated GeoSPARQL namespaces and fixed function names to comply with
286 the GeoSPARQL specification.
287 (bug #25:
289 *Added preliminary tests on temporal functions in the respective
290 "test" package of the runtime module.
292 *Added option to strabon and endpoint scripts to support storing
293 files in NQUADS format.
295 *When a large file in NQUADS format is going to be stored, it is
296 partitioned and stored in parts. This happens because the translation
297 of quads to triples is a memory intensive job, so, translating and
298 storing the file in batches increases performance.
301 Wed Jan 09 18:06:41 2013 Pyravlos Team
303 * Version 3.2.7 released.
305 * Add an extension function
306 <> for computing the
307 span (in milliseconds) between two timestamps.
309 * Added an <endpoint-exec> module. This module builds an executable jar file
310 with an embedded Apache Tomcat 7. To create and run the executable jar just
311 type:
312 $ mvn clean package
313 $ java -jar endpoint-exec/target/strabon-endpoint-executable-*.jar
315 * Modified strabon script and postgis/monetdb.StoreOP class to get an
316 option for storing a RDF file in a named graph. Moreover, the RDF
317 format of the input RDF file now is given as an option (still, if it
318 is missing, it is assumed that the input is in N-TRIPLES format). The
319 option for the format is -f and the option for the named graph is -g
320 (takes a URI as an argument).
322 * Modified the names of the stSPARQL extension functions that
323 utilize the minimum bounding boxes of the involved geometries.
325 *Fixed bug in the evaluation of temporal constructs.
327 *Fixed a major bug that occured when a temporal variable that also took part
328 in a temporal join was projected.
330 *Renamed temporal extension functions to comply with the respective
331 functions of Allen's temporal relations.
333 *Modified the implementation of the temporal relation functions
334 "meets", "starts", "finishes", to comply with the semantics of the
335 respective functions of Allen. These functions are not supported by
336 PostgreSQL Temporal, so, in order to be evaluated in the database
337 level, we implemented them as PostgreSQL extension functions.
338 ATTENTION: In order to use these functions, the respective sql script
339 that includes them should be loaded to the the temporally (and spa-
340 tially) enabled database.
343 Tue Dec 11 19:33:45 2012 Pyravlos Team
345 * Version 3.2.6 released.
347 * Modified the names of the stSPARQL extension functions to comply
348 with the OGC Simple Features Access standard.
350 Tue Dec 11 00:11:43 2012 Pyravlos Team
352 * Version 3.2.5 released.
354 * Added support for storing and querying temporal information.
355 This functionality may be found in the `temporals' branch.
357 *The datatypes <> and
358 <> are used to
359 represent periods and instants respectively.
361 *The valid time time of triples is represented using quadtruples,
362 with the valid time annotation(instant or period) being the
363 fourth element of the quad. Into this direction:
364 *Strabon has been extended to support the NQUADS format. The
365 respective Sesame packages (of version 2.6.9) that support
366 this format are used.
368 *NQuadTranslator class has been created. This class uses the
369 NQUADS parser which is available here:
370 The initial version of this parser did not include support
371 for literals as the fourth element of the quad. We exteded
372 it to support the valid time representations described above.
374 *The NQUADSTranslator translates quads into triples using the
375 named graph approach, similar to the one proposed by Tappolet
376 et al. and described in
378 *The rdbms level of Strabon has been extended to (i) support
379 tha period datatype (ii) store the period values in the table
380 period_values(id, period). The period column is of the period
381 datatype, offered by the PostgreSQL Temporal extension (
382 Also, a GiST index is created on this column.
384 *A rewriting mechanism that converts quad graph patterns into
385 triple partners using the named graphs approach has been
386 implemented as a method of the runtime.generaldb.Strabon
387 class.
389 *A big part of the temporal functions of stSPARQL has been
390 imlemented. These functions include:
391 *The temporal relation functions during, periodOverlaps,
392 equalsPeriod, nequalsPeriod, adjacent, before, after,
393 overleft, overright, meets, starts, finishes.
395 *The period constructors period_intersect, period_union,
396 preceding_period, and succeeding_period. The last two
397 constructors are implemented using the jtemporal library.
398 The other functions are implemented in the database,
399 being mapped into the respective functions of PostgreSQL
400 Temporal. A complete reference of PostgreSQL Temporal
401 can be found here:
403 *The temporal constants "NOW" and "UC" (Until Changed)
404 are supported.
406 *The vocabulary of the valid time dimension of stSPARQL can
407 be found at the TemporalConstants class of the evaluation
408 module.
410 * Changed behaviour of Strabon and Strabon Endpoint for connecting to
411 a spatially-enabled database. Only one instance of Strabon is allowed
412 at a time.
414 * Implemented a Java client for Strabon Endpoint. The client should be
415 used only with endpoint versions >=3.2.5. The implementation may be
416 found int the `endpoint-client' submodule of maven. Currently, only
417 querying of Strabon Endpoints is supported.
419 * Added support for requesting the capabilities of Strabon Endpoint
420 (fixes Bug #20 <>). See
421 changesets f840796400bf and ?<TBC>? for specific details and how you
422 can determine the capabilities of older endpoints (versions <= 3.2.4).
424 * Updated KML writer to include the projected variables of an stSPARQL
425 query in "ExtendedData" and "Data" tags. This is the proper way to
426 do it if we need to convert a KML to a ESRI shapefile and also include
427 such information as attributes for a feature. See related pages from
428 KML specification:
429 <>
430 <>
432 * Added user authentication for storing RDF data through Strabon
433 Endpoint. The credentials are specified in
434 WEB-INF/ file.
436 * Strabon Endpoints now limits the number of the results to a maximum
437 one. The maximum number is specified in the beans.xml file. This
438 corresponds to parameter "maxLimit". The endpoint script has also been
439 updated correspondingly; the limit can be given using the option "-l".
440 One can disable limiting of query results, by setting the "maxLimit"
441 parameter to 0. Addresses Bug #6
442 (<>).
444 * Added "Known Issues" section to README.
446 * Added -m (more memory) and -M (much more memory) options in strabon
447 script for out-of-memory exceptions.
449 * Fixed Bug #10 (<>). Now
450 KMLWriter handles more geometric types (other than polygons). See
451 changeset 9a3bfee64a39.
453 * Menu and navigation in Strabon Endpoint has changed to use jquery.
454 The menu is now populated using the queries placed inside the beans.xml.
456 * Added BrowseBean and browse.jsp for browsing the RDF data using the
457 Strabon Endpoint.