Attributes¶
Properties are characteristics of a material that could be measured (e.g., chemical composition, density, or yield strength).
I recorded a Measurement Run of the density of my cookie. I measured the property to be a Nominal Real Value of 604 kg/m³.
Conditions are the environmental variables (typically measured) that may affect a process or measurement: e.g. Temperature, Pressure.
The reading on the thermometer inside my oven as I bake cookies was 355 degrees, and I know that my thermometer is only accurate to +- 5 degrees, so I'll make that a Uniform Real Value with a
lower_bound
of 350 and anupper_bound
of 360.
Parameters are the non-environmental variables (typically specified and controlled) that may affect a process or measurement: e.g. Oven Dial Temperature Position for a kiln firing, or Magnification for a measurement taken with a SEM.
The "Bake Cookies" Process Spec has two parameters: a Nominal Real Value of 30 minutes for bake duration, and a Nominal Real Value of 350 degrees for oven temperature setting
I know my oven tends to run cold, so as I was baking I set my temperature setting to 360 degrees. I recorded this in the Process Run as a parameter with a Nominal Real Value of 360 Degrees.
Typically, conditions are going to apply to measured environmental variables in Process Runs and Measurement Runs. It may be appropriate to specify a Parameter attribute on a Spec, and describe that attribute as a Condition on Runs of that Spec if the value is being measured as opposed to controlled during the Run. It may also be appropriate to include both a Parameter and a Condition on the Run if the value is both controlled and measured. The use of Conditions in Specs should be limited in favor of parameters.
Attributes may be annotated with an Attribute Template, which defines a canonical name and bounds on the attribute.
PropertyAndConditions¶
PropertyAndConditions are known or unmeasured Properties (at specified Conditions) of a Material Spec. Typically, these will come from technical specification sheets of purchased ingredients or reference materials such as safety data sheets (SDS).
I purchased 100% Ethanol. According to the SDS, pure ethanol has a Density (Property) of 0.789 g/cc at 20 degC (Condition 1) and 1 atm (Condition 2). I will add this as a PropertyAndConditions to the ethanol Material Spec. This PropertyAndConditions will have the density Property in the property field and a List containing both Conditions in the conditions field.
I purchased 80% Ethanol. According to the Technical Specifications, the solution is 80% ethanol and 20% water (Property). I will add this Compositional Value as a PropertyAndConditions to the Material Spec. However, this PropertyAndConditions will only have information in the property field, as no associated conditions are needed.
Origin¶
Attributes are annotated with the origin
of the data. This field can have the following values:
measured
: The Value of this Attribute was directly measured.predicted
: The Value of this Attribute came from a model, such as a complex simulation, a machine learning--derived computation or rule-of-thumb estimationsummary
: The Value of this Attribute is calculated based on a set of the same property at a finer level of granularity (aggregation of data).specified
: The Value of this Attribute was dictated, such as the oven temperature in a Process Spec. This value should only appear in Specs.computed
: The Value of this Attribute was derived directly from measured values, such as computing the yield stress from a stress-strain curve or computing the density from known mass and volume measurements.unknown
: The origin of this Value is unknown. This is the default value.
Property, Condition, Parameter¶
All three types of attributes have the same fields.
Field name | Value type | Default | Description |
---|---|---|---|
type |
String | Req. | One of: property , condition , parameter |
value |
Value | Req. | Any Value type |
name |
String | Req. | The name of the attribute, which is used to identify it within a Data Object |
notes |
String | None | Some free-form notes about the attribute. |
origin |
measured , predicted , summary , specified , computed , unknown |
unknown |
The origin of the attribute |
template |
Attribute Template | None | Attribute Template which defines bounds |
file_links |
Set[File Links] | Empty set | Links to associated files, with resource paths into the files API |
Constraints¶
Field name | Relationship | Field Name |
---|---|---|
len(name ) |
<= | 128, UTF-8 Encoded |
len(notes ) |
<= | 32,768 (32KB), UTF-8 Encoded |
template |
is a | template type that matches the attribute type, e.g. PropertyTemplate for a Property |
value |
is a | template 's Value Type |
value |
conforms to | template .bounds |
Examples¶
{
"type" : "property",
"name" : "A Real Valued Property",
"value" : {
"type" : "uniform_real",
"lower_bound" : 1.995,
"upper_bound" : 2.005,
"units": "inch"
},
"origin" : "measured",
"template" : {
"name" : "A Property Template",
"type" : "property_template",
"bounds" : {
"type" : "real_bounds",
"lower_bound" : 0.0,
"upper_bound" : 10.0,
"default_units": "meters"
}
},
"file_links" : [
{
"filename" : "How-to-make-lucky-charms.pdf",
"url" : "https://example.com/files/file/d8f12919-b201-4186-be95-10525eb4256a/version/2"
}
]
}
{
"type" : "condition",
"name" : "A Real Valued Condition",
"value" : {
"type" : "uniform_real",
"lower_bound" : 1.0,
"upper_bound" : 2.0,
"units": "degC"
},
"origin" : "measured",
"template" : {
"type" : "condition_template",
"name" : "temperature",
"bounds" : {
"type" : "real_bounds",
"lower_bound" : 0.0,
"upper_bound" : 1.0e6,
"default_units": "Kelvin"
}
}
}
{
"type" : "parameter",
"name" : "A Real Valued Parameter",
"value" : {
"type" : "nominal_real",
"nominal" : 1.0,
"units": "degC"
},
"origin" : "specified",
}
PropertyAndConditions¶
Field name | Value type | Default | Description |
---|---|---|---|
type |
String | Req. | property_and_conditions |
property |
Property | Req. | Property of the Material Spec |
conditions |
Set[Condition] | None | List of conditions the Property is valid at |
Examples¶
{
"type": "property_and_conditions",
"conditions": [{
"type": "condition",
"name": "ambient temperature",
"origin": "unknown",
"value": {
"nominal": 20.0,
"type": "nominal_real",
"units": "degree_Celsius"
},
},
{
"type": "condition",
"name": "atmospheric pressure",
"origin": "unknown",
"value": {
"nominal": 1.0,
"type": "nominal_real",
"units": "atm"
}
}],
"property": {
"type": "property",
"name": "density",
"origin": "unknown",
"value": {
"nominal": 0.7893,
"type": "nominal_real",
"units": "gram / cubic_centimeter"
}
}
}