Class: JGI Isolate Genome (JgiIsolateGenomeInterface)
JGI submission metadata for isolate GENOME sequencing projects. Shared JGI logistics plus ribosomal strain-verification sequences and fungal screening.
URI: nmdc_sub_schema:JgiIsolateGenomeInterface
classDiagram
class JgiIsolateGenomeInterface
click JgiIsolateGenomeInterface href "../JgiIsolateGenomeInterface/"
DhMultiviewCommonColumnsMixin <|-- JgiIsolateGenomeInterface
click DhMultiviewCommonColumnsMixin href "../DhMultiviewCommonColumnsMixin/"
JgiIsolateCommonMixin <|-- JgiIsolateGenomeInterface
click JgiIsolateCommonMixin href "../JgiIsolateCommonMixin/"
DhInterface <|-- JgiIsolateGenomeInterface
click DhInterface href "../DhInterface/"
JgiIsolateGenomeInterface : analysis_type
JgiIsolateGenomeInterface --> "1..*" AnalysisTypeEnum : analysis_type
click AnalysisTypeEnum href "../AnalysisTypeEnum/"
JgiIsolateGenomeInterface : biosafety_mat_cat
JgiIsolateGenomeInterface --> "1" JgiIsolateMaterialKindEnum : biosafety_mat_cat
click JgiIsolateMaterialKindEnum href "../JgiIsolateMaterialKindEnum/"
JgiIsolateGenomeInterface : collection_site_or_growth_conditions
JgiIsolateGenomeInterface : cont_type
JgiIsolateGenomeInterface --> "1" JgiContTypeEnum : cont_type
click JgiContTypeEnum href "../JgiContTypeEnum/"
JgiIsolateGenomeInterface : cont_well
JgiIsolateGenomeInterface : container_name
JgiIsolateGenomeInterface : dna_isolate_meth
JgiIsolateGenomeInterface : dnase
JgiIsolateGenomeInterface --> "1" YesNoEnum : dnase
click YesNoEnum href "../YesNoEnum/"
JgiIsolateGenomeInterface : estimated_size
JgiIsolateGenomeInterface : host_genus
JgiIsolateGenomeInterface : host_species
JgiIsolateGenomeInterface : host_strain
JgiIsolateGenomeInterface : host_taxid
JgiIsolateGenomeInterface : isolate_fungal_16s_screening
JgiIsolateGenomeInterface --> "0..1" YesNoEnum : isolate_fungal_16s_screening
click YesNoEnum href "../YesNoEnum/"
JgiIsolateGenomeInterface : isolate_its_match_unite
JgiIsolateGenomeInterface --> "0..1" YesNoEnum : isolate_its_match_unite
click YesNoEnum href "../YesNoEnum/"
JgiIsolateGenomeInterface : isolate_ribosomal_seq
JgiIsolateGenomeInterface : isolate_ribosomal_seq_comments
JgiIsolateGenomeInterface : isolate_ribosomal_seq_type
JgiIsolateGenomeInterface --> "0..1 _recommended_" RibosomalSequenceTypeEnum : isolate_ribosomal_seq_type
click RibosomalSequenceTypeEnum href "../RibosomalSequenceTypeEnum/"
JgiIsolateGenomeInterface : isolate_second_ribosomal_seq
JgiIsolateGenomeInterface : isolate_second_ribosomal_seq_comments
JgiIsolateGenomeInterface : isolate_second_ribosomal_seq_type
JgiIsolateGenomeInterface --> "0..1" RibosomalSequenceTypeEnum : isolate_second_ribosomal_seq_type
click RibosomalSequenceTypeEnum href "../RibosomalSequenceTypeEnum/"
JgiIsolateGenomeInterface : jgi_project_pi
JgiIsolateGenomeInterface : jgi_proposal_id
JgiIsolateGenomeInterface : jgi_samp_id
JgiIsolateGenomeInterface : jgi_sample_contact
JgiIsolateGenomeInterface : jgi_sample_format
JgiIsolateGenomeInterface --> "1" JGISampleFormatEnum : jgi_sample_format
click JGISampleFormatEnum href "../JGISampleFormatEnum/"
JgiIsolateGenomeInterface : jgi_sample_name
JgiIsolateGenomeInterface : jgi_sample_volume
JgiIsolateGenomeInterface : jgi_seq_project
JgiIsolateGenomeInterface : jgi_seq_project_name
JgiIsolateGenomeInterface : nuc_acid_absorb1
JgiIsolateGenomeInterface : nuc_acid_absorb2
JgiIsolateGenomeInterface : nuc_acid_concentration
JgiIsolateGenomeInterface : reference_genome
JgiIsolateGenomeInterface : replicate_group
JgiIsolateGenomeInterface : samp_name
JgiIsolateGenomeInterface : sample_isolated_from
JgiIsolateGenomeInterface : source_mat_id
Inheritance
- DhInterface
- JgiIsolateGenomeInterface [ DhMultiviewCommonColumnsMixin JgiIsolateCommonMixin]
Slots
| Name | Cardinality and Range | Description | Inheritance |
|---|---|---|---|
| isolate_ribosomal_seq | 0..1 recommended String |
Primary ribosomal sequence for strain verification | direct |
| isolate_ribosomal_seq_type | 0..1 recommended RibosomalSequenceTypeEnum |
Type of the first ribosomal sequence provided | direct |
| isolate_ribosomal_seq_comments | 0..1 String |
Additional information about the first ribosomal sequence | direct |
| isolate_second_ribosomal_seq | 0..1 String |
Optional secondary ribosomal sequence for additional strain verification | direct |
| isolate_second_ribosomal_seq_type | 0..1 RibosomalSequenceTypeEnum |
Type of the second ribosomal sequence provided | direct |
| isolate_second_ribosomal_seq_comments | 0..1 String |
Additional information about the second ribosomal sequence | direct |
| isolate_fungal_16s_screening | 0..1 YesNoEnum |
For fungal draft samples only — was 16S screening performed to check for bact... | direct |
| isolate_its_match_unite | 0..1 YesNoEnum |
For fungal draft samples only -- does the ITS sequence match taxonomy in the ... | direct |
| dna_isolate_meth | 1 String |
Describe the method/protocol/kit used to extract DNA/RNA | direct |
| estimated_size | 1 Float |
Provide an estimate of the genome size in megabases | direct |
| analysis_type | 1..* AnalysisTypeEnum |
Select all the data types associated or available for this biosample | DhMultiviewCommonColumnsMixin |
| samp_name | 1 String |
A local identifier or name that for the material sample collected | DhMultiviewCommonColumnsMixin |
| source_mat_id | 0..1 String |
A globally unique identifier assigned to the parent sample or sample that is ... | DhMultiviewCommonColumnsMixin |
| replicate_group | 0..1 recommended String |
Samples that are biological replicates should have the same group name | JgiIsolateCommonMixin |
| jgi_samp_id | 1 String |
JgiIsolateCommonMixin | |
| jgi_sample_name | 1 String |
Give the JGI sample a name that is meaningful to you | JgiIsolateCommonMixin |
| jgi_seq_project | 1 Float |
JgiIsolateCommonMixin | |
| jgi_seq_project_name | 1 String |
JgiIsolateCommonMixin | |
| jgi_sample_contact | 1 String |
JgiIsolateCommonMixin | |
| jgi_project_pi | 1 String |
JgiIsolateCommonMixin | |
| jgi_proposal_id | 1 String |
JgiIsolateCommonMixin | |
| nuc_acid_absorb1 | 0..1 recommended Float |
260/280 measurement of nucleic acid sample purity | JgiIsolateCommonMixin |
| nuc_acid_absorb2 | 0..1 recommended Float |
260/230 measurement of nucleic acid sample purity | JgiIsolateCommonMixin |
| nuc_acid_concentration | 1 Float |
JgiIsolateCommonMixin | |
| jgi_sample_volume | 1 Float |
JgiIsolateCommonMixin | |
| cont_type | 1 JgiContTypeEnum |
Tube or plate (96-well) | JgiIsolateCommonMixin |
| cont_well | 0..1 recommended String |
JgiIsolateCommonMixin | |
| container_name | 1 String |
JgiIsolateCommonMixin | |
| jgi_sample_format | 1 JGISampleFormatEnum |
Solution in which the JGI sample has been suspended | JgiIsolateCommonMixin |
| dnase | 1 YesNoEnum |
JgiIsolateCommonMixin | |
| biosafety_mat_cat | 1 JgiIsolateMaterialKindEnum |
JGI material category, labeled "Biosafety Material Category" on the form and ... | JgiIsolateCommonMixin |
| reference_genome | 0..1 String |
Genome record to use as a reference for read alignment or assembly scaffoldin... | JgiIsolateCommonMixin |
| sample_isolated_from | 1 String |
Free-text description of what the organism was isolated from | JgiIsolateCommonMixin |
| collection_site_or_growth_conditions | 0..1 String |
Free-text description of the collection site or growth conditions for the iso... | JgiIsolateCommonMixin |
| host_taxid | 0..1 String |
NCBI taxon id of the host, e | JgiIsolateCommonMixin |
| host_genus | 0..1 String |
Genus of the host organism that the sample was collected from | JgiIsolateCommonMixin |
| host_species | 0..1 String |
Species of the host organism that the sample was collected from | JgiIsolateCommonMixin |
| host_strain | 0..1 String |
Strain of the host organism that the sample was collected from | JgiIsolateCommonMixin |
Usages
| used by | used in | type | used |
|---|---|---|---|
| SampleData | jgi_isolate_genome_data | range | JgiIsolateGenomeInterface |
Rules
ribosomal_seq_type_other_requires_comments
| Rule Applied | Preconditions | Postconditions | Elseconditions |
|---|---|---|---|
| slot_conditions | {'isolate_ribosomal_seq_type': {'equals_string': 'Other'}} |
{'isolate_ribosomal_seq_comments': {'pattern': '.+'}} |
second_ribosomal_seq_type_requires_sequence
| Rule Applied | Preconditions | Postconditions | Elseconditions |
|---|---|---|---|
| slot_conditions | {'isolate_second_ribosomal_seq_type': {'pattern': '.+'}} |
{'isolate_second_ribosomal_seq': {'pattern': '.+'}} |
second_ribosomal_seq_type_other_requires_comments
| Rule Applied | Preconditions | Postconditions | Elseconditions |
|---|---|---|---|
| slot_conditions | {'isolate_second_ribosomal_seq_type': {'equals_string': 'Other'}} |
{'isolate_second_ribosomal_seq_comments': {'pattern': '.+'}} |
microbial_estimated_size_cap
| Rule Applied | Preconditions | Postconditions | Elseconditions |
|---|---|---|---|
| slot_conditions | {'biosafety_mat_cat': {'range': 'MicrobialBiosafetyMaterialCategoryEnum', 'value_presence': 'PRESENT', 'equals_string_in': ['Archaea', 'Bacteria', 'Fungi', 'Plasmid', 'Virus', 'Synthetic Construct']}} |
{'estimated_size': {'maximum_value': 5000}} |
Identifier and Mapping Information
Annotations
| property | value |
|---|---|
| excel_worksheet_name | JGI Isolate Genome |
Schema Source
- from schema: https://example.com/nmdc_submission_schema
Mappings
| Mapping Type | Mapped Value |
|---|---|
| self | nmdc_sub_schema:JgiIsolateGenomeInterface |
| native | nmdc_sub_schema:JgiIsolateGenomeInterface |
LinkML Source
Direct
name: JgiIsolateGenomeInterface
annotations:
excel_worksheet_name:
tag: excel_worksheet_name
value: JGI Isolate Genome
description: JGI submission metadata for isolate GENOME sequencing projects. Shared
JGI logistics plus ribosomal strain-verification sequences and fungal screening.
title: JGI Isolate Genome
from_schema: https://example.com/nmdc_submission_schema
is_a: DhInterface
mixins:
- DhMultiviewCommonColumnsMixin
- JgiIsolateCommonMixin
slots:
- isolate_ribosomal_seq
- isolate_ribosomal_seq_type
- isolate_ribosomal_seq_comments
- isolate_second_ribosomal_seq
- isolate_second_ribosomal_seq_type
- isolate_second_ribosomal_seq_comments
- isolate_fungal_16s_screening
- isolate_its_match_unite
- dna_isolate_meth
- estimated_size
slot_usage:
isolate_ribosomal_seq:
name: isolate_ribosomal_seq
slot_group: jgi_dna_isolate_section
isolate_ribosomal_seq_type:
name: isolate_ribosomal_seq_type
slot_group: jgi_dna_isolate_section
isolate_ribosomal_seq_comments:
name: isolate_ribosomal_seq_comments
slot_group: jgi_dna_isolate_section
isolate_second_ribosomal_seq:
name: isolate_second_ribosomal_seq
slot_group: jgi_dna_isolate_section
isolate_second_ribosomal_seq_type:
name: isolate_second_ribosomal_seq_type
slot_group: jgi_dna_isolate_section
isolate_second_ribosomal_seq_comments:
name: isolate_second_ribosomal_seq_comments
slot_group: jgi_dna_isolate_section
isolate_fungal_16s_screening:
name: isolate_fungal_16s_screening
slot_group: jgi_dna_isolate_section
isolate_its_match_unite:
name: isolate_its_match_unite
slot_group: jgi_dna_isolate_section
dna_isolate_meth:
name: dna_isolate_meth
slot_group: jgi_dna_isolate_section
rules:
- preconditions:
slot_conditions:
isolate_ribosomal_seq_type:
name: isolate_ribosomal_seq_type
equals_string: Other
postconditions:
slot_conditions:
isolate_ribosomal_seq_comments:
name: isolate_ribosomal_seq_comments
pattern: .+
description: If the first ribosomal sequence type is Other, comments are required.
title: ribosomal_seq_type_other_requires_comments
- preconditions:
slot_conditions:
isolate_second_ribosomal_seq_type:
name: isolate_second_ribosomal_seq_type
pattern: .+
postconditions:
slot_conditions:
isolate_second_ribosomal_seq:
name: isolate_second_ribosomal_seq
pattern: .+
description: If a second ribosomal sequence type is provided, the sequence itself
must also be provided.
title: second_ribosomal_seq_type_requires_sequence
- preconditions:
slot_conditions:
isolate_second_ribosomal_seq_type:
name: isolate_second_ribosomal_seq_type
equals_string: Other
postconditions:
slot_conditions:
isolate_second_ribosomal_seq_comments:
name: isolate_second_ribosomal_seq_comments
pattern: .+
description: If the second ribosomal sequence type is Other, comments are required.
title: second_ribosomal_seq_type_other_requires_comments
- preconditions:
slot_conditions:
biosafety_mat_cat:
name: biosafety_mat_cat
range: MicrobialBiosafetyMaterialCategoryEnum
value_presence: PRESENT
equals_string_in:
- Archaea
- Bacteria
- Fungi
- Plasmid
- Virus
- Synthetic Construct
postconditions:
slot_conditions:
estimated_size:
name: estimated_size
maximum_value: 5000
description: For microbial biosafety categories (Archaea, Bacteria, Fungi, Plasmid,
Virus, Synthetic Construct), JGI caps the estimated genome size at 5000 Mb. Eukaryotic
categories are not capped here and remain bounded only by the estimated_size outer
maximum of 100000 Mb.
title: microbial_estimated_size_cap
notes:
- The precondition lists the six microbial categories twice, with range and equals_string_in,
because the two validators honor different keywords inside a rule precondition.
linkml-validate (JSON-Schema path) honors equals_string_in (it becomes a JSON-Schema
enum) and drops range here (a range in a precondition emits an empty schema that
matches any value). DataHarmonizer 1.7.0 honors range (enum membership) and has
no handling for equals_string_in. Supplying both lets each validator use the keyword
it understands. Keep both lists in sync with MicrobialBiosafetyMaterialCategoryEnum.
Induced
name: JgiIsolateGenomeInterface
annotations:
excel_worksheet_name:
tag: excel_worksheet_name
value: JGI Isolate Genome
description: JGI submission metadata for isolate GENOME sequencing projects. Shared
JGI logistics plus ribosomal strain-verification sequences and fungal screening.
title: JGI Isolate Genome
from_schema: https://example.com/nmdc_submission_schema
is_a: DhInterface
mixins:
- DhMultiviewCommonColumnsMixin
- JgiIsolateCommonMixin
slot_usage:
isolate_ribosomal_seq:
name: isolate_ribosomal_seq
slot_group: jgi_dna_isolate_section
isolate_ribosomal_seq_type:
name: isolate_ribosomal_seq_type
slot_group: jgi_dna_isolate_section
isolate_ribosomal_seq_comments:
name: isolate_ribosomal_seq_comments
slot_group: jgi_dna_isolate_section
isolate_second_ribosomal_seq:
name: isolate_second_ribosomal_seq
slot_group: jgi_dna_isolate_section
isolate_second_ribosomal_seq_type:
name: isolate_second_ribosomal_seq_type
slot_group: jgi_dna_isolate_section
isolate_second_ribosomal_seq_comments:
name: isolate_second_ribosomal_seq_comments
slot_group: jgi_dna_isolate_section
isolate_fungal_16s_screening:
name: isolate_fungal_16s_screening
slot_group: jgi_dna_isolate_section
isolate_its_match_unite:
name: isolate_its_match_unite
slot_group: jgi_dna_isolate_section
dna_isolate_meth:
name: dna_isolate_meth
slot_group: jgi_dna_isolate_section
attributes:
isolate_ribosomal_seq:
name: isolate_ribosomal_seq
description: Primary ribosomal sequence for strain verification. For microbial
drafts must be >1300 nt; for single cells >220 bp with <10% Ns; for fungal ITS
>450 nt with <2% Ns. Use only A, C, G, T, or N with no FASTA header line.
title: first ribosomal sequence
notes:
- JGI requires the ribosomal sequence for draft genome products but not for resequencing,
methylation, or transcriptome products. submission-schema does not enforce that
as a rule because the requirement keys on the JGI Sequencing Product, which
the schema does not carry as a slot. Tracked in https://github.com/microbiomedata/nmdc-server/issues/2177.
- The product-specific length and N-content thresholds in the description (>1300
nt microbial drafts, >220 bp <10% Ns single cells, >450 nt <2% Ns fungal ITS)
are not enforced; the flat pattern checks only 200-5000 A/C/G/T/N. Product-aware
checks would live in nmdc-server (validation.ts).
comments:
- At least one ribosomal sequence is required for strain verification and must
come from the actual sample to be shipped to JGI. Please use only A, C, G,
T or N, with no header. Sequence of insufficient quality may delay the completion
of the project. 16s sequence is required for all microbial drafts and single
cells. For microbial drafts, sequence MUST be >1300 nt; for single cells the
sequence MUST be >220 bp, with <10% Ns.
- ITS sequence is required for all samples for fungal drafts for strain verification.
ITS sequence must be >450 nt with <2% Ns.
examples:
- value: AAATTGAAGAGTTTGATCATGGCTCAGATTGAACGCTGGCGGCAGGCCTAACACATGCAAGTCGAACGGTAACAGGAAGAAGCTTGCTCTTTGCTGACGAGTGGCGGACGGGTGAGTAATGTCTGGGAAACTGCCTGATGGAGGGGGATAACTACTGGAAACGGTAGCTAATACCGCATAACGTCGCAAGACCAAAGAGGGGGACCTTCGGGCCTCTTGCCATCGGATGTGCCCAGATGGGATTAGCTAGTAGGTGGGGTAACGGCTCACCTAGGCGACGTTGAGGCGTGGCTTCCGGAGCTAACGCGTTAAGTCGACCGCCTGGGGAGTACGGCCGCAAGGTTAAAACT
from_schema: https://example.com/nmdc_submission_schema
aliases:
- First ribosomal sequence
rank: 32
alias: isolate_ribosomal_seq
owner: JgiIsolateGenomeInterface
domain_of:
- JgiIsolateGenomeInterface
slot_group: jgi_dna_isolate_section
range: string
recommended: true
pattern: ^[ATCGN]{200,5000}$
isolate_ribosomal_seq_type:
name: isolate_ribosomal_seq_type
description: Type of the first ribosomal sequence provided.
title: first ribosomal sequence type
notes:
- Conditionally required for draft genome products only, for the same reason as
isolate_ribosomal_seq, and not enforced here. Tracked in https://github.com/microbiomedata/nmdc-server/issues/2177.
comments:
- Required for draft genome products (microbial and fungal genome drafts); not
required for resequencing, methylation, or transcriptome products.
examples:
- value: 16S
from_schema: https://example.com/nmdc_submission_schema
aliases:
- First ribosomal sequence type
rank: 33
alias: isolate_ribosomal_seq_type
owner: JgiIsolateGenomeInterface
domain_of:
- JgiIsolateGenomeInterface
slot_group: jgi_dna_isolate_section
range: RibosomalSequenceTypeEnum
recommended: true
isolate_ribosomal_seq_comments:
name: isolate_ribosomal_seq_comments
description: Additional information about the first ribosomal sequence.
title: first ribosomal sequence comments
comments:
- Required if ribosomal sequence type is Other.
examples:
- value: Partial 16S, 850 nt
from_schema: https://example.com/nmdc_submission_schema
aliases:
- First ribosomal sequence comments
rank: 34
alias: isolate_ribosomal_seq_comments
owner: JgiIsolateGenomeInterface
domain_of:
- JgiIsolateGenomeInterface
slot_group: jgi_dna_isolate_section
range: string
pattern: ^.{0,256}$
isolate_second_ribosomal_seq:
name: isolate_second_ribosomal_seq
description: Optional secondary ribosomal sequence for additional strain verification.
For 28S must be >300 nt with <10% Ns. Use only A, C, G, T, or N with no FASTA
header line.
title: second ribosomal sequence
comments:
- Other types of ribosomal sequence may be provided as a secondary check. Sequence
MUST come from the actual sample to be shipped to JGI. For 28s, the sequence
must be >300 nt with <10% Ns. Please use only A, C, G, T or N, with no header.
examples:
- value: AAATTGAAGAGTTTGATCATGGCTCAGATTGAACGCTGGCGGCAGGCCTAACACATGCAAGTCGAACGGTAACAGGAAGAAGCTTGCTCTTTGCTGACGAGTGGCGGACGGGTGAGTAATGTCTGGGAAACTGCCTGATGGAGGGGGATAACTACTGGAAACGGTAGCTAATACCGCATAACGTCGCAAGACCAAAGAGGGGGACCTTCGGGCCTCTTGCCATCGGATGTGCCCAGATGGGATTAGCTAGTAGGTGGGGTAACGGCTCACCTAGGCGACGTTGAGGCGTGGCTTCCGGAGCTAACGCGTTAAGTCGACCGCCTGGGGAGTACGGCCGCAAGGTTAAAACT
from_schema: https://example.com/nmdc_submission_schema
aliases:
- Second ribosomal sequence
rank: 35
alias: isolate_second_ribosomal_seq
owner: JgiIsolateGenomeInterface
domain_of:
- JgiIsolateGenomeInterface
slot_group: jgi_dna_isolate_section
range: string
pattern: ^[ATCGN]{200,5000}$
isolate_second_ribosomal_seq_type:
name: isolate_second_ribosomal_seq_type
description: Type of the second ribosomal sequence provided.
title: second ribosomal sequence type
examples:
- value: ITS
from_schema: https://example.com/nmdc_submission_schema
aliases:
- Second ribosomal sequence type
rank: 36
alias: isolate_second_ribosomal_seq_type
owner: JgiIsolateGenomeInterface
domain_of:
- JgiIsolateGenomeInterface
slot_group: jgi_dna_isolate_section
range: RibosomalSequenceTypeEnum
isolate_second_ribosomal_seq_comments:
name: isolate_second_ribosomal_seq_comments
description: Additional information about the second ribosomal sequence.
title: second ribosomal sequence comments
comments:
- Required if second ribosomal sequence type is Other.
from_schema: https://example.com/nmdc_submission_schema
aliases:
- Second ribosomal sequence comments
rank: 37
alias: isolate_second_ribosomal_seq_comments
owner: JgiIsolateGenomeInterface
domain_of:
- JgiIsolateGenomeInterface
slot_group: jgi_dna_isolate_section
range: string
pattern: ^.{0,256}$
isolate_fungal_16s_screening:
name: isolate_fungal_16s_screening
description: For fungal draft samples only — was 16S screening performed to check
for bacterial contamination?
title: 16S screening performed
notes:
- JGI requires this for fungal draft products. submission-schema does not enforce
that as a rule because the requirement keys on the JGI Sequencing Product, which
the schema does not carry as a slot. Tracked in https://github.com/microbiomedata/nmdc-server/issues/2177.
comments:
- Required for fungal light, minimal, standard, and improved drafts.
- Leave blank for non-fungal samples.
examples:
- value: 'yes'
from_schema: https://example.com/nmdc_submission_schema
aliases:
- For fungal draft samples, was 16S screening performed?
rank: 38
alias: isolate_fungal_16s_screening
owner: JgiIsolateGenomeInterface
domain_of:
- JgiIsolateGenomeInterface
slot_group: jgi_dna_isolate_section
range: YesNoEnum
isolate_its_match_unite:
name: isolate_its_match_unite
description: For fungal draft samples only -- does the ITS sequence match taxonomy
in the UNITE database?
title: ITS matches UNITE
notes:
- JGI requires this for fungal draft products. submission-schema does not enforce
that as a rule because the requirement keys on the JGI Sequencing Product, which
the schema does not carry as a slot. Tracked in https://github.com/microbiomedata/nmdc-server/issues/2177.
comments:
- Required for fungal light, minimal, standard, and improved drafts.
- Screen at https://unite.ut.ee/ before submitting.
- Leave blank for non-fungal samples.
examples:
- value: 'yes'
from_schema: https://example.com/nmdc_submission_schema
aliases:
- For fungal draft samples, does ITS match taxonomy in UNITE?
rank: 39
alias: isolate_its_match_unite
owner: JgiIsolateGenomeInterface
domain_of:
- JgiIsolateGenomeInterface
slot_group: jgi_dna_isolate_section
range: YesNoEnum
dna_isolate_meth:
name: dna_isolate_meth
description: Describe the method/protocol/kit used to extract DNA/RNA.
title: DNA isolation method
examples:
- value: phenol/chloroform extraction
from_schema: https://example.com/nmdc_submission_schema
aliases:
- Sample Isolation Method
rank: 16
alias: dna_isolate_meth
owner: JgiIsolateGenomeInterface
domain_of:
- JgiMgInterface
- JgiMgLrInterface
- JgiIsolateGenomeInterface
slot_group: jgi_dna_isolate_section
range: string
required: true
recommended: false
estimated_size:
name: estimated_size
description: Provide an estimate of the genome size in megabases
title: Estimated genome size (Mb)
notes:
- Required for all DNA isolate products (draft genomes, resequencing, methylation)
per JGI; on the genome interface, not the shared IsolateInterface, so transcriptome
isolates are not asked for it. Float Mb at the JGI submission gate; nmdc-schema
stores estimated_size as integer bp.
comments:
- JGI reports values in megabases (Mb); NMDC stores them in base pairs (bp).
examples:
- value: '4.6'
in_subset:
- jgi_isolate
from_schema: https://example.com/nmdc_submission_schema
structured_aliases:
Estimated Genome Size (Mb):
literal_form: Estimated Genome Size (Mb)
predicate: BROAD_SYNONYM
notes:
- Exact JGI form template is access-restricted; source is the public submission
overview.
- 'Per @aclum: Mb is a coarser unit than bp, so a single Mb value covers many
possible bp values; the alias is broader in granularity.'
source: https://jgi.doe.gov/user-programs/pmo-overview/project-materials-submission-overview/
rank: 21
keywords:
- size
slot_uri: MIXS:0000024
alias: estimated_size
owner: JgiIsolateGenomeInterface
domain_of:
- JgiIsolateGenomeInterface
slot_group: jgi_isolate_section
range: float
required: true
minimum_value: 1.0e-06
maximum_value: 100000
unit:
ucum_code: Mbase
analysis_type:
name: analysis_type
description: Select all the data types associated or available for this biosample
title: analysis/data type
comments:
- MIxS:investigation_type was included as a `see_also` but that term doesn't resolve
any more
examples:
- value: metagenomics; metabolomics; metaproteomics
from_schema: https://example.com/nmdc_submission_schema
rank: 3
alias: analysis_type
owner: JgiIsolateGenomeInterface
domain_of:
- DhMultiviewCommonColumnsMixin
slot_group: sample_id_section
range: AnalysisTypeEnum
required: true
multivalued: true
samp_name:
name: samp_name
annotations:
Preferred_unit:
tag: Preferred_unit
value: ''
description: A local identifier or name that for the material sample collected.
Refers to the original material collected or to any derived sub-samples.
title: sample name
comments:
- It can have any format, but we suggest that you make it concise, unique and
consistent within your lab, and as informative as possible.
- If multiple sample environments (soil, water, etc) are used, these values must
be unique across all environments.
examples:
- value: Rock core CB1178(5-6) from NSW
from_schema: https://example.com/nmdc_submission_schema
rank: 1
keywords:
- sample
slot_uri: MIXS:0001107
identifier: true
alias: samp_name
owner: JgiIsolateGenomeInterface
domain_of:
- DhMultiviewCommonColumnsMixin
slot_group: sample_id_section
range: string
required: true
source_mat_id:
name: source_mat_id
annotations:
Expected_value:
tag: Expected_value
value: 'for cultures of microorganisms: identifiers for two culture collections;
for other material a unique arbitrary identifer'
description: A globally unique identifier assigned to the parent sample or sample
that is the source of this sample.
title: source material identifier
todos:
- Currently, the comments say to use UUIDs. However, if we implement assigning
NMDC identifiers with the minter we dont need to require a GUID. It can be an
optional field to fill out only if they already have a resolvable ID.
comments:
- Identifiers must be prefixed. Possible FAIR prefixes are IGSNs (http://www.geosamples.org/getigsn),
NCBI biosample accession numbers, ARK identifiers (https://arks.org/). These
IDs enable linking to derived analytes and subsamples. If you have not assigned
FAIR identifiers to your samples, you can generate UUIDs (https://www.uuidgenerator.net/).
- 'Prefixed FAIR identifiers are preferred where available: `igsn` for International
Generic Sample Numbers (http://www.geosamples.org/getigsn), `biosample` for
NCBI biosample accession IDs, `gold` for GOLD identifiers. The format is not
constrained, so culture collection identifiers such as "DSM 6724" or "ATCC 5680"
are also accepted.'
examples:
- value: igsn:AU1243
- value: biosample:SAMEA2397676
from_schema: https://example.com/nmdc_submission_schema
rank: 2
keywords:
- identifier
- material
- source
slot_uri: MIXS:0000026
alias: source_mat_id
owner: JgiIsolateGenomeInterface
domain_of:
- DhMultiviewCommonColumnsMixin
- IsolateInterface
slot_group: sample_id_section
range: string
multivalued: false
replicate_group:
name: replicate_group
description: Samples that are biological replicates should have the same group
name. If your project does not contain biological replicates, give each sample
its own group name.
title: Biological replicate/sample group Name
notes:
- JGI requires this for RNA expression, IsoSeq, ChIP, Bisulphite-Seq, and methylation
products. submission-schema does not enforce that as a rule because the requirement
keys on the JGI Sequencing Product, which the schema does not carry as a slot.
Tracked in https://github.com/microbiomedata/nmdc-server/issues/2177.
comments:
- Required for RNA expression, IsoSeq, ChIP, Bisulphite-Seq, and methylation projects.
examples:
- value: SampleGroup1
from_schema: https://example.com/nmdc_submission_schema
rank: 5
alias: replicate_group
owner: JgiIsolateGenomeInterface
domain_of:
- JgiMgInterface
- JgiMgLrInterface
- JgiMtInterface
- JgiIsolateCommonMixin
slot_group: jgi_isolate_section
range: string
recommended: true
jgi_samp_id:
name: jgi_samp_id
title: JGI sample ID
comments:
- Do not edit these values. A template will be provided by NMDC in which these
values have been pre-filled. If you do not have these values, please contact
your NMDC POC & your JGI PM.
examples:
- value: '187654'
from_schema: https://example.com/nmdc_submission_schema
aliases:
- dna_samp_id
- rna_samp_id
rank: 3
alias: jgi_samp_id
owner: JgiIsolateGenomeInterface
domain_of:
- JgiMgInterface
- JgiMgLrInterface
- JgiMtInterface
- JgiIsolateCommonMixin
slot_group: jgi_isolate_section
range: string
required: true
jgi_sample_name:
name: jgi_sample_name
description: Give the JGI sample a name that is meaningful to you. Sample names
must be unique across all JGI projects and contain a-z, A-Z, 0-9, - and _ only.
title: JGI sample name
examples:
- value: JGI_pond_041618
from_schema: https://example.com/nmdc_submission_schema
aliases:
- dna_sample_name
- rna_sample_name
rank: 4
alias: jgi_sample_name
owner: JgiIsolateGenomeInterface
domain_of:
- JgiMgInterface
- JgiMgLrInterface
- JgiMtInterface
- JgiIsolateCommonMixin
slot_group: jgi_isolate_section
range: string
required: true
pattern: ^[-_.a-zA-Z0-9]*$
jgi_seq_project:
name: jgi_seq_project
title: JGI seq project ID
comments:
- Do not edit these values. A template will be provided by NMDC in which these
values have been pre-filled. If you do not have these values, please contact
your NMDC POC & your JGI PM.
examples:
- value: '1191234'
from_schema: https://example.com/nmdc_submission_schema
aliases:
- Seq Project ID
- dna_seq_project
- rna_seq_project
rank: 1
alias: jgi_seq_project
owner: JgiIsolateGenomeInterface
domain_of:
- JgiMgInterface
- JgiMgLrInterface
- JgiMtInterface
- JgiIsolateCommonMixin
slot_group: jgi_isolate_section
range: float
required: true
jgi_seq_project_name:
name: jgi_seq_project_name
title: JGI seq project name
comments:
- Do not edit these values. A template will be provided by NMDC in which these
values have been pre-filled. If you do not have these values, please contact
your NMDC POC & your JGI PM.
examples:
- value: JGI Pond metagenomics
from_schema: https://example.com/nmdc_submission_schema
aliases:
- dna_seq_project_name
- rna_seq_project_name
rank: 2
alias: jgi_seq_project_name
owner: JgiIsolateGenomeInterface
domain_of:
- JgiMgInterface
- JgiMgLrInterface
- JgiMtInterface
- JgiIsolateCommonMixin
slot_group: jgi_isolate_section
range: string
required: true
jgi_sample_contact:
name: jgi_sample_contact
title: DNA sample contact
examples:
- value: Jordan James
from_schema: https://example.com/nmdc_submission_schema
rank: 18
alias: jgi_sample_contact
owner: JgiIsolateGenomeInterface
domain_of:
- JgiMgInterface
- JgiMgLrInterface
- JgiMtInterface
- JgiIsolateCommonMixin
slot_group: jgi_isolate_section
range: string
required: true
jgi_project_pi:
name: jgi_project_pi
title: JGI sequencing project PI
examples:
- value: Jordan James
from_schema: https://example.com/nmdc_submission_schema
rank: 19
alias: jgi_project_pi
owner: JgiIsolateGenomeInterface
domain_of:
- JgiMgInterface
- JgiMgLrInterface
- JgiMtInterface
- JgiIsolateCommonMixin
slot_group: jgi_isolate_section
range: string
required: true
jgi_proposal_id:
name: jgi_proposal_id
title: JGI proposal number
examples:
- value: PR123456
- value: '123456'
from_schema: https://example.com/nmdc_submission_schema
rank: 20
alias: jgi_proposal_id
owner: JgiIsolateGenomeInterface
domain_of:
- JgiMgInterface
- JgiMgLrInterface
- JgiMtInterface
- JgiIsolateCommonMixin
slot_group: jgi_isolate_section
range: string
required: true
pattern: ^[A-Z0-9]+$
nuc_acid_absorb1:
name: nuc_acid_absorb1
description: 260/280 measurement of nucleic acid sample purity
title: nucleic acid absorbance 260/280
notes:
- JGI requires absorbance for plant/algal drafts, fungal standard/improved drafts,
microbial improved drafts, methylation, and any PacBio libraries. submission-schema
does not enforce that as a rule because the requirement keys on the JGI Sequencing
Product, which the schema does not carry as a slot. Tracked in https://github.com/microbiomedata/nmdc-server/issues/2177.
comments:
- Recommended value is between 1 and 3.
- Required for plant/algal drafts, fungal standard/improved drafts, microbial
improved draft, methylation, or any PacBio libraries.
examples:
- value: '2.02'
from_schema: https://example.com/nmdc_submission_schema
aliases:
- dna_absorb1
- rna_absorb1
rank: 7
alias: nuc_acid_absorb1
owner: JgiIsolateGenomeInterface
domain_of:
- JgiMgInterface
- JgiMgLrInterface
- JgiMtInterface
- JgiIsolateCommonMixin
slot_group: jgi_isolate_section
range: float
recommended: true
minimum_value: 0.0001
nuc_acid_absorb2:
name: nuc_acid_absorb2
description: 260/230 measurement of nucleic acid sample purity
title: nucleic acid absorbance 260/230
notes:
- JGI requires absorbance for plant/algal drafts, fungal standard/improved drafts,
microbial improved drafts, methylation, and any PacBio libraries. submission-schema
does not enforce that as a rule because the requirement keys on the JGI Sequencing
Product, which the schema does not carry as a slot. Tracked in https://github.com/microbiomedata/nmdc-server/issues/2177.
comments:
- Recommended value is between 1 and 3.
- Required for plant/algal drafts, fungal standard/improved drafts, microbial
improved draft, methylation, or any PacBio libraries.
examples:
- value: '2.02'
from_schema: https://example.com/nmdc_submission_schema
aliases:
- dna_absorb2
- nuc_acid_absorb2
rank: 9
alias: nuc_acid_absorb2
owner: JgiIsolateGenomeInterface
domain_of:
- JgiMgInterface
- JgiMgLrInterface
- JgiMtInterface
- JgiIsolateCommonMixin
slot_group: jgi_isolate_section
range: float
recommended: true
minimum_value: 0.0001
nuc_acid_concentration:
name: nuc_acid_concentration
title: nucleic acid concentration in ng/ul
comments:
- Units must be in ng/uL. Enter the numerical part only. Must be calculated using
a fluorometric method. Acceptable values are greater than zero and at most 2000.
examples:
- value: '100'
from_schema: https://example.com/nmdc_submission_schema
see_also:
- nmdc:nucleic_acid_concentration
aliases:
- dna_concentration
- rna_concentration
rank: 6
alias: nuc_acid_concentration
owner: JgiIsolateGenomeInterface
domain_of:
- JgiMgInterface
- JgiMgLrInterface
- JgiMtInterface
- JgiIsolateCommonMixin
slot_group: jgi_isolate_section
range: float
required: true
minimum_value: 0.0001
maximum_value: 2000
unit:
descriptive_name: nanograms per microliter
ucum_code: ng/uL
jgi_sample_volume:
name: jgi_sample_volume
title: JGI sample volume in ul
comments:
- Units must be in uL. Enter the numerical part only. Value must be greater than
zero and at most 1000. This form accepts values < 25, but JGI may refuse to
process them unless permission has been granted by a project manager.
examples:
- value: '25'
from_schema: https://example.com/nmdc_submission_schema
aliases:
- dna_volume
- rna_volume
rank: 8
alias: jgi_sample_volume
owner: JgiIsolateGenomeInterface
domain_of:
- JgiMgInterface
- JgiMgLrInterface
- JgiMtInterface
- JgiIsolateCommonMixin
slot_group: jgi_isolate_section
range: float
required: true
minimum_value: 0.0001
maximum_value: 1000
unit:
descriptive_name: microliters
ucum_code: uL
cont_type:
name: cont_type
description: Tube or plate (96-well)
title: JGI container type
from_schema: https://example.com/nmdc_submission_schema
aliases:
- dna_cont_type
- rna_cont_type
rank: 11
alias: cont_type
owner: JgiIsolateGenomeInterface
domain_of:
- JgiMgInterface
- JgiMgLrInterface
- JgiMtInterface
- JgiIsolateCommonMixin
slot_group: jgi_isolate_section
range: JgiContTypeEnum
required: true
cont_well:
name: cont_well
title: plate position
comments:
- Required when 'plate' is selected for container type.
- Leave blank if the sample will be shipped in a tube.
- JGI will not process samples in corner wells, so A1, A12, H1 and H12 will not
pass validation.
- Fill plate in column-wise format. B1-G1,A2-H2,A3-D3 (NOT A2-A11,B1-B8).
examples:
- value: B2
from_schema: https://example.com/nmdc_submission_schema
aliases:
- dna_cont_well
- rna_cont_well
rank: 12
alias: cont_well
owner: JgiIsolateGenomeInterface
domain_of:
- JgiMgInterface
- JgiMgLrInterface
- JgiMtInterface
- JgiIsolateCommonMixin
slot_group: jgi_isolate_section
range: string
recommended: true
pattern: ^(?!A1$|A12$|H1$|H12$)(([A-H][1-9])|([A-H]1[0-2]))$
container_name:
name: container_name
title: container name
comments:
- Must be unique across all tubes and plates, and <20 characters.
- All samples in a plate should have the same plate name.
examples:
- value: Pond_MT_041618
from_schema: https://example.com/nmdc_submission_schema
aliases:
- dna_container_id
- rna_container_id
rank: 10
alias: container_name
owner: JgiIsolateGenomeInterface
domain_of:
- JgiMgInterface
- JgiMgLrInterface
- JgiMtInterface
- JgiIsolateCommonMixin
slot_group: jgi_isolate_section
range: string
required: true
pattern: ^[-_.a-zA-Z0-9]{1,20}$
jgi_sample_format:
name: jgi_sample_format
description: Solution in which the JGI sample has been suspended
title: JGI sample format
examples:
- value: Water
from_schema: https://example.com/nmdc_submission_schema
aliases:
- dna_sample_format
- rna_sample_format
rank: 13
alias: jgi_sample_format
owner: JgiIsolateGenomeInterface
domain_of:
- JgiMgInterface
- JgiMgLrInterface
- JgiMtInterface
- JgiIsolateCommonMixin
slot_group: jgi_isolate_section
range: JGISampleFormatEnum
required: true
dnase:
name: dnase
title: DNase treatment
comments:
- Note DNase treatment is required for all RNA samples.
examples:
- value: 'no'
from_schema: https://example.com/nmdc_submission_schema
aliases:
- dna_dnase
- dnase_rna
rank: 15
alias: dnase
owner: JgiIsolateGenomeInterface
domain_of:
- JgiMgInterface
- JgiMgLrInterface
- JgiMtInterface
- JgiIsolateCommonMixin
slot_group: jgi_isolate_section
range: YesNoEnum
required: true
biosafety_mat_cat:
name: biosafety_mat_cat
description: JGI material category, labeled "Biosafety Material Category" on the
form and used for internal routing rather than as a biosafety level. The permissible
values are set by the slot's range; the isolate interfaces narrow that range
to organism kinds.
title: JGI Biosafety Material Category
notes:
- The slot name is kept to match the JGI form even though the values are categories,
not biosafety levels.
from_schema: https://example.com/nmdc_submission_schema
structured_aliases:
Biosafety Material Category:
literal_form: Biosafety Material Category
predicate: EXACT_SYNONYM
notes:
- Exact JGI form template is access-restricted; source is the public submission
overview.
source: https://jgi.doe.gov/user-programs/pmo-overview/project-materials-submission-overview/
rank: 17
alias: biosafety_mat_cat
owner: JgiIsolateGenomeInterface
domain_of:
- JgiMgInterface
- JgiMgLrInterface
- JgiMtInterface
- JgiIsolateCommonMixin
slot_group: jgi_isolate_section
range: JgiIsolateMaterialKindEnum
required: true
reference_genome:
name: reference_genome
description: Genome record to use as a reference for read alignment or assembly
scaffolding. Preferred formats are IMG taxon OID, Mycocosm/Phycocosm/ Phytozome
ID, or NCBI assembly accession (GCF_/GCA_). Free-text.
title: Reference Genome
notes:
- Local slot pending promotion to nmdc-schema; see https://github.com/microbiomedata/submission-schema/issues/447
- JGI requires this for resequencing, gene expression, IsoSeq, and methylation
products. submission-schema does not enforce that as a rule because analysis_type
is identical ("isolate genome sequencing") for draft and resequencing, so a
rule keyed on it cannot single out resequencing. Tracked in https://github.com/microbiomedata/nmdc-server/issues/2177.
comments:
- Provide a reference if one exists; helps JGI with assembly and QC even for de
novo projects.
- Required for resequencing, gene expression, IsoSeq, and methylation projects.
examples:
- value: '2648501807'
description: IMG taxon OID
- value: GCF_000195995.2
description: NCBI RefSeq assembly accession
- value: Mycocosm:Aspni7
description: Mycocosm ID
from_schema: https://example.com/nmdc_submission_schema
structured_aliases:
Reference Genome:
literal_form: Reference Genome
predicate: EXACT_SYNONYM
notes:
- Exact JGI form template is access-restricted; source is the public submission
overview.
source: https://jgi.doe.gov/user-programs/pmo-overview/project-materials-submission-overview/
rank: 40
alias: reference_genome
owner: JgiIsolateGenomeInterface
domain_of:
- JgiIsolateCommonMixin
slot_group: jgi_isolate_section
range: string
sample_isolated_from:
name: sample_isolated_from
description: Free-text description of what the organism was isolated from.
title: Sample Isolated From
examples:
- value: soil
- value: leaf
- value: seawater
- value: single colony isolate
- value: DSM 3658
- value: Sorghum bicolor - root
from_schema: https://example.com/nmdc_submission_schema
structured_aliases:
Sample Isolated From:
literal_form: Sample Isolated From
predicate: EXACT_SYNONYM
notes:
- Exact JGI form template is access-restricted; source is the public submission
overview.
source: https://jgi.doe.gov/user-programs/pmo-overview/project-materials-submission-overview/
rank: 40
alias: sample_isolated_from
owner: JgiIsolateGenomeInterface
domain_of:
- JgiIsolateCommonMixin
slot_group: jgi_isolate_section
range: string
required: true
collection_site_or_growth_conditions:
name: collection_site_or_growth_conditions
description: Free-text description of the collection site or growth conditions
for the isolate.
title: Collection Site or Growth Conditions
comments:
- Required for RNA and methylation samples.
examples:
- value: Field
- value: Greenhouse
- value: Deep well
- value: Liquid culture from a frozen stock
- value: JGI grown culture
from_schema: https://example.com/nmdc_submission_schema
structured_aliases:
Collection Site or Growth Conditions:
literal_form: Collection Site or Growth Conditions
predicate: EXACT_SYNONYM
notes:
- Exact JGI form template is access-restricted; source is the public submission
overview.
source: https://jgi.doe.gov/user-programs/pmo-overview/project-materials-submission-overview/
rank: 41
alias: collection_site_or_growth_conditions
owner: JgiIsolateGenomeInterface
domain_of:
- JgiIsolateCommonMixin
slot_group: jgi_isolate_section
range: string
host_taxid:
name: host_taxid
annotations:
Expected_value:
tag: Expected_value
value: NCBI taxon identifier
description: NCBI taxon id of the host, e.g. 9606
title: host taxid
comments:
- Homo sapiens [NCBITaxon:9606] would be a reasonable has_raw_value
from_schema: https://example.com/nmdc_submission_schema
structured_aliases:
Host NCBI Taxonomy ID:
literal_form: Host NCBI Taxonomy ID
predicate: EXACT_SYNONYM
notes:
- Exact JGI form template is access-restricted; source is the public submission
overview.
source: https://jgi.doe.gov/user-programs/pmo-overview/project-materials-submission-overview/
rank: 48
keywords:
- host
- host.
- taxon
slot_uri: MIXS:0000250
alias: host_taxid
owner: JgiIsolateGenomeInterface
domain_of:
- HostAssociatedInterface
- PlantAssociatedInterface
- JgiIsolateCommonMixin
slot_group: jgi_isolate_section
range: string
host_genus:
name: host_genus
description: Genus of the host organism that the sample was collected from.
notes:
- GOLD organism_v2 host_name "Zea mays" (n=432 records, queried 2026-04-30)
- GOLD organism_v2 host_name "Escherichia coli K-12" (Go0084483 Escherichia phage
JSE, queried 2026-04-30)
comments:
- Free-text submitter-provided host genus. For an ontology-grounded host identification,
use `host_taxid` (MIXS:0000250) on the same class.
examples:
- value: Zea
- value: Escherichia
in_subset:
- jgi_isolate
from_schema: https://example.com/nmdc_submission_schema
structured_aliases:
Host Genus:
literal_form: Host Genus
predicate: EXACT_SYNONYM
notes:
- Exact JGI form template is access-restricted; source is the public submission
overview.
source: https://jgi.doe.gov/user-programs/pmo-overview/project-materials-submission-overview/
rank: 45
alias: host_genus
owner: JgiIsolateGenomeInterface
domain_of:
- JgiIsolateCommonMixin
slot_group: jgi_isolate_section
range: string
host_species:
name: host_species
description: Species of the host organism that the sample was collected from.
notes:
- GOLD organism_v2 host_name "Zea mays" (n=432 records, queried 2026-04-30)
- GOLD organism_v2 host_name "Escherichia coli K-12" (Go0084483 Escherichia phage
JSE, queried 2026-04-30)
comments:
- Free-text submitter-provided host species. For an ontology-grounded host identification,
use `host_taxid` (MIXS:0000250) on the same class.
examples:
- value: mays
- value: coli
in_subset:
- jgi_isolate
from_schema: https://example.com/nmdc_submission_schema
structured_aliases:
Host Species:
literal_form: Host Species
predicate: EXACT_SYNONYM
notes:
- Exact JGI form template is access-restricted; source is the public submission
overview.
source: https://jgi.doe.gov/user-programs/pmo-overview/project-materials-submission-overview/
rank: 46
alias: host_species
owner: JgiIsolateGenomeInterface
domain_of:
- JgiIsolateCommonMixin
slot_group: jgi_isolate_section
range: string
host_strain:
name: host_strain
description: Strain of the host organism that the sample was collected from.
notes:
- GOLD organism_v2 host_name "Escherichia coli K-12" (Go0084483 Escherichia phage
JSE, queried 2026-04-30)
comments:
- Free-text submitter-provided host strain. For an ontology-grounded host identification,
use `host_taxid` (MIXS:0000250) on the same class.
examples:
- value: K-12
in_subset:
- jgi_isolate
from_schema: https://example.com/nmdc_submission_schema
structured_aliases:
Host Strain:
literal_form: Host Strain
predicate: EXACT_SYNONYM
notes:
- Exact JGI form template is access-restricted; source is the public submission
overview.
source: https://jgi.doe.gov/user-programs/pmo-overview/project-materials-submission-overview/
rank: 47
alias: host_strain
owner: JgiIsolateGenomeInterface
domain_of:
- JgiIsolateCommonMixin
slot_group: jgi_isolate_section
range: string
rules:
- preconditions:
slot_conditions:
isolate_ribosomal_seq_type:
name: isolate_ribosomal_seq_type
equals_string: Other
postconditions:
slot_conditions:
isolate_ribosomal_seq_comments:
name: isolate_ribosomal_seq_comments
pattern: .+
description: If the first ribosomal sequence type is Other, comments are required.
title: ribosomal_seq_type_other_requires_comments
- preconditions:
slot_conditions:
isolate_second_ribosomal_seq_type:
name: isolate_second_ribosomal_seq_type
pattern: .+
postconditions:
slot_conditions:
isolate_second_ribosomal_seq:
name: isolate_second_ribosomal_seq
pattern: .+
description: If a second ribosomal sequence type is provided, the sequence itself
must also be provided.
title: second_ribosomal_seq_type_requires_sequence
- preconditions:
slot_conditions:
isolate_second_ribosomal_seq_type:
name: isolate_second_ribosomal_seq_type
equals_string: Other
postconditions:
slot_conditions:
isolate_second_ribosomal_seq_comments:
name: isolate_second_ribosomal_seq_comments
pattern: .+
description: If the second ribosomal sequence type is Other, comments are required.
title: second_ribosomal_seq_type_other_requires_comments
- preconditions:
slot_conditions:
biosafety_mat_cat:
name: biosafety_mat_cat
range: MicrobialBiosafetyMaterialCategoryEnum
value_presence: PRESENT
equals_string_in:
- Archaea
- Bacteria
- Fungi
- Plasmid
- Virus
- Synthetic Construct
postconditions:
slot_conditions:
estimated_size:
name: estimated_size
maximum_value: 5000
description: For microbial biosafety categories (Archaea, Bacteria, Fungi, Plasmid,
Virus, Synthetic Construct), JGI caps the estimated genome size at 5000 Mb. Eukaryotic
categories are not capped here and remain bounded only by the estimated_size outer
maximum of 100000 Mb.
title: microbial_estimated_size_cap
notes:
- The precondition lists the six microbial categories twice, with range and equals_string_in,
because the two validators honor different keywords inside a rule precondition.
linkml-validate (JSON-Schema path) honors equals_string_in (it becomes a JSON-Schema
enum) and drops range here (a range in a precondition emits an empty schema that
matches any value). DataHarmonizer 1.7.0 honors range (enum membership) and has
no handling for equals_string_in. Supplying both lets each validator use the keyword
it understands. Keep both lists in sync with MicrobialBiosafetyMaterialCategoryEnum.