Class: Instrument
A material entity that is designed to perform a function in a scientific investigation, but is not a reagent. This class models the make and model of the instrument, not the specific instance of the instrument.
URI: nmdc:Instrument
classDiagram
class Instrument
click Instrument href "../Instrument"
MaterialEntity <|-- Instrument
click MaterialEntity href "../MaterialEntity"
Instrument : alternative_identifiers
Instrument : description
Instrument : id
Instrument : model
Instrument --> "0..1" InstrumentModelEnum : model
click InstrumentModelEnum href "../InstrumentModelEnum"
Instrument : name
Instrument : type
Instrument : vendor
Instrument --> "0..1" InstrumentVendorEnum : vendor
click InstrumentVendorEnum href "../InstrumentVendorEnum"
Inheritance
- NamedThing
- MaterialEntity
- Instrument
- MaterialEntity
Slots
| Name | Cardinality and Range | Description | Inheritance |
|---|---|---|---|
| vendor | 0..1 InstrumentVendorEnum |
direct | |
| model | 0..1 InstrumentModelEnum |
direct | |
| id | 1 Uriorcurie |
A unique identifier for a thing. Must be either a CURIE shorthand for a URI... | NamedThing |
| name | 0..1 String |
A human readable label for an entity | NamedThing |
| description | 0..1 String |
a human-readable description of a thing | NamedThing |
| alternative_identifiers | * Uriorcurie |
A list of alternative identifiers for the entity. | NamedThing |
| type | 1 Uriorcurie |
the class_uri of the class that has been instantiated | NamedThing |
Usages
Aliases
- device
Identifier and Mapping Information
Schema Source
- from schema: https://w3id.org/nmdc/nmdc
Mappings
| Mapping Type | Mapped Value |
|---|---|
| exact | OBI:0000968 |
LinkML Source
Direct
name: Instrument
description: A material entity that is designed to perform a function in a scientific
investigation, but is not a reagent. This class models the make and model of the
instrument, not the specific instance of the instrument.
from_schema: https://w3id.org/nmdc/nmdc
aliases:
- device
exact_mappings:
- OBI:0000968
is_a: MaterialEntity
slots:
- vendor
- model
slot_usage:
id:
name: id
examples:
- value: nmdc:inst-11-075j3n79
description: a production Instrument
structured_pattern:
syntax: '{id_nmdc_prefix}:inst-{id_shoulder}-{id_blade}'
interpolated: true
class_uri: nmdc:Instrument
unique_keys:
main:
unique_key_name: main
unique_key_slots:
- vendor
- model
description: A unique instrument is defined by its vendor and model.
Induced
name: Instrument
description: A material entity that is designed to perform a function in a scientific
investigation, but is not a reagent. This class models the make and model of the
instrument, not the specific instance of the instrument.
from_schema: https://w3id.org/nmdc/nmdc
aliases:
- device
exact_mappings:
- OBI:0000968
is_a: MaterialEntity
slot_usage:
id:
name: id
examples:
- value: nmdc:inst-11-075j3n79
description: a production Instrument
structured_pattern:
syntax: '{id_nmdc_prefix}:inst-{id_shoulder}-{id_blade}'
interpolated: true
attributes:
vendor:
name: vendor
from_schema: https://w3id.org/nmdc/nmdc
rank: 1000
owner: Instrument
domain_of:
- Instrument
range: InstrumentVendorEnum
model:
name: model
from_schema: https://w3id.org/nmdc/nmdc
rank: 1000
owner: Instrument
domain_of:
- Instrument
range: InstrumentModelEnum
id:
name: id
description: A unique identifier for a thing. Must be either a CURIE shorthand
for a URI or a complete URI
title: ID
notes:
- 'abstracted pattern: prefix:typecode-authshoulder-blade(.version)?(_seqsuffix)?'
- a minimum length of 3 characters is suggested for typecodes, but 1 or 2 characters
will be accepted
- typecodes must correspond 1:1 to a class in the NMDC schema. this will be checked
via per-class id slot usage assertions
- minting authority shoulders should probably be enumerated and checked in the
pattern
- This slot has no examples on purpose. linkml 1.12 copies a slot's examples into
every class that uses it, and no single id matches every class id pattern (https://github.com/microbiomedata/nmdc-schema/issues/3540).
Id examples belong in each class's slot_usage.
examples:
- value: nmdc:inst-11-075j3n79
description: a production Instrument
from_schema: https://w3id.org/nmdc/nmdc
structured_aliases:
- literal_form: workflow_execution_id
predicate: NARROW_SYNONYM
notes:
- JGI Analysis Tracker (JAT) macro nmdc_metadata.yaml, in an access-restricted
Bitbucket repository (https://bitbucket.org/berkeleylab/jgi-jat/macros/nmdc_metadata.yaml);
source is the public NMDC page describing how JAT is used.
source: https://github.com/microbiomedata/nmdc_automation/blob/main/data_management/README.md
- literal_form: data_object_id
predicate: NARROW_SYNONYM
notes:
- JGI Analysis Tracker (JAT) macro nmdc_metadata.yaml, in an access-restricted
Bitbucket repository (https://bitbucket.org/berkeleylab/jgi-jat/macros/nmdc_metadata.yaml);
source is the public NMDC page describing how JAT is used.
source: https://github.com/microbiomedata/nmdc_automation/blob/main/data_management/README.md
rank: 1000
identifier: true
owner: Instrument
domain_of:
- NamedThing
range: uriorcurie
required: true
pattern: ^(?:(nmdc):inst-([0-9][a-z]{0,6}[0-9])-([A-Za-z0-9]{1,}))$
structured_pattern:
syntax: '{id_nmdc_prefix}:inst-{id_shoulder}-{id_blade}'
interpolated: true
name:
name: name
description: A human readable label for an entity
title: Name
from_schema: https://w3id.org/nmdc/nmdc
rank: 1000
owner: Instrument
domain_of:
- Agent
- NamedThing
- Protocol
range: string
description:
name: description
description: a human-readable description of a thing
title: Description
from_schema: https://w3id.org/nmdc/nmdc
rank: 1000
slot_uri: dcterms:description
owner: Instrument
domain_of:
- ImageValue
- NamedThing
- Protocol
range: string
alternative_identifiers:
name: alternative_identifiers
description: A list of alternative identifiers for the entity.
title: Alternative Identifiers
from_schema: https://w3id.org/nmdc/nmdc
rank: 1000
owner: Instrument
domain_of:
- NamedThing
- MetaboliteIdentification
range: uriorcurie
multivalued: true
pattern: ^[a-zA-Z0-9][a-zA-Z0-9_\.]+:[a-zA-Z0-9_][a-zA-Z0-9_\-\/\.,\(\)\=\#]*$
type:
name: type
description: the class_uri of the class that has been instantiated
title: Type
notes:
- makes it easier to read example data files
- required for polymorphic MongoDB collections
comments:
- 'Deprecating this slot was proposed and rejected: without it, a document read
back from a polymorphic MongoDB collection cannot be resolved to the class it
instantiates. It is required on every class for that reason, rather than as
a convention inherited from LinkML.'
examples:
- value: nmdc:Biosample
- value: nmdc:Study
from_schema: https://w3id.org/nmdc/nmdc
structured_aliases:
- literal_form: workflow_execution_class
predicate: NARROW_SYNONYM
notes:
- JGI Analysis Tracker (JAT) macro nmdc_metadata.yaml, in an access-restricted
Bitbucket repository (https://bitbucket.org/berkeleylab/jgi-jat/macros/nmdc_metadata.yaml);
source is the public NMDC page describing how JAT is used.
source: https://github.com/microbiomedata/nmdc_automation/blob/main/data_management/README.md
rank: 1000
slot_uri: rdf:type
designates_type: true
owner: Instrument
domain_of:
- Agent
- EukEval
- FunctionalAnnotationAggMember
- IsotopologAddition
- IsotopologComposition
- PeptideQuantification
- ProteinQuantification
- GenomeFeature
- FunctionalAnnotation
- AttributeValue
- NamedThing
- OntologyRelation
- FailureCategorization
- Protocol
- CreditAssociation
- Doi
- ProvenanceMetadata
- MobilePhaseSegment
- PortionOfSubstance
- MagBin
- MetaboliteIdentification
range: uriorcurie
required: true
class_uri: nmdc:Instrument
unique_keys:
main:
unique_key_name: main
unique_key_slots:
- vendor
- model
description: A unique instrument is defined by its vendor and model.