Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

mx & dbs

990 views

Published on

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.

Published in: Technology, Sports
  • Be the first to comment

mx & dbs

  1. 1. mx & dbs<br />Katja Seltmann (katja_seltmann@ncsu.edu)<br />mx (http://hymenoptera.tamu.edu/wiki)<br />
  2. 2. Wiki:<br />(http://hymenoptera.tamu.edu/wiki/)<br />Acknowledgments<br />Funding:<br />The following sources of funding have directly or indirectly supported the development of mx, or have used mx to manage data: <br /><ul><li> NSF Advances in Biological Informatics (DBI-0850223)
  3. 3. Morphbank (NSF DBI-0446224)
  4. 4. National Evolutionary Synthesis Center (NESCent) (NSF EF-0423641)
  5. 5. PEET: Monographic research on parasitic Hymenoptera (NSF DEB-0328922)
  6. 6. Nescent DB Hackathon Workshop (Matt Yoder & K. Seltmann participants
  7. 7. NSF TOL grant (Heraty via Sharkey et al.)
  8. 8. NSF TOL grant (MartínRamírez and Jonathon Coddington)
  9. 9. NSF PEET grant (Anthony Cognato)
  10. 10. NSF PEET grant DEB-0328922 (Dr. Bob Wharton)
  11. 11. A Texas A&M Ecology and Evolutionary Biology Graduate Student Travel Grant to Matt Yoder </li></ul>Intellect, enthusiasm & hard work:<br /><ul><li> Matthew J. Yoder (diapriid@gmail.com), Krishna Dole, Andrew Deans (andy_deans@ncsu.edu), John W. Fail (fail@cenotaph.org) and others
  12. 12. Fredrik Ronquist & Greg Riccardi
  13. 13. All the contributors
  14. 14. SCAMIT: Southern California Marine Invertebrate Taxonomists</li></li></ul><li>
  15. 15.
  16. 16. Design for audience :: is the most important factor<br />*Greater the diversity of user-groups the <br />less specific the data requirements. <br />*Suggest that lack of specificity in primary <br />data collection may reduce quality of data. <br />extension<br />curators<br />taxonomists<br />
  17. 17. specific expert system<br />
  18. 18. mx history and players:<br />(http://hymenoptera.tamu.edu/wiki/)<br />mx is coded by Matt Yoder, Krishna Dole (retired), Katja Seltmann and with help from <br />Andy Deans. Johan Lijleblad has provided documentation and much useful feedback. <br />Many others, in particular the Wharton (TAMU), Cognato (MSU), and Heraty (UCR) labs <br />have provided feedback. We are very open to having others join us. <br />There is no formal means of citing mx, you might use something like this: <br />Yoder, M.J., Dole, K., Seltmann, K., and Deans, A. 2006-Present. Mx, a collaborative web based content management for biological systematists. <br />Various previous projects influenced the development of mx, in particular: <br />The table structure for specimens and collecting event related data is loosely based<br />on the TAMUIC insect collection&apos;s database programmed by Yoder and Oswald. That <br />database was in turn loosely based on a very early draft (pre 1998) of the Specify table <br />structure. <br />Some of the tables containing matrix related data are based on Yoder&apos;s early MS Access <br />database mtrx, which was greatly simplified from GregorHagedorn&apos;s software Delta Access (apparently no longer available on-line). <br />. <br />
  19. 19. <ul><li> focus moving to data import => export
  20. 20. workbench for revisionary taxonomy and systematics
  21. 21. looking for creative solutions based on experience
  22. 22. power in relational dbs
  23. 23. specific expert system
  24. 24. rapid development
  25. 25. agile
  26. 26. open source</li></li></ul><li>Rails solutions that help make development more agile (web 2.0):<br /><ul><li> Many small tables, object database model in the sense introduces the ideas of </li></ul> polymorphism and encapsulation into the database. Tables in rails correspond to a model <br /> and are strictly named.<br /><ul><li>MySQL but its hidden (can use other dbs)
  27. 27. Restful CRUD (create, read, update, delete)
  28. 28. Easy upload transactions in rake tasks
  29. 29. test driven development
  30. 30. creator & updater on and id
  31. 31. encryption & security
  32. 32. UTF8
  33. 33. Model View Controller (MVC)
  34. 34. migrations (easy to update a db and propagate those updates from development to</li></ul> production environment<br /><ul><li> little tough to deploy in comparison, but Passenger gem works; Dreamhost for US non-profits</li></ul> Browser <br />Controller View<br />Model Database<br />
  35. 35. Databases in general:<br />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.”<br />- www. wikipedia.org<br />Three models: relational, hierarchical and network<br />Relational: The purpose of the relational model is to provide a declarative method for specifying data and queries<br />Hierarchical: tree like structure (one to one; one to many relationships)<br />Network: each record can have multiple relationships<br />object-relational mapping (ORM)<br />Relational database, text file, xml potentially all databases or data sources<br />Experience with MySQL<br />Diacritic marks (ontology?)<br />Versioning<br />
  36. 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. <br /> -Thomas & Hannson. Agile Web Development with Rails<br />
  37. 37.
  38. 38.
  39. 39. security model: <br />private until made public<br />groups<br />trust in groups<br />
  40. 40. OTU is the key<br />
  41. 41. wiki help:<br />
  42. 42. image management:<br />
  43. 43. figuring:<br />
  44. 44. There are a various open source plugins and widgets used in mx:<br />Input draw<br />Phylowidget<br />RelationBrowser<br />The GoogleMaps API<br />Attachment fu<br />BetterNestedSet<br />
  45. 45. Versioning solution in MySQL/RoR (John Will Fail : fail@cenotaph.org)<br />
  46. 46. Species Table<br />Starts as a perfect mirror of the <br />species table<br />Adds version number when <br />version is released<br />Version released at anytime: <br />export as pdf, html, XML<br />Ghost of Species Table<br />accepted<br />Columns not seen publically<br />id<br />date_created<br />date_modified<br />
  47. 47. matrices vssubmatrices:<br />clone and share<br />display of large matrices<br />one click coding<br />export (nexml)<br />import<br />
  48. 48. annotations: tags and confidences<br />
  49. 49. public pages::Electronic key publication standards:<br />Data publication and dissemination of interactive keys under the open access model<br />-ZooKeys (in prep)<br />Stand alone publication<br />Data files necessary to recreate the key<br />DOI and kept with publisher<br />
  50. 50. public pages:<br />
  51. 51. public pages:<br />
  52. 52. public pages:<br />
  53. 53. public pages:<br />
  54. 54.
  55. 55. http://www.opendatacommons.org<br />
  56. 56.
  57. 57. Katja Seltmann<br />katja_seltmann@ncsu.edu<br />Wiki:<br />(http://hymenoptera.tamu.edu/wiki/)<br />Acknowledgments<br />Funding:<br />The following sources of funding have directly or indirectly supported the development of mx, or have used mx to manage data: <br /><ul><li> NSF Advances in Biological Informatics (DBI-0850223)
  58. 58. Morphbank (NSF DBI-0446224)
  59. 59. National Evolutionary Synthesis Center (NESCent) (NSF EF-0423641)
  60. 60. PEET: Monographic research on parasitic Hymenoptera (NSF DEB-0328922)
  61. 61. Nescent DB Hackathon Workshop (Matt Yoder & K. Seltmann participants
  62. 62. NSF TOL grant (Heraty via Sharkey et al.)
  63. 63. NSF TOL grant (MartínRamírez and Jonathon Coddington)
  64. 64. NSF PEET grant (Anthony Cognato)
  65. 65. NSF PEET grant DEB-0328922 (Dr. Bob Wharton)
  66. 66. A Texas A&M Ecology and Evolutionary Biology Graduate Student Travel Grant to Matt Yoder </li></ul>Intellect, enthusiasm & hard work:<br /><ul><li> Matthew J. Yoder (diapriid@gmail.com), Krishna Dole, Andrew Deans (andy_deans@ncsu.edu), John W. Fail (fail@cenotaph.org) and other mx hackers
  67. 67. Fredrik Ronquist & Greg Riccardi
  68. 68. All the contributors
  69. 69. SCAMIT: Southern California Marine Invertebrate Taxonomists</li>

×