Skip to content

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 : 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_meth JgiIsolateGenomeInterface : isolate_ribosomal_seq JgiIsolateGenomeInterface : isolate_ribosomal_seq_comments JgiIsolateGenomeInterface : isolate_ribosomal_seq_type JgiIsolateGenomeInterface --> "1" 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

Slots

Name Cardinality and Range Description Inheritance
isolate_ribosomal_seq 1
String
Primary ribosomal sequence for strain verification direct
isolate_ribosomal_seq_type 1
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
estimated_size 1
Float
The estimated size of the genome prior to sequencing 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
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
isolate_meth 1
String
Method, protocol, or kit used to extract DNA or RNA from the sample 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': '.+'}}

Identifier and Mapping Information

Annotations

property value
excel_worksheet_name JGI Isolate Genome

Schema Source

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
- estimated_size
slot_usage:
  isolate_ribosomal_seq:
    name: isolate_ribosomal_seq
    slot_group: jgi_isolate_section
  isolate_ribosomal_seq_type:
    name: isolate_ribosomal_seq_type
    slot_group: jgi_isolate_section
  isolate_ribosomal_seq_comments:
    name: isolate_ribosomal_seq_comments
    slot_group: jgi_isolate_section
  isolate_second_ribosomal_seq:
    name: isolate_second_ribosomal_seq
    slot_group: jgi_isolate_section
  isolate_second_ribosomal_seq_type:
    name: isolate_second_ribosomal_seq_type
    slot_group: jgi_isolate_section
  isolate_second_ribosomal_seq_comments:
    name: isolate_second_ribosomal_seq_comments
    slot_group: jgi_isolate_section
  isolate_fungal_16s_screening:
    name: isolate_fungal_16s_screening
    slot_group: jgi_isolate_section
  isolate_its_match_unite:
    name: isolate_its_match_unite
    slot_group: jgi_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

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_isolate_section
  isolate_ribosomal_seq_type:
    name: isolate_ribosomal_seq_type
    slot_group: jgi_isolate_section
  isolate_ribosomal_seq_comments:
    name: isolate_ribosomal_seq_comments
    slot_group: jgi_isolate_section
  isolate_second_ribosomal_seq:
    name: isolate_second_ribosomal_seq
    slot_group: jgi_isolate_section
  isolate_second_ribosomal_seq_type:
    name: isolate_second_ribosomal_seq_type
    slot_group: jgi_isolate_section
  isolate_second_ribosomal_seq_comments:
    name: isolate_second_ribosomal_seq_comments
    slot_group: jgi_isolate_section
  isolate_fungal_16s_screening:
    name: isolate_fungal_16s_screening
    slot_group: jgi_isolate_section
  isolate_its_match_unite:
    name: isolate_its_match_unite
    slot_group: jgi_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. Use only A,
      C, G, T, or N with no FASTA header line.
    title: first ribosomal sequence
    comments:
    - Required for all microbial and fungal genome projects.
    - 16S is required for microbial drafts and single cells; ITS for fungal drafts.
    - Sequence must come from the actual sample to be shipped to JGI.
    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_isolate_section
    range: string
    required: 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
    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_isolate_section
    range: RibosomalSequenceTypeEnum
    required: 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_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
    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_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_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_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
    comments:
    - Required for fungal 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_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
    comments:
    - Required for fungal 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_isolate_section
    range: YesNoEnum
  estimated_size:
    name: estimated_size
    description: The estimated size of the genome prior to sequencing. Of particular
      importance in the sequencing of (eukaryotic) genome which could remain in draft
      form for a long or unspecified period
    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:
    - object: 300000
    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
    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
  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
    comments:
    - Recommended value is between 1 and 3.
    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
    comments:
    - Recommended value is between 1 and 3.
    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
  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
  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
  isolate_meth:
    name: isolate_meth
    description: Method, protocol, or kit used to extract DNA or RNA from the sample.
    title: Sample Isolation Method
    examples:
    - value: Wizard Genomic DNA Purification Kit
    - value: CTAB chloroform extraction
    - value: TRIzol RNA extraction
    from_schema: https://example.com/nmdc_submission_schema
    structured_aliases:
      Sample Isolation Method:
        literal_form: Sample Isolation Method
        predicate: EXACT_SYNONYM
        notes:
        - Exact JGI form template is access-restricted; source is the public submission
          overview.
        - JGI labels this field Sample Isolation Method, but its definition is the
          DNA or RNA extraction method.
        source: https://jgi.doe.gov/user-programs/pmo-overview/project-materials-submission-overview/
    rank: 16
    alias: isolate_meth
    owner: JgiIsolateGenomeInterface
    domain_of:
    - JgiIsolateCommonMixin
    slot_group: jgi_isolate_section
    range: string
    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
    comments:
    - Provide a reference if one exists; helps JGI with assembly and QC even for de
      novo 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.
    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
      description: GOLD organism_v2 host_name "Zea mays" (n=432 records, queried 2026-04-30)
    - value: Escherichia
      description: GOLD organism_v2 host_name "Escherichia coli K-12" (Go0084483 Escherichia
        phage JSE, queried 2026-04-30)
    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.
    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
      description: GOLD organism_v2 host_name "Zea mays" (n=432 records, queried 2026-04-30)
    - value: coli
      description: GOLD organism_v2 host_name "Escherichia coli K-12" (Go0084483 Escherichia
        phage JSE, queried 2026-04-30)
    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.
    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
      description: GOLD organism_v2 host_name "Escherichia coli K-12" (Go0084483 Escherichia
        phage JSE, queried 2026-04-30)
    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