"Seegrid will be due for a migration to confluence on the 1st of August. Any update on or after the 1st of August will NOT be migrated"

Geochronology Implementation

NOTE: System commands and file locations are specific for Debian. For other distributions, please ask us - we may be able to assist.

Create database on spatialdb from flat form

  • Using spatialdb.arrc.csiro.au
  • Create Users:
    • createuser XXXX -P
      • ragingspot-admin (administrator)
      • ragingspot-user
  • Create postgres db
    • createdb ragingspot
  • Add plpgsql to db (Needed for the postgis libs)
    • createlang plpgsql ragingspot
  • Locate the spatialdb create scripts
    • locate postgis.sql and locate spatial_ref_sys.sql
  • Add postgis functions to db
    • psql -d ragingspot -f postgis.sql
    • psql -d ragingspot -f spatial_ref_sys.sql

Creating geometry columns

  • Load up the flat csv via Navicat to spatialdb
    • Make sure numbers are either numeric or float during import
    • Ensure the data has a primary key - otherwise geoserver cant do things repeatably.
  • Using the LAT/LONG and the knowledge that its in wgs84 (EPSG:4326)
    • Add a spatial column for the points
      • SELECT AddGeometryColumn(table_name, column_name, 4326, 'POINT', 2); * Create the geometry from the lat/long columns
      • SET column_name = PointFromText('POINT(' || "NameOfLongitudeColumn" || ' ' || "NameOfLattitudeColumn" || ')', 4326);
  • Run a select and check the new column is correct.

Exposing data via Geoserver.

  • If you do not already have a Geoserver instance, create one.
  • Create workspace with namespace that makes sense.
    • Even better if the URI of the namespace is resolveable to a real thing
  • Create a Layer
    • Add the database server, database, username, password, and any extra data needed for the connection.
  • Create a Store
    • Expose the table and the attributes you would like.
    • Metadata here WILL appear in other parts of the SISS stack (the portal, the registry) so take some care.

Registering the data

  • Log in as admin to the registry
  • Go to Administration -> Harvesting Management.
    • Fill in the URL for the WFS and the name (internal harvesting identifier only)
    • Create records for the layers.
  • Test the harvest by starting a harvest and seeing what happens.
  • Search for the keyword in the registry interface - just to prove the layer is in there.


  • The AuScope portal reads its CS-W sources every 5mins, which means changes in the registry may take time.
  • The generic parser will pick up the layer (WFS, WMS) and display it in an extJS form.

Future Work

  • Simple Features will never be enough for interoperablilty but is often enough to get started. Use this new service to ask the question, do we need to do more? Will a community schemas aid the main reason you put the data online?
  • How are you planning to use/interogate the data? Will you need indexing on your underlying data base? Put a long query logger and a repeated query logger on your db for the first month - you can use this information in further optimisations.
  • How unique is my data? Will persisted ID's aid in the longer term use of the data?
-- TaniaJacob and TerryRankine - 09 Aug 2010
Topic revision: r1 - 30 May 2011, TerryRankine