USGCRP / gcis-conventions

Repository for the collection, management, and versioning of the GCIS data management conventions.
https://usgcrp.github.io/gcis-conventions/
1 stars 0 forks source link

Instrument Convention Discussion #22

Closed lomky closed 6 years ago

lomky commented 6 years ago

A ticket to discuss the conventions surrounding Instruments.

Current Instruments Conventions. (none)

Instrument Fields:

                                                       Table "gcis_metadata.instrument"
         Column          |       Type        | Modifiers | Storage  | Stats target |                       Description
-------------------------+-------------------+-----------+----------+--------------+----------------------------------------------------------
 identifier              | character varying | not null  | extended |              | A descriptive identifier for this instrument.
 name                    | character varying | not null  | extended |              | A brief name for this instrument.
 description             | character varying |           | extended |              | A description of this instrument.
 description_attribution | character varying |           | extended |              | A URL which contains the description of this instrument.
Indexes:
    "instrument_pkey" PRIMARY KEY, btree (identifier)
Check constraints:
    "instrument_identifier_check" CHECK (identifier::text ~ similar_escape('[a-z0-9_-]+'::text, NULL::text))
Referenced by:
    TABLE "instrument_instance" CONSTRAINT "instrument_instance_instrument_identifier_fkey" FOREIGN KEY (instrument_identifier) REFERENCES instrument(identifier) ON UPDATE CASCADE ON DELETE CASCADE
    TABLE "instrument_measurement" CONSTRAINT "instrument_measurement_instrument_identifier_fkey" FOREIGN KEY (instrument_identifier) REFERENCES instrument(identifier) ON UPDATE CASCADE ON DELETE CASCADE
Triggers:
    audit_trigger_row AFTER INSERT OR DELETE OR UPDATE ON instrument FOR EACH ROW EXECUTE PROCEDURE audit.if_modified_func('true')
    audit_trigger_stm AFTER TRUNCATE ON instrument FOR EACH STATEMENT EXECUTE PROCEDURE audit.if_modified_func('true')
    delpub BEFORE DELETE ON instrument FOR EACH ROW EXECUTE PROCEDURE delete_publication()
    update_exterms BEFORE UPDATE ON instrument FOR EACH ROW WHEN (new.identifier::text <> old.identifier::text) EXECUTE PROCEDURE update_exterms('/instrument/')
    updatepub BEFORE UPDATE ON instrument FOR EACH ROW WHEN (new.identifier::text <> old.identifier::text) EXECUTE PROCEDURE update_publication()

Provenance Connections:

?

Relationships:

platform
gcmd_keywords
regions
lomky commented 6 years ago

High level notes:

We don't think this object helps towards the goal of Assessment Provenance.
We don't want to get rid of it, but we don't know how much effort we want to put into fulling this in behind the Datasets used.

lomky commented 6 years ago

Fields

identifier

a descriptive ID with dashes.

name

preferably an externally sourced name

description

an official description, if available

description_attribution

the URL to the source of the description

Provenance

None.

Relationships

instrument_instance

a specific instance of this instrument, on a specific platform

contributor

Valid to have an associated organization

file

May have a file to create a thumbnail image.

lomky commented 6 years ago

Made redundant by the high level conversation in #24