Repository navigation
Conversation
|
There was a problem hiding this comment.
@torstees @yelenacox I used term-weaver to generate this enum (its a small subset but I wanted to test it out). The values are here in OLS and I was able to expand using weaver but for some reason the formatting is off. The values should be in the format ILLUMINA_1_3 but are appearing as ILLUMINA_1:3.
There was a problem hiding this comment.
Thanks for flagging this. We've been reviewing it. There's some "bad"/"probably unintended" behavior within OLS. We've been using the obo_id field as its' typically a nicely formatted CURIE, but for non-OBOs it is interpreting the _ as part of the OBO id, turning it (incorrectly) into a curie.
https://obofoundry.org/id-policy.html
FOUNDRY_OBO_URI ::= "http://purl.obolibrary.org/obo/" IDSPACE "_" LOCALID
There's not a consistent way to pull the data via API, but we have some ideas about solutions.
🚧 Enums still in progress but need reviewPaired to ontologies
Still to pair
|
|
I started to look over the enums. I think it might be helpful if we documented some better conventions / easy paths to leveraging the tools as I can tell some things are unclear.
I'll work up some examples as I'm sure it would be helpful for any potential contributor. |
|
I took a look at EnumLibrarySelection. You can seed with: Which will grab everything but PCR. You could then add it in manually. If you did, I'd recommend making some note about the changes you made to help prevent future issues if someone wanted to regenerate. (edit: We could also discuss some potential additional features / options here?) I'm a little suspicious of that PCR term though- how is that one distinct from the others? |
|
OLS seems to be struggling, but let me know if it'd be helpful to dig into these more. It should make writing the enums easier / cleaner! |
|
@awarkow We've been investigating the Valuesets "ontology"- turns out it's a collection of enumerations. While it is loaded into a few places, it's wonky in OLS. We're putting a bug report in to them about it, but we are also wondering how attached you are to using that list. Is there an underlying set of terms you all are using that we could leverage or are these the right ones? We are considering creating terms given the odd API behaviors. |
Summary of Added EnumsFor review by Kids First BIX team: @yuankunzhu Maps the sequencing-related constants from 8/10 enums added in
MappingsEnumSequencingPlatform
Added a EnumSequencingInstrument
I also added the other Illumina HiSeq models found under OBI EnumSequencingStrategy
No mapping yet (left as placeholder comments in the YAML): Linked-Read WGS (10x), snRNA-Seq, CCS RNA-Seq, CLR RNA-Seq. EnumLibraryStrand
EnumLibrarySelection
EnumLibraryPrep
EnumAnalyteType
EnumReferenceGenome
Questions for reviewers
|
|
@RobertJCarroll That list (ValueSets/SequenceQualityEncoding) contains the exact 5 values we need to add for this enum. I thought it had potential to use since it does match exactly with our preferred terms, but I'm okay with adding to CAMO if the formatting in OLS is messing things up |
|
This is where we are talking with the OLS team as an fyi: EBISPOT/ols4#1484 |
|
@awarkow for the questions you have
|
Summary
This PR adresses #89 by adding sequencing-specific assay classes to the Common Access Model. They extend the existing generic
Assayclass so we can capture experiment metadata for whole genome, whole exome and RNA sequencing data.New Assay Classes
The new classes form a hierarchy under the existing
Assayclass:Assay
└── SequencingAssay
├── GenomicsAssay (WGS/WXS)
└── TranscriptomicsAssay (RNA-Seq)
Each subclass inherits all slots from its parent. Every sequencing assay therefore keeps the core
Assayfields (assay_id,subject_id,sample_id,file_id,assay_type, etc.) and adds its own experiment metadata.SequencingAssaySequencing Experiment Assay: a sequencing experiment performed on a Biospecimen. This is the shared base for all sequencing assays.
sequencing_center_idlibrary_nameexperiment_dateexperiment_strategyEnumSequencingStrategyis_paired_endplatformEnumSequencingPlatforminstrument_modelEnumSequencingInstrumenttotal_readsis_adapter_trimmedadapter_sequencingis_adapter_trimmedis false)quality_scaleEnumReadGroupQualityScalereference_genomeEnumReferenceGenomeworkflow_typeworkflow_type)workflow_toolworkflow_tool)workflow_versionworkflow_endpointflow_celllane_numberGenomicsAssayWGS/WXS Assay: a whole genome or whole exome sequencing experiment performed on a Biospecimen. It extends
SequencingAssaywith alignment and coverage metrics.max_insert_sizemean_insert_sizemean_depthmean_read_lengthtarget_capture_kitTranscriptomicsAssayRNA Sequencing Assay: an RNA sequencing experiment performed on a Biospecimen. It extends
SequencingAssaywith library construction details.library_strandEnumLibraryStrandlibrary_prepEnumLibraryPreplibrary_selectionEnumLibrarySelectionNew Enums
Caution
Work in progress. The new slots reference several enums. Only the 3 below are defined so far. Need to pair others with correct ontologies
EnumLibraryPrepLibrary preparation methods for RNA sequencing. Values are drawn from OBI and constrained to subclasses of an OBI source node.
OBI:0000848OBI:0000855EnumAnalyteTypeThe type of analyte extracted from the biospecimen. Values are drawn from NCIt and constrained to subclasses of NCIt
C706.C449C812EnumLibrarySelectionLibrary selection methods used to enrich or select nucleic acid for sequencing. Values are drawn from NCIt and constrained to subclasses of NCIt
C15241.C163986C17003C163987C163988C163989C163990C163991Open Questions
library_prepthe same thing aslibrary_construction? If so, should we rename or alias it?adapter_sequencingbe conditionally required whenis_adapter_trimmedisfalse? Can we enforce this with a LinkML rule?