Skip to content

Commit fc08fda

Browse files
authored
Fixes property validation for generated types (#94)
Property validation is no more faithful to original schemas after fixing bugs in the build pipeline
1 parent 75ec39e commit fc08fda

1,121 files changed

Lines changed: 4827 additions & 4739 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

code/types/latest/+openminds/+chemicals/AmountOfChemical.m

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,11 +14,11 @@
1414
properties
1515
% When used in a mixture, enter the amount of the substance within the mixture (e.g., as concentration or as ratio). When used in its pure state, enter the used amount of the substance.
1616
amount (1,:) openminds.core.miscellaneous.QuantitativeValue ...
17-
{mustBeSpecifiedLength(amount, 0, 1)}
17+
{mustBeScalarOrEmpty(amount)}
1818

1919
% Add the chemical product that was used.
2020
chemicalProduct (1,:) openminds.internal.mixedtype.amountofchemical.ChemicalProduct ...
21-
{mustBeSpecifiedLength(chemicalProduct, 0, 1)}
21+
{mustBeScalarOrEmpty(chemicalProduct)}
2222
end
2323

2424
properties (Access = protected)

code/types/latest/+openminds/+chemicals/ChemicalMixture.m

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -26,18 +26,18 @@
2626

2727
% Enter all components, including other mixtures, that are part of this chemical mixture.
2828
hasPart (1,:) openminds.chemicals.AmountOfChemical ...
29-
{mustBeListOfUniqueItems(hasPart)}
29+
{mustBeMinLength(hasPart, 2), mustBeListOfUniqueItems(hasPart)}
3030

3131
% Enter the name of this chemical mixture.
3232
name (1,1) string
3333

3434
% Add the source of this chemical mixture.
3535
productSource (1,:) openminds.chemicals.ProductSource ...
36-
{mustBeSpecifiedLength(productSource, 0, 1)}
36+
{mustBeScalarOrEmpty(productSource)}
3737

3838
% Add the type of this mixture.
3939
type (1,:) openminds.controlledterms.ChemicalMixtureType ...
40-
{mustBeSpecifiedLength(type, 0, 1)}
40+
{mustBeScalarOrEmpty(type)}
4141
end
4242

4343
properties (Access = protected)

code/types/latest/+openminds/+chemicals/ChemicalSubstance.m

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -29,15 +29,15 @@
2929

3030
% Add the molecular entity that makes up this chemical substance.
3131
molecularEntity (1,:) openminds.controlledterms.MolecularEntity ...
32-
{mustBeSpecifiedLength(molecularEntity, 0, 1)}
32+
{mustBeScalarOrEmpty(molecularEntity)}
3333

3434
% Add the source of this chemical substance.
3535
productSource (1,:) openminds.chemicals.ProductSource ...
36-
{mustBeSpecifiedLength(productSource, 0, 1)}
36+
{mustBeScalarOrEmpty(productSource)}
3737

3838
% Enter the purity of this chemical substance.
3939
purity (1,:) openminds.internal.mixedtype.chemicalsubstance.Purity ...
40-
{mustBeSpecifiedLength(purity, 0, 1)}
40+
{mustBeScalarOrEmpty(purity)}
4141
end
4242

4343
properties (Access = protected)

code/types/latest/+openminds/+chemicals/ProductSource.m

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@
2323
properties
2424
% Add the globally unique and persistent digital identifier of this product.
2525
digitalIdentifier (1,:) openminds.core.digitalidentifier.RRID ...
26-
{mustBeSpecifiedLength(digitalIdentifier, 0, 1)}
26+
{mustBeScalarOrEmpty(digitalIdentifier)}
2727

2828
% Enter the identifier for this product, excluding its RRID (e.g., a catalog number).
2929
identifier (1,1) string
@@ -33,11 +33,11 @@
3333

3434
% Add the party (private, commercial or industrial) that provided this product.
3535
provider (1,:) openminds.internal.mixedtype.productsource.Provider ...
36-
{mustBeSpecifiedLength(provider, 0, 1)}
36+
{mustBeScalarOrEmpty(provider)}
3737

3838
% Enter the purity of the product as stated by the 'provider'.
3939
purity (1,:) openminds.internal.mixedtype.productsource.Purity ...
40-
{mustBeSpecifiedLength(purity, 0, 1)}
40+
{mustBeScalarOrEmpty(purity)}
4141
end
4242

4343
properties (Access = protected)

code/types/latest/+openminds/+computation/DataAnalysis.m

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -62,73 +62,73 @@
6262
properties
6363
% Add any user-defined parameters grouped in context-specific sets that are not covered in the standardized properties of this activity.
6464
customPropertySet (1,:) openminds.core.research.CustomPropertySet ...
65-
{mustBeListOfUniqueItems(customPropertySet)}
65+
{mustBeMinLength(customPropertySet, 1), mustBeListOfUniqueItems(customPropertySet)}
6666

6767
% Enter a description of this activity.
6868
description (1,1) string
6969

7070
% Enter the date and/or time on when this activity ended, formatted as either '2023-02-07T16:00:00+00:00' (date-time) or '16:00:00+00:00' (time).
7171
endTime (1,:) datetime ...
72-
{mustBeSpecifiedLength(endTime, 0, 1)}
72+
{mustBeScalarOrEmpty(endTime), mustBeValidTime(endTime)}
7373

7474
% Add the computational environment in which this computation was executed.
7575
environment (1,:) openminds.internal.mixedtype.dataanalysis.Environment ...
76-
{mustBeSpecifiedLength(environment, 0, 1)}
76+
{mustBeScalarOrEmpty(environment)}
7777

7878
% Add all inputs used by this activity.
7979
input (1,:) openminds.internal.mixedtype.dataanalysis.Input ...
80-
{mustBeListOfUniqueItems(input)}
80+
{mustBeMinLength(input, 1), mustBeListOfUniqueItems(input)}
8181

8282
% Add the launch configuration of this computation (e.g., command-line arguments).
8383
launchConfiguration (1,:) openminds.computation.LaunchConfiguration ...
84-
{mustBeSpecifiedLength(launchConfiguration, 0, 1)}
84+
{mustBeScalarOrEmpty(launchConfiguration)}
8585

8686
% Enter a lookup label for this activity that may help you to find this instance more easily.
8787
lookupLabel (1,1) string
8888

8989
% Add all outputs generated by this activity.
9090
output (1,:) openminds.internal.mixedtype.dataanalysis.Output ...
91-
{mustBeListOfUniqueItems(output)}
91+
{mustBeMinLength(output, 1), mustBeListOfUniqueItems(output)}
9292

9393
% Add all agents that performed this activity.
9494
performedBy (1,:) openminds.internal.mixedtype.dataanalysis.PerformedBy ...
95-
{mustBeListOfUniqueItems(performedBy)}
95+
{mustBeMinLength(performedBy, 1), mustBeListOfUniqueItems(performedBy)}
9696

9797
% Add the workflow recipe version used for this computation.
9898
recipe (1,:) openminds.computation.WorkflowRecipeVersion ...
99-
{mustBeSpecifiedLength(recipe, 0, 1)}
99+
{mustBeScalarOrEmpty(recipe)}
100100

101101
% Enter all resources used during this computation (e.g., core-hours or energy).
102102
resourceUsage (1,:) openminds.internal.mixedtype.dataanalysis.ResourceUsage ...
103-
{mustBeListOfUniqueItems(resourceUsage)}
103+
{mustBeMinLength(resourceUsage, 1), mustBeListOfUniqueItems(resourceUsage)}
104104

105105
% Enter the date and/or time on when this activity started, formatted as either '2023-02-07T16:00:00+00:00' (date-time) or '16:00:00+00:00' (time).
106106
startTime (1,:) datetime ...
107-
{mustBeSpecifiedLength(startTime, 0, 1)}
107+
{mustBeScalarOrEmpty(startTime), mustBeValidTime(startTime)}
108108

109109
% Add the agent that started this computation.
110110
startedBy (1,:) openminds.internal.mixedtype.dataanalysis.StartedBy ...
111-
{mustBeSpecifiedLength(startedBy, 0, 1)}
111+
{mustBeScalarOrEmpty(startedBy)}
112112

113113
% Enter the current status of this computation.
114114
status (1,:) openminds.controlledterms.ActionStatusType ...
115-
{mustBeSpecifiedLength(status, 0, 1)}
115+
{mustBeScalarOrEmpty(status)}
116116

117117
% Add all study targets of this activity.
118118
studyTarget (1,:) openminds.internal.mixedtype.dataanalysis.StudyTarget ...
119-
{mustBeListOfUniqueItems(studyTarget)}
119+
{mustBeMinLength(studyTarget, 1), mustBeListOfUniqueItems(studyTarget)}
120120

121121
% Enter any custom tags for this computation.
122122
tag (1,:) string ...
123-
{mustBeListOfUniqueItems(tag)}
123+
{mustBeMinLength(tag, 1), mustBeListOfUniqueItems(tag)}
124124

125125
% Add all analysis techniques that were used in this computation.
126126
technique (1,:) openminds.controlledterms.AnalysisTechnique ...
127-
{mustBeListOfUniqueItems(technique)}
127+
{mustBeMinLength(technique, 1), mustBeListOfUniqueItems(technique)}
128128

129129
% Add another computation that sent data to this one during runtime.
130130
wasInformedBy (1,:) openminds.internal.mixedtype.dataanalysis.WasInformedBy ...
131-
{mustBeSpecifiedLength(wasInformedBy, 0, 1)}
131+
{mustBeScalarOrEmpty(wasInformedBy)}
132132
end
133133

134134
properties (Access = protected)

code/types/latest/+openminds/+computation/DataCopy.m

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -62,73 +62,73 @@
6262
properties
6363
% Add any user-defined parameters grouped in context-specific sets that are not covered in the standardized properties of this activity.
6464
customPropertySet (1,:) openminds.core.research.CustomPropertySet ...
65-
{mustBeListOfUniqueItems(customPropertySet)}
65+
{mustBeMinLength(customPropertySet, 1), mustBeListOfUniqueItems(customPropertySet)}
6666

6767
% Enter a description of this activity.
6868
description (1,1) string
6969

7070
% Enter the date and/or time on when this activity ended, formatted as either '2023-02-07T16:00:00+00:00' (date-time) or '16:00:00+00:00' (time).
7171
endTime (1,:) datetime ...
72-
{mustBeSpecifiedLength(endTime, 0, 1)}
72+
{mustBeScalarOrEmpty(endTime), mustBeValidTime(endTime)}
7373

7474
% Add the computational environment in which this computation was executed.
7575
environment (1,:) openminds.internal.mixedtype.datacopy.Environment ...
76-
{mustBeSpecifiedLength(environment, 0, 1)}
76+
{mustBeScalarOrEmpty(environment)}
7777

7878
% Add all inputs used by this activity.
7979
input (1,:) openminds.internal.mixedtype.datacopy.Input ...
80-
{mustBeListOfUniqueItems(input)}
80+
{mustBeMinLength(input, 1), mustBeListOfUniqueItems(input)}
8181

8282
% Add the launch configuration of this computation (e.g., command-line arguments).
8383
launchConfiguration (1,:) openminds.computation.LaunchConfiguration ...
84-
{mustBeSpecifiedLength(launchConfiguration, 0, 1)}
84+
{mustBeScalarOrEmpty(launchConfiguration)}
8585

8686
% Enter a lookup label for this activity that may help you to find this instance more easily.
8787
lookupLabel (1,1) string
8888

8989
% Add all outputs generated by this activity.
9090
output (1,:) openminds.internal.mixedtype.datacopy.Output ...
91-
{mustBeListOfUniqueItems(output)}
91+
{mustBeMinLength(output, 1), mustBeListOfUniqueItems(output)}
9292

9393
% Add all agents that performed this activity.
9494
performedBy (1,:) openminds.internal.mixedtype.datacopy.PerformedBy ...
95-
{mustBeListOfUniqueItems(performedBy)}
95+
{mustBeMinLength(performedBy, 1), mustBeListOfUniqueItems(performedBy)}
9696

9797
% Add the workflow recipe version used for this computation.
9898
recipe (1,:) openminds.computation.WorkflowRecipeVersion ...
99-
{mustBeSpecifiedLength(recipe, 0, 1)}
99+
{mustBeScalarOrEmpty(recipe)}
100100

101101
% Enter all resources used during this computation (e.g., core-hours or energy).
102102
resourceUsage (1,:) openminds.internal.mixedtype.datacopy.ResourceUsage ...
103-
{mustBeListOfUniqueItems(resourceUsage)}
103+
{mustBeMinLength(resourceUsage, 1), mustBeListOfUniqueItems(resourceUsage)}
104104

105105
% Enter the date and/or time on when this activity started, formatted as either '2023-02-07T16:00:00+00:00' (date-time) or '16:00:00+00:00' (time).
106106
startTime (1,:) datetime ...
107-
{mustBeSpecifiedLength(startTime, 0, 1)}
107+
{mustBeScalarOrEmpty(startTime), mustBeValidTime(startTime)}
108108

109109
% Add the agent that started this computation.
110110
startedBy (1,:) openminds.internal.mixedtype.datacopy.StartedBy ...
111-
{mustBeSpecifiedLength(startedBy, 0, 1)}
111+
{mustBeScalarOrEmpty(startedBy)}
112112

113113
% Enter the current status of this computation.
114114
status (1,:) openminds.controlledterms.ActionStatusType ...
115-
{mustBeSpecifiedLength(status, 0, 1)}
115+
{mustBeScalarOrEmpty(status)}
116116

117117
% Add all study targets of this activity.
118118
studyTarget (1,:) openminds.internal.mixedtype.datacopy.StudyTarget ...
119-
{mustBeListOfUniqueItems(studyTarget)}
119+
{mustBeMinLength(studyTarget, 1), mustBeListOfUniqueItems(studyTarget)}
120120

121121
% Enter any custom tags for this computation.
122122
tag (1,:) string ...
123-
{mustBeListOfUniqueItems(tag)}
123+
{mustBeMinLength(tag, 1), mustBeListOfUniqueItems(tag)}
124124

125125
% Add all analysis techniques that were used in this computation.
126126
technique (1,:) openminds.controlledterms.AnalysisTechnique ...
127-
{mustBeListOfUniqueItems(technique)}
127+
{mustBeMinLength(technique, 1), mustBeListOfUniqueItems(technique)}
128128

129129
% Add another computation that sent data to this one during runtime.
130130
wasInformedBy (1,:) openminds.internal.mixedtype.datacopy.WasInformedBy ...
131-
{mustBeSpecifiedLength(wasInformedBy, 0, 1)}
131+
{mustBeScalarOrEmpty(wasInformedBy)}
132132
end
133133

134134
properties (Access = protected)

code/types/latest/+openminds/+computation/DeployedInterface.m

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,15 +17,15 @@
1717
properties
1818
% Add the accessibility of this deployed interface.
1919
accessibility (1,:) openminds.core.miscellaneous.Accessibility ...
20-
{mustBeSpecifiedLength(accessibility, 0, 1)}
20+
{mustBeScalarOrEmpty(accessibility)}
2121

2222
% Add the URL that serves as the entry point to this deployed interface.
2323
entryPoint (1,:) openminds.core.miscellaneous.WebResource ...
24-
{mustBeSpecifiedLength(entryPoint, 0, 1)}
24+
{mustBeScalarOrEmpty(entryPoint)}
2525

2626
% Enter the interface version that is deployed.
2727
interface (1,:) openminds.core.products.InterfaceVersion ...
28-
{mustBeSpecifiedLength(interface, 0, 1)}
28+
{mustBeScalarOrEmpty(interface)}
2929
end
3030

3131
properties (Access = protected)

code/types/latest/+openminds/+computation/Environment.m

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,21 +23,21 @@
2323
properties
2424
% Add the configuration of this computational environment.
2525
configuration (1,:) openminds.core.research.Configuration ...
26-
{mustBeSpecifiedLength(configuration, 0, 1)}
26+
{mustBeScalarOrEmpty(configuration)}
2727

2828
% Enter a short text describing this computational environment.
2929
description (1,1) string
3030

3131
% Add the hardware system on which this computational environment runs.
3232
hardware (1,:) openminds.computation.HardwareSystem ...
33-
{mustBeSpecifiedLength(hardware, 0, 1)}
33+
{mustBeScalarOrEmpty(hardware)}
3434

3535
% Enter a descriptive name for this computational environment.
3636
name (1,1) string
3737

3838
% Add all software versions available in this computational environment.
3939
software (1,:) openminds.core.products.SoftwareVersion ...
40-
{mustBeListOfUniqueItems(software)}
40+
{mustBeMinLength(software, 1), mustBeListOfUniqueItems(software)}
4141
end
4242

4343
properties (Access = protected)

code/types/latest/+openminds/+computation/GenericComputation.m

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -62,73 +62,73 @@
6262
properties
6363
% Add any user-defined parameters grouped in context-specific sets that are not covered in the standardized properties of this activity.
6464
customPropertySet (1,:) openminds.core.research.CustomPropertySet ...
65-
{mustBeListOfUniqueItems(customPropertySet)}
65+
{mustBeMinLength(customPropertySet, 1), mustBeListOfUniqueItems(customPropertySet)}
6666

6767
% Enter a description of this activity.
6868
description (1,1) string
6969

7070
% Enter the date and/or time on when this activity ended, formatted as either '2023-02-07T16:00:00+00:00' (date-time) or '16:00:00+00:00' (time).
7171
endTime (1,:) datetime ...
72-
{mustBeSpecifiedLength(endTime, 0, 1)}
72+
{mustBeScalarOrEmpty(endTime), mustBeValidTime(endTime)}
7373

7474
% Add the computational environment in which this computation was executed.
7575
environment (1,:) openminds.internal.mixedtype.genericcomputation.Environment ...
76-
{mustBeSpecifiedLength(environment, 0, 1)}
76+
{mustBeScalarOrEmpty(environment)}
7777

7878
% Add all inputs used by this activity.
7979
input (1,:) openminds.internal.mixedtype.genericcomputation.Input ...
80-
{mustBeListOfUniqueItems(input)}
80+
{mustBeMinLength(input, 1), mustBeListOfUniqueItems(input)}
8181

8282
% Add the launch configuration of this computation (e.g., command-line arguments).
8383
launchConfiguration (1,:) openminds.computation.LaunchConfiguration ...
84-
{mustBeSpecifiedLength(launchConfiguration, 0, 1)}
84+
{mustBeScalarOrEmpty(launchConfiguration)}
8585

8686
% Enter a lookup label for this activity that may help you to find this instance more easily.
8787
lookupLabel (1,1) string
8888

8989
% Add all outputs generated by this activity.
9090
output (1,:) openminds.internal.mixedtype.genericcomputation.Output ...
91-
{mustBeListOfUniqueItems(output)}
91+
{mustBeMinLength(output, 1), mustBeListOfUniqueItems(output)}
9292

9393
% Add all agents that performed this activity.
9494
performedBy (1,:) openminds.internal.mixedtype.genericcomputation.PerformedBy ...
95-
{mustBeListOfUniqueItems(performedBy)}
95+
{mustBeMinLength(performedBy, 1), mustBeListOfUniqueItems(performedBy)}
9696

9797
% Add the workflow recipe version used for this computation.
9898
recipe (1,:) openminds.computation.WorkflowRecipeVersion ...
99-
{mustBeSpecifiedLength(recipe, 0, 1)}
99+
{mustBeScalarOrEmpty(recipe)}
100100

101101
% Enter all resources used during this computation (e.g., core-hours or energy).
102102
resourceUsage (1,:) openminds.internal.mixedtype.genericcomputation.ResourceUsage ...
103-
{mustBeListOfUniqueItems(resourceUsage)}
103+
{mustBeMinLength(resourceUsage, 1), mustBeListOfUniqueItems(resourceUsage)}
104104

105105
% Enter the date and/or time on when this activity started, formatted as either '2023-02-07T16:00:00+00:00' (date-time) or '16:00:00+00:00' (time).
106106
startTime (1,:) datetime ...
107-
{mustBeSpecifiedLength(startTime, 0, 1)}
107+
{mustBeScalarOrEmpty(startTime), mustBeValidTime(startTime)}
108108

109109
% Add the agent that started this computation.
110110
startedBy (1,:) openminds.internal.mixedtype.genericcomputation.StartedBy ...
111-
{mustBeSpecifiedLength(startedBy, 0, 1)}
111+
{mustBeScalarOrEmpty(startedBy)}
112112

113113
% Enter the current status of this computation.
114114
status (1,:) openminds.controlledterms.ActionStatusType ...
115-
{mustBeSpecifiedLength(status, 0, 1)}
115+
{mustBeScalarOrEmpty(status)}
116116

117117
% Add all study targets of this activity.
118118
studyTarget (1,:) openminds.internal.mixedtype.genericcomputation.StudyTarget ...
119-
{mustBeListOfUniqueItems(studyTarget)}
119+
{mustBeMinLength(studyTarget, 1), mustBeListOfUniqueItems(studyTarget)}
120120

121121
% Enter any custom tags for this computation.
122122
tag (1,:) string ...
123-
{mustBeListOfUniqueItems(tag)}
123+
{mustBeMinLength(tag, 1), mustBeListOfUniqueItems(tag)}
124124

125125
% Add all analysis techniques that were used in this computation.
126126
technique (1,:) openminds.controlledterms.AnalysisTechnique ...
127-
{mustBeListOfUniqueItems(technique)}
127+
{mustBeMinLength(technique, 1), mustBeListOfUniqueItems(technique)}
128128

129129
% Add another computation that sent data to this one during runtime.
130130
wasInformedBy (1,:) openminds.internal.mixedtype.genericcomputation.WasInformedBy ...
131-
{mustBeSpecifiedLength(wasInformedBy, 0, 1)}
131+
{mustBeScalarOrEmpty(wasInformedBy)}
132132
end
133133

134134
properties (Access = protected)

0 commit comments

Comments
 (0)