Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Schema revision v2 for BCDC project inventory #35

Draft
wants to merge 7 commits into
base: master
Choose a base branch
from

Conversation

kasbaker
Copy link
Collaborator

Planned revisions version 2 for BCDC data model.

Changes:

  • bcdc.puml plantuml schema diagram for BCDC data model
  • bcdc.svg rendered svg file of BCDC data model
  • mappings.csv mappings of BCDC fields to data archive fields

View
}

enum AccessControl {
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In the omics data management meeting last week, scientists asked to have the listing of the conditions for accessing controlled access data available before they go to NDA. We don't have a field for this yet, would be good to add. There are codes for this, but also need free text fields to describe, such as "For the study of the Brain in Health and Disease" which is the requirement for data from one of our tissue providers.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Added an 'accessControlCode' class linked to data collections, and a free text field 'accessControlDescription' to data collection.

}

enum CompletionState {
Complete
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There are additional states for triple store ingest and validation, do we want yto incorporate them here as well?

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Triple store ingest/validation states apply to individual uploads, and we can have multiple uploads per data collection/multiple data collections per upload. We do have an association table for uploads/data collections, but that is outside of this schema.


class WebResource {
* id: String!
handle: String!
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

what is handle? This doesn't seem like a typical field name. Should be webresource "name" maybe?

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Changed handle to name

class Project {
* id: String!
doi: String
handle: String!
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

change handle to name?

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Changed handle to name

class License {
* id: String!
handle: String
name: String!
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

what is the name vs the handle here?

class Technique {
* id: String!
handle: String
name: String!
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

would like to begin adding on a field to link to ontology

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Added ontology id field to technique, modality and specimenType


class Contact {
* id: String!
name: String!
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

how does this interact with person?

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This was polymorphic, with contact being either an organization or person. Updated to be a direct link to Person, with a circle for contact for readability.

Copy link

@patrick-lloyd-ray patrick-lloyd-ray left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks, @kasbaker!

@djarecka
Copy link

@kasbaker - I'm comparing the BCDC model to DANDI. Many fields are pretty easy to compare, but there are some that I'm not completely sure if I understand correctly (e.g. bkpWebResource or handle). Do you have somewhere a short description of the fields?

@carolth
Copy link
Collaborator

carolth commented Mar 29, 2022

asy to compare, but there are some that I'm not completely sure if I understand correctly (e.g. bkpWebResource or handle).
@djarecka we definitely need to get these descriptions/documentation up, but let me answer for these. "Handle" might not be the best term, but this is effectively the "name" or human-readable identifier that we use (there is also a separate unfriendly identifier). The bkpWebResource is, I believe, the URL for the project in our Data Catalog, aka "Brain Knowledge Platform" ("bkp")

externalId: String
dataArchive: Organization
bkpWebResource: [WebResource]!
dataArchive: [Organization]!

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

repetition, see l.102

Copy link
Collaborator

@erikjohnson24 erikjohnson24 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think generally looks good from a bossdb perpsective, highlighted a couple additional existing connections between the metadata of bossdb if helpful.

Project.handle,,,,
Project.highlightedWebResource,,,,Project.Links
Project.informationWebResource,,,,
Project.modality,,,,Project.ImagingModalities/Specific
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For bossdb, this is a possible link!
Collection.modality->project.imagingmodalities (a project could be multi-modal in bossdb)

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Added, thank you!

Project.highlightedWebResource,,,,Project.Links
Project.informationWebResource,,,,
Project.modality,,,,Project.ImagingModalities/Specific
Project.protocol,Dataset.Methods,Dandiset.protocol,BDBag.ProtocolID,
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For bossdb, this is a possible link!
project.protocol->experiment.protocol

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Added, thank you!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants