Skip to content

Commit

Permalink
updated readme, improved descriptions, fixed website display error
Browse files Browse the repository at this point in the history
  • Loading branch information
Yves Ulrich Tittes committed Oct 1, 2024
1 parent c66add0 commit 1fc4697
Show file tree
Hide file tree
Showing 20 changed files with 1,056 additions and 1,266 deletions.
24 changes: 19 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,14 +1,28 @@

# OSCEM_Schemas
Schema for the Open Standards Community for Electron Microscopy (OSC-EM)
defining the electron microscopy related fields required by the OSCEM standard.
# OSCEM schemas
Schema for the Open Standards Community for Electron Microscopy (OSC-EM): Defining the electron microscopy-related fields required by the OSCEM standard.

Core idea is a modular system that allows for the combination of several sample and method parts to describe a variety of electron microscopy use cases. All original schemas can be found as .yaml under src/oscem_schemas/schema. Files named oscem_* refer to set collections of subschemas, e.g. single particle analysis. Schemas with more precise names such as "instrument" refer to a specific subschema that can be modularily imported into oscem_* schemas. Using the linkml generator functions the overall schemas can be exported to a variety of other formats such as json-schema, jsonld, OWL and RDF. We recommend using json-schema versions for validating metadata.
## Overview
The OSCEM schemas are designed to standardize metadata for electron microscopy, structured modularly to accommodate various methods and use cases. Each module can represent different aspects of an experiment, such as "sample", "instrument", and "author." These modules are combined into a comprehensive schema that defines the required metadata for a specific method. This standard ensures consistency in data collection, facilitates data validation, and enhances comparability between datasets.

To increase compatibility with different formats, we utilize LinkML, which allows us to export the schema to widely used formats.

## currently implemented methods
Life sciences:
- cryoEM:
- single particle analysis
- Tomography:
- subtomogram averaging
- cellular tomography

## Usage
All schemas are available in YAML format under the directory src/oscem_schemas/schema. Files prefixed with oscem_* refer to collections of subschemas, such as those for single particle analysis. Schemas with more specific names, like "instrument," represent individual subschemas that can be modularly incorporated into oscem_* schemas. By using LinkML generator functions, these schemas can be exported to various formats such as JSON Schema, JSON-LD, OWL, CSV and RDF. For metadata validation, we recommend using the JSON Schema versions.

## Note
Current versions are a work in progress, details might change.

## Website
Here you can browse all our keywords with descriptions.
Here you can browse all our keywords for single particle analysis with descriptions:
[https://osc-em.github.io/OSCEM_Schemas/](https://osc-em.github.io/OSCEM_Schemas/)

## Repository Structure
Expand Down
Binary file modified project/excel/oscem_schemas.xlsx
Binary file not shown.
2 changes: 1 addition & 1 deletion project/jsonld/oscem_schemas.context.jsonld
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"comments": {
"description": "Auto generated by LinkML jsonld context generator",
"generation_date": "2024-09-30T11:20:21",
"generation_date": "2024-10-01T15:30:42",
"source": "oscem_schemas.yaml"
},
"@context": {
Expand Down
144 changes: 23 additions & 121 deletions project/jsonld/oscem_schemas.jsonld

Large diffs are not rendered by default.

40 changes: 20 additions & 20 deletions project/jsonschema/oscem_schemas.schema.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
"$defs": {
"Acquisition": {
"additionalProperties": false,
"description": "",
"description": "A set of parameteres describing the data acquisition",
"properties": {
"beamshift": {
"anyOf": [
Expand Down Expand Up @@ -241,7 +241,7 @@
},
"Any": {
"additionalProperties": true,
"description": "Any type, used as the base for type-narrowing.\n\nSee https://linkml.io/linkml/schemas/advanced.html",
"description": "Any type, used as the base for type-narrowing.",
"title": "Any",
"type": [
"null",
Expand All @@ -252,7 +252,7 @@
]
},
"AssemblyEnum": {
"description": "",
"description": "Allowed molecular assembly values - compatible with the EMDB.",
"enum": [
"FILAMENT",
"HELICAL ARRAY",
Expand All @@ -263,7 +263,7 @@
},
"Author": {
"additionalProperties": false,
"description": "",
"description": "Details on the person performing the experiment.",
"properties": {
"country": {
"description": "Country of the institution",
Expand Down Expand Up @@ -294,7 +294,7 @@
"type": "string"
},
"role": {
"description": "Role of the author, i.e., principal investigator",
"description": "Role of the author, for example principal investigator",
"type": [
"string",
"null"
Expand Down Expand Up @@ -382,7 +382,7 @@
},
"ChromaticAberrationCorrector": {
"additionalProperties": false,
"description": "",
"description": "Special device used to correct instrument inherent chromatic aberration.",
"properties": {
"instrument_type": {
"description": "Details of a given specialist instrument",
Expand Down Expand Up @@ -443,7 +443,7 @@
},
"EnergyFilter": {
"additionalProperties": false,
"description": "",
"description": "A device used to filter for electrons with specific energy.",
"properties": {
"model": {
"description": "Make and model of a specilized device",
Expand Down Expand Up @@ -499,7 +499,7 @@
]
},
"funder": {
"description": "funder",
"description": "funding organization/person.",
"type": [
"string",
"null"
Expand Down Expand Up @@ -533,7 +533,7 @@
},
"Grid": {
"additionalProperties": false,
"description": "A class representing a grid",
"description": "Details on the grid used in the experiment.",
"properties": {
"film_material": {
"description": "Type of material the support film is made of",
Expand Down Expand Up @@ -699,7 +699,7 @@
},
"Ligand": {
"additionalProperties": false,
"description": "A class representing a ligand",
"description": "Information on ligands if present.",
"properties": {
"present": {
"description": "Whether the model contains any ligands",
Expand Down Expand Up @@ -728,7 +728,7 @@
},
"Molecule": {
"additionalProperties": false,
"description": "A class representing a molecule",
"description": "More detailed information about individual molecules.",
"properties": {
"expression_system": {
"description": "Scientific name of the organism used to produce the molecule of interest",
Expand Down Expand Up @@ -784,7 +784,7 @@
"type": "object"
},
"MoleculeClassEnum": {
"description": "",
"description": "Allowed molecule class values - compatible with the EMDB.",
"enum": [
"Antibiotic",
"Carbohydrate",
Expand All @@ -795,7 +795,7 @@
"type": "string"
},
"OrganizationTypeEnum": {
"description": "",
"description": "Allowed values for authors organizations.",
"enum": [
"Academic",
"Commercial",
Expand All @@ -807,7 +807,7 @@
},
"OverallMolecule": {
"additionalProperties": false,
"description": "A class representing the overall molecule",
"description": "Description of the overall molecule",
"properties": {
"assembly": {
"$ref": "#/$defs/AssemblyEnum",
Expand Down Expand Up @@ -848,7 +848,7 @@
},
"Person": {
"additionalProperties": false,
"description": "",
"description": "personal information",
"properties": {
"email": {
"description": "email",
Expand Down Expand Up @@ -892,7 +892,7 @@
},
"Phaseplate": {
"additionalProperties": false,
"description": "",
"description": "Used to modulate the phase of the electron wave.",
"properties": {
"instrument_type": {
"description": "Type of phaseplate",
Expand Down Expand Up @@ -962,7 +962,7 @@
},
"Sample": {
"additionalProperties": false,
"description": "A class representing a sample",
"description": "Unifying class to describe the full sample.",
"properties": {
"grid": {
"anyOf": [
Expand Down Expand Up @@ -1052,7 +1052,7 @@
},
"SpecialistOptics": {
"additionalProperties": false,
"description": "",
"description": "Optional optics used to correct for instrument limitations.",
"properties": {
"chromatic_aberration_corrector": {
"anyOf": [
Expand Down Expand Up @@ -1093,7 +1093,7 @@
},
"Specimen": {
"additionalProperties": false,
"description": "A class representing a specimen",
"description": "Description of specimen handling.",
"properties": {
"buffer": {
"description": "Name/composition of the (chemical) sample buffer during grid preparation",
Expand Down Expand Up @@ -1174,7 +1174,7 @@
},
"SphericalAberrationCorrector": {
"additionalProperties": false,
"description": "",
"description": "Special device used to correct instrument inherent spherical aberration.",
"properties": {
"instrument_type": {
"description": "Details of a given specialist instrument",
Expand Down
Loading

0 comments on commit 1fc4697

Please sign in to comment.