Releases: linkml/linkml-model
v1.11.0-rc1
What's Changed
- Update metamodel files by @matentzn in #241
- Submit releases to the LinkML Zenodo community by @dalito in #240
- 1.11.0rc1 by @matentzn in #245
- Fix incorrect use of
valueslots inextra_slotsexamples. by @gouttegd in #243 - Fix invalid slot_usage on axis slot in array.yaml by @matentzn in #246
New Contributors
Full Changelog: v1.10.0...v1.11.0-rc1
v1.10.0 release
What's Changed
- move array to slot_expression by @sneakers-the-rat in #200
- add extra_slots metamodel slot by @sneakers-the-rat in #205
- Add URI or CURIE range documentation by @amc-corey-cox in #207
- Codespell inspired spelling fixes by @kevinschaper in #212
- Add the alias slot to the class_definition class by @kevinschaper in #211
- Remove ifabsent: false on extra_slots by @cmungall in #215
- README: Fix a grammatical error by @hoijui in #222
- Update GitHub Actions workflows (sync with other repos in org) by @sujaypatil96 in #225
- add LICENSE, CITATION.cff, .zenodo.json by @sierra-moxon in #228
- Quote Python version in release workflow by @matentzn in #230
- Minimal changes to support windows by @dalito in #224
- Update the linkml-model files with linkml 1.10.0-rc4 by @matentzn in #236
- Update to RC5 by @matentzn in #238
- Modernize: Drop py39, add py313 compatibility, switch to uv by @dalito in #237
- Bump the github-actions group with 3 updates by @dependabot[bot] in #239
- Use
anonymous_slot_expressioninstead ofrange_expressionforextra_slotsby @sneakers-the-rat in #227 - Refresh linkml-model documentation pages with latest and greatest features by @sujaypatil96 in #226
New Contributors
- @amc-corey-cox made their first contribution in #207
- @kevinschaper made their first contribution in #212
- @hoijui made their first contribution in #222
- @matentzn made their first contribution in #230
- @dependabot[bot] made their first contribution in #239
Full Changelog: v1.8.0...v1.10.0
v1.10.0-rc2
v1.10.0-rc1
What's Changed
- Remove ifabsent: false on extra_slots by @cmungall in #215
- README: Fix a grammatical error by @hoijui in #222
- Update GitHub Actions workflows (sync with other repos in org) by @sujaypatil96 in #225
- add LICENSE, CITATION.cff, .zenodo.json by @sierra-moxon in #228
New Contributors
Full Changelog: v1.9.0rc1...v1.10.0-rc1
v1.9.0-rc2
What's Changed
- Remove ifabsent: false on extra_slots by @cmungall in #215
- README: Fix a grammatical error by @hoijui in #222
- Update GitHub Actions workflows (sync with other repos in org) by @sujaypatil96 in #225
- add LICENSE, CITATION.cff, .zenodo.json by @sierra-moxon in #228
New Contributors
Full Changelog: v1.9.0rc1...v1.9.0-rc2
v1.9.0rc1
What's Changed
- move array to slot_expression by @sneakers-the-rat in #200
- add extra_slots metamodel slot by @sneakers-the-rat in #205
- Add URI or CURIE range documentation by @amc-corey-cox in #207
- Codespell inspired spelling fixes by @kevinschaper in #212
- Add the alias slot to the class_definition class by @kevinschaper in #211
New Contributors
- @amc-corey-cox made their first contribution in #207
- @kevinschaper made their first contribution in #212
Full Changelog: v1.8.0...v1.9.0rc1
v1.8.0
Highlights
New primitive types for use in scientific computing
Provides new primitives such as uint32 for precise specification of numeric base types
https://github.com/linkml/linkml-model/pull/185/files
This work was done by the @linkml/ndarray-wg as part of the Berkeley neuro-hackathon
Enum model enhancements
permissible_values now allows for many of the same slots as other elements, allowing for placement in an is-a hierarchy. See #192, #194, #195
This metamodel also introduces the concept of enum bindings. See the examples here: https://github.com/linkml/linkml-model/blob/main/tests/input/examples/schema_definition-enum_bindings-1.yaml
For example, given a class for modeling concepts or vocabulary terms in your model:
Concept:
description: A generic class for representing an element from a vocabulary or ontology.
attributes:
id:
identifier: true
description: CURIE/identifier for the concept. E.g. ENVO:1234567
name:
description: human-readable label of the concept. E.g. "blood"
vocabulary:
description: E.g. UBERON, PO, ENVO, NCITand a class that uses it:
EnvironmentalMaterialSample:
attributes:
name:
description: E.g. my blood sample
sample_material_type:
range: ConceptThis allows for a great deal of flexibility. But what if we want to restrict the values of the id field of the referenced concept based on a (static of dynamic) enum?
We can modify the attribute or slot:
sample_material_type:
range: Concept
bindings:
- binds_value_of: id
range: ENVOMaterialEnum
obligation_level: RECOMMENDED
description: Material type from the ENVO ontologyCurrently this only serves as documentation as logic to validate bindings is not yet implemented
What's Changed
- remove domain from is_a, mixin, mixins per ticket 1261 by @sierra-moxon in #192
- Adding extended types. Fixes linkml/linkml#1871 by @cmungall in #185
- Allowing permissible_value to have implements and instantiates by @cmungall in #194
- Adding is_a and mixins to slots for permissible_value. by @cmungall in #195
- Adding enum bindings by @cmungall in #193
- Adding type_mappings to metamodel by @cmungall in #196
- Allowing multivalued to be used in slot expressions as well as top level slots. by @cmungall in #197
- Update ifabsent metamodel by @vincentkelleher in #198
New Contributors
- @vincentkelleher made their first contribution in #198
Full Changelog: v1.7.0...v1.8.0
v1.8.0rc1
Highlights
New primitive types for use in scientific computing
Provides new primitives such as uint32 for precise specification of numeric base types
https://github.com/linkml/linkml-model/pull/185/files
This work was done by the @linkml/ndarray-wg as part of the Berkeley neuro-hackathon
Enum model enhancements
permissible_values now allows for many of the same slots as other elements, allowing for placement in an is-a hierarchy. See #192, #194, #195
This metamodel also introduces the concept of enum bindings. See the examples here: https://github.com/linkml/linkml-model/blob/main/tests/input/examples/schema_definition-enum_bindings-1.yaml
For example, given a class for modeling concepts or vocabulary terms in your model:
Concept:
description: A generic class for representing an element from a vocabulary or ontology.
attributes:
id:
identifier: true
description: CURIE/identifier for the concept. E.g. ENVO:1234567
name:
description: human-readable label of the concept. E.g. "blood"
vocabulary:
description: E.g. UBERON, PO, ENVO, NCITand a class that uses it:
EnvironmentalMaterialSample:
attributes:
name:
description: E.g. my blood sample
sample_material_type:
range: ConceptThis allows for a great deal of flexibility. But what if we want to restrict the values of the id field of the referenced concept based on a (static of dynamic) enum?
We can modify the attribute or slot:
sample_material_type:
range: Concept
bindings:
- binds_value_of: id
range: ENVOMaterialEnum
obligation_level: RECOMMENDED
description: Material type from the ENVO ontologyCurrently this only serves as documentation as logic to validate bindings is not yet implemented
What's Changed
- Relax domain on is_a, mixin, mixins such that inheritance is valid for permissible values; fixes linkml/linkml#1261 by @sierra-moxon in #192
- Adding is_a and mixins to slots for permissible_value. by @cmungall in #195
- Allowing permissible_value to have implements and instantiates by @cmungall in #194
- Adding extended types. Fixes linkml/linkml#1871 by @cmungall in #185
- Adding enum bindings by @cmungall in #193
- Adding type_mappings to metamodel by @cmungall in #196
- Allowing multivalued to be used in slot expressions as well as top level slots. by @cmungall in #197
- Update ifabsent metamodel to allow for
EnumName(PermissibleValue)by @vincentkelleher in #198
New Contributors
- @vincentkelleher made their first contribution in #198
Full Changelog: v1.7.0...v1.8.0rc1
v1.7.0
Array Support
The 1.7.x series of LinkML sees the introduction of first-class array support through the introduction of the linkml:array metamodel slot.
Basic example of usage, to define a 3D array:
TemperatureDataset:
attributes:
temperature_matrix:
range: float
unit:
ucum_code: K
array:
exact_number_dimensions: 3
Individual axes can be named and constrained. See #181 for a log of discussions. Additional documentation will be added to the main LinkML site.
Thanks to the work of the @linkml/ndarray-wg
This work was conducted as part of the LinkML Neurodata Hackashop sponsored by NeurodataWithoutBorders and DANDI and organized by @satra and @oruebel at Berkeley in Feb 2024.
Additional Highights
- Include LABEL in Permissible Value Formula Options by @nicholsn in #171
- Make maximum_value and minimum_value accept linkml:Any by @sneakers-the-rat in #176
What's Changed
- Fix repository name in release workflow by @pkalita-lbl in #169
- Remove Mark from author list by @nlharris in #170
- Include LABEL in Permissible Value Formula Options by @nicholsn in #171
- XY alias removal of axes by @melonora in #172
- Bump to latest linkml version for dev group by @cmungall in #173
- Add missing oslc and bibo prefixes by @sneakers-the-rat in #177
- Make maximum_value and minimum_value accept linkml:Any by @sneakers-the-rat in #176
- Update array metamodel and examples by @rly in #175
- Adding examples to test by @cmungall in #174
- Adding mappings to SIO by @cmungall in #178
- Mention BasicSubset just once by @yarikoptic in #182
- First pass at native NDArray support. by @cmungall in #181
- 1.7.0 release candidate by @cmungall in #179
- Remove "has_extra_dimensions" by @rly in #184
- 1.7.0rc3 by @cmungall in #183
New Contributors
- @nlharris made their first contribution in #170
- @nicholsn made their first contribution in #171
- @melonora made their first contribution in #172
- @sneakers-the-rat made their first contribution in #177
Full Changelog: v1.6.0...v1.7.0
v1.7.0rc1
What's Changed
- Fix repository name in release workflow by @pkalita-lbl in #169
- Include LABEL in Permissible Value Formula Options by @nicholsn in #171
- XY alias removal of axes by @melonora in #172
- Bump to latest linkml version for dev group by @cmungall in #173
- Add missing oslc and bibo prefixes by @sneakers-the-rat in #177
- Make maximum_value and minimum_value accept linkml:Any by @sneakers-the-rat in #176
- Update array metamodel and examples by @rly in #175
- Adding examples to test by @cmungall in #174
- Adding mappings to SIO by @cmungall in #178
New Contributors
- @nlharris made their first contribution in #170
- @nicholsn made their first contribution in #171
- @melonora made their first contribution in #172
- @sneakers-the-rat made their first contribution in #177
Full Changelog: v1.6.0...v1.7.0rc1