24
Presented at Drupal WA Meetup, 2/10/2012 GAIA RESOURCES Waminals Species Databases, Mungeing, Maps and Drupal Kehan Harman Gaia Resources Andrew Rowe, Morgan Strong Western Australian Museum

The Waminals Project

Embed Size (px)

Citation preview

Presented at Drupal WA Meetup, 2/10/2012

GAIA RESOURCES

WaminalsSpecies Databases, Mungeing, Maps and Drupal

Kehan HarmanGaia Resources

Andrew Rowe, Morgan StrongWestern Australian Museum

OVERVIEW● What do we have?● What do we want?● How do we get it?

WHAT DO WE HAVE?● Collections

WHAT DO WE HAVE?● Data(bases)

WHAT DO WE HAVE?

● Just like children● Started out similar but grew up to be

totally different

WHAT DO WE HAVE?● Consultants● Curators● Knowledge

WHAT DO WE WANT?● Data Available

● To the right people

● Updated regularly● Maps

● Related Species

● Be able to identify species

● Minimise duplication of effort

HOW DO WE GET IT?● Data exchange format

● DarwinCore– DublinCore for biology

● Global Initialitves

● Data Mungeing● Pentaho Data

Integration● http://kettle.pentaho.com

Munge Munge Munge● Google Refine?● Pentaho

● Connect to SQL Server

● Transformations● Validations

Munge Munge Munge● Google Refine?● Pentaho

● Connect to SQL Server

● Transformations● Validations

HOW DO WE GET IT?● Drupal Modules

● Core

– Fields

● Contrib

– Drush, drush, drush

– Features

– Migrate

– Geofield

– Openlayers

– Views

– Rules

– Flag

– Display Suite

ID Tool● Species Profiles in

a node type● Attribute field

● (hook_field_info)– Field Name– Field Value

Adding Value● Collection is

dynamic● Identifications

change● Names change

● Curators check identifications

● Correct where necessary

Adding Value● Node type for

specimens● Taxonomy for

names

● Geofield to store spatial data● http://drupal.org/

project/geofield

Migrations● Base class to define

a migration● Run Pentaho

– exec();

– escapeshellcmd();

● Import Names● Import Specimens

Migrations● Dynamic Migration

● Extend DynamicMigration● MigrationBase::registerMigration();

Migrations● Gotchas

● modulename.info– files[]=my_custom

_migration.inc● Don't believe

everything you find in a database– Eg Date Changed

● Feeds?● Migrate more

flexible vs● Store hash of

data

OpenLayers● Customisable map layers

● Google● OpenStreetMap● Mapbox● http://drupal.org/project/

openlayers

OpenLayers● Map

● Center & Bounds● Layers & Styles

– External Sources– Data in the site

● Behaviors– Popup– Geolocation– Draw

● Gotchas● Define a map per

view● Expose view's output

in that map

● Try MapBox & TileMill● developmentseed

● Views Hacks● Flag● Custom module

ConclusionsDrupal ready for spatial data? Yes

Do I like the Migrate module? Yes

Do I like Pentaho? Yes

Did I have any trouble?

What's my favourite module? Features

Or maybe drush

Or maybe views

~$ drush fe waminals node:species_factsheet taxonomy:taxon_name views_view:waminals* dependencies:openlayers

~$ git diff~$ git commit~$ git push

QUESTIONS?● If you want to know more, please contact me

● Blog article coming

[email protected]

@kehan

● Web site:

www.gaiaresources.com.au