mx & dbs

32
mx & dbs Katja Seltmann ([email protected]) mx (http://hymenoptera.tamu.edu/wiki)

Upload: katja-c-seltmann

Post on 20-Jun-2015

781 views

Category:

Technology


1 download

DESCRIPTION

For Biodiversity Informatics workshop in Stockholm, Friday September 13. Describing some of the tools in the mx system for mx; a collaborative web-based content management system for evolutionary systematists, particularly those working on descriptive taxonomy.Yoder, M.J., Dole, K., Seltmann, K., and Deans, A. 2006-Present. Mx, a collaborative web based content management for biological systematists.

TRANSCRIPT

Page 1: mx & dbs

mx & dbs

Katja Seltmann ([email protected])mx (http://hymenoptera.tamu.edu/wiki)

Page 2: mx & dbs

Funding:

The following sources of funding have directly or indirectly supported the development of mx, or have used mx to manage data:

• NSF Advances in Biological Informatics (DBI-0850223)• Morphbank (NSF DBI-0446224)• National Evolutionary Synthesis Center (NESCent) (NSF EF-0423641)• PEET: Monographic research on parasitic Hymenoptera (NSF DEB-0328922)• Nescent DB Hackathon Workshop (Matt Yoder & K. Seltmann participants• NSF TOL grant (Heraty via Sharkey et al.) • NSF TOL grant (Martín Ramírez and Jonathon Coddington)• NSF PEET grant (Anthony Cognato) • NSF PEET grant DEB-0328922 (Dr. Bob Wharton) • A Texas A&M Ecology and Evolutionary Biology Graduate Student Travel Grant to Matt Yoder

Intellect, enthusiasm & hard work:• Matthew J. Yoder ([email protected]), Krishna Dole, Andrew Deans ([email protected]),

John W. Fail ([email protected]) and others• Fredrik Ronquist & Greg Riccardi• All the contributors• SCAMIT: Southern California Marine Invertebrate Taxonomists

Acknowledgments

Wiki:(http://hymenoptera.tamu.edu/wiki/)

Page 3: mx & dbs
Page 4: mx & dbs
Page 5: mx & dbs

Design for audience :: is the most important factor

*Greater the diversity of user-groups the less specific the data requirements.

*Suggest that lack of specificity in primary data collection may reduce quality of data.

curatorsextension

taxonomists

Page 6: mx & dbs

specific expert system

Page 7: mx & dbs

mx history and players:(http://hymenoptera.tamu.edu/wiki/)

.

mx is coded by Matt Yoder, Krishna Dole (retired), Katja Seltmann and with help from Andy Deans. Johan Lijleblad has provided documentation and much useful feedback. Many others, in particular the Wharton (TAMU), Cognato (MSU), and Heraty (UCR) labs have provided feedback. We are very open to having others join us.

There is no formal means of citing mx, you might use something like this: Yoder, M.J., Dole, K., Seltmann, K., and Deans, A. 2006-Present. Mx, a collaborative web based content management for biological systematists.

Various previous projects influenced the development of mx, in particular: The table structure for specimens and collecting event related data is loosely basedon the TAMUIC insect collection's database programmed by Yoder and Oswald. That database was in turn loosely based on a very early draft (pre 1998) of the Specify table structure.

Some of the tables containing matrix related data are based on Yoder's early MS Access database mtrx, which was greatly simplified from Gregor Hagedorn's software Delta Access (apparently no longer available on-line).

Page 8: mx & dbs

• specific expert system• rapid development• agile• open source

• focus moving to data import => export• workbench for revisionary taxonomy and systematics• looking for creative solutions based on experience• power in relational dbs

Page 9: mx & dbs

Rails solutions that help make development more agile (web 2.0):

• Many small tables, object database model in the sense introduces the ideas of polymorphism and encapsulation into the database. Tables in rails correspond to a model and are strictly named.• MySQL but its hidden (can use other dbs)• Restful CRUD (create, read, update, delete)• Easy upload transactions in rake tasks

• test driven development

• creator & updater on and id

• encryption & security

• UTF8

• Model View Controller (MVC)

• migrations (easy to update a db and propagate those updates from development to production environment

• little tough to deploy in comparison, but Passenger gem works; Dreamhost for US non-profits

Browser

Controller View

Model Database

Page 10: mx & dbs

Databases in general:

1. Definition: “A database is an integrated collection of logically related records or files which consolidates records into a common pool of data records that provides data for many applications. A database is a collection of information that is organized so that it can easily be accessed, managed, and updated.”

- www. wikipedia.org

2. Three models: relational, hierarchical and network1. Relational: The purpose of the relational model is to provide a declarative

method for specifying data and queries2. Hierarchical: tree like structure (one to one; one to many relationships)3. Network: each record can have multiple relationships

3. object-relational mapping (ORM)

4. Relational database, text file, xml potentially all databases or data sources

5. Experience with MySQL1. Diacritic marks (ontology?)2. Versioning

Page 11: mx & dbs

Object-Relational Mapping (ORM) libraries map database tables to classes. If a database has a table called orders, our program will have a class named Order. Rows in this table correspond to objects of the class—a particular order is represented as an object of class Order. Within that object, attributes are used to get and set the individual columns. Our Order object has methods to get and set the amount, the sales tax, and so on.

-Thomas & Hannson. Agile Web Development with Rails

Page 12: mx & dbs
Page 13: mx & dbs
Page 14: mx & dbs

security model: 1. private until made public2. groups3. trust in groups

Page 15: mx & dbs

OTU is the key

Page 16: mx & dbs

wiki help:

Page 17: mx & dbs

image management:

Page 18: mx & dbs

figuring:

Page 19: mx & dbs

There are a various open source plugins and widgets used in mx:

Input drawPhylowidgetRelationBrowserThe GoogleMaps APIAttachment fuBetterNestedSet

Page 20: mx & dbs

Versioning solution in MySQL/RoR (John Will Fail : [email protected])

Page 21: mx & dbs

accepted

Species Table

Ghost of Species Table

iddate_createddate_modified

Starts as a perfect mirror of the species table

Adds version number when version is released

Columns not seen publically

Version released at anytime: export as pdf, html, XML

Page 22: mx & dbs

matrices vs submatrices: clone and share

display of large matricesone click codingexport (nexml)import

Page 23: mx & dbs

annotations: tags and confidences

Page 24: mx & dbs

public pages::Electronic key publication standards:Data publication and dissemination of interactive keys under the open access model

-ZooKeys (in prep)1. Stand alone publication2. Data files necessary to recreate the key3. DOI and kept with publisher

Page 25: mx & dbs

public pages:

Page 26: mx & dbs

public pages:

Page 27: mx & dbs

public pages:

Page 28: mx & dbs

public pages:

Page 29: mx & dbs
Page 30: mx & dbs

http://www.opendatacommons.org

Page 31: mx & dbs
Page 32: mx & dbs

Funding:

The following sources of funding have directly or indirectly supported the development of mx, or have used mx to manage data:

• NSF Advances in Biological Informatics (DBI-0850223)• Morphbank (NSF DBI-0446224)• National Evolutionary Synthesis Center (NESCent) (NSF EF-0423641)• PEET: Monographic research on parasitic Hymenoptera (NSF DEB-0328922)• Nescent DB Hackathon Workshop (Matt Yoder & K. Seltmann participants• NSF TOL grant (Heraty via Sharkey et al.) • NSF TOL grant (Martín Ramírez and Jonathon Coddington)• NSF PEET grant (Anthony Cognato) • NSF PEET grant DEB-0328922 (Dr. Bob Wharton) • A Texas A&M Ecology and Evolutionary Biology Graduate Student Travel Grant to Matt Yoder

Intellect, enthusiasm & hard work:• Matthew J. Yoder ([email protected]), Krishna Dole, Andrew Deans ([email protected]),

John W. Fail ([email protected]) and other mx hackers• Fredrik Ronquist & Greg Riccardi• All the contributors• SCAMIT: Southern California Marine Invertebrate Taxonomists

Acknowledgments

Katja [email protected]

Wiki:(http://hymenoptera.tamu.edu/wiki/)