196 |
196 |
-- Name: TYPE taxonrank; Type: COMMENT; Schema: public; Owner: bien
|
197 |
197 |
--
|
198 |
198 |
|
199 |
|
COMMENT ON TYPE taxonrank IS 'From <http://vegbank.org/vegbank/views/dba_fielddescription_detail.jsp?view=detail&wparam=1263&entity=dba_fielddescription¶ms=1263>';
|
|
199 |
COMMENT ON TYPE taxonrank IS 'From <http://www.tdwg.org/standards/117/download/>';
|
200 |
200 |
|
201 |
201 |
|
202 |
202 |
--
|
... | ... | |
281 |
281 |
ALTER FUNCTION public._fraction_to_percent(value double precision) OWNER TO bien;
|
282 |
282 |
|
283 |
283 |
--
|
284 |
|
-- Name: _set_matched_taxonconcept(integer, integer, double precision); Type: FUNCTION; Schema: public; Owner: bien
|
|
284 |
-- Name: _taxonconcept_set_matched_concept_id(integer, integer, double precision); Type: FUNCTION; Schema: public; Owner: bien
|
285 |
285 |
--
|
286 |
286 |
|
287 |
|
CREATE FUNCTION _set_matched_taxonconcept(taxonconcept_id integer, matched_concept_id integer, matched_concept_fit_fraction double precision DEFAULT NULL::double precision) RETURNS integer
|
|
287 |
CREATE FUNCTION _taxonconcept_set_matched_concept_id(taxonconcept_id integer, matched_concept_id integer, matched_concept_fit_fraction double precision DEFAULT NULL::double precision) RETURNS integer
|
288 |
288 |
LANGUAGE sql
|
289 |
289 |
AS $_$
|
290 |
290 |
UPDATE taxonconcept SET
|
... | ... | |
295 |
295 |
$_$;
|
296 |
296 |
|
297 |
297 |
|
298 |
|
ALTER FUNCTION public._set_matched_taxonconcept(taxonconcept_id integer, matched_concept_id integer, matched_concept_fit_fraction double precision) OWNER TO bien;
|
|
298 |
ALTER FUNCTION public._taxonconcept_set_matched_concept_id(taxonconcept_id integer, matched_concept_id integer, matched_concept_fit_fraction double precision) OWNER TO bien;
|
299 |
299 |
|
300 |
300 |
--
|
|
301 |
-- Name: _taxonconcept_set_parent_id(integer, integer); Type: FUNCTION; Schema: public; Owner: bien
|
|
302 |
--
|
|
303 |
|
|
304 |
CREATE FUNCTION _taxonconcept_set_parent_id(taxonconcept_id integer, parent_id integer) RETURNS integer
|
|
305 |
LANGUAGE sql
|
|
306 |
AS $_$
|
|
307 |
UPDATE taxonconcept SET parent_id = $2 WHERE taxonconcept_id = $1
|
|
308 |
RETURNING taxonconcept_id
|
|
309 |
$_$;
|
|
310 |
|
|
311 |
|
|
312 |
ALTER FUNCTION public._taxonconcept_set_parent_id(taxonconcept_id integer, parent_id integer) OWNER TO bien;
|
|
313 |
|
|
314 |
--
|
301 |
315 |
-- Name: make_analytical_db(); Type: FUNCTION; Schema: public; Owner: bien
|
302 |
316 |
--
|
303 |
317 |
|
... | ... | |
368 |
382 |
SET place_id = place_id -- need at least one SET statement
|
369 |
383 |
-- Add COALESCE() to enable using place_unique index for lookup
|
370 |
384 |
WHERE COALESCE(parent_id, 2147483647) = new.place_id
|
|
385 |
AND place_id != new.place_id -- avoid infinite recursion
|
371 |
386 |
;
|
372 |
387 |
|
373 |
388 |
/* Note: We don't need an ON DELETE trigger to update the descendants'
|
... | ... | |
481 |
496 |
WHERE taxonconcept_id = new.matched_concept_id
|
482 |
497 |
);
|
483 |
498 |
END IF;
|
|
499 |
|
|
500 |
-- Update accepted_concept_id on concepts that resolve to this concept
|
|
501 |
UPDATE taxonconcept
|
|
502 |
SET accepted_concept_id = new.accepted_concept_id
|
|
503 |
WHERE matched_concept_id = new.taxonconcept_id
|
|
504 |
AND taxonconcept_id != new.taxonconcept_id -- avoid infinite recursion
|
|
505 |
;
|
484 |
506 |
END IF;
|
485 |
507 |
RETURN new;
|
486 |
508 |
END;
|
... | ... | |
490 |
512 |
ALTER FUNCTION public.taxonconcept_2_propagate_accepted_concept_id() OWNER TO bien;
|
491 |
513 |
|
492 |
514 |
--
|
493 |
|
-- Name: taxonconcept_update_ancestors(); Type: FUNCTION; Schema: public; Owner: bien
|
|
515 |
-- Name: taxonconcept_3_parent_id_avoid_self_ref(); Type: FUNCTION; Schema: public; Owner: bien
|
494 |
516 |
--
|
495 |
517 |
|
496 |
|
CREATE FUNCTION taxonconcept_update_ancestors() RETURNS trigger
|
|
518 |
CREATE FUNCTION taxonconcept_3_parent_id_avoid_self_ref() RETURNS trigger
|
497 |
519 |
LANGUAGE plpgsql
|
498 |
520 |
AS $$
|
499 |
521 |
BEGIN
|
500 |
|
-- Delete existing ancestors
|
501 |
|
DELETE FROM taxonconcept_ancestor
|
502 |
|
WHERE taxonconcept_id = new.taxonconcept_id;
|
503 |
|
|
504 |
|
IF new.parent_id IS NOT NULL THEN
|
505 |
|
-- Copy parent's ancestors to this node's ancestors
|
506 |
|
INSERT
|
507 |
|
INTO taxonconcept_ancestor
|
508 |
|
(taxonconcept_id, ancestor_id)
|
509 |
|
SELECT
|
510 |
|
new.taxonconcept_id, ancestor_id
|
511 |
|
FROM taxonconcept_ancestor
|
512 |
|
WHERE taxonconcept_id = new.parent_id
|
513 |
|
;
|
|
522 |
new.parent_id = nullif(new.parent_id, new.taxonconcept_id);
|
|
523 |
RETURN new;
|
|
524 |
END;
|
|
525 |
$$;
|
|
526 |
|
|
527 |
|
|
528 |
ALTER FUNCTION public.taxonconcept_3_parent_id_avoid_self_ref() OWNER TO bien;
|
|
529 |
|
|
530 |
SET default_tablespace = '';
|
|
531 |
|
|
532 |
SET default_with_oids = false;
|
|
533 |
|
|
534 |
--
|
|
535 |
-- Name: taxonconcept; Type: TABLE; Schema: public; Owner: bien; Tablespace:
|
|
536 |
--
|
|
537 |
|
|
538 |
CREATE TABLE taxonconcept (
|
|
539 |
taxonconcept_id integer NOT NULL,
|
|
540 |
creator_id integer NOT NULL,
|
|
541 |
sourceaccessioncode text,
|
|
542 |
creationdate date,
|
|
543 |
accepted_concept_id integer,
|
|
544 |
matched_concept_id integer,
|
|
545 |
matched_concept_fit_fraction double precision,
|
|
546 |
parent_id integer,
|
|
547 |
taxonepithet text,
|
|
548 |
rank taxonrank,
|
|
549 |
verbatimrank text,
|
|
550 |
identifyingtaxonomicname text,
|
|
551 |
taxonomicname text,
|
|
552 |
author text,
|
|
553 |
taxonomicnamewithauthor text,
|
|
554 |
family text,
|
|
555 |
genus text,
|
|
556 |
species text,
|
|
557 |
description text,
|
|
558 |
accessioncode text,
|
|
559 |
CONSTRAINT taxonconcept_matched_concept_fit_fraction_range CHECK (((matched_concept_fit_fraction >= (0)::double precision) AND (matched_concept_fit_fraction <= (1)::double precision))),
|
|
560 |
CONSTRAINT taxonconcept_required_key CHECK (((((((sourceaccessioncode IS NOT NULL) OR (taxonepithet IS NOT NULL)) OR (identifyingtaxonomicname IS NOT NULL)) OR (taxonomicname IS NOT NULL)) OR (taxonomicnamewithauthor IS NOT NULL)) OR ((parent_id IS NOT NULL) AND ((creationdate IS NOT NULL) OR (author IS NOT NULL)))))
|
|
561 |
);
|
|
562 |
|
|
563 |
|
|
564 |
ALTER TABLE public.taxonconcept OWNER TO bien;
|
|
565 |
|
|
566 |
--
|
|
567 |
-- Name: TABLE taxonconcept; Type: COMMENT; Schema: public; Owner: bien
|
|
568 |
--
|
|
569 |
|
|
570 |
COMMENT ON TABLE taxonconcept IS 'A taxon concept defined by an entity. Can be at any level in the taxonomic hierarchy. Can be either verbatim or accepted.
|
|
571 |
|
|
572 |
"A taxon (plural: taxa) is a group of one (or more) populations of organism(s), which a taxonomist adjudges to be a unit" (http://en.wikipedia.org/wiki/Taxon)
|
|
573 |
|
|
574 |
Note that taxonepithet stores only one rank (e.g. family) of the full taxonomic name. The higher-level ranks are stored in the taxon concept''s chain of parent_id ancestors.
|
|
575 |
|
|
576 |
To include a taxon name at a rank with no explicit column, create a parent taxonconcept for it and point to it using parent_id. To include multiple such names, chain the taxonconcepts together using parent_id. Note that lower-level taxa should point to higher-level taxa.
|
|
577 |
|
|
578 |
Equivalent to VegBank''s plantConcept and plantName tables, plus plantParent_ID and plantLevel from plantStatus.';
|
|
579 |
|
|
580 |
|
|
581 |
--
|
|
582 |
-- Name: COLUMN taxonconcept.creator_id; Type: COMMENT; Schema: public; Owner: bien
|
|
583 |
--
|
|
584 |
|
|
585 |
COMMENT ON COLUMN taxonconcept.creator_id IS 'The entity that created the taxon concept. This is the concept reference for a taxon concept with an "according to", or the identifier''s name for a nominal concept.
|
|
586 |
|
|
587 |
Equivalent to "Name sec. x".';
|
|
588 |
|
|
589 |
|
|
590 |
--
|
|
591 |
-- Name: COLUMN taxonconcept.sourceaccessioncode; Type: COMMENT; Schema: public; Owner: bien
|
|
592 |
--
|
|
593 |
|
|
594 |
COMMENT ON COLUMN taxonconcept.sourceaccessioncode IS 'The datasource''s identifier for the taxonconcept.';
|
|
595 |
|
|
596 |
|
|
597 |
--
|
|
598 |
-- Name: COLUMN taxonconcept.creationdate; Type: COMMENT; Schema: public; Owner: bien
|
|
599 |
--
|
|
600 |
|
|
601 |
COMMENT ON COLUMN taxonconcept.creationdate IS 'The date the taxonconcept was created or defined. For a taxonconcept applied in a taxondetermination, this is the date the determination was made.';
|
|
602 |
|
|
603 |
|
|
604 |
--
|
|
605 |
-- Name: COLUMN taxonconcept.accepted_concept_id; Type: COMMENT; Schema: public; Owner: bien
|
|
606 |
--
|
|
607 |
|
|
608 |
COMMENT ON COLUMN taxonconcept.accepted_concept_id IS 'The accepted synonym of the taxonconcept.';
|
|
609 |
|
|
610 |
|
|
611 |
--
|
|
612 |
-- Name: COLUMN taxonconcept.matched_concept_id; Type: COMMENT; Schema: public; Owner: bien
|
|
613 |
--
|
|
614 |
|
|
615 |
COMMENT ON COLUMN taxonconcept.matched_concept_id IS 'The taxonconcept containing the closest match to this taxonconcept. taxonconcepts should be linked in a four-level hierarchy of datasource concept -> parsed concept -> matched concept -> accepted concept. A previously-accepted name''s concept should be further linked to the synonym that has replaced it.
|
|
616 |
|
|
617 |
To indicate a synonym between taxonconcepts of different sources, choose one taxonconcept to be authoritative and point the other taxonconcept to it using this field.
|
|
618 |
|
|
619 |
An accepted name should point to itself in this field. This will happen automatically by setting it to the special value 0.';
|
|
620 |
|
|
621 |
|
|
622 |
--
|
|
623 |
-- Name: COLUMN taxonconcept.matched_concept_fit_fraction; Type: COMMENT; Schema: public; Owner: bien
|
|
624 |
--
|
|
625 |
|
|
626 |
COMMENT ON COLUMN taxonconcept.matched_concept_fit_fraction IS 'The closeness of fit of the matched_concept.';
|
|
627 |
|
|
628 |
|
|
629 |
--
|
|
630 |
-- Name: COLUMN taxonconcept.parent_id; Type: COMMENT; Schema: public; Owner: bien
|
|
631 |
--
|
|
632 |
|
|
633 |
COMMENT ON COLUMN taxonconcept.parent_id IS 'The parent taxonconcept. Note that while a taxon *name* may have multiple parents, a taxon *concept* has only one, based on the creator''s opinion of where that taxonconcept goes in the taxonomic hierarchy.';
|
|
634 |
|
|
635 |
|
|
636 |
--
|
|
637 |
-- Name: COLUMN taxonconcept.taxonepithet; Type: COMMENT; Schema: public; Owner: bien
|
|
638 |
--
|
|
639 |
|
|
640 |
COMMENT ON COLUMN taxonconcept.taxonepithet IS 'The epithet of the taxon within its parent taxon. This is the lowest-rank portion of this taxonconcept''s full taxonomic name, if it has one.
|
|
641 |
|
|
642 |
The morphospecies suffix goes in this field.';
|
|
643 |
|
|
644 |
|
|
645 |
--
|
|
646 |
-- Name: COLUMN taxonconcept.rank; Type: COMMENT; Schema: public; Owner: bien
|
|
647 |
--
|
|
648 |
|
|
649 |
COMMENT ON COLUMN taxonconcept.rank IS 'The taxonconcept''s level in the taxonomic hierarchy, standardized to a closed list. Even if you specify a custom verbatimrank, you should also specify a closest-match rank from the taxonrank closed list.';
|
|
650 |
|
|
651 |
|
|
652 |
--
|
|
653 |
-- Name: COLUMN taxonconcept.verbatimrank; Type: COMMENT; Schema: public; Owner: bien
|
|
654 |
--
|
|
655 |
|
|
656 |
COMMENT ON COLUMN taxonconcept.verbatimrank IS 'The taxonconcept''s verbatim level in the taxonomic hierarchy. Does not need to be in the taxonrank closed list.';
|
|
657 |
|
|
658 |
|
|
659 |
--
|
|
660 |
-- Name: COLUMN taxonconcept.identifyingtaxonomicname; Type: COMMENT; Schema: public; Owner: bien
|
|
661 |
--
|
|
662 |
|
|
663 |
COMMENT ON COLUMN taxonconcept.identifyingtaxonomicname IS 'The taxonomic name that uniquely identifies this taxonconcept. If set, the other fields will not be used in duplicate elimination.';
|
|
664 |
|
|
665 |
|
|
666 |
--
|
|
667 |
-- Name: COLUMN taxonconcept.taxonomicname; Type: COMMENT; Schema: public; Owner: bien
|
|
668 |
--
|
|
669 |
|
|
670 |
COMMENT ON COLUMN taxonconcept.taxonomicname IS 'The concatenated taxonomic name which uniquely identifies this taxon. Does not include the author of the name.
|
|
671 |
|
|
672 |
Equivalent to Darwin Core''s scientificName.';
|
|
673 |
|
|
674 |
|
|
675 |
--
|
|
676 |
-- Name: COLUMN taxonconcept.author; Type: COMMENT; Schema: public; Owner: bien
|
|
677 |
--
|
|
678 |
|
|
679 |
COMMENT ON COLUMN taxonconcept.author IS 'The author of the taxonomic name.
|
|
680 |
|
|
681 |
Equivalent to Darwin Core''s scientificNameAuthorship.';
|
|
682 |
|
|
683 |
|
|
684 |
--
|
|
685 |
-- Name: COLUMN taxonconcept.taxonomicnamewithauthor; Type: COMMENT; Schema: public; Owner: bien
|
|
686 |
--
|
|
687 |
|
|
688 |
COMMENT ON COLUMN taxonconcept.taxonomicnamewithauthor IS 'The concatenated taxonomic name which uniquely identifies this taxon, plus the author of that name.
|
|
689 |
|
|
690 |
Equivalent to Darwin Core''s scientificName + scientificNameAuthorship.
|
|
691 |
Equivalent to "Name sec. x".';
|
|
692 |
|
|
693 |
|
|
694 |
--
|
|
695 |
-- Name: COLUMN taxonconcept.family; Type: COMMENT; Schema: public; Owner: bien
|
|
696 |
--
|
|
697 |
|
|
698 |
COMMENT ON COLUMN taxonconcept.family IS 'The family of the taxonomic name. This is a cached field for easy querying; the identifying version of this field is stored in the chain of parent_id ancestors.';
|
|
699 |
|
|
700 |
|
|
701 |
--
|
|
702 |
-- Name: COLUMN taxonconcept.genus; Type: COMMENT; Schema: public; Owner: bien
|
|
703 |
--
|
|
704 |
|
|
705 |
COMMENT ON COLUMN taxonconcept.genus IS 'The genus portion of the taxonomic name. This is a cached field for easy querying; the identifying version of this field is stored in the chain of parent_id ancestors.';
|
|
706 |
|
|
707 |
|
|
708 |
--
|
|
709 |
-- Name: COLUMN taxonconcept.species; Type: COMMENT; Schema: public; Owner: bien
|
|
710 |
--
|
|
711 |
|
|
712 |
COMMENT ON COLUMN taxonconcept.species IS 'The species portion of the taxonomic name. This is a cached field for easy querying; the identifying version of this field is stored in the chain of parent_id ancestors.';
|
|
713 |
|
|
714 |
|
|
715 |
--
|
|
716 |
-- Name: taxonconcept_update_ancestors(taxonconcept, integer); Type: FUNCTION; Schema: public; Owner: bien
|
|
717 |
--
|
|
718 |
|
|
719 |
CREATE FUNCTION taxonconcept_update_ancestors(new taxonconcept, old_parent_id integer DEFAULT NULL::integer) RETURNS void
|
|
720 |
LANGUAGE plpgsql
|
|
721 |
AS $$
|
|
722 |
DECLARE
|
|
723 |
-- Use matched_concept_id's ancestors instead if available
|
|
724 |
parent_id_ taxonconcept.taxonconcept_id%TYPE := COALESCE(
|
|
725 |
NULLIF(new.matched_concept_id, new.taxonconcept_id), new.parent_id);
|
|
726 |
BEGIN
|
|
727 |
IF parent_id_ IS DISTINCT FROM old_parent_id THEN
|
|
728 |
DECLARE
|
|
729 |
-- These include the parent itself
|
|
730 |
old_ancestors integer[] := (
|
|
731 |
SELECT array_agg(ancestor_id) FROM taxonconcept_ancestor
|
|
732 |
WHERE descendant_id = old_parent_id
|
|
733 |
);
|
|
734 |
new_ancestors integer[] := (
|
|
735 |
SELECT array_agg(ancestor_id) FROM taxonconcept_ancestor
|
|
736 |
WHERE descendant_id = parent_id_
|
|
737 |
);
|
|
738 |
descendant_id_ integer;
|
|
739 |
BEGIN
|
|
740 |
FOR descendant_id_ IN -- also includes self
|
|
741 |
SELECT descendant_id
|
|
742 |
FROM taxonconcept_ancestor
|
|
743 |
WHERE ancestor_id = new.taxonconcept_id
|
|
744 |
LOOP
|
|
745 |
-- Delete old parent's ancestors
|
|
746 |
DELETE FROM taxonconcept_ancestor
|
|
747 |
WHERE descendant_id = descendant_id_
|
|
748 |
AND ancestor_id = ANY (old_ancestors)
|
|
749 |
;
|
|
750 |
|
|
751 |
-- Add new parent's ancestors
|
|
752 |
INSERT INTO taxonconcept_ancestor
|
|
753 |
(descendant_id, ancestor_id)
|
|
754 |
SELECT descendant_id_, unnest(new_ancestors)
|
|
755 |
;
|
|
756 |
END LOOP;
|
|
757 |
END;
|
514 |
758 |
END IF;
|
515 |
759 |
|
516 |
|
-- Add "ancestor" for this node
|
517 |
|
/* This is useful for queries, because you don't have to separately test if
|
518 |
|
the leaf node is the one you're looking for, in addition to that leaf node's
|
519 |
|
ancestors. */
|
|
760 |
/* Note: We don't need an ON DELETE trigger to update the descendants'
|
|
761 |
ancestors when a node is deleted, because the
|
|
762 |
taxonconcept_ancestor.ancestor_id foreign key is ON DELETE CASCADE. */
|
|
763 |
END;
|
|
764 |
$$;
|
|
765 |
|
|
766 |
|
|
767 |
ALTER FUNCTION public.taxonconcept_update_ancestors(new taxonconcept, old_parent_id integer) OWNER TO bien;
|
|
768 |
|
|
769 |
--
|
|
770 |
-- Name: taxonconcept_update_ancestors_on_insert(); Type: FUNCTION; Schema: public; Owner: bien
|
|
771 |
--
|
|
772 |
|
|
773 |
CREATE FUNCTION taxonconcept_update_ancestors_on_insert() RETURNS trigger
|
|
774 |
LANGUAGE plpgsql
|
|
775 |
AS $$
|
|
776 |
BEGIN
|
|
777 |
/* Add "ancestor" for this node. This is useful for queries, because you
|
|
778 |
don't have to separately test if the leaf node is the one you're looking
|
|
779 |
for, in addition to that leaf node's ancestors. */
|
520 |
780 |
INSERT
|
521 |
781 |
INTO taxonconcept_ancestor
|
522 |
|
(taxonconcept_id, ancestor_id)
|
|
782 |
(descendant_id, ancestor_id)
|
523 |
783 |
VALUES (new.taxonconcept_id, new.taxonconcept_id)
|
524 |
784 |
;
|
525 |
785 |
|
526 |
|
-- Tell immediate children to update their ancestors lists, which will
|
527 |
|
-- recursively tell all descendants
|
528 |
|
UPDATE taxonconcept
|
529 |
|
SET taxonconcept_id = taxonconcept_id -- need at least one SET statement
|
530 |
|
-- Add COALESCE() to enable using taxonconcept_unique index for lookup
|
531 |
|
WHERE COALESCE(parent_id, 2147483647) = new.taxonconcept_id
|
532 |
|
;
|
|
786 |
PERFORM taxonconcept_update_ancestors(new);
|
533 |
787 |
|
534 |
|
/* Note: We don't need an ON DELETE trigger to update the descendants'
|
535 |
|
ancestors when a node is deleted, because the taxonconcept.parent_id foreign
|
536 |
|
key is ON DELETE CASCADE, which just removes all the descendants anyway. */
|
|
788 |
RETURN new;
|
|
789 |
END;
|
|
790 |
$$;
|
|
791 |
|
|
792 |
|
|
793 |
ALTER FUNCTION public.taxonconcept_update_ancestors_on_insert() OWNER TO bien;
|
|
794 |
|
|
795 |
--
|
|
796 |
-- Name: taxonconcept_update_ancestors_on_update(); Type: FUNCTION; Schema: public; Owner: bien
|
|
797 |
--
|
|
798 |
|
|
799 |
CREATE FUNCTION taxonconcept_update_ancestors_on_update() RETURNS trigger
|
|
800 |
LANGUAGE plpgsql
|
|
801 |
AS $$
|
|
802 |
BEGIN
|
|
803 |
PERFORM taxonconcept_update_ancestors(new, COALESCE(
|
|
804 |
NULLIF(old.matched_concept_id, old.taxonconcept_id), old.parent_id));
|
537 |
805 |
|
538 |
806 |
RETURN new;
|
539 |
807 |
END;
|
540 |
808 |
$$;
|
541 |
809 |
|
542 |
810 |
|
543 |
|
ALTER FUNCTION public.taxonconcept_update_ancestors() OWNER TO bien;
|
|
811 |
ALTER FUNCTION public.taxonconcept_update_ancestors_on_update() OWNER TO bien;
|
544 |
812 |
|
545 |
813 |
--
|
546 |
814 |
-- Name: concat(text); Type: AGGREGATE; Schema: public; Owner: bien
|
... | ... | |
555 |
823 |
|
556 |
824 |
ALTER AGGREGATE public.concat(text) OWNER TO bien;
|
557 |
825 |
|
558 |
|
SET default_tablespace = '';
|
559 |
|
|
560 |
|
SET default_with_oids = false;
|
561 |
|
|
562 |
826 |
--
|
563 |
827 |
-- Name: address; Type: TABLE; Schema: public; Owner: bien; Tablespace:
|
564 |
828 |
--
|
... | ... | |
575 |
839 |
postalcode text,
|
576 |
840 |
country text,
|
577 |
841 |
currentflag boolean,
|
578 |
|
addressstartdate timestamp with time zone
|
|
842 |
addressstartdate date
|
579 |
843 |
);
|
580 |
844 |
|
581 |
845 |
|
... | ... | |
618 |
882 |
creator_id integer NOT NULL,
|
619 |
883 |
sourceaccessioncode text,
|
620 |
884 |
taxonoccurrence_id integer NOT NULL,
|
621 |
|
collectiondate timestamp with time zone,
|
|
885 |
collectiondate date,
|
622 |
886 |
cover_fraction double precision,
|
623 |
887 |
linecover_m double precision,
|
624 |
888 |
basalarea_m2 double precision,
|
... | ... | |
730 |
994 |
notespublic boolean,
|
731 |
995 |
notesmgt boolean,
|
732 |
996 |
revisions boolean,
|
733 |
|
dateentered timestamp with time zone DEFAULT now(),
|
|
997 |
dateentered date DEFAULT now(),
|
734 |
998 |
locationrationalenarrative text,
|
735 |
999 |
accessioncode text,
|
736 |
1000 |
CONSTRAINT location_required_key CHECK (((sourceaccessioncode IS NOT NULL) OR (authorlocationcode IS NOT NULL)))
|
... | ... | |
761 |
1025 |
footprintgeometry_dwc text,
|
762 |
1026 |
coordsaccuracy_deg double precision,
|
763 |
1027 |
identifier_id integer,
|
764 |
|
determinationdate timestamp with time zone,
|
|
1028 |
determinationdate date,
|
765 |
1029 |
isoriginal boolean DEFAULT false NOT NULL,
|
766 |
1030 |
iscurrent boolean DEFAULT false NOT NULL,
|
767 |
1031 |
calculated boolean
|
... | ... | |
797 |
1061 |
project_id integer,
|
798 |
1062 |
authoreventcode text,
|
799 |
1063 |
previous_id integer,
|
|
1064 |
obsstartdate date,
|
|
1065 |
obsenddate date,
|
800 |
1066 |
dateaccuracy text,
|
801 |
1067 |
method_id integer,
|
802 |
1068 |
temperature_c double precision,
|
... | ... | |
855 |
1121 |
notespublic boolean,
|
856 |
1122 |
notesmgt boolean,
|
857 |
1123 |
revisions boolean,
|
858 |
|
obsstartdate timestamp with time zone,
|
859 |
|
obsenddate timestamp with time zone,
|
860 |
|
dateentered timestamp with time zone DEFAULT now(),
|
|
1124 |
dateentered date DEFAULT now(),
|
861 |
1125 |
toptaxon1name text,
|
862 |
1126 |
toptaxon2name text,
|
863 |
1127 |
toptaxon3name text,
|
... | ... | |
1097 |
1361 |
CREATE TABLE party (
|
1098 |
1362 |
party_id integer NOT NULL,
|
1099 |
1363 |
creator_id integer NOT NULL,
|
|
1364 |
fullname text,
|
1100 |
1365 |
salutation text,
|
1101 |
1366 |
givenname text,
|
1102 |
1367 |
middlename text,
|
... | ... | |
1109 |
1374 |
partypublic boolean DEFAULT true,
|
1110 |
1375 |
d_obscount integer,
|
1111 |
1376 |
accessioncode text,
|
1112 |
|
CONSTRAINT party_required_key CHECK (((organizationname IS NOT NULL) OR ((creator_id <> party_id) AND (surname IS NOT NULL))))
|
|
1377 |
CONSTRAINT party_required_key CHECK (((organizationname IS NOT NULL) OR ((creator_id <> party_id) AND ((fullname IS NOT NULL) OR (surname IS NOT NULL)))))
|
1113 |
1378 |
);
|
1114 |
1379 |
|
1115 |
1380 |
|
... | ... | |
1247 |
1512 |
|
1248 |
1513 |
|
1249 |
1514 |
--
|
1250 |
|
-- Name: taxonconcept; Type: TABLE; Schema: public; Owner: bien; Tablespace:
|
1251 |
|
--
|
1252 |
|
|
1253 |
|
CREATE TABLE taxonconcept (
|
1254 |
|
taxonconcept_id integer NOT NULL,
|
1255 |
|
creator_id integer NOT NULL,
|
1256 |
|
sourceaccessioncode text,
|
1257 |
|
creationdate timestamp with time zone,
|
1258 |
|
accepted_concept_id integer,
|
1259 |
|
matched_concept_id integer,
|
1260 |
|
matched_concept_fit_fraction double precision,
|
1261 |
|
parent_id integer,
|
1262 |
|
taxonname text,
|
1263 |
|
rank taxonrank,
|
1264 |
|
verbatimrank text,
|
1265 |
|
identifyingtaxonomicname text,
|
1266 |
|
taxonomicname text,
|
1267 |
|
author text,
|
1268 |
|
taxonomicnamewithauthor text,
|
1269 |
|
family text,
|
1270 |
|
genus text,
|
1271 |
|
species text,
|
1272 |
|
description text,
|
1273 |
|
accessioncode text,
|
1274 |
|
CONSTRAINT taxonconcept_matched_concept_fit_fraction_range CHECK (((matched_concept_fit_fraction >= (0)::double precision) AND (matched_concept_fit_fraction <= (1)::double precision))),
|
1275 |
|
CONSTRAINT taxonconcept_required_key CHECK (((((((sourceaccessioncode IS NOT NULL) OR (taxonname IS NOT NULL)) OR (identifyingtaxonomicname IS NOT NULL)) OR (taxonomicname IS NOT NULL)) OR (taxonomicnamewithauthor IS NOT NULL)) OR ((parent_id IS NOT NULL) AND ((creationdate IS NOT NULL) OR (author IS NOT NULL)))))
|
1276 |
|
);
|
1277 |
|
|
1278 |
|
|
1279 |
|
ALTER TABLE public.taxonconcept OWNER TO bien;
|
1280 |
|
|
1281 |
|
--
|
1282 |
|
-- Name: TABLE taxonconcept; Type: COMMENT; Schema: public; Owner: bien
|
1283 |
|
--
|
1284 |
|
|
1285 |
|
COMMENT ON TABLE taxonconcept IS 'A taxon concept defined by an entity. Can be at any level in the taxonomic hierarchy. Can be either verbatim or accepted.
|
1286 |
|
|
1287 |
|
"A taxon (plural: taxa) is a group of one (or more) populations of organism(s), which a taxonomist adjudges to be a unit" (http://en.wikipedia.org/wiki/Taxon)
|
1288 |
|
|
1289 |
|
Note that taxonname stores only one rank (e.g. family) of the full taxonomic name. The higher-level ranks are stored in the taxon concept''s chain of parent_id ancestors.
|
1290 |
|
|
1291 |
|
To include a taxon name at a rank with no explicit column, create a parent taxonconcept for it and point to it using parent_id. To include multiple such names, chain the taxonconcepts together using parent_id. Note that lower-level taxa should point to higher-level taxa.
|
1292 |
|
|
1293 |
|
Equivalent to VegBank''s plantConcept and plantName tables, plus plantParent_ID and plantLevel from plantStatus.';
|
1294 |
|
|
1295 |
|
|
1296 |
|
--
|
1297 |
|
-- Name: COLUMN taxonconcept.creator_id; Type: COMMENT; Schema: public; Owner: bien
|
1298 |
|
--
|
1299 |
|
|
1300 |
|
COMMENT ON COLUMN taxonconcept.creator_id IS 'The entity that created the taxon concept.';
|
1301 |
|
|
1302 |
|
|
1303 |
|
--
|
1304 |
|
-- Name: COLUMN taxonconcept.sourceaccessioncode; Type: COMMENT; Schema: public; Owner: bien
|
1305 |
|
--
|
1306 |
|
|
1307 |
|
COMMENT ON COLUMN taxonconcept.sourceaccessioncode IS 'The datasource''s identifier for the taxonconcept.';
|
1308 |
|
|
1309 |
|
|
1310 |
|
--
|
1311 |
|
-- Name: COLUMN taxonconcept.creationdate; Type: COMMENT; Schema: public; Owner: bien
|
1312 |
|
--
|
1313 |
|
|
1314 |
|
COMMENT ON COLUMN taxonconcept.creationdate IS 'The date the taxonconcept was created or defined. For a taxonconcept applied in a taxondetermination, this is the date the determination was made.';
|
1315 |
|
|
1316 |
|
|
1317 |
|
--
|
1318 |
|
-- Name: COLUMN taxonconcept.accepted_concept_id; Type: COMMENT; Schema: public; Owner: bien
|
1319 |
|
--
|
1320 |
|
|
1321 |
|
COMMENT ON COLUMN taxonconcept.accepted_concept_id IS 'The accepted synonym of the taxonconcept.';
|
1322 |
|
|
1323 |
|
|
1324 |
|
--
|
1325 |
|
-- Name: COLUMN taxonconcept.matched_concept_id; Type: COMMENT; Schema: public; Owner: bien
|
1326 |
|
--
|
1327 |
|
|
1328 |
|
COMMENT ON COLUMN taxonconcept.matched_concept_id IS 'The taxonconcept containing the closest match to this taxonconcept. taxonconcepts should be linked in a four-level hierarchy of datasource concept -> parsed concept -> matched concept -> accepted concept. A previously-accepted name''s concept should be further linked to the synonym that has replaced it.
|
1329 |
|
|
1330 |
|
To indicate a synonym between taxonconcepts of different sources, choose one taxonconcept to be authoritative and point the other taxonconcept to it using this field.
|
1331 |
|
|
1332 |
|
An accepted name should point to itself in this field. This will happen automatically by setting it to the special value 0.';
|
1333 |
|
|
1334 |
|
|
1335 |
|
--
|
1336 |
|
-- Name: COLUMN taxonconcept.matched_concept_fit_fraction; Type: COMMENT; Schema: public; Owner: bien
|
1337 |
|
--
|
1338 |
|
|
1339 |
|
COMMENT ON COLUMN taxonconcept.matched_concept_fit_fraction IS 'The closeness of fit of the matched_concept.';
|
1340 |
|
|
1341 |
|
|
1342 |
|
--
|
1343 |
|
-- Name: COLUMN taxonconcept.parent_id; Type: COMMENT; Schema: public; Owner: bien
|
1344 |
|
--
|
1345 |
|
|
1346 |
|
COMMENT ON COLUMN taxonconcept.parent_id IS 'The parent taxonconcept. Note that while a taxon *name* may have multiple parents, a taxon *concept* has only one, based on the creator''s opinion of where that taxonconcept goes in the taxonomic hierarchy.';
|
1347 |
|
|
1348 |
|
|
1349 |
|
--
|
1350 |
|
-- Name: COLUMN taxonconcept.taxonname; Type: COMMENT; Schema: public; Owner: bien
|
1351 |
|
--
|
1352 |
|
|
1353 |
|
COMMENT ON COLUMN taxonconcept.taxonname IS 'The name of the taxon within its parent taxon. This is the lowest-rank portion of this taxonconcept''s full taxonomic name, if it has one.
|
1354 |
|
|
1355 |
|
The morphospecies suffix goes in this field.';
|
1356 |
|
|
1357 |
|
|
1358 |
|
--
|
1359 |
|
-- Name: COLUMN taxonconcept.rank; Type: COMMENT; Schema: public; Owner: bien
|
1360 |
|
--
|
1361 |
|
|
1362 |
|
COMMENT ON COLUMN taxonconcept.rank IS 'The taxonconcept''s level in the taxonomic hierarchy, standardized to a closed list. Even if you specify a custom verbatimrank, you should also specify a closest-match rank from the taxonrank closed list.';
|
1363 |
|
|
1364 |
|
|
1365 |
|
--
|
1366 |
|
-- Name: COLUMN taxonconcept.verbatimrank; Type: COMMENT; Schema: public; Owner: bien
|
1367 |
|
--
|
1368 |
|
|
1369 |
|
COMMENT ON COLUMN taxonconcept.verbatimrank IS 'The taxonconcept''s verbatim level in the taxonomic hierarchy. Does not need to be in the taxonrank closed list.';
|
1370 |
|
|
1371 |
|
|
1372 |
|
--
|
1373 |
|
-- Name: COLUMN taxonconcept.identifyingtaxonomicname; Type: COMMENT; Schema: public; Owner: bien
|
1374 |
|
--
|
1375 |
|
|
1376 |
|
COMMENT ON COLUMN taxonconcept.identifyingtaxonomicname IS 'The taxonomic name that uniquely identifies this taxonconcept. If set, the other fields will not be used in duplicate elimination.';
|
1377 |
|
|
1378 |
|
|
1379 |
|
--
|
1380 |
|
-- Name: COLUMN taxonconcept.taxonomicname; Type: COMMENT; Schema: public; Owner: bien
|
1381 |
|
--
|
1382 |
|
|
1383 |
|
COMMENT ON COLUMN taxonconcept.taxonomicname IS 'The concatenated taxonomic name which uniquely identifies this taxon. Does not include the author of the name.
|
1384 |
|
|
1385 |
|
Equivalent to Darwin Core''s scientificName.';
|
1386 |
|
|
1387 |
|
|
1388 |
|
--
|
1389 |
|
-- Name: COLUMN taxonconcept.author; Type: COMMENT; Schema: public; Owner: bien
|
1390 |
|
--
|
1391 |
|
|
1392 |
|
COMMENT ON COLUMN taxonconcept.author IS 'The author of the taxonomic name.
|
1393 |
|
|
1394 |
|
Equivalent to Darwin Core''s scientificNameAuthorship.';
|
1395 |
|
|
1396 |
|
|
1397 |
|
--
|
1398 |
|
-- Name: COLUMN taxonconcept.taxonomicnamewithauthor; Type: COMMENT; Schema: public; Owner: bien
|
1399 |
|
--
|
1400 |
|
|
1401 |
|
COMMENT ON COLUMN taxonconcept.taxonomicnamewithauthor IS 'The concatenated taxonomic name which uniquely identifies this taxon, plus the author of that name.
|
1402 |
|
|
1403 |
|
Equivalent to Darwin Core''s scientificName + scientificNameAuthorship.
|
1404 |
|
Equivalent to "Name sec. x".';
|
1405 |
|
|
1406 |
|
|
1407 |
|
--
|
1408 |
|
-- Name: COLUMN taxonconcept.family; Type: COMMENT; Schema: public; Owner: bien
|
1409 |
|
--
|
1410 |
|
|
1411 |
|
COMMENT ON COLUMN taxonconcept.family IS 'The family of the taxonomic name. This is a cached field for easy querying; the identifying version of this field is stored in the chain of parent_id ancestors.';
|
1412 |
|
|
1413 |
|
|
1414 |
|
--
|
1415 |
|
-- Name: COLUMN taxonconcept.genus; Type: COMMENT; Schema: public; Owner: bien
|
1416 |
|
--
|
1417 |
|
|
1418 |
|
COMMENT ON COLUMN taxonconcept.genus IS 'The genus portion of the taxonomic name. This is a cached field for easy querying; the identifying version of this field is stored in the chain of parent_id ancestors.';
|
1419 |
|
|
1420 |
|
|
1421 |
|
--
|
1422 |
|
-- Name: COLUMN taxonconcept.species; Type: COMMENT; Schema: public; Owner: bien
|
1423 |
|
--
|
1424 |
|
|
1425 |
|
COMMENT ON COLUMN taxonconcept.species IS 'The species portion of the taxonomic name. This is a cached field for easy querying; the identifying version of this field is stored in the chain of parent_id ancestors.';
|
1426 |
|
|
1427 |
|
|
1428 |
|
--
|
1429 |
1515 |
-- Name: taxondetermination; Type: TABLE; Schema: public; Owner: bien; Tablespace:
|
1430 |
1516 |
--
|
1431 |
1517 |
|
... | ... | |
1446 |
1532 |
notespublic boolean,
|
1447 |
1533 |
notesmgt boolean,
|
1448 |
1534 |
revisions boolean,
|
1449 |
|
determinationdate timestamp with time zone,
|
|
1535 |
determinationdate date,
|
1450 |
1536 |
accessioncode text
|
1451 |
1537 |
);
|
1452 |
1538 |
|
... | ... | |
1514 |
1600 |
--
|
1515 |
1601 |
|
1516 |
1602 |
CREATE VIEW analytical_db_view AS
|
1517 |
|
SELECT datasource.organizationname AS "dataSourceName", taxonconcept.family, taxonconcept.genus, taxonconcept.species, COALESCE(taxonconcept.taxonomicnamewithauthor, taxonconcept.taxonomicname) AS taxon, taxonconcept.author AS "taxonAuthor", taxonconcept.taxonname AS "taxonMorphospecies", placepath.country, placepath.stateprovince AS "stateProvince", placepath.county AS "countyParish", taxonoccurrence.verbatimcollectorname AS collector, plantobservation.collectionnumber AS "collectionNumber", array_to_string(ARRAY[identifiedby.givenname, identifiedby.middlename, identifiedby.surname], ' '::text) AS "identifiedBy", aggregateoccurrence.collectiondate AS "observationDate", location.authorlocationcode AS "plotCode", functions._m2_to_ha(location.area_m2) AS "plotAreaHa", method.name AS "plotMethod", locationcoords.latitude_deg AS latitude, locationcoords.longitude_deg AS longitude, location.elevation_m, taxonoccurrence.iscultivated AS "isCultivated", taxonoccurrence.cultivatedbasis AS "isCultivatedReason", _fraction_to_percent(aggregateoccurrence.cover_fraction) AS "pctCover" FROM (((((((((((((location JOIN party datasource ON (((datasource.party_id = location.creator_id) AND (datasource.organizationname IS NOT NULL)))) LEFT JOIN locationcoords USING (location_id)) LEFT JOIN locationplace USING (location_id)) LEFT JOIN placepath USING (placepath_id)) JOIN locationevent USING (location_id)) LEFT JOIN method USING (method_id)) JOIN taxonoccurrence USING (locationevent_id)) JOIN taxondetermination USING (taxonoccurrence_id)) LEFT JOIN party identifiedby ON ((identifiedby.party_id = taxondetermination.party_id))) JOIN taxonconcept USING (taxonconcept_id)) LEFT JOIN aggregateoccurrence USING (taxonoccurrence_id)) LEFT JOIN plantobservation USING (aggregateoccurrence_id)) LEFT JOIN specimenreplicate USING (plantobservation_id));
|
|
1603 |
SELECT datasource.organizationname AS "dataSourceName", accepted_taxonconcept.family, accepted_taxonconcept.genus, accepted_taxonconcept.species, COALESCE(accepted_taxonconcept.taxonomicnamewithauthor, accepted_taxonconcept.taxonomicname) AS taxon, accepted_taxonconcept.author AS "taxonAuthor", accepted_taxonconcept.taxonepithet AS "taxonMorphospecies", placepath.country, placepath.stateprovince AS "stateProvince", placepath.county AS "countyParish", taxonoccurrence.verbatimcollectorname AS collector, plantobservation.collectionnumber AS "collectionNumber", array_to_string(ARRAY[identifiedby.givenname, identifiedby.middlename, identifiedby.surname], ' '::text) AS "identifiedBy", aggregateoccurrence.collectiondate AS "observationDate", location.authorlocationcode AS "plotCode", functions._m2_to_ha(location.area_m2) AS "plotAreaHa", method.name AS "plotMethod", locationcoords.latitude_deg AS latitude, locationcoords.longitude_deg AS longitude, location.elevation_m, taxonoccurrence.iscultivated AS "isCultivated", taxonoccurrence.cultivatedbasis AS "isCultivatedReason", _fraction_to_percent(aggregateoccurrence.cover_fraction) AS "pctCover" FROM ((((((((((((((location JOIN party datasource ON (((datasource.party_id = location.creator_id) AND (datasource.organizationname IS NOT NULL)))) LEFT JOIN locationcoords USING (location_id)) LEFT JOIN locationplace USING (location_id)) LEFT JOIN placepath USING (placepath_id)) JOIN locationevent USING (location_id)) LEFT JOIN method USING (method_id)) JOIN taxonoccurrence USING (locationevent_id)) JOIN taxondetermination USING (taxonoccurrence_id)) LEFT JOIN party identifiedby ON ((identifiedby.party_id = taxondetermination.party_id))) JOIN taxonconcept datasource_taxonconcept USING (taxonconcept_id)) JOIN taxonconcept accepted_taxonconcept ON ((accepted_taxonconcept.taxonconcept_id = datasource_taxonconcept.accepted_concept_id))) LEFT JOIN aggregateoccurrence USING (taxonoccurrence_id)) LEFT JOIN plantobservation USING (aggregateoccurrence_id)) LEFT JOIN specimenreplicate USING (plantobservation_id));
|
1518 |
1604 |
|
1519 |
1605 |
|
1520 |
1606 |
ALTER TABLE public.analytical_db_view OWNER TO bien;
|
... | ... | |
1577 |
1663 |
commcode text,
|
1578 |
1664 |
commframework text,
|
1579 |
1665 |
commlevel text,
|
1580 |
|
classstartdate timestamp with time zone,
|
1581 |
|
classstopdate timestamp with time zone,
|
|
1666 |
classstartdate date,
|
|
1667 |
classstopdate date,
|
1582 |
1668 |
expertsystem text,
|
1583 |
1669 |
accessioncode text
|
1584 |
1670 |
);
|
... | ... | |
1669 |
1755 |
commstatus_id integer NOT NULL,
|
1670 |
1756 |
commconcept_id integer NOT NULL,
|
1671 |
1757 |
commconvergence text NOT NULL,
|
1672 |
|
correlationstart timestamp with time zone NOT NULL,
|
1673 |
|
correlationstop timestamp with time zone
|
|
1758 |
correlationstart date NOT NULL,
|
|
1759 |
correlationstop date
|
1674 |
1760 |
);
|
1675 |
1761 |
|
1676 |
1762 |
|
... | ... | |
1802 |
1888 |
commname_id integer NOT NULL,
|
1803 |
1889 |
commname text NOT NULL,
|
1804 |
1890 |
reference_id integer,
|
1805 |
|
dateentered timestamp with time zone DEFAULT now()
|
|
1891 |
dateentered date DEFAULT now()
|
1806 |
1892 |
);
|
1807 |
1893 |
|
1808 |
1894 |
|
... | ... | |
1849 |
1935 |
commlevel text,
|
1850 |
1936 |
commpartycomments text,
|
1851 |
1937 |
party_id integer NOT NULL,
|
1852 |
|
startdate timestamp with time zone NOT NULL,
|
1853 |
|
stopdate timestamp with time zone,
|
|
1938 |
startdate date NOT NULL,
|
|
1939 |
stopdate date,
|
1854 |
1940 |
accessioncode text
|
1855 |
1941 |
);
|
1856 |
1942 |
|
... | ... | |
1898 |
1984 |
classsystem text,
|
1899 |
1985 |
party_id integer,
|
1900 |
1986 |
commstatus_id integer,
|
1901 |
|
usagestart timestamp with time zone,
|
1902 |
|
usagestop timestamp with time zone
|
|
1987 |
usagestart date,
|
|
1988 |
usagestop date
|
1903 |
1989 |
);
|
1904 |
1990 |
|
1905 |
1991 |
|
... | ... | |
2141 |
2227 |
graphicdescription text,
|
2142 |
2228 |
graphictype text,
|
2143 |
2229 |
graphicdata oid,
|
2144 |
|
graphicdate timestamp with time zone,
|
|
2230 |
graphicdate date,
|
2145 |
2231 |
accessioncode text
|
2146 |
2232 |
);
|
2147 |
2233 |
|
... | ... | |
2269 |
2355 |
locationevent_id integer NOT NULL,
|
2270 |
2356 |
party_id integer NOT NULL,
|
2271 |
2357 |
role role NOT NULL,
|
2272 |
|
contributiondate timestamp with time zone
|
|
2358 |
contributiondate date
|
2273 |
2359 |
);
|
2274 |
2360 |
|
2275 |
2361 |
|
... | ... | |
2314 |
2400 |
party_id integer NOT NULL,
|
2315 |
2401 |
role role NOT NULL,
|
2316 |
2402 |
synonymcomment text,
|
2317 |
|
classstartdate timestamp with time zone DEFAULT now() NOT NULL,
|
2318 |
|
classstopdate timestamp with time zone,
|
|
2403 |
classstartdate date DEFAULT now() NOT NULL,
|
|
2404 |
classstopdate date,
|
2319 |
2405 |
accessioncode text
|
2320 |
2406 |
);
|
2321 |
2407 |
|
... | ... | |
2476 |
2562 |
role role NOT NULL,
|
2477 |
2563 |
notetype text NOT NULL,
|
2478 |
2564 |
notetext text NOT NULL,
|
2479 |
|
notedate timestamp with time zone,
|
|
2565 |
notedate date,
|
2480 |
2566 |
accessioncode text
|
2481 |
2567 |
);
|
2482 |
2568 |
|
... | ... | |
2578 |
2664 |
-- Name: party_party_id_seq; Type: SEQUENCE SET; Schema: public; Owner: bien
|
2579 |
2665 |
--
|
2580 |
2666 |
|
2581 |
|
SELECT pg_catalog.setval('party_party_id_seq', 17, true);
|
|
2667 |
SELECT pg_catalog.setval('party_party_id_seq', 36, true);
|
2582 |
2668 |
|
2583 |
2669 |
|
2584 |
2670 |
--
|
... | ... | |
2590 |
2676 |
parentparty_id integer NOT NULL,
|
2591 |
2677 |
childparty_id integer NOT NULL,
|
2592 |
2678 |
role role,
|
2593 |
|
memberstart timestamp with time zone DEFAULT now() NOT NULL,
|
2594 |
|
memberstop timestamp with time zone
|
|
2679 |
memberstart date DEFAULT now() NOT NULL,
|
|
2680 |
memberstop date
|
2595 |
2681 |
);
|
2596 |
2682 |
|
2597 |
2683 |
|
... | ... | |
2852 |
2938 |
sourceaccessioncode text,
|
2853 |
2939 |
projectname text,
|
2854 |
2940 |
projectdescription text,
|
2855 |
|
startdate timestamp with time zone,
|
2856 |
|
stopdate timestamp with time zone,
|
|
2941 |
startdate date,
|
|
2942 |
stopdate date,
|
2857 |
2943 |
d_obscount integer,
|
2858 |
|
d_lastlocationaddeddate timestamp with time zone,
|
|
2944 |
d_lastlocationaddeddate date,
|
2859 |
2945 |
accessioncode text,
|
2860 |
2946 |
CONSTRAINT project_required_key CHECK (((sourceaccessioncode IS NOT NULL) OR (projectname IS NOT NULL)))
|
2861 |
2947 |
);
|
... | ... | |
2963 |
3049 |
url text,
|
2964 |
3050 |
doi text,
|
2965 |
3051 |
additionalinfo text,
|
2966 |
|
pubdate timestamp with time zone,
|
2967 |
|
accessdate timestamp with time zone,
|
2968 |
|
conferencedate timestamp with time zone,
|
|
3052 |
pubdate date,
|
|
3053 |
accessdate date,
|
|
3054 |
conferencedate date,
|
2969 |
3055 |
accessioncode text
|
2970 |
3056 |
);
|
2971 |
3057 |
|
... | ... | |
3188 |
3274 |
previousvaluetext text NOT NULL,
|
3189 |
3275 |
previousvaluetype text NOT NULL,
|
3190 |
3276 |
previousrevision_id integer,
|
3191 |
|
revisiondate timestamp with time zone NOT NULL
|
|
3277 |
revisiondate date NOT NULL
|
3192 |
3278 |
);
|
3193 |
3279 |
|
3194 |
3280 |
|
... | ... | |
3568 |
3654 |
--
|
3569 |
3655 |
|
3570 |
3656 |
CREATE TABLE taxonconcept_ancestor (
|
3571 |
|
taxonconcept_id integer NOT NULL,
|
|
3657 |
descendant_id integer NOT NULL,
|
3572 |
3658 |
ancestor_id integer NOT NULL
|
3573 |
3659 |
);
|
3574 |
3660 |
|
... | ... | |
3579 |
3665 |
-- Name: TABLE taxonconcept_ancestor; Type: COMMENT; Schema: public; Owner: bien
|
3580 |
3666 |
--
|
3581 |
3667 |
|
3582 |
|
COMMENT ON TABLE taxonconcept_ancestor IS 'taxonconcept''s ancestor cross link table.';
|
|
3668 |
COMMENT ON TABLE taxonconcept_ancestor IS 'Stores the accepted ancestors of a taxonconcept. Auto-populated, so should not be manually modified.';
|
3583 |
3669 |
|
3584 |
3670 |
|
3585 |
3671 |
--
|
... | ... | |
3607 |
3693 |
-- Name: taxonconcept_taxonconcept_id_seq; Type: SEQUENCE SET; Schema: public; Owner: bien
|
3608 |
3694 |
--
|
3609 |
3695 |
|
3610 |
|
SELECT pg_catalog.setval('taxonconcept_taxonconcept_id_seq', 767, true);
|
|
3696 |
SELECT pg_catalog.setval('taxonconcept_taxonconcept_id_seq', 786, true);
|
3611 |
3697 |
|
3612 |
3698 |
|
3613 |
3699 |
--
|
... | ... | |
3619 |
3705 |
taxonstatus_id integer NOT NULL,
|
3620 |
3706 |
taxonconcept_id integer NOT NULL,
|
3621 |
3707 |
plantconvergence text NOT NULL,
|
3622 |
|
correlationstart timestamp with time zone NOT NULL,
|
3623 |
|
correlationstop timestamp with time zone
|
|
3708 |
correlationstart date NOT NULL,
|
|
3709 |
correlationstop date
|
3624 |
3710 |
);
|
3625 |
3711 |
|
3626 |
3712 |
|
... | ... | |
3762 |
3848 |
taxonconceptstatus text DEFAULT 'undetermined'::text NOT NULL,
|
3763 |
3849 |
reference_id integer,
|
3764 |
3850 |
plantpartycomments text,
|
3765 |
|
startdate timestamp with time zone,
|
3766 |
|
stopdate timestamp with time zone,
|
|
3851 |
startdate date,
|
|
3852 |
stopdate date,
|
3767 |
3853 |
accessioncode text
|
3768 |
3854 |
);
|
3769 |
3855 |
|
... | ... | |
3811 |
3897 |
acceptedsynonym text,
|
3812 |
3898 |
party_id integer,
|
3813 |
3899 |
taxonstatus_id integer,
|
3814 |
|
usagestart timestamp with time zone,
|
3815 |
|
usagestop timestamp with time zone
|
|
3900 |
usagestart date,
|
|
3901 |
usagestop date
|
3816 |
3902 |
);
|
3817 |
3903 |
|
3818 |
3904 |
|
... | ... | |
4577 |
4663 |
-- Data for Name: locationevent; Type: TABLE DATA; Schema: public; Owner: bien
|
4578 |
4664 |
--
|
4579 |
4665 |
|
4580 |
|
COPY locationevent (locationevent_id, creator_id, sourceaccessioncode, parent_id, location_id, project_id, authoreventcode, previous_id, dateaccuracy, method_id, temperature_c, precipitation_m, autotaxoncover, originaldata, effortlevel, floristicquality, bryophytequality, lichenquality, locationeventnarrative, landscapenarrative, homogeneity, phenologicaspect, representativeness, standmaturity, successionalstatus, basalarea, hydrologicregime, soilmoistureregime, soildrainage, watersalinity, waterdepth_m, shoredistance, soildepth, organicdepth, soiltaxon_id, soiltaxonsrc, percentbedrock, percentrockgravel, percentwood, percentlitter, percentbaresoil, percentwater, percentother, nameother, treeht, shrubht, fieldht, nonvascularht, submergedht, treecover, shrubcover, fieldcover, nonvascularcover, floatingcover, submergedcover, dominantstratum, growthform1type, growthform2type, growthform3type, growthform1cover, growthform2cover, growthform3cover, totalcover, notespublic, notesmgt, revisions, obsstartdate, obsenddate, dateentered, toptaxon1name, toptaxon2name, toptaxon3name, toptaxon4name, toptaxon5name, numberoftaxa, accessioncode) FROM stdin;
|
|
4666 |
COPY locationevent (locationevent_id, creator_id, sourceaccessioncode, parent_id, location_id, project_id, authoreventcode, previous_id, obsstartdate, obsenddate, dateaccuracy, method_id, temperature_c, precipitation_m, autotaxoncover, originaldata, effortlevel, floristicquality, bryophytequality, lichenquality, locationeventnarrative, landscapenarrative, homogeneity, phenologicaspect, representativeness, standmaturity, successionalstatus, basalarea, hydrologicregime, soilmoistureregime, soildrainage, watersalinity, waterdepth_m, shoredistance, soildepth, organicdepth, soiltaxon_id, soiltaxonsrc, percentbedrock, percentrockgravel, percentwood, percentlitter, percentbaresoil, percentwater, percentother, nameother, treeht, shrubht, fieldht, nonvascularht, submergedht, treecover, shrubcover, fieldcover, nonvascularcover, floatingcover, submergedcover, dominantstratum, growthform1type, growthform2type, growthform3type, growthform1cover, growthform2cover, growthform3cover, totalcover, notespublic, notesmgt, revisions, dateentered, toptaxon1name, toptaxon2name, toptaxon3name, toptaxon4name, toptaxon5name, numberoftaxa, accessioncode) FROM stdin;
|
4581 |
4667 |
\.
|
4582 |
4668 |
|
4583 |
4669 |
|
... | ... | |
4641 |
4727 |
-- Data for Name: party; Type: TABLE DATA; Schema: public; Owner: bien
|
4642 |
4728 |
--
|
4643 |
4729 |
|
4644 |
|
COPY party (party_id, creator_id, salutation, givenname, middlename, surname, organizationname, currentname_id, contactinstructions, email, partytype, partypublic, d_obscount, accessioncode) FROM stdin;
|
4645 |
|
1 1 \N \N \N \N TNRS \N \N \N \N t \N \N
|
4646 |
|
2 2 \N \N \N \N test_taxonomic_names \N \N \N \N t \N \N
|
|
4730 |
COPY party (party_id, creator_id, fullname, salutation, givenname, middlename, surname, organizationname, currentname_id, contactinstructions, email, partytype, partypublic, d_obscount, accessioncode) FROM stdin;
|
|
4731 |
1 1 \N \N \N \N \N TNRS \N \N \N \N t \N \N
|
|
4732 |
2 2 \N \N \N \N \N NCBI \N \N \N \N t \N \N
|
|
4733 |
21 21 \N \N \N \N \N test_taxonomic_names \N \N \N \N t \N \N
|
4647 |
4734 |
\.
|
4648 |
4735 |
|
4649 |
4736 |
|
... | ... | |
4827 |
4914 |
-- Data for Name: taxonconcept; Type: TABLE DATA; Schema: public; Owner: bien
|
4828 |
4915 |
--
|
4829 |
4916 |
|
4830 |
|
COPY taxonconcept (taxonconcept_id, creator_id, sourceaccessioncode, creationdate, accepted_concept_id, matched_concept_id, matched_concept_fit_fraction, parent_id, taxonname, rank, verbatimrank, identifyingtaxonomicname, taxonomicname, author, taxonomicnamewithauthor, family, genus, species, description, accessioncode) FROM stdin;
|
|
4917 |
COPY taxonconcept (taxonconcept_id, creator_id, sourceaccessioncode, creationdate, accepted_concept_id, matched_concept_id, matched_concept_fit_fraction, parent_id, taxonepithet, rank, verbatimrank, identifyingtaxonomicname, taxonomicname, author, taxonomicnamewithauthor, family, genus, species, description, accessioncode) FROM stdin;
|
4831 |
4918 |
2 1 \N \N \N \N \N \N Poaceae family \N \N \N \N \N \N \N \N \N \N
|
4832 |
4919 |
4 1 \N \N \N \N \N 2 Poa genus \N \N \N \N \N \N \N \N \N \N
|
4833 |
4920 |
6 1 \N \N \N \N \N 4 annua species \N \N \N \N \N \N \N \N \N \N
|
4834 |
|
18 1 \N \N 18 18 \N 6 \N species species Poa annua L. Poa annua L. \N Poaceae Poa annua \N \N
|
4835 |
|
54 1 \N \N \N \N \N 6 annua variety variety \N \N \N \N \N \N \N \N \N
|
4836 |
|
56 1 \N \N 56 56 \N 54 \N variety variety Poa annua var. annua Poa annua var. annua \N \N Poaceae Poa annua \N \N
|
4837 |
|
82 1 \N \N \N \N \N 4 infirma species \N \N \N \N \N \N \N \N \N \N
|
4838 |
|
94 1 \N \N 94 94 \N 82 \N species species Poa infirma Kunth Poa infirma Kunth \N Poaceae Poa infirma \N \N
|
4839 |
|
132 1 \N \N 132 132 \N \N \N family family Asteraceae Asteraceae \N \N \N \N \N \N \N
|
4840 |
|
152 1 \N \N 132 132 1 \N Bercht. & J. Presl \N \N Asteraceae Bercht. & J. Presl Asteraceae \N \N Asteraceae \N \N \N \N
|
4841 |
|
154 1 \N \N \N \N \N \N Compositae family \N \N \N \N \N \N \N \N \N \N
|
4842 |
|
172 1 \N \N \N \N \N \N Asteraceae family \N \N \N \N \N \N \N \N \N \N
|
4843 |
|
170 1 \N \N 132 152 \N 154 \N family family Compositae Giseke Compositae Giseke \N Compositae \N \N \N \N
|
4844 |
|
190 1 \N \N 132 170 1 \N indet. sp.1 \N \N Compositae indet. sp.1 Compositae \N \N Compositae \N \N \N \N
|
4845 |
|
192 1 \N \N \N \N \N \N Fabaceae family \N \N \N \N \N \N \N \N \N \N
|
4846 |
|
208 1 \N \N 208 208 \N 192 \N family family Fabaceae Lindl. Fabaceae Lindl. \N Fabaceae \N \N \N \N
|
4847 |
|
228 1 \N \N 208 208 1 \N Boyle#6500 \N \N Fabaceae Boyle#6500 Fabaceae \N \N Fabaceae \N \N \N \N
|
4848 |
|
232 1 \N \N \N \N \N 192 Inga genus \N \N \N \N \N \N \N \N \N \N
|
4849 |
|
246 1 \N \N 246 246 \N 232 \N genus genus Inga Mill. Inga Mill. \N Fabaceae Inga \N \N \N
|
4850 |
|
266 1 \N \N 246 246 1 \N "fuzzy leaf" \N \N Fabaceae Inga "fuzzy leaf" Inga \N \N Fabaceae Inga \N \N \N
|
4851 |
|
304 1 \N \N 246 246 1 \N sp.3 \N \N Fabaceae Inga sp.3 Inga \N \N Fabaceae Inga \N \N \N
|
4852 |
|
342 1 \N \N 208 208 1 \N unknown #2 \N \N Fabaceae unknown #2 Fabaceae \N \N Fabaceae \N \N \N \N
|
4853 |
|
380 1 \N \N 18 18 1 \N \N \N \N Poa annua Poa annua \N \N \N Poa annua \N \N
|
4854 |
|
396 1 \N \N \N \N \N 6 lanuginosa forma forma \N \N \N \N \N \N \N \N \N
|
4855 |
|
398 1 \N \N 56 56 \N 396 \N forma forma Poa annua fo. lanuginosa Sennen Poa annua fo. lanuginosa Sennen \N Poaceae Poa annua \N \N
|
4856 |
|
418 1 \N \N 56 398 1 \N \N \N fo. Poa annua fo. lanuginosa Poa annua fo. lanuginosa \N \N \N Poa annua \N \N
|
4857 |
|
434 1 \N \N \N \N \N 6 exilis subspecies subspecies \N \N \N \N \N \N \N \N \N
|
4858 |
|
436 1 \N \N 94 94 \N 434 \N subspecies subspecies Poa annua subsp. exilis (Tomm. ex Freyn) Asch. & Graebn. Poa annua subsp. exilis (Tomm. ex Freyn) Asch. & Graebn. \N Poaceae Poa annua \N \N
|
4859 |
|
456 1 \N \N 94 436 1 \N \N \N subsp. Poa annua ssp. exilis Poa annua subsp. exilis \N \N \N Poa annua \N \N
|
4860 |
|
494 1 \N \N 94 436 1 \N \N \N subsp. Poa annua subsp. exilis Poa annua subsp. exilis \N \N \N Poa annua \N \N
|
4861 |
|
510 1 \N \N \N \N \N 6 minima subvariety subvariety \N \N \N \N \N \N \N \N \N
|
4862 |
|
512 1 \N \N 512 512 \N 510 \N subvariety subvariety Poa annua subvar. minima (Schur) Asch. & Graebn. Poa annua subvar. minima (Schur) Asch. & Graebn. \N Poaceae Poa annua \N \N
|
4863 |
|
532 1 \N \N 512 512 1 \N \N \N subvar. Poa annua subvar. minima Poa annua subvar. minima \N \N \N Poa annua \N \N
|
4864 |
|
548 1 \N \N \N \N \N 6 eriolepis variety variety \N \N \N \N \N \N \N \N \N
|
4865 |
|
550 1 \N \N 18 18 \N 548 \N variety variety Poa annua var. eriolepis E. Desv. Poa annua var. eriolepis E. Desv. \N Poaceae Poa annua \N \N
|
4866 |
|
570 1 \N \N 18 550 1 \N \N \N var. Poa annua var. eriolepis Poa annua var. eriolepis \N \N \N Poa annua \N \N
|
4867 |
|
572 1 \N \N \N \N \N \N Caryophyllaceae family \N \N \N \N \N \N \N \N \N \N
|
4868 |
|
574 1 \N \N \N \N \N 572 Silene genus \N \N \N \N \N \N \N \N \N \N
|
4869 |
|
576 1 \N \N \N \N \N 574 scouleri species \N \N \N \N \N \N \N \N \N \N
|
4870 |
|
586 1 \N \N \N \N \N 576 pringlei subspecies subspecies \N \N \N \N \N \N \N \N \N
|
4871 |
|
588 1 \N \N 588 588 \N 586 \N subspecies subspecies Silene scouleri subsp. pringlei (S. Watson) C.L. Hitchc. & Maguire Silene scouleri subsp. pringlei (S. Watson) C.L. Hitchc. & Maguire \N Caryophyllaceae Silene scouleri \N \N
|
4872 |
|
608 1 \N \N 588 588 1 \N var. grisea \N subsp. Silene scouleri Hook. subsp. pringlei (S. Watson) C.L. Hitchc. & Maguire var. grisea C.L. Hitchc. & Maguire Silene scouleri subsp. pringlei \N \N \N Silene scouleri \N \N
|
4873 |
|
646 1 \N \N 588 588 1 \N var. grisea \N subsp. Silene scouleri subsp. pringlei var. grisea C.L. Hitchc. & Maguire Silene scouleri subsp. pringlei \N \N \N Silene scouleri \N \N
|
4874 |
|
664 1 \N \N \N \N \N \N \N \N \N No suitable matches found. No suitable matches found. \N \N \N \N \N \N \N
|
4875 |
|
684 1 \N \N \N \N \N \N \N \N \N Fam_indet. Boyle#6501 No suitable matches found. \N \N \N \N \N \N \N
|
4876 |
|
725 2 1 \N 18 380 \N \N \N \N \N \N Poa annua \N \N \N \N \N \N \N
|
4877 |
|
728 2 2 \N 18 18 \N \N \N \N \N \N Poa annua L. \N \N \N \N \N \N \N
|
4878 |
|
731 2 3 \N 18 570 \N \N \N \N \N \N Poa annua var. eriolepis \N \N \N \N \N \N \N
|
4879 |
|
734 2 4 \N 94 494 \N \N \N \N \N \N Poa annua subsp. exilis \N \N \N \N \N \N \N
|
4880 |
|
737 2 5 \N 94 456 \N \N \N \N \N \N Poa annua ssp. exilis \N \N \N \N \N \N \N
|
4881 |
|
740 2 6 \N 512 532 \N \N \N \N \N \N Poa annua subvar. minima \N \N \N \N \N \N \N
|
4882 |
|
743 2 7 \N 56 418 \N \N \N \N \N \N Poa annua fo. lanuginosa \N \N \N \N \N \N \N
|
4883 |
|
746 2 8 \N 588 646 \N \N \N \N \N \N Silene scouleri subsp. pringlei var. grisea C.L. Hitchc. & Maguire \N \N \N \N \N \N \N
|
4884 |
|
749 2 9 \N 588 608 \N \N \N \N \N \N Silene scouleri Hook. subsp. pringlei (S. Watson) C.L. Hitchc. & Maguire var. grisea C.L. Hitchc. & Maguire \N \N \N \N \N \N \N
|
4885 |
|
752 2 10 \N 246 304 \N \N \N \N \N \N Fabaceae Inga sp.3 \N \N \N \N \N \N \N
|
4886 |
|
755 2 11 \N 246 266 \N \N \N \N \N \N Fabaceae Inga "fuzzy leaf" \N \N \N \N \N \N \N
|
4887 |
|
758 2 12 \N 208 342 \N \N \N \N \N \N Fabaceae unknown #2 \N \N \N \N \N \N \N
|
4888 |
|
761 2 13 \N 208 228 \N \N \N \N \N \N Fabaceae Boyle#6500 \N \N \N \N \N \N \N
|
4889 |
|
764 2 14 \N \N 684 \N \N \N \N \N \N Fam_indet. Boyle#6501 \N \N \N \N \N \N \N
|
4890 |
|
767 2 15 \N 132 190 \N \N \N \N \N \N Compositae indet. sp.1 \N \N \N \N \N \N \N
|
|
4921 |
19 2 \N \N \N \N \N \N Poaceae family \N \N \N \N \N \N \N \N \N \N
|
|
4922 |
18 1 http://www.tropicos.org/Name/25509881;http://plants.usda.gov/java/profile?symbol=POAN \N 18 18 \N 6 \N species species Poa annua L. Poa annua L. \N Poaceae Poa annua \N \N
|
|
4923 |
55 1 \N \N \N \N \N 6 annua variety variety \N \N \N \N \N \N \N \N \N
|
|
4924 |
57 1 http://www.tropicos.org/Name/25517736 \N 57 57 \N 55 \N variety variety Poa annua var. annua Poa annua var. annua \N \N Poaceae Poa annua \N \N
|
|
4925 |
84 1 \N \N \N \N \N 4 infirma species \N \N \N \N \N \N \N \N \N \N
|
|
4926 |
96 1 http://www.tropicos.org/Name/25514158;http://plants.usda.gov/java/profile?symbol=POIN30 \N 96 96 \N 84 \N species species Poa infirma Kunth Poa infirma Kunth \N Poaceae Poa infirma \N \N
|
|
4927 |
135 1 http://compositae.landcareresearch.co.nz/default.aspx;http://plants.usda.gov/java/nameSearch \N 135 135 \N \N \N family family Asteraceae Asteraceae \N \N \N \N \N \N \N
|
|
4928 |
156 1 \N \N 135 135 1 \N Bercht. & J. Presl \N \N Asteraceae Bercht. & J. Presl Asteraceae \N \N Asteraceae \N \N \N \N
|
|
4929 |
158 1 \N \N \N \N \N \N Compositae family \N \N \N \N \N \N \N \N \N \N
|
|
4930 |
175 2 \N \N \N \N \N \N Asteraceae family \N \N \N \N \N \N \N \N \N \N
|
|
4931 |
177 1 \N \N \N 175 \N \N Asteraceae family \N \N \N \N \N \N \N \N \N \N
|
|
4932 |
174 1 http://www.tropicos.org/Name/50255940 \N 135 156 \N 158 \N family family Compositae Giseke Compositae Giseke \N Compositae \N \N \N \N
|
|
4933 |
195 1 \N \N 135 174 1 \N indet. sp.1 \N \N Compositae indet. sp.1 Compositae \N \N Compositae \N \N \N \N
|
|
4934 |
197 1 \N \N \N \N \N \N Fabaceae family \N \N \N \N \N \N \N \N \N \N
|
|
4935 |
214 2 \N \N \N \N \N \N Fabaceae family \N \N \N \N \N \N \N \N \N \N
|
|
4936 |
213 1 http://www.tropicos.org/Name/42000184 \N 213 213 \N 197 \N family family Fabaceae Lindl. Fabaceae Lindl. \N Fabaceae \N \N \N \N
|
|
4937 |
234 1 \N \N 213 213 1 \N Boyle#6500 \N \N Fabaceae Boyle#6500 Fabaceae \N \N Fabaceae \N \N \N \N
|
|
4938 |
238 1 \N \N \N \N \N 197 Inga genus \N \N \N \N \N \N \N \N \N \N
|
|
4939 |
252 1 http://www.tropicos.org/Name/40031040 \N 252 252 \N 238 \N genus genus Inga Mill. Inga Mill. \N Fabaceae Inga \N \N \N
|
|
4940 |
273 1 \N \N 252 252 1 \N "fuzzy leaf" \N \N Fabaceae Inga "fuzzy leaf" Inga \N \N Fabaceae Inga \N \N \N
|
|
4941 |
312 1 \N \N 252 252 1 \N sp.3 \N \N Fabaceae Inga sp.3 Inga \N \N Fabaceae Inga \N \N \N
|
|
4942 |
351 1 \N \N 213 213 1 \N unknown #2 \N \N Fabaceae unknown #2 Fabaceae \N \N Fabaceae \N \N \N \N
|
|
4943 |
390 1 \N \N 18 18 1 \N \N \N \N Poa annua Poa annua \N \N \N Poa annua \N \N
|
|
4944 |
406 1 \N \N \N \N \N 6 lanuginosa forma forma \N \N \N \N \N \N \N \N \N
|
|
4945 |
408 1 http://www.tropicos.org/Name/50267771 \N 57 57 \N 406 \N forma forma Poa annua fo. lanuginosa Sennen Poa annua fo. lanuginosa Sennen \N Poaceae Poa annua \N \N
|
|
4946 |
429 1 \N \N 57 408 1 \N \N \N fo. Poa annua fo. lanuginosa Poa annua fo. lanuginosa \N \N \N Poa annua \N \N
|
|
4947 |
445 1 \N \N \N \N \N 6 exilis subspecies subspecies \N \N \N \N \N \N \N \N \N
|
|
4948 |
447 1 http://www.tropicos.org/Name/50063800 \N 96 96 \N 445 \N subspecies subspecies Poa annua subsp. exilis (Tomm. ex Freyn) Asch. & Graebn. Poa annua subsp. exilis (Tomm. ex Freyn) Asch. & Graebn. \N Poaceae Poa annua \N \N
|
|
4949 |
468 1 \N \N 96 447 1 \N \N \N subsp. Poa annua ssp. exilis Poa annua subsp. exilis \N \N \N Poa annua \N \N
|
|
4950 |
507 1 \N \N 96 447 1 \N \N \N subsp. Poa annua subsp. exilis Poa annua subsp. exilis \N \N \N Poa annua \N \N
|
|
4951 |
523 1 \N \N \N \N \N 6 minima subvariety subvariety \N \N \N \N \N \N \N \N \N
|
|
4952 |
525 1 http://www.tropicos.org/Name/50158097 \N 525 525 \N 523 \N subvariety subvariety Poa annua subvar. minima (Schur) Asch. & Graebn. Poa annua subvar. minima (Schur) Asch. & Graebn. \N Poaceae Poa annua \N \N
|
|
4953 |
546 1 \N \N 525 525 1 \N \N \N subvar. Poa annua subvar. minima Poa annua subvar. minima \N \N \N Poa annua \N \N
|
|
4954 |
562 1 \N \N \N \N \N 6 eriolepis variety variety \N \N \N \N \N \N \N \N \N
|
|
4955 |
564 1 http://www.tropicos.org/Name/50119145 \N 18 18 \N 562 \N variety variety Poa annua var. eriolepis E. Desv. Poa annua var. eriolepis E. Desv. \N Poaceae Poa annua \N \N
|
|
4956 |
585 1 \N \N 18 564 1 \N \N \N var. Poa annua var. eriolepis Poa annua var. eriolepis \N \N \N Poa annua \N \N
|
|
4957 |
587 1 \N \N \N \N \N \N Caryophyllaceae family \N \N \N \N \N \N \N \N \N \N
|
|
4958 |
589 1 \N \N \N \N \N 587 Silene genus \N \N \N \N \N \N \N \N \N \N
|
|
4959 |
591 1 \N \N \N \N \N 589 scouleri species \N \N \N \N \N \N \N \N \N \N
|
|
4960 |
601 1 \N \N \N \N \N 591 pringlei subspecies subspecies \N \N \N \N \N \N \N \N \N
|
|
4961 |
604 2 \N \N \N \N \N \N Caryophyllaceae family \N \N \N \N \N \N \N \N \N \N
|
|
4962 |
603 1 http://www.tropicos.org/Name/6303627 \N 603 603 \N 601 \N subspecies subspecies Silene scouleri subsp. pringlei (S. Watson) C.L. Hitchc. & Maguire Silene scouleri subsp. pringlei (S. Watson) C.L. Hitchc. & Maguire \N Caryophyllaceae Silene scouleri \N \N
|
|
4963 |
624 1 \N \N 603 603 1 \N var. grisea \N subsp. Silene scouleri Hook. subsp. pringlei (S. Watson) C.L. Hitchc. & Maguire var. grisea C.L. Hitchc. & Maguire Silene scouleri subsp. pringlei \N \N \N Silene scouleri \N \N
|
|
4964 |
663 1 \N \N 603 603 1 \N var. grisea \N subsp. Silene scouleri subsp. pringlei var. grisea C.L. Hitchc. & Maguire Silene scouleri subsp. pringlei \N \N \N Silene scouleri \N \N
|
|
4965 |
681 1 \N \N \N \N \N \N \N \N \N No suitable matches found. No suitable matches found. \N \N \N \N \N \N \N
|
|
4966 |
702 1 \N \N \N \N \N \N \N \N \N Fam_indet. Boyle#6501 No suitable matches found. \N \N \N \N \N \N \N
|
|
4967 |
744 21 1 \N 18 390 \N \N \N \N \N \N Poa annua \N \N \N \N \N \N \N
|
|
4968 |
747 21 2 \N 18 18 \N \N \N \N \N \N Poa annua L. \N \N \N \N \N \N \N
|
|
4969 |
750 21 3 \N 18 585 \N \N \N \N \N \N Poa annua var. eriolepis \N \N \N \N \N \N \N
|
|
4970 |
753 21 4 \N 96 507 \N \N \N \N \N \N Poa annua subsp. exilis \N \N \N \N \N \N \N
|
|
4971 |
756 21 5 \N 96 468 \N \N \N \N \N \N Poa annua ssp. exilis \N \N \N \N \N \N \N
|
|
4972 |
759 21 6 \N 525 546 \N \N \N \N \N \N Poa annua subvar. minima \N \N \N \N \N \N \N
|
|
4973 |
762 21 7 \N 57 429 \N \N \N \N \N \N Poa annua fo. lanuginosa \N \N \N \N \N \N \N
|
|
4974 |
765 21 8 \N 603 663 \N \N \N \N \N \N Silene scouleri subsp. pringlei var. grisea C.L. Hitchc. & Maguire \N \N \N \N \N \N \N
|
|
4975 |
768 21 9 \N 603 624 \N \N \N \N \N \N Silene scouleri Hook. subsp. pringlei (S. Watson) C.L. Hitchc. & Maguire var. grisea C.L. Hitchc. & Maguire \N \N \N \N \N \N \N
|
|
4976 |
771 21 10 \N 252 312 \N \N \N \N \N \N Fabaceae Inga sp.3 \N \N \N \N \N \N \N
|
|
4977 |
774 21 11 \N 252 273 \N \N \N \N \N \N Fabaceae Inga "fuzzy leaf" \N \N \N \N \N \N \N
|
|
4978 |
777 21 12 \N 213 351 \N \N \N \N \N \N Fabaceae unknown #2 \N \N \N \N \N \N \N
|
|
4979 |
780 21 13 \N 213 234 \N \N \N \N \N \N Fabaceae Boyle#6500 \N \N \N \N \N \N \N
|
|
4980 |
783 21 14 \N \N 702 \N \N \N \N \N \N Fam_indet. Boyle#6501 \N \N \N \N \N \N \N
|
|
4981 |
786 21 15 \N 135 195 \N \N \N \N \N \N Compositae indet. sp.1 \N \N \N \N \N \N \N
|
4891 |
4982 |
\.
|
4892 |
4983 |
|
4893 |
4984 |
|
... | ... | |
4895 |
4986 |
-- Data for Name: taxonconcept_ancestor; Type: TABLE DATA; Schema: public; Owner: bien
|
4896 |
4987 |
--
|
4897 |
4988 |
|
4898 |
|
COPY taxonconcept_ancestor (taxonconcept_id, ancestor_id) FROM stdin;
|
|
4989 |
COPY taxonconcept_ancestor (descendant_id, ancestor_id) FROM stdin;
|
4899 |
4990 |
2 2
|
|
4991 |
4 4
|
4900 |
4992 |
4 2
|
4901 |
|
4 4
|
|
4993 |
6 6
|
|
4994 |
6 4
|
4902 |
4995 |
6 2
|
4903 |
|
6 4
|
4904 |
|
6 6
|
|
4996 |
18 18
|
|
4997 |
18 6
|
|
4998 |
18 4
|
4905 |
4999 |
18 2
|
4906 |
|
18 4
|
4907 |
|
18 6
|
4908 |
|
18 18
|
4909 |
|
54 2
|
4910 |
|
54 4
|
4911 |
|
54 6
|
4912 |
|
54 54
|
4913 |
|
56 2
|
4914 |
|
56 4
|
4915 |
|
56 6
|
4916 |
|
56 54
|
4917 |
|
56 56
|
4918 |
|
82 2
|
4919 |
|
82 4
|
4920 |
|
82 82
|
4921 |
|
94 2
|
4922 |
|
94 4
|
4923 |
|
94 82
|
4924 |
|
94 94
|
4925 |
|
132 132
|
4926 |
|
152 152
|
4927 |
|
154 154
|
4928 |
|
172 172
|
4929 |
|
170 154
|
4930 |
|
170 170
|
4931 |
|
190 190
|
4932 |
|
192 192
|
4933 |
|
208 192
|
4934 |
|
208 208
|
4935 |
|
228 228
|
4936 |
|
232 192
|
4937 |
|
232 232
|
4938 |
|
246 192
|
4939 |
|
246 232
|
4940 |
|
246 246
|
4941 |
|
266 266
|
4942 |
|
304 304
|
4943 |
|
342 342
|
4944 |
|
380 380
|
4945 |
|
396 2
|
4946 |
|
396 4
|
4947 |
|
396 6
|
4948 |
|
396 396
|
4949 |
|
398 2
|
4950 |
|
398 4
|
4951 |
|
398 6
|
4952 |
|
398 396
|
4953 |
|
398 398
|
4954 |
|
418 418
|
4955 |
|
434 2
|
4956 |
|
434 4
|
4957 |
|
434 6
|
4958 |
|
434 434
|
4959 |
|
436 2
|
4960 |
|
436 4
|
4961 |
|
436 6
|
4962 |
|
436 434
|
4963 |
|
436 436
|
4964 |
|
456 456
|
4965 |
|
494 494
|
4966 |
|
510 2
|
4967 |
|
510 4
|
4968 |
|
510 6
|
4969 |
|
510 510
|
4970 |
|
512 2
|
4971 |
|
512 4
|
4972 |
|
512 6
|
4973 |
|
512 510
|
4974 |
|
512 512
|
4975 |
|
532 532
|
4976 |
|
548 2
|
4977 |
|
548 4
|
4978 |
|
548 6
|
4979 |
|
548 548
|
4980 |
|
550 2
|
4981 |
|
550 4
|
4982 |
|
550 6
|
4983 |
|
550 548
|
4984 |
|
550 550
|
4985 |
|
570 570
|
4986 |
|
572 572
|
4987 |
|
574 572
|
4988 |
|
574 574
|
4989 |
|
576 572
|
4990 |
|
576 574
|
4991 |
|
576 576
|
4992 |
|
586 572
|
4993 |
|
586 574
|
4994 |
|
586 576
|
4995 |
|
586 586
|
4996 |
|
588 572
|
4997 |
|
588 574
|
4998 |
|
588 576
|
4999 |
|
588 586
|
5000 |
|
588 588
|
5001 |
|
608 608
|
5002 |
|
646 646
|
5003 |
|
664 664
|
5004 |
|
684 684
|
5005 |
|
725 725
|
5006 |
|
728 728
|
5007 |
|
731 731
|
5008 |
|
734 734
|
5009 |
|
737 737
|
5010 |
|
740 740
|
5011 |
|
743 743
|
5012 |
|
746 746
|
5013 |
|
749 749
|
5014 |
|
752 752
|
5015 |
|
755 755
|
5016 |
|
758 758
|
5017 |
|
761 761
|
5018 |
|
764 764
|
5019 |
|
767 767
|
|
5000 |
19 19
|
|
5001 |
55 55
|
|
5002 |
55 6
|
|
5003 |
55 4
|
|
5004 |
55 2
|
|
5005 |
57 57
|
|
5006 |
57 55
|
|
5007 |
57 6
|
|
5008 |
57 4
|
|
5009 |
57 2
|
|
5010 |
84 84
|
|
5011 |
84 4
|
|
5012 |
84 2
|
|
5013 |
96 96
|
|
5014 |
96 84
|
|
5015 |
96 4
|
|
5016 |
96 2
|
|
5017 |
135 135
|
|
5018 |
156 156
|
|
5019 |
156 135
|
|
5020 |
158 158
|
|
5021 |
174 174
|
|
5022 |
175 175
|
|
5023 |
177 177
|
|
5024 |
177 175
|
|
5025 |
174 156
|
|
5026 |
174 135
|
|
5027 |
195 195
|
|
5028 |
195 174
|
|
5029 |
195 156
|
|
5030 |
195 135
|
|
5031 |
197 197
|
|
5032 |
213 213
|
|
5033 |
213 197
|
|
5034 |
214 214
|
|
5035 |
234 234
|
|
5036 |
234 213
|
|
5037 |
234 197
|
|
5038 |
238 238
|
|
5039 |
238 197
|
|
5040 |
252 252
|
|
5041 |
252 238
|
|
5042 |
252 197
|
|
5043 |
273 273
|
|
5044 |
273 252
|
|
5045 |
273 238
|
|
5046 |
273 197
|
|
5047 |
312 312
|
|
5048 |
312 252
|
|
5049 |
312 238
|
|
5050 |
312 197
|
|
5051 |
351 351
|
|
5052 |
351 213
|
|
5053 |
351 197
|
|
5054 |
390 390
|
|
5055 |
390 18
|
|
5056 |
390 6
|
|
5057 |
390 4
|
|
5058 |
390 2
|
|
5059 |
406 406
|
|
5060 |
406 6
|
|
5061 |
406 4
|
|
5062 |
406 2
|
|
5063 |
408 408
|
|
5064 |
408 57
|
|
5065 |
408 55
|
|
5066 |
408 6
|
|
5067 |
408 4
|
|
5068 |
408 2
|
|
5069 |
429 429
|
|
5070 |
429 408
|
|
5071 |
429 57
|
|
5072 |
429 55
|
|
5073 |
429 6
|
|
5074 |
429 4
|
|
5075 |
429 2
|
|
5076 |
445 445
|
|
5077 |
445 6
|
|
5078 |
445 4
|
|
5079 |
445 2
|
|
5080 |
447 447
|
|
5081 |
447 96
|
|
5082 |
447 84
|
|
5083 |
447 4
|
|
5084 |
447 2
|
|
5085 |
468 468
|
|
5086 |
468 447
|
|
5087 |
468 96
|
|
5088 |
468 84
|
|
5089 |
468 4
|
|
5090 |
468 2
|
|
5091 |
507 507
|
|
5092 |
507 447
|
|
5093 |
507 96
|
|
5094 |
507 84
|
|
5095 |
507 4
|
|
5096 |
507 2
|
|
5097 |
523 523
|
|
5098 |
523 6
|
|
5099 |
523 4
|
|
5100 |
523 2
|
|
5101 |
525 525
|
|
5102 |
525 523
|
|
5103 |
525 6
|
|
5104 |
525 4
|
|
5105 |
525 2
|
|
5106 |
546 546
|
|
5107 |
546 525
|
|
5108 |
546 523
|
|
5109 |
546 6
|
|
5110 |
546 4
|
|
5111 |
546 2
|
|
5112 |
562 562
|
|
5113 |
562 6
|
|
5114 |
562 4
|
|
5115 |
562 2
|
|
5116 |
564 564
|
|
5117 |
564 18
|
|
5118 |
564 6
|
|
5119 |
564 4
|
|
5120 |
564 2
|
|
5121 |
585 585
|
|
5122 |
585 564
|
|
5123 |
585 18
|
|
5124 |
585 6
|
|
5125 |
585 4
|
|
5126 |
585 2
|
|
5127 |
587 587
|
|
5128 |
589 589
|
|
5129 |
589 587
|
|
5130 |
591 591
|
|
5131 |
591 589
|
|
5132 |
591 587
|
|
5133 |
601 601
|
|
5134 |
601 591
|
|
5135 |
601 589
|
|
5136 |
601 587
|
|
5137 |
603 603
|
|
5138 |
603 601
|
|
5139 |
603 591
|
|
5140 |
603 589
|
|
5141 |
603 587
|
|
5142 |
604 604
|
|
5143 |
624 624
|
|
5144 |
624 603
|
|
5145 |
624 601
|
|
5146 |
624 591
|
|
5147 |
624 589
|
|
5148 |
624 587
|
|
5149 |
663 663
|
|
5150 |
663 603
|
|
5151 |
663 601
|
|
5152 |
663 591
|
|
5153 |
663 589
|
|
5154 |
663 587
|
|
5155 |
681 681
|
|
5156 |
702 702
|
|
5157 |
744 744
|
|
5158 |
744 390
|
|
5159 |
744 18
|
|
5160 |
744 6
|
|
5161 |
744 4
|
|
5162 |
744 2
|
|
5163 |
747 747
|
|
5164 |
747 18
|
|
5165 |
747 6
|
|
5166 |
747 4
|
|
5167 |
747 2
|
|
5168 |
750 750
|
|
5169 |
750 585
|
|
5170 |
750 564
|
|
5171 |
750 18
|
|
5172 |
750 6
|
|
5173 |
750 4
|
|
5174 |
750 2
|
|
5175 |
753 753
|
|
5176 |
753 507
|
|
5177 |
753 447
|
|
5178 |
753 96
|
|
5179 |
753 84
|
|
5180 |
753 4
|
|
5181 |
753 2
|
|
5182 |
756 756
|
|
5183 |
756 468
|
|
5184 |
756 447
|
|
5185 |
756 96
|
|
5186 |
756 84
|
|
5187 |
756 4
|
|
5188 |
756 2
|
|
5189 |
759 759
|
|
5190 |
759 546
|
|
5191 |
759 525
|
|
5192 |
759 523
|
|
5193 |
759 6
|
|
5194 |
759 4
|
|
5195 |
759 2
|
|
5196 |
762 762
|
|
5197 |
762 429
|
|
5198 |
762 408
|
|
5199 |
762 57
|
|
5200 |
762 55
|
|
5201 |
762 6
|
|
5202 |
762 4
|
|
5203 |
762 2
|
|
5204 |
765 765
|
|
5205 |
765 663
|
|
5206 |
765 603
|
|
5207 |
765 601
|
|
5208 |
765 591
|
|
5209 |
765 589
|
|
5210 |
765 587
|
|
5211 |
768 768
|
|
5212 |
768 624
|
|
5213 |
768 603
|
|
5214 |
768 601
|
|
5215 |
768 591
|
|
5216 |
768 589
|
|
5217 |
768 587
|
|
5218 |
771 771
|
|
5219 |
771 312
|
|
5220 |
771 252
|
|
5221 |
771 238
|
|
5222 |
771 197
|
|
5223 |
774 774
|
|
5224 |
774 273
|
|
5225 |
774 252
|
|
5226 |
774 238
|
|
5227 |
774 197
|
|
5228 |
777 777
|
|
5229 |
777 351
|
|
5230 |
777 213
|
|
5231 |
777 197
|
|
5232 |
780 780
|
|
5233 |
780 234
|
|
5234 |
780 213
|
|
5235 |
780 197
|
|
5236 |
783 783
|
|
5237 |
783 702
|
|
5238 |
786 786
|
|
5239 |
786 195
|
|
5240 |
786 174
|
|
5241 |
786 156
|
|
5242 |
786 135
|
5020 |
5243 |
\.
|
5021 |
5244 |
|
5022 |
5245 |
|
... | ... | |
5034 |
5257 |
|
5035 |
5258 |
COPY taxondetermination (taxondetermination_id, taxonoccurrence_id, taxonconcept_id, party_id, role, determinationtype, reference_id, isoriginal, iscurrent, taxonfit, taxonconfidence, grouptype, notes, notespublic, notesmgt, revisions, determinationdate, accessioncode) FROM stdin;
|
5036 |
5259 |
1 2 18 \N unknown \N \N f f \N \N \N \N \N \N \N \N \N
|
5037 |
|
2 2 56 \N unknown \N \N f f \N \N \N \N \N \N \N \N \N
|
5038 |
|
3 2 94 \N unknown \N \N f f \N \N \N \N \N \N \N \N \N
|
5039 |
|
4 2 132 \N unknown \N \N f f \N \N \N \N \N \N \N \N \N
|
5040 |
|
5 2 170 \N unknown \N \N f f \N \N \N \N \N \N \N \N \N
|
5041 |
|
6 2 208 \N unknown \N \N f f \N \N \N \N \N \N \N \N \N
|
5042 |
|
7 2 246 \N unknown \N \N f f \N \N \N \N \N \N \N \N \N
|
5043 |
|
11 2 398 \N unknown \N \N f f \N \N \N \N \N \N \N \N \N
|
5044 |
|
12 2 436 \N unknown \N \N f f \N \N \N \N \N \N \N \N \N
|
5045 |
|
14 2 512 \N unknown \N \N f f \N \N \N \N \N \N \N \N \N
|
5046 |
|
15 2 550 \N unknown \N \N f f \N \N \N \N \N \N \N \N \N
|
5047 |
|
16 2 588 \N unknown \N \N f f \N \N \N \N \N \N \N \N \N
|
5048 |
|
18 2 664 \N unknown \N \N f f \N \N \N \N \N \N \N \N \N
|
5049 |
|
20 2 725 \N unknown \N \N f f \N \N \N \N \N \N \N \N \N
|
5050 |
|
21 2 728 \N unknown \N \N f f \N \N \N \N \N \N \N \N \N
|
5051 |
|
22 2 731 \N unknown \N \N f f \N \N \N \N \N \N \N \N \N
|
5052 |
|
23 2 734 \N unknown \N \N f f \N \N \N \N \N \N \N \N \N
|
5053 |
|
24 2 737 \N unknown \N \N f f \N \N \N \N \N \N \N \N \N
|
5054 |
|
25 2 740 \N unknown \N \N f f \N \N \N \N \N \N \N \N \N
|
5055 |
|
26 2 743 \N unknown \N \N f f \N \N \N \N \N \N \N \N \N
|
5056 |
|
27 2 746 \N unknown \N \N f f \N \N \N \N \N \N \N \N \N
|
5057 |
|
28 2 749 \N unknown \N \N f f \N \N \N \N \N \N \N \N \N
|
5058 |
|
29 2 752 \N unknown \N \N f f \N \N \N \N \N \N \N \N \N
|
5059 |
|
30 2 755 \N unknown \N \N f f \N \N \N \N \N \N \N \N \N
|
5060 |
|
31 2 758 \N unknown \N \N f f \N \N \N \N \N \N \N \N \N
|
5061 |
|
32 2 761 \N unknown \N \N f f \N \N \N \N \N \N \N \N \N
|
5062 |
|
33 2 764 \N unknown \N \N f f \N \N \N \N \N \N \N \N \N
|
5063 |
|
34 2 767 \N unknown \N \N f f \N \N \N \N \N \N \N \N \N
|
|
5260 |
2 2 57 \N unknown \N \N f f \N \N \N \N \N \N \N \N \N
|
|
5261 |
3 2 96 \N unknown \N \N f f \N \N \N \N \N \N \N \N \N
|
|
5262 |
4 2 135 \N unknown \N \N f f \N \N \N \N \N \N \N \N \N
|
|
5263 |
5 2 174 \N unknown \N \N f f \N \N \N \N \N \N \N \N \N
|
|
5264 |
6 2 213 \N unknown \N \N f f \N \N \N \N \N \N \N \N \N
|
|
5265 |
7 2 252 \N unknown \N \N f f \N \N \N \N \N \N \N \N \N
|
|
5266 |
11 2 408 \N unknown \N \N f f \N \N \N \N \N \N \N \N \N
|
|
5267 |
12 2 447 \N unknown \N \N f f \N \N \N \N \N \N \N \N \N
|
|
5268 |
14 2 525 \N unknown \N \N f f \N \N \N \N \N \N \N \N \N
|
|
5269 |
15 2 564 \N unknown \N \N f f \N \N \N \N \N \N \N \N \N
|
|
5270 |
16 2 603 \N unknown \N \N f f \N \N \N \N \N \N \N \N \N
|
|
5271 |
18 2 681 \N unknown \N \N f f \N \N \N \N \N \N \N \N \N
|
|
5272 |
20 2 744 \N unknown \N \N f f \N \N \N \N \N \N \N \N \N
|
|
5273 |
21 2 747 \N unknown \N \N f f \N \N \N \N \N \N \N \N \N
|
|
5274 |
22 2 750 \N unknown \N \N f f \N \N \N \N \N \N \N \N \N
|
|
5275 |
23 2 753 \N unknown \N \N f f \N \N \N \N \N \N \N \N \N
|
inputs/test_taxonomic_names/_scrub/public.sql, TNRS.sql: Regenerated with schema changes