mx & dbs
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
mx & dbs
Katja Seltmann ([email protected])mx (http://hymenoptera.tamu.edu/wiki)
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/)
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
specific expert system
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).
• 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
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
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
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
security model: 1. private until made public2. groups3. trust in groups
OTU is the key
wiki help:
image management:
figuring:
There are a various open source plugins and widgets used in mx:
Input drawPhylowidgetRelationBrowserThe GoogleMaps APIAttachment fuBetterNestedSet
Versioning solution in MySQL/RoR (John Will Fail : [email protected])
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
matrices vs submatrices: clone and share
display of large matricesone click codingexport (nexml)import
annotations: tags and confidences
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
public pages:
public pages:
public pages:
public pages:
http://www.opendatacommons.org
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/)