the waminals project

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

Upload: kehan-harman

Post on 13-Jul-2015

900 views

Category:

Technology


0 download

TRANSCRIPT

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