Project

General

Profile

« Previous | Next » 

Revision 4049

bin/map: collision_suffix: Changed to use _merge instead of _alt to avoid losing source data on import when multiple fields collide

View differences:

inputs/SALVIAS-CSV/test/import.organisms.xml.ref
79 79
                            </definedvalue>
80 80
                            <diameterbreastheight>$stem_dbh</diameterbreastheight>
81 81
                            <height>
82
                                <_alt>
82
                                <_merge>
83 83
                                    <0>$height_m</0>
84 84
                                    <1>$stem_height_m</1>
85
                                </_alt>
85
                                </_merge>
86 86
                            </height>
87 87
                            <heightfirstbranch>
88
                                <_alt>
88
                                <_merge>
89 89
                                    <0>$ht_first_branch_m</0>
90 90
                                    <1>$stem_height_first_branch_m</1>
91
                                </_alt>
91
                                </_merge>
92 92
                            </heightfirstbranch>
93 93
                            <stemtag>
94 94
                                <iscurrent>
inputs/SpeciesLink/test/import.specimens.xml.ref
4 4
        <authorlocationcode>
5 5
            <_merge>
6 6
                <1>
7
                    <_alt>
7
                    <_merge>
8 8
                        <0>$dwc_dwcore_InstitutionCode</0>
9 9
                        <1>$conceptual_darwin_2003_1_0_InstitutionCode</1>
10 10
                        <2>$dwc_terms_institutionCode</2>
11
                    </_alt>
11
                    </_merge>
12 12
                </1>
13 13
                <2>
14
                    <_alt>
14
                    <_merge>
15 15
                        <0>$dwc_dwcore_CollectionCode</0>
16 16
                        <1>$conceptual_darwin_2003_1_0_CollectionCode</1>
17 17
                        <2>$dwc_terms_collectionCode</2>
18
                    </_alt>
18
                    </_merge>
19 19
                </2>
20 20
                <3>
21
                    <_alt>
21
                    <_merge>
22 22
                        <0>$dwc_dwcore_CatalogNumber</0>
23 23
                        <1>$conceptual_darwin_2003_1_0_CatalogNumber</1>
24 24
                        <2>$dwc_terms_catalogNumber</2>
25
                    </_alt>
25
                    </_merge>
26 26
                </3>
27 27
            </_merge>
28 28
        </authorlocationcode>
......
37 37
                            <_replace>
38 38
                                <\bca\.?></\bca\.?>
39 39
                                <value>
40
                                    <_alt>
40
                                    <_merge>
41 41
                                        <0>$conceptual_darwin_2003_1_0_MaximumElevation</0>
42 42
                                        <1>$dwc_dwcore_MaximumElevationInMeters</1>
43 43
                                        <2>$dwc_terms_maximumElevationInMeters</2>
44
                                    </_alt>
44
                                    </_merge>
45 45
                                </value>
46 46
                            </_replace>
47 47
                        </value>
......
58 58
                                    <_replace>
59 59
                                        <\bca\.?></\bca\.?>
60 60
                                        <value>
61
                                            <_alt>
61
                                            <_merge>
62 62
                                                <0>$conceptual_darwin_2003_1_0_MinimumElevation</0>
63 63
                                                <1>$dwc_dwcore_MinimumElevationInMeters</1>
64 64
                                                <2>$dwc_terms_minimumElevationInMeters</2>
65
                                            </_alt>
65
                                            </_merge>
66 66
                                        </value>
67 67
                                    </_replace>
68 68
                                </value>
......
85 85
                                    <_replace>
86 86
                                        <\bca\.?></\bca\.?>
87 87
                                        <value>
88
                                            <_alt>
88
                                            <_merge>
89 89
                                                <0>$conceptual_darwin_2003_1_0_MinimumElevation</0>
90 90
                                                <1>$dwc_dwcore_MinimumElevationInMeters</1>
91 91
                                                <2>$dwc_terms_minimumElevationInMeters</2>
92
                                            </_alt>
92
                                            </_merge>
93 93
                                        </value>
94 94
                                    </_replace>
95 95
                                </value>
......
108 108
                                    <_replace>
109 109
                                        <\bca\.?></\bca\.?>
110 110
                                        <value>
111
                                            <_alt>
111
                                            <_merge>
112 112
                                                <0>$conceptual_darwin_2003_1_0_MaximumElevation</0>
113 113
                                                <1>$dwc_dwcore_MaximumElevationInMeters</1>
114 114
                                                <2>$dwc_terms_maximumElevationInMeters</2>
115
                                            </_alt>
115
                                            </_merge>
116 116
                                        </value>
117 117
                                    </_replace>
118 118
                                </1>
......
122 122
                                            <_replace>
123 123
                                                <\bca\.?></\bca\.?>
124 124
                                                <value>
125
                                                    <_alt>
125
                                                    <_merge>
126 126
                                                        <0>$conceptual_darwin_2003_1_0_MinimumElevation</0>
127 127
                                                        <1>$dwc_dwcore_MinimumElevationInMeters</1>
128 128
                                                        <2>$dwc_terms_minimumElevationInMeters</2>
129
                                                    </_alt>
129
                                                    </_merge>
130 130
                                                </value>
131 131
                                            </_replace>
132 132
                                        </value>
......
157 157
                            <null>0</null>
158 158
                            <type>float</type>
159 159
                            <value>
160
                                <_alt>
160
                                <_merge>
161 161
                                    <0>$dwc_geospatial_DecimalLatitude</0>
162 162
                                    <1>$dwc_terms_decimalLatitude</1>
163
                                </_alt>
163
                                </_merge>
164 164
                            </value>
165 165
                        </_nullIf>
166 166
                    </1>
......
169 169
                            <null>0</null>
170 170
                            <type>float</type>
171 171
                            <value>
172
                                <_alt>
172
                                <_merge>
173 173
                                    <0>$conceptual_darwin_2003_1_0_Latitude</0>
174 174
                                    <1>$dwc_geospatial_VerbatimLatitude</1>
175 175
                                    <2>$dwc_terms_verbatimLatitude</2>
176
                                </_alt>
176
                                </_merge>
177 177
                            </value>
178 178
                        </_nullIf>
179 179
                    </2>
......
186 186
                            <null>0</null>
187 187
                            <type>float</type>
188 188
                            <value>
189
                                <_alt>
189
                                <_merge>
190 190
                                    <0>$dwc_geospatial_DecimalLongitude</0>
191 191
                                    <1>$dwc_terms_decimalLongitude</1>
192
                                </_alt>
192
                                </_merge>
193 193
                            </value>
194 194
                        </_nullIf>
195 195
                    </1>
......
198 198
                            <null>0</null>
199 199
                            <type>float</type>
200 200
                            <value>
201
                                <_alt>
201
                                <_merge>
202 202
                                    <0>$conceptual_darwin_2003_1_0_Longitude</0>
203 203
                                    <1>$dwc_geospatial_VerbatimLongitude</1>
204 204
                                    <2>$dwc_terms_verbatimLongitude</2>
205
                                </_alt>
205
                                </_merge>
206 206
                            </value>
207 207
                        </_nullIf>
208 208
                    </2>
......
216 216
                        <namedplace>
217 217
                            <rank>county</rank>
218 218
                            <placename>
219
                                <_alt>
219
                                <_merge>
220 220
                                    <0>$dwc_dwcore_County</0>
221 221
                                    <1>$conceptual_darwin_2003_1_0_County</1>
222 222
                                    <2>$dwc_terms_county</2>
223
                                </_alt>
223
                                </_merge>
224 224
                            </placename>
225 225
                            <parent_id>
226 226
                                <namedplace>
227 227
                                    <rank>stateProvince</rank>
228 228
                                    <placename>
229
                                        <_alt>
229
                                        <_merge>
230 230
                                            <0>$dwc_dwcore_StateProvince</0>
231 231
                                            <1>$conceptual_darwin_2003_1_0_StateProvince</1>
232 232
                                            <2>$dwc_terms_stateProvince</2>
233
                                        </_alt>
233
                                        </_merge>
234 234
                                    </placename>
235 235
                                    <parent_id>
236 236
                                        <namedplace>
237 237
                                            <rank>country</rank>
238 238
                                            <placename>
239
                                                <_alt>
239
                                                <_merge>
240 240
                                                    <0>$dwc_dwcore_Country</0>
241 241
                                                    <1>$conceptual_darwin_2003_1_0_Country</1>
242 242
                                                    <2>$dwc_terms_country</2>
243
                                                </_alt>
243
                                                </_merge>
244 244
                                            </placename>
245 245
                                            <parent_id>
246 246
                                                <namedplace>
247 247
                                                    <rank>continent</rank>
248 248
                                                    <placename>
249
                                                        <_alt>
249
                                                        <_merge>
250 250
                                                            <0>$dwc_dwcore_Continent</0>
251 251
                                                            <1>$conceptual_darwin_2003_1_0_ContinentOcean</1>
252 252
                                                            <2>$dwc_terms_continent</2>
253
                                                        </_alt>
253
                                                        </_merge>
254 254
                                                    </placename>
255 255
                                                </namedplace>
256 256
                                            </parent_id>
......
265 265
        </locationdetermination>
266 266
        <locationevent>
267 267
            <authoreventcode>
268
                <_alt>
268
                <_merge>
269 269
                    <0>$dwc_curatorial_FieldNumber</0>
270 270
                    <1>$conceptual_darwin_2003_1_0_FieldNumber</1>
271 271
                    <2>$dwc_terms_fieldNumber</2>
272
                </_alt>
272
                </_merge>
273 273
            </authoreventcode>
274 274
            <obsenddate>
275 275
                <_date>
......
369 369
                        </_date>
370 370
                    </collectiondate>
371 371
                    <count>
372
                        <_alt>
372
                        <_merge>
373 373
                            <0>$dwc_curatorial_IndividualCount</0>
374 374
                            <1>$conceptual_darwin_2003_1_0_IndividualCount</1>
375 375
                            <2>$dwc_terms_individualCount</2>
376
                        </_alt>
376
                        </_merge>
377 377
                    </count>
378 378
                    <notes>$conceptual_darwin_2003_1_0_Notes</notes>
379 379
                    <plantobservation>
380 380
                        <authorplantcode>
381 381
                            <_alt>
382 382
                                <1>
383
                                    <_alt>
383
                                    <_merge>
384 384
                                        <0>$dwc_curatorial_CollectorNumber</0>
385 385
                                        <1>$conceptual_darwin_2003_1_0_CollectorNumber</1>
386
                                    </_alt>
386
                                    </_merge>
387 387
                                </1>
388 388
                                <2>$dwc_terms_recordNumber</2>
389 389
                            </_alt>
......
396 396
                                </userdefined>
397 397
                            </userdefined_id>
398 398
                            <definedvalue>
399
                                <_alt>
399
                                <_merge>
400 400
                                    <0>$dwc_dwcore_Sex</0>
401 401
                                    <1>$conceptual_darwin_2003_1_0_Sex</1>
402 402
                                    <2>$dwc_terms_sex</2>
403
                                </_alt>
403
                                </_merge>
404 404
                            </definedvalue>
405 405
                        </definedvalue>
406 406
                        <sourceaccessioncode>$dwc_dwcore_GlobalUniqueIdentifier</sourceaccessioncode>
......
408 408
                            <_if name="if indirect voucher">
409 409
                                <else>
410 410
                                    <catalognumber_dwc>
411
                                        <_alt>
411
                                        <_merge>
412 412
                                            <0>$dwc_dwcore_CatalogNumber</0>
413 413
                                            <1>$conceptual_darwin_2003_1_0_CatalogNumber</1>
414 414
                                            <2>$dwc_terms_catalogNumber</2>
415
                                        </_alt>
415
                                        </_merge>
416 416
                                    </catalognumber_dwc>
417 417
                                </else>
418 418
                            </_if>
419 419
                            <collectioncode_dwc>
420 420
                                <_alt>
421 421
                                    <1>
422
                                        <_alt>
422
                                        <_merge>
423 423
                                            <0>$dwc_dwcore_CollectionCode</0>
424 424
                                            <1>$conceptual_darwin_2003_1_0_CollectionCode</1>
425 425
                                            <2>$dwc_terms_collectionCode</2>
426
                                        </_alt>
426
                                        </_merge>
427 427
                                    </1>
428 428
                                    <2>$dwc_terms_collectionID</2>
429 429
                                </_alt>
......
431 431
                            <collectionnumber>
432 432
                                <_alt>
433 433
                                    <1>
434
                                        <_alt>
434
                                        <_merge>
435 435
                                            <0>$dwc_curatorial_CollectorNumber</0>
436 436
                                            <1>$conceptual_darwin_2003_1_0_CollectorNumber</1>
437
                                        </_alt>
437
                                        </_merge>
438 438
                                    </1>
439 439
                                    <2>$dwc_terms_recordNumber</2>
440 440
                                </_alt>
......
442 442
                            <institution_id>
443 443
                                <party>
444 444
                                    <organizationname>
445
                                        <_alt>
445
                                        <_merge>
446 446
                                            <0>$dwc_dwcore_InstitutionCode</0>
447 447
                                            <1>$conceptual_darwin_2003_1_0_InstitutionCode</1>
448 448
                                            <2>$dwc_terms_institutionCode</2>
449
                                        </_alt>
449
                                        </_merge>
450 450
                                    </organizationname>
451 451
                                </party>
452 452
                            </institution_id>
......
460 460
                        <2>
461 461
                            <_if name="if indirect voucher">
462 462
                                <else>
463
                                    <_alt>
463
                                    <_merge>
464 464
                                        <0>$dwc_dwcore_CatalogNumber</0>
465 465
                                        <1>$conceptual_darwin_2003_1_0_CatalogNumber</1>
466 466
                                        <2>$dwc_terms_catalogNumber</2>
467
                                    </_alt>
467
                                    </_merge>
468 468
                                </else>
469 469
                            </_if>
470 470
                        </2>
471 471
                        <3>
472 472
                            <_alt>
473 473
                                <1>
474
                                    <_alt>
474
                                    <_merge>
475 475
                                        <0>$dwc_curatorial_CollectorNumber</0>
476 476
                                        <1>$conceptual_darwin_2003_1_0_CollectorNumber</1>
477
                                    </_alt>
477
                                    </_merge>
478 478
                                </1>
479 479
                                <2>$dwc_terms_recordNumber</2>
480 480
                            </_alt>
......
489 489
                            <givenname>
490 490
                                <_namePart>
491 491
                                    <first>
492
                                        <_alt>
492
                                        <_merge>
493 493
                                            <0>$dwc_curatorial_IdentifiedBy</0>
494 494
                                            <1>$conceptual_darwin_2003_1_0_IdentifiedBy</1>
495 495
                                            <2>$dwc_terms_identifiedBy</2>
496
                                        </_alt>
496
                                        </_merge>
497 497
                                    </first>
498 498
                                </_namePart>
499 499
                            </givenname>
500 500
                            <middlename>
501 501
                                <_namePart>
502 502
                                    <middle>
503
                                        <_alt>
503
                                        <_merge>
504 504
                                            <0>$dwc_curatorial_IdentifiedBy</0>
505 505
                                            <1>$conceptual_darwin_2003_1_0_IdentifiedBy</1>
506 506
                                            <2>$dwc_terms_identifiedBy</2>
507
                                        </_alt>
507
                                        </_merge>
508 508
                                    </middle>
509 509
                                </_namePart>
510 510
                            </middlename>
511 511
                            <surname>
512 512
                                <_namePart>
513 513
                                    <last>
514
                                        <_alt>
514
                                        <_merge>
515 515
                                            <0>$dwc_curatorial_IdentifiedBy</0>
516 516
                                            <1>$conceptual_darwin_2003_1_0_IdentifiedBy</1>
517 517
                                            <2>$dwc_terms_identifiedBy</2>
518
                                        </_alt>
518
                                        </_merge>
519 519
                                    </last>
520 520
                                </_namePart>
521 521
                            </surname>
......
531 531
                                        <plantname>
532 532
                                            <rank>binomial</rank>
533 533
                                            <plantname>
534
                                                <_alt>
534
                                                <_merge>
535 535
                                                    <0>$dwc_dwcore_ScientificName</0>
536 536
                                                    <1>$conceptual_darwin_2003_1_0_ScientificName</1>
537 537
                                                    <2>$dwc_terms_scientificName</2>
538
                                                </_alt>
538
                                                </_merge>
539 539
                                            </plantname>
540 540
                                            <parent_id>
541 541
                                                <plantname>
542 542
                                                    <rank>authority</rank>
543 543
                                                    <plantname>
544
                                                        <_alt>
544
                                                        <_merge>
545 545
                                                            <0>$dwc_dwcore_AuthorYearOfScientificName</0>
546 546
                                                            <1>$conceptual_darwin_2003_1_0_ScientificNameAuthor</1>
547 547
                                                            <2>$dwc_terms_scientificNameAuthorship</2>
548
                                                        </_alt>
548
                                                        </_merge>
549 549
                                                    </plantname>
550 550
                                                    <parent_id>
551 551
                                                        <plantname>
552 552
                                                            <rank>subspecies</rank>
553 553
                                                            <plantname>
554
                                                                <_alt>
554
                                                                <_merge>
555 555
                                                                    <0>$dwc_dwcore_InfraspecificEpithet</0>
556 556
                                                                    <1>$conceptual_darwin_2003_1_0_Subspecies</1>
557 557
                                                                    <2>$dwc_terms_infraspecificEpithet</2>
558
                                                                </_alt>
558
                                                                </_merge>
559 559
                                                            </plantname>
560 560
                                                            <parent_id>
561 561
                                                                <plantname>
562 562
                                                                    <rank>species</rank>
563 563
                                                                    <plantname>
564
                                                                        <_alt>
564
                                                                        <_merge>
565 565
                                                                            <0>$conceptual_darwin_2003_1_0_Species</0>
566 566
                                                                            <1>$dwc_dwcore_SpecificEpithet</1>
567 567
                                                                            <2>$dwc_terms_specificEpithet</2>
568
                                                                        </_alt>
568
                                                                        </_merge>
569 569
                                                                    </plantname>
570 570
                                                                    <parent_id>
571 571
                                                                        <plantname>
572 572
                                                                            <rank>genus</rank>
573 573
                                                                            <plantname>
574
                                                                                <_alt>
574
                                                                                <_merge>
575 575
                                                                                    <0>$dwc_dwcore_Genus</0>
576 576
                                                                                    <1>$conceptual_darwin_2003_1_0_Genus</1>
577 577
                                                                                    <2>$dwc_terms_genus</2>
578
                                                                                </_alt>
578
                                                                                </_merge>
579 579
                                                                            </plantname>
580 580
                                                                            <parent_id>
581 581
                                                                                <plantname>
582 582
                                                                                    <rank>family</rank>
583 583
                                                                                    <plantname>
584
                                                                                        <_alt>
584
                                                                                        <_merge>
585 585
                                                                                            <0>$dwc_dwcore_Family</0>
586 586
                                                                                            <1>$conceptual_darwin_2003_1_0_Family</1>
587 587
                                                                                            <2>$dwc_terms_family</2>
588
                                                                                        </_alt>
588
                                                                                        </_merge>
589 589
                                                                                    </plantname>
590 590
                                                                                    <parent_id>
591 591
                                                                                        <plantname>
592 592
                                                                                            <rank>order</rank>
593 593
                                                                                            <plantname>
594
                                                                                                <_alt>
594
                                                                                                <_merge>
595 595
                                                                                                    <0>$dwc_dwcore_Order</0>
596 596
                                                                                                    <1>$conceptual_darwin_2003_1_0_Order</1>
597 597
                                                                                                    <2>$dwc_terms_order</2>
598
                                                                                                </_alt>
598
                                                                                                </_merge>
599 599
                                                                                            </plantname>
600 600
                                                                                            <parent_id>
601 601
                                                                                                <plantname>
602 602
                                                                                                    <rank>class</rank>
603 603
                                                                                                    <plantname>
604
                                                                                                        <_alt>
604
                                                                                                        <_merge>
605 605
                                                                                                            <0>$dwc_dwcore_Class</0>
606 606
                                                                                                            <1>$conceptual_darwin_2003_1_0_Class</1>
607 607
                                                                                                            <2>$dwc_terms_class</2>
608
                                                                                                        </_alt>
608
                                                                                                        </_merge>
609 609
                                                                                                    </plantname>
610 610
                                                                                                    <parent_id>
611 611
                                                                                                        <plantname>
612 612
                                                                                                            <rank>subkingdom</rank>
613 613
                                                                                                            <plantname>
614
                                                                                                                <_alt>
614
                                                                                                                <_merge>
615 615
                                                                                                                    <0>$dwc_dwcore_Phylum</0>
616 616
                                                                                                                    <1>$conceptual_darwin_2003_1_0_Phylum</1>
617 617
                                                                                                                    <2>$dwc_terms_phylum</2>
618
                                                                                                                </_alt>
618
                                                                                                                </_merge>
619 619
                                                                                                            </plantname>
620 620
                                                                                                            <parent_id>
621 621
                                                                                                                <plantname>
622 622
                                                                                                                    <rank>kingdom</rank>
623 623
                                                                                                                    <plantname>
624
                                                                                                                        <_alt>
624
                                                                                                                        <_merge>
625 625
                                                                                                                            <0>$dwc_dwcore_Kingdom</0>
626 626
                                                                                                                            <1>$conceptual_darwin_2003_1_0_Kingdom</1>
627 627
                                                                                                                            <2>$dwc_terms_kingdom</2>
628
                                                                                                                        </_alt>
628
                                                                                                                        </_merge>
629 629
                                                                                                                    </plantname>
630 630
                                                                                                                </plantname>
631 631
                                                                                                            </parent_id>
......
692 692
                    <notes>$dwc_dwcore_Remarks</notes>
693 693
                </taxondetermination>
694 694
                <verbatimcollectorname>
695
                    <_alt>
695
                    <_merge>
696 696
                        <0>$dwc_dwcore_Collector</0>
697 697
                        <1>$conceptual_darwin_2003_1_0_Collector</1>
698 698
                        <2>$dwc_terms_recordedBy</2>
699
                    </_alt>
699
                    </_merge>
700 700
                </verbatimcollectorname>
701 701
            </taxonoccurrence>
702 702
            <waterdepth>
......
710 710
                                <_replace>
711 711
                                    <\bca\.?></\bca\.?>
712 712
                                    <value>
713
                                        <_alt>
713
                                        <_merge>
714 714
                                            <0>$conceptual_darwin_2003_1_0_MaximumDepth</0>
715 715
                                            <1>$dwc_dwcore_MaximumDepthInMeters</1>
716 716
                                            <2>$dwc_terms_maximumDepthInMeters</2>
717
                                        </_alt>
717
                                        </_merge>
718 718
                                    </value>
719 719
                                </_replace>
720 720
                            </value>
......
729 729
                                <_replace>
730 730
                                    <\bca\.?></\bca\.?>
731 731
                                    <value>
732
                                        <_alt>
732
                                        <_merge>
733 733
                                            <0>$conceptual_darwin_2003_1_0_MinimumDepth</0>
734 734
                                            <1>$dwc_dwcore_MinimumDepthInMeters</1>
735 735
                                            <2>$dwc_terms_minimumDepthInMeters</2>
736
                                        </_alt>
736
                                        </_merge>
737 737
                                    </value>
738 738
                                </_replace>
739 739
                            </value>
......
743 743
            </waterdepth>
744 744
        </locationevent>
745 745
        <locationnarrative>
746
            <_alt>
746
            <_merge>
747 747
                <0>$dwc_dwcore_Locality</0>
748 748
                <1>$conceptual_darwin_2003_1_0_Locality</1>
749 749
                <2>$dwc_terms_locality</2>
750
            </_alt>
750
            </_merge>
751 751
        </locationnarrative>
752 752
        <sourceaccessioncode>$dwc_dwcore_GlobalUniqueIdentifier</sourceaccessioncode>
753 753
    </location>
bin/map
36 36
import xml_func
37 37
import xml_parse
38 38

  
39
collision_suffix = '/_alt/'
39
collision_suffix = '/_merge/'
40 40

  
41 41
def get_with_prefix(map_, prefixes, key):
42 42
    '''Gets all entries for the given key with any of the given prefixes

Also available in: Unified diff