Git Product home page Git Product logo

collection-specs's Introduction

DINA-Web Collections API

Build Status codecov.io

The DINA-Web Collections API is an essential part of DINA-Web - "Digital Natural History Collections for the Web". It provides data services for museum collection management workflows.

Overview

The Collections API is made up of three Java modules:

  • dina-data-service - exposes the Collections API through a RESTful service
  • dina-data-jpa - CRUD operations visavi the relational database
  • dina-datamodel - data model of entities from database schema

Usage

Use the Makefile for building, generating documentation etc:

# build using official mvn from Docker Hub
make build

# generate docs
make dox

Documentation

The Collections API reference documentation is here:

Guides, tutorials and usage examples:

collection-specs's People

Contributors

brandonandre avatar cgendreau avatar chessfooty7 avatar dshorthouse avatar jissan95 avatar jkeyuk avatar luusteve avatar xuemeigan avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

collection-specs's Issues

Review MaterialSampleState and consider disposition

At the moment materialSampleState is a platform controlled vocabulary limited to: destroyed, damaged, lost, decommissioned.

Considering that:

  • For some collections we need to also capture the information about if something is "alive" and we should probably avoid BasisOfRecord since it's actually the same material sample, only its state will change (something alive will die at some point).
  • DwC and ABCD are using disposition for things like in collection, missing

Suggestion:

  • Add disposition to record information about the "status" of the material sample in the collection/lab: destroyed, damaged, lost, decommissioned (assuming nothing means in collection)
  • Use materialSampleState to record information about the material sample itself: "living", "preserved"

Date field (YYYY-MM-DD vs. YYYY-MM-DDTHH:MM:SS.MMM)

Date field format (YYYY-MM-DD) causes problems with some of our data sources with many inaccurate dates. Would it be possible for all date fields to have the timestamp format (YYYY-MM-DDTHH:MM:SS.MMM).

Clarify field type of Type Status and Degree of Establishment

The above fields are free-text fields, but there ist also a pick-list avaible. Tags can be stored, but cannot selected again, so its obviously not a learning list. This affects the following fields:

  • Preparations > Degree of Establishment
  • Organisms > Determinations > Type Specimen > Type Status

Association Type cannot be filled via the frontend

When I try to create a material sample association in a material sample, the Association Type field cannot be filled.
Clicking on one of the selection options has no effect at all - the field simply remains empty.
If I send the material sample association information via the backend, it works, but the information is not visible!

DINA-MaterialSampleAsso

Full History of Transactions on Material Sample Details View

Currently there is an icon shown when a Material Sample is being "transacted". It would be more ideal to have a table of the full history of transactions on the material sample page as a summary and only show the icon if the material sample is "currently" transacted.

This ticket follows the work from #159

Unit selection for all size fields

Currently, all units for size fields are directly linked to the field and which unit it is, is specified in the field description. This is not useful, because the unit varies strongly depending on the object. It would be useful if every field that contains a size specification is linked to another field where the matching size unit can be selected.

Remove dwcCatalogNumber

dwcCatalogNumber is replaced by materialSampleName since some material sample don't have a catalogNumber.

How to share/identify a material sample? Link does not work?

We complemented scheduled actions with a reminder function via e-mail. Currently we cannot refer to the concerned material sample in our e-mail: The problem at the moment is that our existing material samples do not have a mandatory Primary ID. Is there a way to share a material sample?

Change preparedBy to a to-many relationship

material-sample preparedBy is currently a to-one relationship, considering a material-sample can be prepared by more than 1 person, the relationship will be changed to a to-many.

Improved specimen linkage between collections

If a specimen record has been given to another lab or collection we would like to link between permanent collections and working collections and other use cases like P to P or W to W.

Definitions for model components

I ask that the definitions in the Readme.md of this repo are updated with definitions for any term used for specifying model components. I find the current definitions confusing (and also somewhat cursory) as they refer to representations of the entities in question rather than their attributes.

For example, the current definition of Collecting Event is

Data associated with the collecting of the specimen(s) at a given time and place.

whereas I would (tentatively, subject to further refinement by whatever is deemed characteristic of a collecting event) define it as:

A collecting event is an event in which a material sample is collected.

deferring any ambiguity just to what an "event" or "material sample" denotes.

Otherwise I find it hard to understand if issues like #25 are just a terminological issue or something that requires structural amendments so it can be represented.

Proposed definitions could be discussed in this thread or in separate issues.

material-sample has 2 host fields

  • host
  • hostOrganism (with name and remarks)

As far as I know only the second one is expected to be there. The first field is probably coming from a previous version and hostOrganism was supposed to replace it.

Managed Attributes in Preparations

We still need managed attributes in the Preparations section, you said you could help with this:

"I would not recommend that route to add a managed attribute related to the preparation (a managed-attribute to the material-sample related to its preparation to be exact). A regular managed attribute with the component set to Preparation would do the work. We can help with that."

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.