Project

General

Profile

Activity

From 12/26/2011 to 01/24/2012

01/24/2012

06:10 PM Revision 639: VegX-VegBIEN mapping: Map additional taxondetermination.determinationdate input formats straight through
Aaron Marcuse-Kubitza
06:08 PM Revision 638: test/input/SALVIAS_db.sh: Updated DB name
Aaron Marcuse-Kubitza
05:57 PM Revision 637: Regenerated vegbien.ERD exports
Aaron Marcuse-Kubitza
05:55 PM Revision 636: input.Makefile: Added documentation for why import errors for one input do not abort the import process for all inputs
Aaron Marcuse-Kubitza
05:53 PM Revision 635: input.Makefile: Determine DB name from input directory name, rather than DB file name
Aaron Marcuse-Kubitza
05:20 PM Revision 634: input.Makefile: Added documentation for accepting a test output
Aaron Marcuse-Kubitza
05:07 PM Revision 633: mappings/Makefile: Don't delete DwC-VegBIEN.specimens.csv in clean
Aaron Marcuse-Kubitza
05:05 PM Revision 632: VegBIEN: Renamed taxondetermination.*determination to is*
Aaron Marcuse-Kubitza
04:16 PM Revision 631: inputs/SALVIAS/test: Ignore test outputs
Aaron Marcuse-Kubitza
04:12 PM Revision 630: input.Makefile: Added test that generates VegBIEN.2-step.xml by mapping via a VegX.xml
Aaron Marcuse-Kubitza
03:39 PM Revision 629: input.Makefile: Added test that generates VegX.xml
Aaron Marcuse-Kubitza
03:29 PM Revision 628: input.Makefile: Added test that generates VegBIEN.xml
Aaron Marcuse-Kubitza
02:50 PM Revision 627: input.Makefile: Factored test/import.out out of DB section
Aaron Marcuse-Kubitza
02:43 PM Revision 626: input.Makefile: Renamed test/import.ref to import.out.ref. Changed syntax for accepting a test output to work with all types of test outputs.
Aaron Marcuse-Kubitza
02:32 PM Revision 625: Makefiles: Recurse into outermost subdir rather than bypassing it and going directly to innermost subdir
Aaron Marcuse-Kubitza
02:08 PM Revision 624: input.Makefile: Deal with inputs without a DB file, tests, verifications, etc.
Aaron Marcuse-Kubitza
02:07 PM Revision 623: inputs/Makefile: Don't use subdir makefiles because they are no longer needed
Aaron Marcuse-Kubitza
01:28 PM Revision 622: input.Makefile: Detect DB engine automatically from SQL file available in src subdir
Aaron Marcuse-Kubitza
01:00 PM Revision 621: input.Makefile: Factored as much as possible out of section for each DB engine
Aaron Marcuse-Kubitza
12:58 PM Revision 620: input.Makefile: Moved tests into test subdir
Aaron Marcuse-Kubitza
12:51 PM Revision 619: input.Makefile: Moved tests into test subdir
Aaron Marcuse-Kubitza
12:46 PM Revision 618: Added initial DwC-VegBIEN mappings spreadsheet with DwC terms
Aaron Marcuse-Kubitza
12:36 PM Revision 617: inputs/SALVIAS/verify: Updated to use new names for renamed tables
Aaron Marcuse-Kubitza
12:34 PM Revision 616: inputs/SALVIAS/verify: Updated to use new names for renamed tables
Aaron Marcuse-Kubitza
12:18 PM Revision 615: vegbien.sql: Removed no longer needed specimen.collector_id
Aaron Marcuse-Kubitza
12:16 PM Revision 614: VegX-VegBIEN mapping: Map collector name to new verbatimcollectorname field
Aaron Marcuse-Kubitza
12:11 PM Revision 613: vegbien.sql: Removed specimen.collectornumber_dwc and replaced it with verbatimcollectorname to reflect that the collectornumber_dwc is actually an ID of the specimen, and the collector's name is what we want to store
Aaron Marcuse-Kubitza

01/23/2012

05:33 PM Revision 612: mappings/Makefile: Run simplify_xpath on VegX-VegBIEN.organisms.csv
Aaron Marcuse-Kubitza
05:33 PM Revision 611: simplify_xpath: Be case sensitive to handle VegX correctly
Aaron Marcuse-Kubitza
05:18 PM Revision 610: VegX-VegBIEN mapping: Avoid using a dummy taxondetermination with role=collector
Aaron Marcuse-Kubitza
04:50 PM Revision 609: VegX-VegBIEN mapping: Map stem count to new stemcount field
Aaron Marcuse-Kubitza
04:48 PM Revision 608: VegX-VegBIEN mapping: Take advantage of aggregateoccurrence.count being optional
Aaron Marcuse-Kubitza
04:46 PM Revision 607: vegbien.sql: Made aggregateoccurrence.count to handle individuals data (for which count should be dynamically determined from # individual plants inside the aggregateoccurrence)
Aaron Marcuse-Kubitza
04:43 PM Revision 606: NYBG-VegBIEN mapping: Don't map dummy values to locationcode, etc. (e.g. in specimens data) because these tables are no longer required
Aaron Marcuse-Kubitza
04:42 PM Revision 605: vegbien.sql: Made several pointers to parent elements optional to deal with specimens data that might not have a location, etc.
Aaron Marcuse-Kubitza
04:29 PM Revision 604: vegbien.sql: Added taxondetermination UNIQUE constraint
Aaron Marcuse-Kubitza
04:18 PM Revision 603: VegX-VegBIEN mapping: Took advantage of location.confidentialitystatus being optional
Aaron Marcuse-Kubitza
04:16 PM Revision 602: VegX-VegBIEN mapping: Took advantage of userdefined.userdefinedtype being optional
Aaron Marcuse-Kubitza
04:13 PM Revision 601: vegbien.sql: Gave userdefined.userdefinedtype a default value
Aaron Marcuse-Kubitza
04:10 PM Revision 600: VegX-VegBIEN mappings: Took advantage of plantconcept.reference_id becoming optional
Aaron Marcuse-Kubitza
04:07 PM Revision 599: vegbien.sql: Made plantconcept.reference_id optional. Merge plantconcepts with no reference_id when eliminating duplicates.
Aaron Marcuse-Kubitza
04:05 PM Revision 598: PostgreSQL-MySQL.csv: Deal with all non-NOT NULL timestamp fields
Aaron Marcuse-Kubitza
04:00 PM Revision 597: vegbien.sql: Removed confusing plantconcept.plantname field since we are using plantname.plantname instead
Aaron Marcuse-Kubitza
03:54 PM Revision 596: VegBIEN: Renamed aux_role to role
Aaron Marcuse-Kubitza
03:47 PM Revision 595: VegX-VegBIEN mappings: Took advantage of several fields becoming optional
Aaron Marcuse-Kubitza
03:43 PM Revision 594: VegX-VegBIEN mappings: Took advantage of several fields becoming optional
Aaron Marcuse-Kubitza
03:36 PM Revision 593: Regenerated vegbien.ERD exports
Aaron Marcuse-Kubitza
03:36 PM Revision 592: vegbien.sql: taxonbinmethod points to stratumtype instead of stratum because stratumtype is a method table, but stratum is a measurements table. stratum does not point directly to stratummethod because it points to it via stratumtype.
Aaron Marcuse-Kubitza
03:04 PM Revision 591: vegbien.sql: Made taxondetermination.determinationdate optional because some determinations might not have a date
Aaron Marcuse-Kubitza
02:47 PM Revision 590: Regenerated vegbien.ERD exports
Aaron Marcuse-Kubitza
02:46 PM Revision 589: vegbien.sql: Added specimen.authorspecimencode
Aaron Marcuse-Kubitza
02:36 PM Revision 588: Adjusted vegbien.ERD.mwb
Aaron Marcuse-Kubitza
02:34 PM Revision 587: Regenerated vegbien.ERD exports
Aaron Marcuse-Kubitza
02:33 PM Revision 586: VegBIEN: Renamed sourceaccessionnumber to sourceaccessioncode to show that they are the data source's analog of accessioncode. Added sourceaccessioncode to all applicable tables because this is the database pkey, which is distinct from any author*code applied by the collector.
Aaron Marcuse-Kubitza
01:56 PM Revision 585: vegbien.sql: Changed taxonbinmethod_keys to UNIQUE INDEX to take advantage of COALESCE() for dealing with NULL values
Aaron Marcuse-Kubitza
01:43 PM Revision 584: vegbien.sql: Renamed taxonbin to taxonbinmethod to reflect that it does not contain actual organisms (those go in aggregateoccurrence), but rather defined a *method* of aggregating organisms
Aaron Marcuse-Kubitza
01:39 PM Revision 583: vegbien.sql: Removed taxonbin.count because that belongs in aggregateoccurrence and taxonbin is more similar to a sampling method. Added taxonbin UNIQUE constraint.
Aaron Marcuse-Kubitza
01:24 PM Revision 582: vegbien.sql: Do location duplicate elimination independently on code or lat/long, allowing duplicate entries with NULLs to exist when a location is incompletely specified
Aaron Marcuse-Kubitza
01:15 PM Revision 581: vegbien.sql: Require location to have either an authorlocationcode or a lat/long. Distinguish between regular and subplots in UNIQUE constraint.
Aaron Marcuse-Kubitza
01:10 PM Revision 580: vegbien.sql: Renamed location.latitude and longitude to publiclatitude, publiclongitude to reflect that they are not the actual lat/long. Switched to requiring reallatitude/reallongitude.
Aaron Marcuse-Kubitza
01:02 PM Revision 579: Added inputs/TurboVeg
Aaron Marcuse-Kubitza
12:58 PM Revision 578: vegbien.ERD.mwb: Deal with MySQL assuming that a timestamp field is NOT NULL
Aaron Marcuse-Kubitza
12:57 PM Revision 577: PostgreSQL-MySQL.csv: Deal with MySQL assuming that a timestamp field is NOT NULL
Aaron Marcuse-Kubitza
12:53 PM Revision 576: vegbien.sql: Made specimen.taxonoccurrence_id required
Aaron Marcuse-Kubitza
12:47 PM Revision 575: vegbien.sql: Made several fields optional, adding defaults where needed
Aaron Marcuse-Kubitza
12:47 PM Revision 574: PostgreSQL-MySQL.csv: Deal with PostgreSQL-style :: casts
Aaron Marcuse-Kubitza
12:14 PM Revision 573: NYBG mappings: Add mapping for CollectorNumber to specimen.collectornumber_dwc
Aaron Marcuse-Kubitza
12:08 PM Revision 572: vegbien.sql: Added specimen.collectornumber_dwc
Aaron Marcuse-Kubitza
12:03 PM Revision 571: VegBIEN: Renamed sourceid to author*code
Aaron Marcuse-Kubitza
12:01 PM Revision 570: VegBIEN: Renamed sourceid to author*code
Aaron Marcuse-Kubitza
11:44 AM Revision 569: mappings: Map ScientificNameAuthor to plantconcept with rank author
Aaron Marcuse-Kubitza
10:53 AM Revision 568: vegbien.sql: Removed sizeclass.*precision fields
Aaron Marcuse-Kubitza
10:50 AM Revision 567: vegbien.sql: Added count field to taxonBin
Aaron Marcuse-Kubitza
10:47 AM Revision 566: VegBIEN: Renamed place to locationplace
Aaron Marcuse-Kubitza
10:40 AM Revision 565: vegbien.sql.make: Exclude 'CREATE OR REPLACE PROCEDURAL LANGUAGE plpgsql' to avoid restore errors
Aaron Marcuse-Kubitza
10:20 AM Revision 564: repl: When matching words, treat _ as word boundary and ignore case.
Aaron Marcuse-Kubitza

01/20/2012

05:09 PM Revision 563: VegBIEN: Renamed individualplant.height to overallheight
Aaron Marcuse-Kubitza
02:34 PM Revision 562: Regenerated vegbien.ERD exports
Aaron Marcuse-Kubitza
02:32 PM Revision 561: PostgreSQL-MySQL.csv: Convert double quotes to backticks (`)
Aaron Marcuse-Kubitza
02:10 PM Revision 560: Regenerated vegbien.ERD exports
Aaron Marcuse-Kubitza
02:09 PM Revision 559: vegbien.for_ERD.sql: Fixed syntax error in stratum table
Aaron Marcuse-Kubitza
02:00 PM Revision 558: Regenerated vegbien.ERD exports
Aaron Marcuse-Kubitza
01:39 PM Revision 557: vegbien.sql: Renamed sizeclass.*accuracy to *precision to reflect intended purpose
Aaron Marcuse-Kubitza
01:33 PM Revision 556: vegbien.sql: Added stem.diameteraccuracy
Aaron Marcuse-Kubitza
01:22 PM Revision 555: vegbien.sql: Removed taxonoccurrence.currentdetermination_id and originaldetermination_id because it's not possible to create a two-way pointer when the child-to-parent pointer is required (chicken-and-egg problem)
Aaron Marcuse-Kubitza
01:05 PM Revision 554: README.TXT: Added make empty_db
Aaron Marcuse-Kubitza
12:52 PM Revision 553: vegbien.sql: Added taxonoccurrence.currentdetermination_id and originaldetermination_id
Aaron Marcuse-Kubitza
12:41 PM Revision 552: vegbien.ERD.mwb: Added stratum and place tables
Aaron Marcuse-Kubitza

01/19/2012

05:28 PM Revision 551: Added vegbien.ERD.png
Aaron Marcuse-Kubitza
05:24 PM Revision 550: Added vegbien.ERD.svg
Aaron Marcuse-Kubitza
05:21 PM Revision 549: Added vegbien.ERD.pdf
Aaron Marcuse-Kubitza
05:19 PM Revision 548: Added vegbien ERD
Aaron Marcuse-Kubitza
05:19 PM Revision 547: Ignore *.bak in schemas
Aaron Marcuse-Kubitza
05:07 PM Revision 546: VegBIEN: specimen links directly to taxonoccurrence rather than indirectly via individualplant
Aaron Marcuse-Kubitza
04:43 PM Revision 545: vegbien.sql: Made voucher fields NOT NULL
Aaron Marcuse-Kubitza
04:41 PM Revision 544: vegbien.sql: Added voucher table
Aaron Marcuse-Kubitza
04:26 PM Revision 543: VegBIEN: specimen links directly to taxonoccurrence rather than indirectly via individualplant
Aaron Marcuse-Kubitza
04:22 PM Revision 542: VegBIEN: specimen links directly to taxonoccurrence rather than indirectly via individualplant
Aaron Marcuse-Kubitza
04:12 PM Revision 541: Create schemas/vegbien.for_wiki.sql from schemas/vegbien.for_ERD.sql
Aaron Marcuse-Kubitza
04:11 PM Revision 540: Added lib/ERD-wiki.csv to convert ERD SQL to human-readable wiki format
Aaron Marcuse-Kubitza
04:10 PM Revision 539: schemas/vegbien.for_ERD.sql: Removed VegBank-internal fields from taxonoccurrence
Aaron Marcuse-Kubitza
03:51 PM Revision 538: Removed no longer needed schemas/vegbien.my.sql
Aaron Marcuse-Kubitza
03:51 PM Revision 537: PostgreSQL-MySQL.csv: Use \g<0> instead of \0 in replacements because \0 not supported. Replace fulltext with fulltext__ (note fulltext_ doesn't work).
Aaron Marcuse-Kubitza
01:34 PM Revision 536: Added schemas/vegbien.for_ERD.sql and generated MySQL
Aaron Marcuse-Kubitza
01:34 PM Revision 535: Regenerated schemas/vegbien.for_ERD.sql
Aaron Marcuse-Kubitza
01:33 PM Revision 534: PostgreSQL-MySQL.csv: Deal with serial NOT NULL fields
Aaron Marcuse-Kubitza
01:22 PM Revision 533: Generate MySQL DDL schemas/vegbien.my.sql from vegbien.sql
Aaron Marcuse-Kubitza
01:22 PM Revision 532: Added repl spreadsheet to map PostgreSQL DDL to MySQL
Aaron Marcuse-Kubitza
12:56 PM Revision 531: Ignore src subdirectories in inputs
Aaron Marcuse-Kubitza
12:46 PM Revision 530: VegBIEN: Use stem instead of individualplant to store diameter/dbh
Aaron Marcuse-Kubitza

01/18/2012

05:57 PM Revision 529: vegbien.sql: Removed no longer needed taxondetermination.plantname_id
Aaron Marcuse-Kubitza
05:53 PM Revision 528: VegBIEN: Made taxondetermination.plantconcept_id required and plantname_id optional
Aaron Marcuse-Kubitza
04:28 PM Revision 527: vegbien.sql: Added specimen.taxonoccurrence_id fkey
Aaron Marcuse-Kubitza
03:47 PM Revision 526: vegbien.sql: Removed no longer needed taxondetermination.individualplant_id, specimen_id fields
Aaron Marcuse-Kubitza
01:57 PM Revision 525: VegBIEN: Renamed plot to location to reflect that a location can also be used for specimens
Aaron Marcuse-Kubitza
01:29 PM Revision 524: vegbien.sql: Added individualplant.stemcount
Aaron Marcuse-Kubitza
12:38 PM Revision 523: vegbien.sql: Added accessioncode fields to existing, modified tables
Aaron Marcuse-Kubitza
12:21 PM Revision 522: vegbien.sql: Added accessioncode fields to new tables
Aaron Marcuse-Kubitza

01/17/2012

04:56 PM Revision 521: vegbien.sql: Removed no longer needed individualplant.taxonarea
Aaron Marcuse-Kubitza
04:40 PM Revision 520: VegBIEN: Moved taxondetermination.sourceaccessionnumber and museum_id to specimen
Aaron Marcuse-Kubitza
03:32 PM Revision 519: vegbien.sql: Split taxondetermination UNIQUE CONSTRAINT into one constraint for each main key (taxonoccurrence_id, specimen_id, individualplant_id) to deal with Postgres treating a row with NULL in any of those columns as distinct. Added CHECK constraint to require one of taxonoccurrence_id, specimen_id, individualplant_id to be NOT NULL.
Aaron Marcuse-Kubitza
02:47 PM Revision 518: VegBIEN: Renamed museumaccessionnumber to sourceaccessionnumber
Aaron Marcuse-Kubitza
02:42 PM Revision 517: VegBIEN: Renamed authorcode to sourceid
Aaron Marcuse-Kubitza
02:33 PM Revision 516: vegbien.sql: Updated sizeclass to use ranges for parameters and remove taxonarea
Aaron Marcuse-Kubitza

01/13/2012

05:25 PM Revision 515: input.Makefile: Fixed verify by making %.out: % rule use %.make instead
Aaron Marcuse-Kubitza
05:24 PM Revision 514: input.Makefile: Moved verifications into one set of verify.* files
Aaron Marcuse-Kubitza
05:18 PM Revision 513: input.Makefile: All tests are run in the same transaction, with output to test.out
Aaron Marcuse-Kubitza
05:04 PM Revision 512: bin/map: Added support for processing multiple map_paths at once in the same transaction
Aaron Marcuse-Kubitza
04:50 PM Revision 511: SALVIAS organisms mapping: Removed redundant PlotCode mapping because the association to plotevent is done with PlotID
Aaron Marcuse-Kubitza
04:49 PM Revision 510: bin/map: Started adding support for multiple map_paths, all run in the same db transaction
Aaron Marcuse-Kubitza
04:35 PM Revision 509: Filled in SALVIAS stems mappings. make test2's stems test fails because we don't wrap the import transaction around all the tests so that organisms are already in the database when stems are imported.
Aaron Marcuse-Kubitza
04:28 PM Revision 508: mappings/Makefile: Corrected stemobservation to stem
Aaron Marcuse-Kubitza
03:46 PM Revision 507: Use baseDistance/complexUserDefined/method to distinguish between different dbhs in VegX
Aaron Marcuse-Kubitza
03:41 PM Revision 506: VegX mappings: Use baseDistance/value instead of baseDistance so we can later use complexUserDefined to distinguish between different types of dbh
Aaron Marcuse-Kubitza
03:07 PM Revision 505: VegX-VegBIEN.organisms.csv: Added initial stems mappings
Aaron Marcuse-Kubitza
03:06 PM Revision 504: mappings/Makefile: Updated VegX-VegBIEN.stems.csv input/output roots
Aaron Marcuse-Kubitza
03:05 PM Revision 503: ch_root: Deal with roots followed by something other than \b
Aaron Marcuse-Kubitza
02:41 PM Revision 502: input.Makefile: Remove *.out in new verify and test subdirs
Aaron Marcuse-Kubitza
02:38 PM Revision 501: Moved inputs files into subdirs for maps, verify, and test operations
Aaron Marcuse-Kubitza
02:00 PM Revision 500: vegbien.sql: Removed taxondetermination.collector_id because that's now in specimen
Aaron Marcuse-Kubitza
01:58 PM Revision 499: VegBIEN: Map to specimen.collector_id instead of taxondetermination
Aaron Marcuse-Kubitza
01:27 PM Revision 498: vegbien.sql: Added specimen.collector_id column
Aaron Marcuse-Kubitza
01:20 PM Revision 497: vegbien.sql: Changed taxondetermination.stem_id to individualplant_id
Aaron Marcuse-Kubitza
01:16 PM Revision 496: vegbien.sql: Removed taxondetermination columns that have been moved to specimen
Aaron Marcuse-Kubitza
01:14 PM Revision 495: VegBIEN: Merged specimen.collectionnumber and catalognumber_dwc fields. Removed NOT NULL constraints on several specimen columns because not all specimens have all identifiers. Mapped to new specimen fields.
Aaron Marcuse-Kubitza
12:59 PM Revision 494: VegX-VegBIEN mapping: Map collectiondate to specimen table
Aaron Marcuse-Kubitza
12:55 PM Revision 493: vegbien.sql: Added specimen.collectionnumber and collectiondate fields
Aaron Marcuse-Kubitza
12:50 PM Revision 492: Updated README.TXT to reflect new make targets
Aaron Marcuse-Kubitza

01/12/2012

01:18 PM Revision 491: vegbien.sql: Added sizeclass columns
Aaron Marcuse-Kubitza
01:01 PM Revision 490: VegBIEN: Removed stem* prefix from stem measurements because it's redundant and because these same field names were reused in non-stem tables
Aaron Marcuse-Kubitza
12:51 PM Revision 489: VegBIEN: Renamed stemobservation to stem
Aaron Marcuse-Kubitza
12:49 PM Revision 488: vegbien.sql: Added comments to renamed tables specifying VegBank equivalent
Aaron Marcuse-Kubitza
12:45 PM Revision 487: vegbien.sql: Added comments to new tables
Aaron Marcuse-Kubitza
12:25 PM Revision 486: vegbien.sql: Removed r# prefix from foreign key constraints
Aaron Marcuse-Kubitza
12:21 PM Revision 485: vegbien.sql: Added plot.namedplace_id for theplots which are identified by a namedplace rather than lat/long or name
Aaron Marcuse-Kubitza
12:18 PM Revision 484: vegbien.sql: Made plot.authorcode optional as not all plots have names
Aaron Marcuse-Kubitza
12:15 PM Revision 483: vegbien.sql: Added _dwc to specimen columns that are from DwC
Aaron Marcuse-Kubitza
12:12 PM Revision 482: vegbien.sql: Added UNIQUE constraint for specimen table. Made catalognumber required so that all specimens can be uniquely identified.
Aaron Marcuse-Kubitza
12:09 PM Revision 481: vegbien.sql: Made specimen.individualplant_id optional because specimens are not required to have a corresponding plot event (which all individualplants must have)
Aaron Marcuse-Kubitza
12:05 PM Revision 480: VegBIEN-VegBank.csv: Updated to reflect renames
Aaron Marcuse-Kubitza
12:02 PM Revision 479: vegbien.sql: Renamed specimen.code to collectioncode to match DwC term
Aaron Marcuse-Kubitza
11:58 AM Revision 478: vegbien.sql: Added sizeclass table
Aaron Marcuse-Kubitza
11:51 AM Revision 477: vegbien.sql: Renamed collection to specimen to reflect that it's for a single collection specimen
Aaron Marcuse-Kubitza
11:45 AM Revision 476: VegBIEN: Renamed collectiveobservation to aggregateoccurrence to reflect VegX usage of aggregate and the new taxonoccurrence table
Aaron Marcuse-Kubitza

01/11/2012

02:47 PM Revision 475: VegBIEN: Renamed stemobservation.stemcode to authorcode
Aaron Marcuse-Kubitza
02:43 PM Revision 474: vegbien.sql: Renamed individualplant.code to authorcode
Aaron Marcuse-Kubitza
02:41 PM Revision 473: sql.py: Reordered get() args to match put()
Aaron Marcuse-Kubitza
02:40 PM Revision 472: db_xml.py: Use new sql.put() which only eliminates duplicates based on database UNIQUE constraints
Aaron Marcuse-Kubitza
02:38 PM Revision 471: sql.py: Added new function put() and changed get() to use it
Aaron Marcuse-Kubitza
02:32 PM Revision 470: sql.py: Fixed raising of NullValueException to pass array of columns rather than single column
Aaron Marcuse-Kubitza
02:25 PM Revision 469: vegbien.sql: Added UNIQUE constraints to tables used in the mapping so that duplicates are eliminated by the database
Aaron Marcuse-Kubitza
02:23 PM Revision 468: sql.py: ExceptionWithColumn now stores multiple columns so that they can all be used in DuplicateKeyExceptions
Aaron Marcuse-Kubitza
02:22 PM Revision 467: util.py: Fixed dict_subset() to work correctly when a key does not exist
Aaron Marcuse-Kubitza
02:13 PM Revision 466: util.py: Added dict_subset()
Aaron Marcuse-Kubitza
02:07 PM Revision 465: sql.py: Use constraint_cols() to determine DuplicateKeyException column in try_insert()
Aaron Marcuse-Kubitza
01:50 PM Revision 464: sql.py: Added constraint_cols() to get columns of a constraint for use in determining the columns for a DuplicateKeyException
Aaron Marcuse-Kubitza
11:59 AM Revision 463: db_xml.py: Map empty fields to None instead of ignoring them, to ensure that an existing row with a value in that field is not used in the duplicate elimination
Aaron Marcuse-Kubitza
11:56 AM Revision 462: bin/map: Use db_xml.put()'s new on_error handler
Aaron Marcuse-Kubitza
11:53 AM Revision 461: db_xml.py: put(): Added on_error handler. Reordered arguments according to how often they are likely to be used.
Aaron Marcuse-Kubitza
11:31 AM Revision 460: bin/map: Print # input rows processed
Aaron Marcuse-Kubitza

01/10/2012

05:32 PM Revision 459: VegX-VegBIEN mapping: Merge different sources of plot elevation
Aaron Marcuse-Kubitza
05:32 PM Revision 458: vegbien.sql: Added individualplant.code field
Aaron Marcuse-Kubitza
05:10 PM Revision 457: xml_func.py: Expand XML funcs in XML func args
Aaron Marcuse-Kubitza
05:06 PM Revision 456: xml_dom.py: In NodeTextEntryIter, return non-text children as-is instead of ignoring them so that XML functions can use them
Aaron Marcuse-Kubitza
04:46 PM Revision 455: xml_dom.py: Improved readability by separating into sections
Aaron Marcuse-Kubitza
04:41 PM Revision 454: db_xml.py: Ignore only fields that are actually empty (rather than just not having element children), as a field containing anything other than a comment should be flagged as invalid input
Aaron Marcuse-Kubitza
04:41 PM Revision 453: xml_dom.py: Changed is_empty() to consider nodes with only comments to be empty
Aaron Marcuse-Kubitza
04:23 PM Revision 452: bin/map: Add input row to exceptions
Aaron Marcuse-Kubitza
04:22 PM Revision 451: db_xml.py: Ignore empty fields. Fixes bug where a field that's not text but has no Element children will be treated as a table, and an error is triggered because the corresponding table does not exist in the database.
Aaron Marcuse-Kubitza
04:19 PM Revision 450: xml_dom.py: Added has_elems() to check if node has Element children
Aaron Marcuse-Kubitza
03:56 PM Revision 449: bin/map: Use xml_func.process()'s new on_error error handler. Add row to database errors and xml_func.SyntaxExceptions.
Aaron Marcuse-Kubitza
03:54 PM Revision 448: xml_func.py: Changed formatting of comment that node with syntax errors is replaced with so that it starts on its own line
Aaron Marcuse-Kubitza
03:50 PM Revision 447: xml_func.py: Use on_error exception handler to allow caller to print exceptions instead of raising them
Aaron Marcuse-Kubitza
03:41 PM Revision 446: db_xml.py: Add node to any database exceptions generated in put()
Aaron Marcuse-Kubitza
03:09 PM Revision 445: exc.py: Added raise_() wrapper for raise statement
Aaron Marcuse-Kubitza
02:45 PM Revision 444: Ignore .~* (lock files generated by OpenOffice.org) in inputs
Aaron Marcuse-Kubitza
02:44 PM Revision 443: inputs/SALVIAS: Added stems map
Aaron Marcuse-Kubitza
02:43 PM Revision 442: bin/map: Handle empty rows for db output
Aaron Marcuse-Kubitza
02:34 PM Revision 441: mappings: Use stemParent instead of stemOrganism to identify stems so that it's clear that the stemParent is an individualOrganismObservation, not an individualOrganism
Aaron Marcuse-Kubitza
02:25 PM Revision 440: input.Makefile: Include VegX maps not in tablesSort
Aaron Marcuse-Kubitza
02:13 PM Revision 439: mappings/Makefile: Generate initial VegX-VegBIEN.stems.csv
Aaron Marcuse-Kubitza
01:36 PM Revision 438: mappings/Makefile: Cleaned up in preparation for adding rule to generate VegX-VegBIEN.stems.csv
Aaron Marcuse-Kubitza
12:51 PM Revision 437: bin/map: Continue with database insertion even if a row had XML func syntax errors, because these errors have been fixed by removing the offending function node
Aaron Marcuse-Kubitza
12:49 PM Revision 436: xml_func.py: Remove function nodes with syntax errors to prevent them from causing DatabaseErrors later
Aaron Marcuse-Kubitza
12:48 PM Revision 435: xml_dom.py: Added remove() function to remove a node
Aaron Marcuse-Kubitza
12:39 PM Revision 434: bin/map: Track Exceptions with ExTracker
Aaron Marcuse-Kubitza
12:38 PM Revision 433: exc.py: Added ExTracker to track printed (suppressed) Exceptions and exit with nonzero status if any were encountered
Aaron Marcuse-Kubitza
12:12 PM Revision 432: bin/map: Parse each output XPath at the beginning so XPath syntax errors are detected right away
Aaron Marcuse-Kubitza
12:03 PM Revision 431: vegbien.sql: Reran renames to capture cases where a name is in the middle of an identifier
Aaron Marcuse-Kubitza
11:47 AM Revision 430: vegbien.sql: Use character varying(255) instead of text or character varying in new tables and columns
Aaron Marcuse-Kubitza
11:35 AM Revision 429: input.Makefile: Print Postgres NULL as NULL instead of empty string to match MySQL output
Aaron Marcuse-Kubitza
11:26 AM Revision 428: VegX-VegBIEN mapping: Fixed syntax error in mapping
Aaron Marcuse-Kubitza

01/09/2012

05:30 PM Revision 427: vegbien.sql: Added trait table
Aaron Marcuse-Kubitza
05:22 PM Revision 426: vegbien.sql: Added columns to stemobservation
Aaron Marcuse-Kubitza
05:13 PM Revision 425: vegbien.sql: Renamed collectiveobservation.stratum_id to taxonbin_id
Aaron Marcuse-Kubitza
04:51 PM Revision 424: vegbien.sql: Added some DarwinCore attributes to collection table
Aaron Marcuse-Kubitza
04:21 PM Revision 423: Makefiles: Added remake target to run clean and all
Aaron Marcuse-Kubitza
04:04 PM Revision 422: vegbien.sql: Added taxondetermination.collection_id column
Aaron Marcuse-Kubitza
03:56 PM Revision 421: VegBIEN: Made taxondetermination.plantname_id required
Aaron Marcuse-Kubitza
02:59 PM Revision 420: vegbien.sql: Made taxondetermination.plantconcept_id optional
Aaron Marcuse-Kubitza
02:49 PM Revision 419: VegBIEN: Renamed author*code to authorcode
Aaron Marcuse-Kubitza
02:47 PM Revision 418: Makefiles: Added empty rules for targets without a rule so that these rules wouldn't trigger the recursive subdir invocation for the default target
Aaron Marcuse-Kubitza
02:33 PM Revision 417: VegX-VegBIEN mapping: Convereted all database names to lowercase to correspond to their case in the database
Aaron Marcuse-Kubitza
02:04 PM Revision 416: Makefiles: Added empty Makefile target so that Makefiles are not included in the targets recursively run on subdirs
Aaron Marcuse-Kubitza
02:01 PM Revision 415: input.Makefile: Dependencies in other directories are included as prerequisistes. Use tablesSort variable instead of sort order prefix to order tables.
Aaron Marcuse-Kubitza
01:35 PM Revision 414: Makefile: Added default target that recursed into subdirs with Makefiles. Used default target for all and clean.
Aaron Marcuse-Kubitza
01:34 PM Revision 413: Regenerated inputs/SALVIAS/map.VegBIEN.0.plots.csv
Aaron Marcuse-Kubitza
01:32 PM Revision 412: Removed scripts symlink because it was causing Makefile recursion issues
Aaron Marcuse-Kubitza
01:28 PM Revision 411: Makefile: Take advantage of new inputs/Makefile
Aaron Marcuse-Kubitza
01:24 PM Revision 410: Added inputs/Makefile to run input targets recursively on each input
Aaron Marcuse-Kubitza
01:08 PM Revision 409: Makefile: Run inputs-* targets for all and clean
Aaron Marcuse-Kubitza
01:00 PM Revision 408: input.Makefile: all doesn't run import. import runs verify.
Aaron Marcuse-Kubitza
12:41 PM Revision 407: vegbien.sql: Set all FOREIGN KEY constraints to ON UPDATE CASCADE ON DELETE CASCADE
Aaron Marcuse-Kubitza
12:35 PM Revision 406: SALVIAS mappings: use PlotID as authorObsCode to link plot observations and organisms correctly for organisms without a PlotCode
Aaron Marcuse-Kubitza
12:32 PM Revision 405: SALVIAS mappings: use PlotID as authorObsCode to link plot observations and organisms correctly for organisms without a PlotCode
Aaron Marcuse-Kubitza
11:49 AM Revision 404: input.Makefile: Fixed bug in verify's diff rule
Aaron Marcuse-Kubitza
11:34 AM Revision 403: Added CTFS input
Aaron Marcuse-Kubitza

01/06/2012

05:01 PM Revision 402: Makefile: Generate error when trying to run subMake on a directory with no Makefile
Aaron Marcuse-Kubitza
04:37 PM Revision 401: input.Makefile: Tests use bin/map's new new test mode
Aaron Marcuse-Kubitza
04:37 PM Revision 400: bin/map: Added test mode that empties the database before doing anything
Aaron Marcuse-Kubitza
04:37 PM Revision 399: sql.py: Added functions to truncate tables, list all tables, and empty a database
Aaron Marcuse-Kubitza
04:35 PM Revision 398: Accepted new SALVIAS test outputs
Aaron Marcuse-Kubitza
03:38 PM Revision 397: Makefile: Print Finished message after running test2 (inputs tests)
Aaron Marcuse-Kubitza
03:38 PM Revision 396: Accepted test outputs for SALVIAS
Aaron Marcuse-Kubitza
03:37 PM Revision 395: input.Makefile: Added ability to accept a test output to use as the new reference output
Aaron Marcuse-Kubitza
03:01 PM Revision 394: vegbien db: Renamed all occurrences of interpretation to determination
Aaron Marcuse-Kubitza
02:56 PM Revision 393: Makefile: Tell make that subMake rules run make recursively
Aaron Marcuse-Kubitza
02:51 PM Revision 392: vegbien.sql: Updated collection table for recent refactorings
Aaron Marcuse-Kubitza
02:42 PM Revision 391: Made more of Bob Peet's changes to the vegbien db and updated VegX-VegBIEN mapping
Aaron Marcuse-Kubitza
02:32 PM Revision 390: Makefile: Fixed pattern for recursive invocation of subdirectory make
Aaron Marcuse-Kubitza
12:54 PM Revision 389: Moved mappings/schemas to schemas
Aaron Marcuse-Kubitza
12:50 PM Revision 388: Makefile: Changed all to make schemas and mappings instead of running install
Aaron Marcuse-Kubitza
12:34 PM Revision 387: Moved mappings/schemas to schemas
Aaron Marcuse-Kubitza
12:25 PM Revision 386: Makefile: Added inputs import target
Aaron Marcuse-Kubitza
12:24 PM Revision 385: input.Makefile: Fixed syntax error with use of import_cmd variable
Aaron Marcuse-Kubitza
12:19 PM Revision 384: vegbien.sql: Added collection table
Aaron Marcuse-Kubitza
12:18 PM Revision 383: Makefiles: Changed _not_file to _always because _not_file is sometimes used to force a file to always be remade
Aaron Marcuse-Kubitza

01/05/2012

04:48 PM Revision 382: Decoupled VegBIEN from VegBank and removed mappings to VegBank
Aaron Marcuse-Kubitza
04:30 PM Revision 381: Regenerate vegbien.sql by dumping the vegbien db
Aaron Marcuse-Kubitza
04:06 PM Revision 380: Regenerate vegbien.sql by dumping the vegbien db
Aaron Marcuse-Kubitza
04:05 PM Revision 379: psql_vegbien: Changed to use postgres_vegbien
Aaron Marcuse-Kubitza
04:03 PM Revision 378: Added postgres_vegbien to run PostgreSQL command on the vegbien db
Aaron Marcuse-Kubitza
03:26 PM Revision 377: SALVIAS verification: Added plot methods
Aaron Marcuse-Kubitza
01:19 PM Revision 376: SALVIAS verification: Added # plots
Aaron Marcuse-Kubitza
01:06 PM Revision 375: Makefile: Added targets to run input targets on all inputs
Aaron Marcuse-Kubitza
12:54 PM Revision 374: SALVIAS verification: Added projects list to examine why project counts differ
Aaron Marcuse-Kubitza
12:41 PM Revision 373: SALVIAS verification: Made statement-label SELECT statements use the same syntax for MySQL and PostgreSQL so they are easy to copy and paste between the input and output queries
Aaron Marcuse-Kubitza

01/04/2012

04:54 PM Revision 372: input.Makefile: Don't remove logs in clean
Aaron Marcuse-Kubitza
04:32 PM Revision 371: input.Makefile: Added support for multi-column verification queries. inputs/SALVIAS: Added a multi-column verification query.
Aaron Marcuse-Kubitza
03:47 PM Revision 370: input.Makefile: Remove all *.out in clean
Aaron Marcuse-Kubitza
02:59 PM Revision 369: inputs: Don't keep *.out under version control
Aaron Marcuse-Kubitza
02:35 PM Revision 368: input.Makefile: Added rules to verify inserted data and run tests
Aaron Marcuse-Kubitza
11:38 AM Revision 367: Regenerated inputs/SALVIAS/map.VegBIEN.1.organisms.csv
Aaron Marcuse-Kubitza
11:32 AM Revision 366: exc.py: Print ! before error messages so they can be found and counted more easily in log files
Aaron Marcuse-Kubitza
11:13 AM Revision 365: input.Makefile: Only output to log if importing all rows
Aaron Marcuse-Kubitza
10:46 AM Revision 364: Moved vegbien CREATE DATABASE command to Makefile and run vegbien.sql as bien user
Aaron Marcuse-Kubitza
10:27 AM Revision 363: Renamed vegbien tables according to Bob Peet's new VegBank-VegBIEN mapping
Aaron Marcuse-Kubitza
10:16 AM Revision 362: input.Makefile: Don't print commands that use set -x to be echoed
Aaron Marcuse-Kubitza
10:14 AM Revision 361: input.Makefile: Use system's time utility instead of shell's time command
Aaron Marcuse-Kubitza
10:09 AM Revision 360: sql.py: Include sql.DbException in DatabaseErrors list
Aaron Marcuse-Kubitza

01/03/2012

04:28 PM Revision 359: Generate VegX-VegBIEN.organisms.csv from VegBank-VegBIEN.map.csv, which is generated from VegBank-VegBIEN.map_only.csv
Aaron Marcuse-Kubitza
04:21 PM Revision 358: repl: Process whole file as one string so that regexps can match EOF for appending
Aaron Marcuse-Kubitza
04:21 PM Revision 357: mappings/Makefile: Clean *-VegBIEN.*.csv maps
Aaron Marcuse-Kubitza
04:08 PM Revision 356: Generate VegBank-VegBIEN.schema.csv from VegBank-VegBIEN.schema_only.csv and VegBank-VegBIEN.csv
Aaron Marcuse-Kubitza
04:06 PM Revision 355: Added cat_csv to concatenate two spreadsheets
Aaron Marcuse-Kubitza
03:34 PM Revision 354: Removed no longer needed inputs/SALVIAS/db.sh
Aaron Marcuse-Kubitza
03:24 PM Revision 353: Add sort order prefixes to inputs/SALVIAS maps
Aaron Marcuse-Kubitza
02:49 PM Revision 352: VegX-VegBank organisms mapping: Added collectionDate mapping
Aaron Marcuse-Kubitza
02:36 PM Revision 351: VegX-VegBank organisms mapping: Added collectionDate mapping
Aaron Marcuse-Kubitza
02:36 PM Revision 350: mappings/Makefile: Sort VegX-VegBank organisms mapping automatically when anything that depends on it is remade
Aaron Marcuse-Kubitza
02:34 PM Revision 349: Added in_place to run a stream command on a file
Aaron Marcuse-Kubitza
02:14 PM Revision 348: join_sort: Use /bin/sh instead of /bin/bash
Aaron Marcuse-Kubitza
01:44 PM Revision 347: NYBG-VegX mapping: Removed no longer needed global stem count value
Aaron Marcuse-Kubitza
01:42 PM Revision 346: Renamed test/accept_output to accept
Aaron Marcuse-Kubitza
01:40 PM Revision 345: VegX-VegBank.organisms.csv: Made stemCount default to 1
Aaron Marcuse-Kubitza
01:17 PM Revision 344: bin/map: Print DatabaseErrors without stack traces
Aaron Marcuse-Kubitza
01:13 PM Revision 343: exc.py: Added print_ex()
Aaron Marcuse-Kubitza
01:13 PM Revision 342: exc.py: Added print_ex()
Aaron Marcuse-Kubitza
01:13 PM Revision 341: util.py: Added type_name()
Aaron Marcuse-Kubitza
01:12 PM Revision 340: strings.py: Added ensure_newl()
Aaron Marcuse-Kubitza
11:42 AM Revision 339: input.Makefile: Save map output in log file
Aaron Marcuse-Kubitza
11:27 AM Revision 338: bin/map: Print usage message when run with no arguments
Aaron Marcuse-Kubitza
10:10 AM Revision 337: Makefile: Removed unnecessary commenting out of "allow from 127.0.0.0..." lines in /etc/phppgadmin/apache.conf
Aaron Marcuse-Kubitza

12/29/2011

05:35 PM Revision 336: Makefile: Use --loose-exit-status for ed to avoid failing on no match. In editPhppgadminApacheConf, use ,s/// instead of /.../\ns/// to match lines regardless of position.
Aaron Marcuse-Kubitza
05:17 PM Revision 335: Makefile: Use tee instead of ed in sudoAppend. Don't change apache port to 8080 if apache already running on 80.
Aaron Marcuse-Kubitza
04:54 PM Revision 334: Makefile: Added phppgadmin apache config
Aaron Marcuse-Kubitza
01:16 PM Revision 333: bin/map: Only treat DatabaseErrors as warnings, not all Exceptions
Aaron Marcuse-Kubitza
01:04 PM Revision 332: xml_func.py: Print newline before func XML because XML is now pretty-printed with indents
Aaron Marcuse-Kubitza
12:59 PM Revision 331: xml_dom.py: Node.__str__() uses toprettyxml() instead of toxml()
Aaron Marcuse-Kubitza
12:58 PM Revision 330: util.py: Changed rename_key() not to suppress KeyError, since some callers might want to assert that a key exists
Aaron Marcuse-Kubitza
12:44 PM Revision 329: Makefile: Added phpPgAdmin dependency
Aaron Marcuse-Kubitza
12:42 PM Revision 328: xml_func.py: _name func doesn't require all name parts to be set. _namePart func throws SyntaxException for invalid name parts.
Aaron Marcuse-Kubitza

12/28/2011

02:03 PM Revision 327: bin/map: Fixed syntax error where db variable had not been renamed to out_db
Aaron Marcuse-Kubitza
01:58 PM Revision 326: xml_func.py: Generate SyntaxExceptions on missing XML func args
Aaron Marcuse-Kubitza
01:46 PM Revision 325: VegX-VegBank mapping: Added default soilObs.soilHorizon value
Aaron Marcuse-Kubitza
01:33 PM Revision 324: xml_func.py: Changed _date func to try parsing date field, rather than year field, as a decimal. Changed SALVIAS mappings to use new _date func syntax. Fixes SALVIAS plots data syntax error for decimal years.
Aaron Marcuse-Kubitza
01:10 PM Revision 323: Removed no longer needed VegBank accepted test outputs
Aaron Marcuse-Kubitza
01:09 PM Revision 322: test/map: Abort tester on failed diff
Aaron Marcuse-Kubitza
01:09 PM Revision 321: Added accepted test output SALVIAS_db.organisms.VegBIEN.xml
Aaron Marcuse-Kubitza
01:04 PM Revision 320: SALVIAS organisms mapping: Use _alt to merge tag1 and tag2. Fixes failing diff due to duplicate stemCodes.
Aaron Marcuse-Kubitza
12:49 PM Revision 319: test/map: Added tests to insert VegBIEN XML into VegBIEN db
Aaron Marcuse-Kubitza
12:47 PM Revision 318: bin/map: Fixed non-map input to set out_label
Aaron Marcuse-Kubitza
12:12 PM Revision 317: bin/map: Fixed row processing when no map is used
Aaron Marcuse-Kubitza
12:06 PM Revision 316: bin/map: Refactored to process each row separately when out_is_db
Aaron Marcuse-Kubitza
12:04 PM Revision 315: xml_dom.py: Added Node pop() and clear() methods
Aaron Marcuse-Kubitza
11:15 AM Revision 314: bin/map: Moved process_rows() exception handling around entire row, rather than each value, so that a broken value will not be ignored only to cause errors when outputing the row
Aaron Marcuse-Kubitza
11:12 AM Revision 313: bin/map: Moved process_rows() exception handling around entire row, rather than each value, so that a broken value will not be ignored only to cause errors when outputing the row
Aaron Marcuse-Kubitza
11:05 AM Revision 312: db_xml.py: Removed no longer needed xml2db()
Aaron Marcuse-Kubitza
11:04 AM Revision 311: bin/map: out_is_db uses use_row instead of xml2db()
Aaron Marcuse-Kubitza
10:53 AM Revision 310: bin/map: Added commit and exception-handling code to out_is_db use_row()
Aaron Marcuse-Kubitza
10:42 AM Revision 309: bin/map: Merged get_xml() into process_xml(). Renamed process*() functions to distinguish them better.
Aaron Marcuse-Kubitza
10:33 AM Revision 308: bin/map: Create separate document for printing XML opening and closing
Aaron Marcuse-Kubitza
10:28 AM Revision 307: bin/map: Refactored to print document opening, contents, and closing in separate steps so they can be separated later
Aaron Marcuse-Kubitza
10:27 AM Revision 306: xml_dom.py: Added support for integer indents
Aaron Marcuse-Kubitza
10:19 AM Revision 305: xml_dom.py: Added NodeIter() and Node.__iter__()
Aaron Marcuse-Kubitza
10:05 AM Revision 304: Use new xml_dom.prettyxml_config instead of Node.writeprettyxml because it can be passed as keyword args to any writexml function
Aaron Marcuse-Kubitza
10:00 AM Revision 303: xml_dom.py: Removed no longer needed xml_dom.writexml()
Aaron Marcuse-Kubitza
10:00 AM Revision 302: bin/map: Use Node.writeprettyxml() instead of xml_dom.writexml()
Aaron Marcuse-Kubitza
09:57 AM Revision 301: xml_dom.py: Added minidom.Document write_opening() and write_closing() methods. Changed writexml(writer, node) to use new Node.writeprettyxml() method.
Aaron Marcuse-Kubitza
09:28 AM Revision 300: Renamed ex.py to exc.py
Aaron Marcuse-Kubitza
09:24 AM Revision 299: Import xml.dom.minidom as minidom
Aaron Marcuse-Kubitza
09:10 AM Revision 298: xml_dom.py: Refactored xml.dom.minidom.Element.writexml() to use new write_opening() and write_closing() methods. Use new functions is_elem() and is_text_node() to determine node type. Corrected definition of a text element to be an element that contains a single text node.
Aaron Marcuse-Kubitza
08:37 AM Revision 297: bin/map: Factored out input processing code
Aaron Marcuse-Kubitza
 

Also available in: Atom