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

Book Conventions Discussion #20

Closed lomky closed 6 years ago

lomky commented 6 years ago

A ticket to discuss the conventions surrounding Books.

Current Book Conventions. (none)

Book Fields:

     Column      |       Type        | Modifiers | Storage  | Stats target |                                        Description
-----------------+-------------------+-----------+----------+--------------+--------------------------------------------------------------------------------------------
 identifier      | character varying | not null  | extended |              | A globally unique identifier for this book.
 title           | character varying | not null  | extended |              | The title of the book
 isbn            | character varying |           | extended |              | The 10 or 13 digit ISBN number for this book.
 year            | numeric           |           | main     |              | The year of publication.
 publisher       | character varying |           | extended |              | The name of the publisher.
 number_of_pages | numeric           |           | main     |              | The number of pages in the book.
 url             | character varying |           | extended |              | A url for a landing page for this book, or for the book itself, if it is available online.
 in_library      | boolean           |           | plain    |              | Whether or not this book is available in the USGCRP resources library.
 topic           | character varying |           | extended |              | A brief free form comma-separated list of topics associated with this book.
Indexes:
    "book_pkey" PRIMARY KEY, btree (identifier)
    "book_isbn_key" UNIQUE CONSTRAINT, btree (isbn)
Check constraints:
    "ck_book_identifier" CHECK (identifier::text ~ similar_escape('[a-z0-9_-]+'::text, NULL::text))
Triggers:
    audit_trigger_row AFTER INSERT OR DELETE OR UPDATE ON book FOR EACH ROW EXECUTE PROCEDURE audit.if_modified_func('true')
    audit_trigger_stm AFTER TRUNCATE ON book FOR EACH STATEMENT EXECUTE PROCEDURE audit.if_modified_func('true')
    delpub BEFORE DELETE ON book FOR EACH ROW EXECUTE PROCEDURE delete_publication()
    updatepub BEFORE UPDATE ON book FOR EACH ROW WHEN (new.identifier::text <> old.identifier::text) EXECUTE PROCEDURE update_publication()

Provenance Connections:

isCitedBy

Relationships:

contributors
files
gcmd_keywords
regions
lomky commented 6 years ago

Discussion

Overview

Books are not created by us directly, but rather as children publications for references.
We should discuss Book type with TSU.
Books are in need of a QA pass to clean up miscategorized objects.
Reports may have ISBNs, and be published as physical books, but they still better fit as a Report object over a Book object.

Fields:

identifier
UUID based.

title
The book title, as given by TSU. Checked against the WorldCat.

isbn
Required if the book has one.
We prefer the thirteen digit one if it exists.
Should be the one that links properly to WorldCat.
We do not have a preference for ISBNs of different editions (e.g. hardcover vs paperback), so long as it is correct and matches our other metadata.

year
The publication year of the edition of the book matching the ISBN. If ISBN is not known, then the publication year of the first edition is preferred.

publisher Going forward, deprecated. Use a contributor with role Publisher.
QA task required to update existing books. Low priority.

number_of_pages Imported from WorldCat.
Not a priority if not available from WorldCat.

url
Official online published copy of the book is fine, if available.
Use the publisher's webpage for this book.
Imported from TSU or WorldCat.
Research to find it otherwise.

in_library Deprecated.

topic Imported from TSU or WorldCat.
Not a priority to fill in otherwise.

Provenance

Only cito:isCitedBy, created from the Reference itself.
Nothing is created off of the book itself.

Relationships

Contributors
publisher role is the first priority.
editors and authors roles are second priority.
other roles can be added as appropriate for each case

files
Can have a related file if available. Not a priority.

gcmd_keywords
Not yet implemented.

regions
Not yet implemented.

rasherman commented 6 years ago

Fixed a couple of typos and added a few clarifying words. Looks good to me.

lomky commented 6 years ago

Notes added! Book Conventions.