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.
16. 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. extension curators taxonomists
18. 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 based on 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 GregorHagedorn's software Delta Access (apparently no longer available on-line). .
35. Databases in general: 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 Three models: relational, hierarchical and network Relational: The purpose of the relational model is to provide a declarative method for specifying data and queries Hierarchical: tree like structure (one to one; one to many relationships) Network: each record can have multiple relationships object-relational mapping (ORM) Relational database, text file, xml potentially all databases or data sources Experience with MySQL Diacritic marks (ontology?) Versioning
36. 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
37.
38.
39. security model: private until made public groups trust in groups
44. There are a various open source plugins and widgets used in mx: Input draw Phylowidget RelationBrowser The GoogleMaps API Attachment fu BetterNestedSet
46. Species Table Starts as a perfect mirror of the species table Adds version number when version is released Version released at anytime: export as pdf, html, XML Ghost of Species Table accepted Columns not seen publically id date_created date_modified
49. public pages::Electronic key publication standards: Data publication and dissemination of interactive keys under the open access model -ZooKeys (in prep) Stand alone publication Data files necessary to recreate the key DOI and kept with publisher
Add diagram suggesting how if generalized then must remove restrictions and the expertise in the system decreases. Design for the intended audience is most important factor. ‘Expert systems’ will never be completely simple, thus they must be carefully tailored to the particular expert. One system for all may not be the solution.Suggesting that a bottom up approach, many small individualized initiatives are beneficial. Mx moving away from show pages => workbench => import and export data
General MX introduction:93 tablesRequire identifiers on specimens. Specimen information makes data repeatable, thus pushing for images, keys, characters to be attached to specimen information. More specific.Local host here::127
Mostly matt responsible, although gaining ground as SF project with others involved. Francois, Fail, Myself, (2 others?)
General MX introduction:93 tablesRequire identifiers on specimens. Specimen information makes data repeatable, thus pushing for images, keys, characters to be attached to specimen information. More specific.Local host here::127
Come common database activities rails makes easier. Show detail of mx database and explain how it is a product of rails as a programming philosophy
Really I only have experience with relational databases, with a bit of experience using xml as a text db. Searching solutions? Problems with Treehopper. Versioning and the scamit solution. Emphasis on experimentation and creativity to solve problems. Not suggesting that these are the ‘right’ answer.
Simple newick trees
The problem: Need a way to propose changes, track changes from version to version and to roll back if necessaryEach table has a ghost table these start as a perfect mirror of the species table and add rows for any edit proposed to the species table. If an edit is accepted than it moves to the species table.When a version of the species list is made ‘official’ it is exported in html version, pdf and soon XML (soon as we can figure out what format to follow). Easy to do this using Rails.