EchoSMs anatomical datastore schema

Type: object

This schema defines a structure for storing fish and plankton acoustic scattering model data, mainly for input to the echoSMs anatomical datastore.

The reference version of the schema (formatted as a JSON-schema file) will always be available in the echoSMs github repository.

No Additional Properties

Type: stringFormat: uuid

A Universally Unique IDentifier for this specimen as per RFC9562. Generated by the datastore.

Type: integer

A version number that increments whenever this specimen is updated. Generated and updated by the datastore.

Value must be greater or equal to 1

Type: stringFormat: date-time

The timestamp when this specimen dataset was last modified, in RFC9557 format, including the timezone. Generated and updated by the datastore.

Type: string

A note about the changes in this version.

Type: array of string

Names or identifying descriptions of persons or organisations that updated or created this dataset.

No Additional Items

Each item of this array must be:

Type: stringFormat: uuid

A Universally Unique IDentifier for a dataset as RFC9562. Datasets are used only to group multiple specimens together. They contain no information that is not already in the specimen metadata.

Type: string

A name for the dataset.

Type: array of string

A description of the specimen.

No Additional Items

Each item of this array must be:

Type: string

Type: enum (of string)

The type of anatomy that this dataset contains.

Must be one of:

  • "tissue"
  • "organ"
  • "organ system"
  • "organism"
  • "other"

Type: integer

The WoRMS aphiaID of the species in this dataset.

Value must be greater or equal to 1

Type: string

Taxonomical hierarchy level of class that is consistent with WoRMS.

Type: string

Taxonomical hierarchy level of order that is consistent with WoRMS.

Type: string

Taxonomical hierarchy level of family that is consistent with WoRMS.

Type: string

Taxonomical hierarchy level of genus that is consistent with WoRMS.

Type: string

Taxonomical hierarchy level of species that is consistent with WoRMS.

Type: array of string

Vernacular names for the organism.

No Additional Items

Each item of this array must be:

Type: string

A literature reference for the dataset. If available, a DOI or URI is recommended.

Type: string

Name of the data collection activity (if any), such as voyage code, project name, etc.

Type: string

Name or description of the location where organism was collected.

Type: number

Latitude of location where organism was collected.

Value must be greater or equal to -90 and lesser or equal to 90

Type: enum (of string)

Units for latitude. Positive values indicate north of the equator.

Must be one of:

  • "degrees_north"

Type: number

Longitude of location where organism was collected.

Value must be greater or equal to -180 and lesser or equal to 180

Type: enum (of string)

Units for longitude. Positive values indicate east of the prime meridian.

Must be one of:

  • "degrees_east"

Type: number

Depth below surface of organism collection location.

Value must be greater or equal to 0

Type: enum (of string)

Units for depth.

Must be one of:

  • "m"

Type: object

The date when the specimen was collected in RFC9557 format. Use an empty string if the date is unknown.

Date string

Type: stringFormat: date

Empty string

Type: const
Specific value: ""

Type: object

The date when the dataset was imaged, in RFC9557 format. Use an empty string if the date is unknown.

Date string

Type: stringFormat: date

Empty string

Type: const
Specific value: ""

Type: string

Description of data collection details.

Type: array of string

Explanatory notes about the shape data.

No Additional Items

Each item of this array must be:

Type: string

Type: enum (of string)

Method used to obtain the raw image data.

Must be one of:

  • "radiograph"
  • "CT"
  • "MRI"
  • "photograph"
  • "3D scanner"
  • "unknown"
  • "other"
  • "not applicable"

Type: enum (of string)

Method used to obtain the specimen shape.

Must be one of:

  • "manual outline of image(s)"
  • "automated outline of images(s)"
  • "3D scan of object"
  • "not applicable"
  • "unknown"
  • "other"

Type: string

Description of processing used to convert raw images into shapes, including any manipulation of image data (for example, smoothing, edge enhancement, rotation, etc).

Type: enum (of string)

Original scattering model type.

Must be one of:

  • "KRM"
  • "KA"
  • "DWBA"
  • "PTDWBA"
  • "FEM"
  • "BEM"
  • "MFS"
  • "other"
  • "unknown"
  • "none"


Method used to obtain sound speed in the specimen.

density to sound speed relationship

Type: const

Use of an empirical relationship between density and sound speed

Specific value: "density to sound speed relationship"

time-of-flight

Type: const

Estimated from the time taken for an acoustic pulse to travel from a source to destination transducer through the object being measured

Specific value: "time-of-flight"

pulse-echo

Type: const

Sound speed is determined by measuring the reflection time from the back of a tissue sample using a single transducer (vs the two used in a typical time-of-flight measurement)

Specific value: "pulse-echo"

inverted

Type: const

Inferred or inverted from a fitted scattering model or other approach

Specific value: "inverted"

literature

Type: const

Obtained from an existing publication, report, etc

Specific value: "literature"

unknown

Type: const

The method used to estimate the sound speed is unknown

Specific value: "unknown"

other

Type: const

The method used to estimate the sound speed is not one of the listed methods

Specific value: "other"


Method used to obtain density in the specimen

CT density

Type: const

Conversion of computer tomography Hounsfield unit numbers into density

Specific value: "CT density"

liquid displacement

Type: const

Division of object mass by it's volume, measured using liquid displacement

Specific value: "liquid displacement"

literature

Type: const

Obtained from an existing publication, report, etc

Specific value: "literature"

titration

Type: const

Density is determined by mixing two liquids of known densities until the animal reaches neutral buoyancy

Specific value: "titration"

pipette

Type: const

Gravimetric displacement that determines an animal's volume by weighing the mass of seawater required to return a graduated cylinder to its original volume after the animal has been added

Specific value: "pipette"

dual-density

Type: const

Density is calculated by weighing animals in two different fluids of known densities

Specific value: "dual-density"

from composition

Type: const

Weighted average of known densities of an animal's chemical components, such as water, lipids, proteins, and other contribution sources

Specific value: "from composition"

inverted

Type: const

Inferred or inverted from a fitted scattering model or other approach

Specific value: "inverted"

unknown

Type: const

The method used to estimate the density is unknown

Specific value: "unknown"

other

Type: const

The method used to estimate the density is not one of the listed methods

Specific value: "other"

Type: number

Size of the entire dataset (including raw data). Generated by the datastore server.

Value must be greater or equal to 0

Type: enum (of string)

Units for dataset_size. Generated by the datastore server.

Must be one of:

  • "megabyte"

Type: enum (of string)

The viewpoint of the imaging x-ray machine to the anatomical feature.

Must be one of:

  • "lateral"
  • "dorsal"
  • "other"

Type: string

The exposure time setting of the imaging x-ray machine.

Type: enum (of string)

Unit of exposure time.

Must be one of:

  • "s"

Type: string

Focal length setting of the imaging x-ray machine.

Type: enum (of string)

Unit of focal length.

Must be one of:

  • "m"

Type: number

The kilovoltage peak setting of the imaging x-ray machine.

Type: number

The milliamperage setting of the imaging x-ray machine.

Type: string

A name that identifies the specimen.

Type: enum (of string)

Condition of the specimen when it was imaged.

Must be one of:

  • "fresh"
  • "frozen"
  • "thawed"
  • "unknown"
  • "other"

Type: number

Length of the specimen.

Value must be greater or equal to 0

Type: enum (of string)

Units for lengths, dimensions, and sizes.

Must be one of:

  • "m"

Type: number

Weight of the specimen.

Value must be greater or equal to 0

Type: enum (of string)

Units for weight.

Must be one of:

  • "kg"

Type: enum (of string)

Sex of specimen

Must be one of:

  • "female"
  • "male"
  • "immature"
  • "unknown"

Type: enum (of string)

Type of length measurement.

Must be one of:

  • "total length"
  • "fork length"
  • "standard length"
  • "lower jaw fork length"
  • "total width"
  • "carapace length"
  • "curved fork length"
  • "disc width"
  • "stretched total length"
  • "CCAMLR krill - front of eye to tip of telson"
  • "unknown"
  • "other"

Type: enum (of string)

Type of shape data used for this specimen.

Must be one of:

  • "outline"
  • "surface"
  • "voxels"
  • "categorised voxels"
  • "geometric"

Type: array of object

Data that specifies the shapes in the specimen.

Must contain a minimum of 1 items

No Additional Items

Each item of this array must be:


Outline

Type: object

Represents a three-dimensional shape using a dorsal and lateral outline.

No Additional Properties

Type: const
Specific value: "outline"

Type: enum (of string)

Units for lengths, dimensions, and sizes.

Must be one of:

  • "m"

Type: enum (of string)

Type of reflecting boundary for this shape.

Must be one of:

  • "fixed-rigid"
  • "pressure-release"
  • "fluid-filled"
  • "elastic"

Type: array of number

x-coordinate of shape centreline.

Must contain a minimum of 1 items

No Additional Items

Each item of this array must be:

Type: array of number

y-coordinate of shape centreline.

Must contain a minimum of 1 items

No Additional Items

Each item of this array must be:

Type: array of number

z-coordinate of shape centreline.

Must contain a minimum of 1 items

No Additional Items

Each item of this array must be:

Type: array of number

Height of the shape at each centreline point.

Must contain a minimum of 1 items

No Additional Items

Each item of this array must be:

Type: number

Value must be greater or equal to 0

Type: array of number

Width of the shape at each centreline point.

Must contain a minimum of 1 items

No Additional Items

Each item of this array must be:

Type: number

Value must be greater or equal to 0

Type: array of number

Mass density of shape.

Must contain a minimum of 1 items

No Additional Items

Each item of this array must be:

Type: number

Value must be greater or equal to 0

Type: enum (of string)

Units for mass density.

Must be one of:

  • "kg/m^3"

Type: array of number

Compressional sound speed in shape.

Must contain a minimum of 1 items

No Additional Items

Each item of this array must be:

Type: number

Value must be greater or equal to 0

Type: enum (of string)

Units for sound speed.

Must be one of:

  • "m/s"

Type: array of number

Transversal (shear) sound speed in shape.

Must contain a minimum of 1 items

No Additional Items

Each item of this array must be:

Type: number

Value must be greater or equal to 0

Type: enum (of string)

Units for sound speed.

Must be one of:

  • "m/s"

Type: array of number

Ratio of mass densities of the shape and the surrounding material or shape.

Must contain a minimum of 1 items

No Additional Items

Each item of this array must be:

Type: number

Value must be greater or equal to 0

Type: array of number

Ratio of compressional sound speed of the and the surrounding material or shape.

Must contain a minimum of 1 items

No Additional Items

Each item of this array must be:

Type: number

Value must be greater or equal to 0

Type: array of number

Young's modulus, E, of the shape.

Must contain a minimum of 1 items

No Additional Items

Each item of this array must be:

Type: number

Value must be greater or equal to 0

Type: enum (of string)

Units for Young's modulus.

Must be one of:

  • "Pa"

Surface

Type: object

Represents a three-dimensional shape using a triangulated mesh.

No Additional Properties

Type: const
Specific value: "surface"

Type: enum (of string)

Units for lengths, dimensions, and sizes.

Must be one of:

  • "m"

Type: enum (of string)

Type of reflecting boundary for this shape.

Must be one of:

  • "fixed-rigid"
  • "pressure-release"
  • "fluid-filled"
  • "elastic"

Type: array of number

x-coordinates of surface nodes.

Must contain a minimum of 1 items

No Additional Items

Each item of this array must be:

Type: array of number

y-coordinates of surface nodes.

Must contain a minimum of 1 items

No Additional Items

Each item of this array must be:

Type: array of number

z-coordinates of surface nodes.

Must contain a minimum of 1 items

No Additional Items

Each item of this array must be:

Type: array of integer

Zero-based indices into x, y, and z that define node 0 of a surface triangle.

Must contain a minimum of 1 items

No Additional Items

Each item of this array must be:

Type: integer

Value must be greater or equal to 0

Type: array of integer

Zero-based indices into x, y, and z that define node 1 of a surface triangle.

Must contain a minimum of 1 items

No Additional Items

Each item of this array must be:

Type: integer

Value must be greater or equal to 0

Type: array of integer

Zero-based indices into x, y, and z that define node 2 of a surface triangle.

Must contain a minimum of 1 items

No Additional Items

Each item of this array must be:

Type: integer

Value must be greater or equal to 0

Type: array of number

x-component of outward-pointing normal vector for each facet.

Must contain a minimum of 1 items

No Additional Items

Each item of this array must be:

Type: array of number

y-component of outward-pointing normal vector for each facet.

Must contain a minimum of 1 items

No Additional Items

Each item of this array must be:

Type: array of number

z-component of outward-pointing normal vector for each facet.

Must contain a minimum of 1 items

No Additional Items

Each item of this array must be:

Type: object

Mass density of shape.

Scalar

Type: number

Value must be greater or equal to 0

Single element array

Type: array of number

Must contain a minimum of 1 items

Must contain a maximum of 1 items

No Additional Items

Each item of this array must be:

Type: number

Value must be greater or equal to 0

Type: enum (of string)

Units for mass density.

Must be one of:

  • "kg/m^3"

Type: object

Compressional sound speed in shape.

Scalar

Type: number

Value must be greater or equal to 0

Single element array

Type: array of number

Must contain a minimum of 1 items

Must contain a maximum of 1 items

No Additional Items

Each item of this array must be:

Type: number

Value must be greater or equal to 0

Type: enum (of string)

Units for sound speed.

Must be one of:

  • "m/s"

Type: object

Transversal (shear) sound speed in shape.

Scalar

Type: number

Value must be greater or equal to 0

Single element array

Type: array of number

Must contain a minimum of 1 items

Must contain a maximum of 1 items

No Additional Items

Each item of this array must be:

Type: number

Value must be greater or equal to 0

Type: enum (of string)

Units for sound speed.

Must be one of:

  • "m/s"

Type: object

Ratio of mass densities of the shape and the surrounding material or shape.

Scalar

Type: number

Value must be greater or equal to 0

Single element array

Type: array of number

Must contain a minimum of 1 items

Must contain a maximum of 1 items

No Additional Items

Each item of this array must be:

Type: number

Value must be greater or equal to 0

Type: object

Ratio of compressional sound speed of the and the surrounding material or shape.

Scalar

Type: number

Value must be greater or equal to 0

Single element array

Type: array of number

Must contain a minimum of 1 items

Must contain a maximum of 1 items

No Additional Items

Each item of this array must be:

Type: number

Value must be greater or equal to 0

Type: object

Young's modulus, E, of the shape.

Scalar

Type: number

Value must be greater or equal to 0

Single element array

Type: array of number

Must contain a minimum of 1 items

Must contain a maximum of 1 items

No Additional Items

Each item of this array must be:

Type: number

Value must be greater or equal to 0

Type: enum (of string)

Units for Young's modulus.

Must be one of:

  • "Pa"

Voxel

Type: object

Represents a three-dimensional shape using voxels.

No Additional Properties

Type: const
Specific value: "voxels"

Type: array of number

Voxel size, ordered x, y, z.

Must contain a minimum of 3 items

Must contain a maximum of 3 items

No Additional Items

Each item of this array must be:

Type: number

Value must be greater or equal to 0

Type: enum (of string)

Units for lengths, dimensions, and sizes.

Must be one of:

  • "m"

Type: array of array

Mass density of voxels.

Must contain a minimum of 1 items

No Additional Items

Each item of this array must be:

Type: array of array

Must contain a minimum of 1 items

No Additional Items

Each item of this array must be:

Type: array of number

Must contain a minimum of 1 items

No Additional Items

Each item of this array must be:

Type: enum (of string)

Units for mass density.

Must be one of:

  • "kg/m^3"

Type: array of array

Compressional sound speed of voxels.

Must contain a minimum of 1 items

No Additional Items

Each item of this array must be:

Type: array of array

Must contain a minimum of 1 items

No Additional Items

Each item of this array must be:

Type: enum (of string)

Units for sound speed.

Must be one of:

  • "m/s"

Categorised voxel

Type: object

Represents a three-dimensional shape using categorised voxels.

No Additional Properties

Type: const
Specific value: "categorised voxels"

Type: array of number

Voxel size, ordered x, y, z.

Must contain a minimum of 3 items

Must contain a maximum of 3 items

No Additional Items

Each item of this array must be:

Type: number

Value must be greater or equal to 0

Type: enum (of string)

Units for lengths, dimensions, and sizes.

Must be one of:

  • "m"

Type: array of array

Voxel categories

Must contain a minimum of 1 items

No Additional Items

Each item of this array must be:

Type: array of array

Must contain a minimum of 1 items

No Additional Items

Each item of this array must be:

Type: array of integer

Must contain a minimum of 1 items

No Additional Items

Each item of this array must be:

Type: array of number

Mass density of voxels categories.

Must contain a minimum of 1 items

No Additional Items

Each item of this array must be:

Type: number

Value must be greater or equal to 0

Type: enum (of string)

Units for mass density.

Must be one of:

  • "kg/m^3"

Type: array of number

Compressional sound speed of voxel categories.

Must contain a minimum of 1 items

No Additional Items

Each item of this array must be:

Type: enum (of string)

Units for sound speed.

Must be one of:

  • "m/s"

Geometric


Represents a three-dimensional shape using the combination of one or more geometric shapes.

No Additional Properties

Cylinder

Type: object

The centre of the cylinder for application of the origin, roll, pitch, and yaw is at radius=0 and halfway along the cylinder length.

No Additional Properties

Type: const
Specific value: "cylinder"

Type: number

Radius of the cylinder.

Value must be greater or equal to 0

Type: number

Length of the cylinder.

Value must be greater or equal to 0

Spheroid

Type: object

A sphere, prolate spheroid, or oblate spheroid. The polar axis of the spheroids lies along the x-axis of the echoSMs coordinate system (prior to application of any tilt, roll, and yaw). An oblate spheroid occurs when the equatorial radius is greater than the polar radius and a prolate spheroid when the polar radius is greater than the equatorial radius. A sphere is generated when the polar and equatorial radii are the same.

No Additional Properties

Type: const
Specific value: "spheroid"

Type: number

The equatorial radius of the spheroid. In the echoSMs coordinate system the equatorial radius is along the y- and z-axes.

Value must be greater or equal to 0

Type: number

The polar radius of the spheroid. In the echoSMs coordinate system the polar axis is the x-axis.

Value must be greater or equal to 0

Type: const
Specific value: "geometric"

Type: enum (of string)

Geometric form of this shape

Must be one of:

  • "cylinder"
  • "spheroid"

Type: enum (of string)

The units of the shape dimensions.

Must be one of:

  • "m"

Type: enum (of string)

The units used for pitch, roll, and yaw attributes

Must be one of:

  • "degrees"

Type: number Default: 0.0

The pitch of the shape in the echoSMs coordinate system.

Value must be greater or equal to 0.0 and lesser or equal to 180.0

Type: number Default: 0.0

The roll of the shape in the echoSMs coordinate system.

Value must be greater or equal to -90.0 and lesser or equal to 90.0

Type: number Default: 0.0

The yaw of the shape in the echoSMs coordinate system.

Value must be greater or equal to -180.0 and lesser or equal to 180.0

Type: number

Mass density of the shape.

Value must be greater or equal to 0

Type: enum (of string)

Units for mass density.

Must be one of:

  • "kg/m^3"

Type: number

Compressional sound speed of the shape.

Value must be greater or equal to 0

Type: enum (of string)

Units for sound speed.

Must be one of:

  • "m/s"

Type: number

Transversal (shear) sound speed in shape.

Value must be greater or equal to 0

Type: enum (of string)

Units for sound speed.

Must be one of:

  • "m/s"

Type: array of number

The location of the shape's centre, ordered (x, y, z) as per the echoSMs coordinate system.

Must contain a minimum of 3 items

Must contain a maximum of 3 items

No Additional Items

Each item of this array must be:

Type: enum (of string)

The units of the origin coordinates.

Must be one of:

  • "m"

Type: string

Name for the shape.

Type: enum (of string)

Type of anatomical feature represented by this shape.

Must be one of:

  • "body"
  • "swimbladder"
  • "backbone"
  • "bone"
  • "muscle"
  • "head"
  • "eye"
  • "organs"
  • "appendages"
  • "inclusion"
  • "other"

Type: boolean Default: "false"

Was the shape straightened during the processing.

Type: boolean Default: "false"

Was the shape smoothed during the processing.

Type: boolean Default: "false"

Was the shape rotated during the processing.

Type: array of string

Explanatory notes about the straightening, smoothing, and rotation of the shape.

No Additional Items

Each item of this array must be: