MatML_api#

class elematic.api.MatML_api.AssociationDetails(Associate: str = None, Relationship: str = None, Notes=None, gds_collector_=None, **kwargs_)#

This element declares the content model for AssociationDetails, which contains a description of a relationship of the component to another component in a complex material system such as a composite, weld, or multilayer material. AssociationDetails is composed of the following elements.

  • Associate contains the name of a component’s associate. For example, a TiC coating has been placed on AISI 1018 steel coupons. The Associate of the steel, then, is the “titanium carbide coating.” Associate must occur once and only once within the AssociationDetails element.

  • Relationship contains a description of the relationship between a component and the associate. For example, the associate of the “steel” component is the “titanium carbide coating.” The relationship of the “steel” to the “titanium carbide coating” is that the steel is the “substrate” for the coating. Relationship must occur once and only once within the AssociationDetails element.

  • Notes contains any additional information concerning the association and may occur once or not at all within the AssociationDetails element.

class elematic.api.MatML_api.AuthorityDetails(id: str = None, Name: Name = None, Notes: str = None, gds_collector_=None, **kwargs_)#

This element declares the content model for AuthorityDetails, which contains a description of an authority referenced by other elements, such as the Specification and Name elements. An authority is typically an organisation that is the authoritative source of information about the element that is referencing it.

AuthorityDetails has one required attribute, id, which may be arbitrarily assigned but must be unique among id attributes assigned elsewhere in a MatML document.

AuthorityDetails additionally has two elements, Name and Notes.

  • Name contains the name of the Authority. Name must occur once and only once within the AuthorityDetails element.

  • Notes contains any additional information concerning the parameter and may occur once or not at all within the AuthorityDetails element.

class elematic.api.MatML_api.BulkDetails(Name: Name = None, Class: Class = None, Subclass: Class = None, Specification: Specification = None, Source: Source = None, Form: Form = None, ProcessingDetails: ProcessingDetails = None, Characterization: Characterization = None, PropertyData: PropertyData = None, Notes: str = None, gds_collector_=None, **kwargs_)#

This element declares the content model for BulkDetails, which contains a description of the bulk material and is composed of the following elements.

  • Name contains the material’s name and has one optional attribute, authority, for identifying an authoritative source of material names. Name must occur once and only once within the BulkDetails element.

  • Class contains the material’s class and may occur zero or more times within the BulkDetails element.

  • Subclass contains the material’s subclass(es) and may occur zero or more times within the BulkDetails element.

  • Specification contains the material’s specification(s) and has one optional attribute, authority, for identifying an authoritative source of material specifications. Specification may occur zero or more times within the BulkDetails element.

  • Source contains the name of the source of the material and may occur once or not at all within the BulkDetails element.

  • Form contains the form of the material and may occur once or not at all within the BulkDetails element. It has an optional element Geometry, for describing the dimensions of the Component. For additional information, see the documentation for the Form type.

  • ProcessingDetails contains a description of a processing step for the material and may occur zero or more times within the BulkDetails element. For additional information, see the documentation for the ProcessingDetails element.

  • Characterization contains the characterization of the material, including the formula, chemical composition, phase composition, and dimensional details. Characterization may occur once or not at all within the BulkDetails element. For additional information, see the documentation for the Characterization element.

  • PropertyData contains the property data for the material and may occur zero or more times within the BulkDetails element. For additional information, see the documentation for the PropertyData element.

  • Notes contains any additional information concerning the bulk material and may occur once or not at all within the BulkDetails element.

class elematic.api.MatML_api.Characterization(Formula: str = None, ChemicalComposition: ChemicalComposition = None, PhaseComposition: Name = None, DimensionalDetails: DimensionalDetails = None, Notes: str = None, gds_collector_=None, **kwargs_)#

This element declares the content model for Characterization, which contains a description of the chemical composition of the bulk material or component and is composed of the following elements.

  • Formula contains a string representation of the chemical formula for the bulk material or component and must occur once and only once within the Characterization element. For further details see documentation of the Formula element.

  • ChemicalComposition contains a description of the compounds and elements that comprise the bulk material or component and may occur once or not at all within the Characterization element. For additional information, see the documentation for the ChemicalComposition element.

  • PhaseComposition contains a description of the phases that comprise the bulk material or component and may occur zero or more times within the Characterization element. For additional information, see the documentation for the PhaseComposition element.

  • DimensionalDetails contains information relating to component or bulk material dimensional characteristics such as grain size, porosity, precipitate size and distribution, etc., and may occur zero or more times within the Characterization element. For additional information, see the documentation for the DimensionalDetails element.

  • Notes contains any additional information concerning the Characterization and may occur once or not at all within the Characterization element.

class elematic.api.MatML_api.ChemicalComposition(Compound: Compound = None, Element: Element = None, gds_collector_=None, **kwargs_)#

This element declares the content model for ChemicalComposition, which contains a detailed description of the compounds and elements that comprise the bulk material or component. ChemicalComposition must contain at least one Compound element or Element element but may contain as many of each element as needed.

  • Compound contains a description of a compound. For additional information, see the documentation for the Compound element.

  • Element contains a description of an element. For additional information, see the documentation for the Element element.

class elematic.api.MatML_api.Class(Name: Name = None, ParentMaterial: ParentMaterialType = None, ParentSubClass: Class = None, gds_collector_=None, **kwargs_)#

This element declares the content model for Class, which is the material class to which the Material belongs.

The Class can either have a Name or ParentMaterial element:

  • Name contains a string representing the name of the material’s class and may occur only once within the Class element.

  • ParentMaterial is a reference by id to another Material in the MatML_Doc and can occur only once in the Class element.

class elematic.api.MatML_api.ComponentDetails(id: str = None, Name: Name = None, Class: Class = None, Subclass: Class = None, Specification: Specification = None, Source: Source = None, Form: Form = None, ProcessingDetails: ProcessingDetails = None, Characterization: Characterization = None, PropertyData: PropertyData = None, AssociationDetails: AssociationDetails = None, ComponentDetails_member: ComponentDetails = None, gds_collector_=None, **kwargs_)#

This element declares the content model for ComponentDetails, which contains a description of a component within the bulk material and has one optional attribute, id, which may be used as an identification specifier for the component and is especially useful for complex systems such as composite laminates.

ComponentDetails is composed of the following elements.

  • Name contains the component’s name and has one optional attribute, authority, for identifying an authoritative source of component names. Name must occur once and only once within the ComponentDetails type.

  • Class contains the component’s class and may occur zero or more times within the ComponentDetails element. For additional information, see the documentation for the Class type.

  • Subclass contains the component’s subclass(es) and may occur zero or more times within the ComponentDetails element. For additional information, see the documentation for the SubClass type.

  • Specification contains the component’s specification(s) and has one optional attribute, authority, for identifying an authoritative source of component specifications. Specification may occur zero or more times within the ComponentDetails type.

  • Source contains the name of the source of the component and may occur once or not at all within the ComponentDetails type. For additional information, see the documentation for the SourceDetails element.

  • Form contains the form of the component and may occur once or not at all within the ComponentDetails type. It has an optional element Geometry, for describing the dimensions of the Component. For additional information, see the documentation for the Form type.

  • ProcessingDetails contains a description of a processing step for the component and may occur zero or more times within the ComponentDetails type. For additional information, see the documentation for the ProcessingDetails element.

  • Characterization contains the characterization of the component, including the formula, chemical composition, phase composition, and dimensional details. Characterization may occur once or not at all within the ComponentDetails type. For additional information, see the documentation for the Characterization element.

  • PropertyData contains the property data for the component and may occur zero or more times within the ComponentDetails type. For additional information, see the documentation for the PropertyData element.

  • AssociationDetails contains a description of a relationship of the component to another component and may occur zero or more times within the ComponentDetails type. For additional information, see the documentation for the AssociationDetails element. Notes contains any additional information concerning the component and may occur once or not at all within the ComponentDetails type.

  • ComponentDetails contains a description of a component within the component and is used to support encoding of information for complex materials systems such as composites. ComponentDetails may occur zero or more times within a ComponentDetails element.

class elematic.api.MatML_api.Compound(Element: Element = None, Concentration: Concentration = None, Notes: str = None, gds_collector_=None, **kwargs_)#

This element declares the content model for Compound, which contains the elemental description of a chemical compound and is composed the following elements.

  • Element contains the description of a chemical element and must occur one or more times within the Compound element. For additional information, see the documentation for the Element element.

  • Concentration contains the concentration of the compound and may occur once or not at all within the Compound element. For additional information, see the documentation for the Concentration element.

  • Notes contains any additional information concerning the compound and may occur once or not at all within the Compound element.

class elematic.api.MatML_api.Concentration(Value: Value = None, Units: Units = None, Qualifier: str = None, Uncertainty: Uncertainty = None, Notes: str = None, gds_collector_=None, **kwargs_)#

This element declares the content model for Concentration and is composed of the following elements.

  • Value contains the value of the concentration and has one required attribute, format, for indicating the format of the value. Value must occur once and only once within the Concentration element.

  • Units contains the units for the value of the concentration and must occur once and only once within the Concentration element. For additional information, see the documentation for the Units element.

  • Qualifier contains any qualifier pertinent to the value of the concentration (e.g. “min,” “max,” etc.) and may occur once or not at all within the Concentration element.

  • Uncertainty contains the measurement uncertainty(ies) of the data in Data and may occur zero or more times within the Concentration element. For additional information, see the documentation for the Uncertainty type.

  • Notes contains any additional information concerning the concentration and may occur once or not at all within the Concentration element.

class elematic.api.MatML_api.DataSourceDetails(id: str = None, type_: str = None, Name: Name = None, Notes: str = None, gds_collector_=None, **kwargs_)#

This element declares the content model for DataSourceDetails, which contains a description of a data source referenced by the PropertyData element.

DataSourceDetails has one required attribute, id, which may be arbitrarily assigned but must be unique among id attributes assigned elsewhere in a MatML document.

DataSourceDetails also has one optional attribute, type, for specifying the type of the data source (examples include “unpublished report,” “journal,” “handbook,” etc.)

DataSourceDetails is composed of the following elements.

  • Name contains the name of the data source and has one optional attribute, authority, for identifying an authoritative source of data source names. Name must occur once and only once within the DataSourceDetails element.

  • Notes contains any additional information concerning the data source and may occur once or not at all within the DataSourceDetails element.

class elematic.api.MatML_api.DimensionalDetails(Name: Name = None, Value: Value = None, Units: Units = None, Qualifier: str = None, Uncertainty: Uncertainty = None, Notes: str = None, gds_collector_=None, **kwargs_)#

This element declares the content model for DimensionalDetails, which contains a description of a dimensional characteristic (e.g. grain size, porosity, precipitate size and distribution, etc.) of the bulk material or component and is composed of the following elements.

  • Name contains the name of the characteristic and has one optional attribute, authority, for identifying an authoritative source of dimensional characteristic names. Name must occur once and only once within the DimensionalDetails element.

  • Value contains the value of the dimensional characteristic and has one required attribute, format, for indicating the format of the value. Value must occur once and only once within the DimensionalDetails element.

  • Units contains the units for the value of the dimensional characteristic and must occur once and only once within the DimensionalDetails element. For additional information, see the documentation for the Units type.

  • Qualifier contains any qualifier pertinent to the value of the dimensional characteristic (e.g. “min,” “max,” etc.) and may occur once or not at all within the DimensionalDetails element.

  • Uncertainty contains the measurement uncertainty(ies) of the data in Data and may occur zero or more times within the DimensionalDetails element. For additional information, see the documentation for the Uncertainty type.

  • Notes contains any additional information concerning the dimensional characteristic and may occur once or not at all within the DimensionalDetails element.

class elematic.api.MatML_api.Element(Symbol: SymbolType = None, Concentration: Concentration = None, Notes: str = None, gds_collector_=None, **kwargs_)#

This element declares the content model for Element and is composed of the following elements.

  • Symbol contains the symbol for the chemical element, which is one among those enumerated by the ChemicalElementSymbol datatype. Symbol has one optional attribute, subscript, for indicating the subscript (formula units) of the chemical element. Symbol must occur once and only once within the Element element. For additional information, see the documentation for the ChemicalElementSymbol datatype.

  • Concentration contains the concentration of the element and may occur once or not at all within the Element element. For additional information, see the documentation for the Concentration element.

  • Notes contains any additional information concerning the element and may occur once or not at all within the Element element.

Symbol: - This element declares the content model for Symbol, which contains the symbol for the chemical element. - The entry for Symbol is selected from among the strings enumerated by the ChemicalElementSymbol datatype. - Symbol has one optional attribute, subscript, for indicating the subscript (formula units) of the chemical element.

class elematic.api.MatML_api.Form(Description: Name = None, Geometry: Geometry = None, Notes: str = None, gds_collector_=None, **kwargs_)#

This element declares the content model for Form, which contains a description of the form of the bulk material or component.

It also contains an element to describe the geometry of the the form and an element for any notes. For additional information, see the documentation for the Geometry element.

class elematic.api.MatML_api.Geometry(Shape: str = None, Dimensions: str = None, Orientation: str = None, Notes: str = None, gds_collector_=None, **kwargs_)#

This element declares the content model for Geometry, which contains a description of the geometry of the bulk material, component or specimen and is composed of the following elements.

  • Shape is a string describing the shape of the bulk material or component and must occur once and only once within the Geometry element.

  • Dimensions is a string describing the dimensions of the bulk material or component and may occur once or not at all within the Geometry element.

  • Orientation is a string describing the orientation of the bulk material or component and may occur once or not at all within the Geometry element.

  • Notes contains any additional information concerning the geometry and may occur once or not at all within the Geometry element.

class elematic.api.MatML_api.Glossary(Term: GlossaryTerm = None, gds_collector_=None, **kwargs_)#

This element declares the content model for Glossary, which contains descriptions of material and property terms used in the document. Glossary must contain one or more GlossaryTerm elements.

class elematic.api.MatML_api.GlossaryTerm(Name: Name = None, Definition: str = None, Abbreviation: str = None, Synonym: str = None, Notes: str = None, gds_collector_=None, **kwargs_)#

This element declares the content model for GlossaryTerm which is composed of the following elements.

  • Name contains the term’s name and has one optional attribute, authority, for identifying an authoritative source of terms. Name must occur once and only once within the GlossaryTerm element.

  • Definition contains the term’s definition and must occur once and only once within the GlossaryTerm element.

  • Abbreviation contains the term’s abbreviations and may occur zero or more times within the GlossaryTerm element.

  • Synonym contains the term’s synonyms and may occur zero or more times within the GlossaryTerm element.

  • Notes contains any additional information concerning the term and may occur once or not at all within the GlossaryTerm element.

class elematic.api.MatML_api.Graphs(Graph: GraphType = None, gds_collector_=None, **kwargs_)#

This element declares the content model for Graphs, which must contain one or more Graph elements.

Graph uses the W3C’s Scalable Vector Graphics markup language (SVG) for describing two dimensional graphics and allows for three types of graphical objects: vector graphics shapes, images, and text.

Graph must occur one or more times within the Graphs element. For more information concerning SVG, see the documentation at http://www.w3.org/TR/SVG/.

class elematic.api.MatML_api.MatML_Doc(Material: Material = None, Metadata: Metadata = None, gds_collector_=None, **kwargs_)#

This element declares the content model for MatML_Doc, topmost in the hierarchy of elements that comprise a document marked up using MatML. Content models describe the relationships of the element and its child elements.

  • MatML_Doc must contain one or more Material elements.

  • Metadata contains descriptions of the data sources, properties, measurement techniques, specimens, and parameters which are referenced when materials property data are encoded using other elements. Metadata may occur once or not at all within the Material element. For more information, see the documentation for the Metadata element.

class elematic.api.MatML_api.Material(id: str = None, layers: int = None, local_frame_of_reference: str = None, BulkDetails: BulkDetails = None, ComponentDetails: BulkDetails = None, Graphs: Graphs = None, Glossary: Glossary = None, gds_collector_=None, **kwargs_)#

This element declares the content model for Material, which contains materials data. Material has three optional attributes.

  1. The first attribute, id, may be used as an identification specifier for the material, which is especially useful for complex systems such as composite laminates.

  2. The second attribute, layers, may be used to indicate the number of layers in complex systems such as composite laminates.

  3. The third attribute, local_frame_of_reference, may be used as an identification specifier for the local material orientation relative to the global frame of reference, which is especially useful for complex systems such as anisotropic materials.

Material is composed of the following elements.

  • BulkDetails contains a description of the bulk material and must occur once and only once within the Material element. For additional information, see the documentation for the BulkDetails element.

  • ComponentDetails contains a description of a component within the bulk material and may occur zero or more times within the Material element. ComponentDetails may be used to describe complex materials systems such as welds (e.g. the base metal, the heat affected zone, and the weld metal) or composites (e.g. the whiskers, fibers, and matrix of a fiber-reinforced composite material). For additional information, see the documentation for the ComponentDetails element.

  • Graphs contains descriptions of two dimensional graphics and may occur once or not at all within the Material element. For additional information, see the documentation for the Graphs element.

  • Glossary contains descriptions of the material and property terms used in the document and may occur once or not at all within the Material element. For additional information, see the documentation for the Glossary element.

class elematic.api.MatML_api.MeasurementTechniqueDetails(id: str = None, Name: Name = None, Notes: str = None, gds_collector_=None, **kwargs_)#

This element declares the content model for MeasurementTechniqueDetails, which contains a description of a measurement technique referenced by the PropertyData element.

MeasurementTechniqueDetails has one required attribute, id, which may be arbitrarily assigned but must be unique among id attributes assigned elsewhere in a MatML document.

MeasurementTechniqueDetails is composed of the following elements.

  • Name contains the name of the measurement technique and has one optional attribute, authority, for identifying an authoritative source of measurement techniques. Name must occur once and only once within the MeasurementTechniqueDetails element.

  • Notes contains any additional information concerning the measurement technique, such as a description of the technique, and may occur once or not at all within the MeasurementTechniqueDetails element.

class elematic.api.MatML_api.Metadata(AuthorityDetails: AuthorityDetails = None, DataSourceDetails: DataSourceDetails = None, MeasurementTechniqueDetails: MeasurementTechniqueDetails = None, ParameterDetails: ParameterDetails = None, PropertyDetails: PropertyDetails = None, SourceDetails: SourceDetails = None, SpecimenDetails: SpecimenDetails = None, TestConditionDetails: TestConditionDetails = None, gds_collector_=None, **kwargs_)#

This element declares the content model for Metadata, which contains descriptions of authorities, data sources, measurement techniques, parameters, properties, material and component sources, specimens, and test conditions. Metadata is composed of the following elements.

  • AuthorityDetails contains a description of authorities referenced from the Specification and Name elements and may occur zero or more times within the Metadata element. For additional information, see the documentation for the AuthorityDetails element.

  • DataSourceDetails contains a description of a data source referenced using the PropertyData element and may occur zero or more times within the Metadata element. For additional information, see the documentation for the DataSourceDetails element.

  • MeasurementTechniqueDetails contains a description of a measurement technique referenced using the PropertyData element and may occur zero or more times within the Metadata element. For additional information, see the documentation for the MeasurementTechniqueDetails element.

  • ParameterDetails contains a description of a parameter referenced using the PropertyData element and may occur zero or more times within the Metadata element. For additional information, see the documentation for the ParameterDetails element.

  • PropertyDetails contains a description of a property for which materials data are encoded using the PropertyData element and may occur zero or more times within the Metadata element. For additional information, see the documentation for the Prope`r`tyDetails element.

  • SourceDetails contains a description of the source of a material or component referenced using the Source element and may occur zero or more times within the Metadata element. For additional information, see the documentation for the SourceDetails element.

  • SpecimenDetails contains a description of a specimen referenced using the PropertyData element and may occur zero or more times within the Metadata element. For additional information, see the documentation for the SpecimenDetails element.

  • TestCondtionDetails contains a description of the test condtion(s) referenced using the PropertyData element and may occur zero or more times within the Metadata element. For additional information, see the documentation for the TestCondtionDetails element.

class elematic.api.MatML_api.Name(authority: str = None, valueOf_=None, gds_collector_=None, **kwargs_)#

This element declares the content model for Name, which contains a string representing a name and has one optional attribute, authority, for identifying an authoritative source of names in the context in which the Name element is used.

class elematic.api.MatML_api.ParameterDetails(id: str = None, Name: Name = None, Units: Units = None, Unitless: Unitless = None, Notes: str = None, gds_collector_=None, **kwargs_)#

This element declares the content model for ParameterDetails, which contains a description of a parameter referenced by the ParameterValue element.

ParameterDetails has one required attribute, id, which may be arbitrarily assigned but must be unique among id attributes assigned elsewhere in a MatML document.

ParameterDetails is composed of the following elements.

  • Name contains the name of the parameter and has one optional attribute, authority, for identifying an authoritative source of parameter names. Name must occur once and only once within the ParameterDetails element.

  • Units and Unitless are mutually exclusive elements for describing the parameter’s units. Units or Unitless must occur once and only once within the ParameterDetails element. For additional information, see the documentation for the Units and Unitless elements.

  • Notes contains any additional information concerning the parameter and may occur once or not at all within the ParameterDetails element.

class elematic.api.MatML_api.ParameterValue(parameter: str = None, format: DataFormat = None, Data: DataType = None, Uncertainty: Uncertainty = None, Qualifier: str = None, Notes: str = None, gds_collector_=None, **kwargs_)#

This element declares the content model for ParameterValue, which contains the value of a parameter. ParameterValue has two required attributes.

  1. The first attribute, parameter, references an id attribute specified in a ParameterDetails element so that the descriptive details of the parameter are tied to the value.

  2. The second attribute, format, indicates the format of the value. If used, “mixed” indicates that the not all of the parameter values are of the same type (e.g. a “No Break” value for an otherwise numeric set of Charpy Izod test results). If used, then the “format” attribute on each “Data” item should be individually set.

ParameterValue is composed of the following elements.

  • Data contains the property data and has one required attribute, format, for indicating the format of the data. Data must occur once and only once within the ParameterValue element.

  • Qualifier contains any qualifier(s) pertinent to the data in ParameterValue (e.g. “min,” “max,” etc.) and may occur zero or more times within the PropertyData element.

  • Uncertainty contains the measurement uncertainty(ies) of the data in ParameterValue and may occur once or not at all within the ParameterValue element. For additional information, see the documentation for the Uncertainty element.

  • Notes contains any additional information concerning the property data and may occur once or not at all within the PropertyData element.

class elematic.api.MatML_api.PhaseComposition(Name: Name = None, Concentration: Concentration = None, PropertyData: PropertyData = None, Notes: str = None, gds_collector_=None, **kwargs_)#

This element declares the content model for PhaseComposition, which contains a description of a phase that comprises the bulk material or component and is composed of the following elements.

  • Name contains the name of the phase and has one optional attribute, authority, for identifying an authoritative source of phase names. Name must occur once and only once within the PhaseComposition element.

  • Concentration contains the concentration of the phase and may occur once or not at all within the PhaseComposition element. For additional information, see the documentation for the Concentration element.

  • PropertyData contains property data for the phase and may occur zero or more times within the PhaseComposition element. For additional information, see the documentation for the PropertyData element.

  • Notes contains any additional information concerning the phase and may occur once or not at all within the PhaseComposition element.

class elematic.api.MatML_api.ProcessingDetails(Name: Name = None, ParameterValue: ParameterValue = None, Result: str = None, Notes: str = None, gds_collector_=None, **kwargs_)#

This element declares the content model for ProcessingDetails, which contains a description of a processing step for the bulk material or component. ProcessingDetails is composed of the following elements.

  • Name contains the name of the processing step and has one optional attribute, authority, for identifying an authoritative source of processing step names. Name must occur once and only once within the ProcessingDetails element.

  • ParameterValue contains the value of a parameter under which the processing step occurred and may occur zero or more times within the ProcessingDetails element. For additional information, see the documentation for the ParameterValue element.

  • Result is a string that contains a description of the outcome or result of the processing step and may occur once or not at all within the ProcessingDetails element.

  • Notes contains any additional information concerning the processing step and may occur once or not at all within the ProcessingDetails element.

class elematic.api.MatML_api.PropertyData(property: str = None, technique: str = None, source: str = None, specimen: str = None, test: str = None, delimiter: str = ',', quote: str = None, Data: DataType = None, Uncertainty: Uncertainty = None, Qualifier: str = None, ParameterValue: ParameterValue = None, Notes: str = None, gds_collector_=None, **kwargs_)#

This element declares the content model for PropertyData, which contains property data. PropertyData has seven attributes.

  1. The first attribute, property, is required and references an id attribute specified in a PropertyDetails element so that the descriptive details for the property are tied to the data found in the Data element.

  2. The second attribute, technique, is optional and references an id attribute Specified in a MeasurementTechniqueDetails element so that the Descriptive details for the measurement technique are tied to the data found In the Data element.

  3. The third attribute, source, is optional and references an id attribute specified in a DataSourceDetails element so that the descriptive details for the data source are tied to the data found in the Data element.

  4. The fourth attribute, specimen, is optional and references an id attribute specified in a SpecimenDetails element so that the descriptive details for the specimen are tied to the data found in the Data element.

  5. The fifth attribute, test, is optional and references an id attribute specified in a TestCondtionDetails element so that the descriptive details for the test condition(s) are tied to the data found in the Data element.

  6. The sixth attribute, delimiter, specifies the delimiter that separates multiple values in the Data, Qualifier, Uncertainty, and ParameterValue elements. The default value is a comma (‘,’).

  7. The seventh attribute, quote, specifies the string that is used to quote values in the Data, Qualifier, Uncertainty and ParameterValue elements. The default value is a null string, which is equivalent to saying that the values are not quoted.

PropertyData is composed of the following elements.

  • Data contains the property data and has one required attribute, format, for indicating the format of the data. Data must occur once and only once within the PropertyData element.

  • Qualifier contains any qualifier(s) pertinent to the data in Data (e.g. “min,” “max,” etc.) and may occur once or not at all within the PropertyData element.

  • Uncertainty contains the measurement uncertainty(ies) of the data in Data and may occur once or not at all within the PropertyData element. For additional information, see the documentation for the Uncertainty element.

  • ParameterValue contains the value(s) of a parameter under which the data were determined and may occur zero or more times within the PropertyData element. For additional information, see the documentation for the ParameterValue element.

  • Notes contains any additional information concerning the property data and may occur once or not at all within the PropertyData element.

Note - Multiple entries in the Data, Qualifier, UncertaintyValue, and ParameterValue elements must be comma delimited and synchronized across elements, i.e., the number of entries in each of these four elements must be equal.

class elematic.api.MatML_api.PropertyDetails(id: str = None, type_: str = None, Name: Name = None, Units: Units = None, Unitless: Unitless = None, Notes: str = None, gds_collector_=None, **kwargs_)#

This element declares the content model for PropertyDetails, which contains a description of a property referenced by the PropertyData element.

PropertyDetails has one required attribute, id, which may be arbitrarily assigned but must be unique among id attributes assigned elsewhere in a MatML document.

PropertyDetails also has one optional attribute, type, for specifying the type of the property (examples include “thermal,” “mechanical,” “electrical,” etc.).

PropertyDetails is composed of the following elements.

  • Name contains the name of the property and has one optional attribute, authority, for identifying an authoritative source of property names. Name must occur once and only once within the PropertyDetails element.

  • Units and Unitless are mutually exclusive elements for describing the property’s units. Units or Unitless must occur once and only once within the PropertyDetails element. For additional information, see the documentation for the Units and Unitless elements.

  • Notes contains any additional information concerning the property and may occur once or not at all within the PropertyDetails element.

class elematic.api.MatML_api.Source(source: str = None, gds_collector_=None, **kwargs_)#

This element declares the content model for Source, which contains an id attribute specified in a SourceDetails element representing the source of the bulk material or component.

class elematic.api.MatML_api.SourceDetails(id: str = None, type_: str = None, Name: Name = None, Notes: str = None, gds_collector_=None, **kwargs_)#

This element declares the content model for SourceDetails, which contains the name of the source of the component.

Name contains the name of the source and has one optional attribute, Notes.

Notes contains any additional information concerning the data source and may occur once or not at all within the DataSourceDetails element.

class elematic.api.MatML_api.Specification(authority: str = None, valueOf_=None, gds_collector_=None, **kwargs_)#

This element declares the content model for Specification, which contains a string representing the specification for the bulk material or component and has one optional attribute, authority, for identifying an authoritative source of specifications.

class elematic.api.MatML_api.SpecimenDetails(id: str = None, type_: str = None, Name: Name = None, Notes: str = None, Geometry: Geometry = None, gds_collector_=None, **kwargs_)#

This element declares the content model for SpecimenDetails, which contains a description of a specimen referenced by the PropertyData element.

SpecimenDetails has one required attribute, id, which may be arbitrarily assigned but must be unique among id attributes assigned elsewhere in a MatML document.

SpecimenDetails also has one optional attribute, type, for specifying the type of the specimen (examples include “cylindrical,” “rectangular,” “full cross-section,” “pressed,” etc.)

SpecimenDetails is composed of the following elements. SpecimenDetails also has 3 optional elements, Name, Geometry, and Notes.

  • Name contains the name of the specimen and has one optional attribute, authority, for identifying an authoritative source of specimen names. Name may occur once or not at all within the SpecimenDetails element.

  • Geometry describes the dimensions of the Component. For additional information, see the documentation for the Geometry type. Geometry may occur once or not at all within the SpecimenDetails element.

  • Notes contains any additional information concerning the specimen and may occur once or not at all within the SpecimenDetails element.

class elematic.api.MatML_api.SymbolType(subscript='1', valueOf_=None, gds_collector_=None, **kwargs_)#

This element declares the content model for Symbol, which contains the symbol for the chemical element. The entry for Symbol is selected from among the strings enumerated by the ChemicalElementSymbol datatype.

Symbol has one optional attribute, subscript, for indicating the subscript (formula units) of the chemical element.

class elematic.api.MatML_api.TestConditionDetails(id: str = None, ParameterValue: ParameterValue = None, Notes: str = None, gds_collector_=None, **kwargs_)#

This element declares the content model for TestConditionDetails, which contains a description of the test conditions referenced by the PropertyData element.

TestConditionDetails has one required attribute, id, which may be arbitrarily assigned but must be unique among id attributes assigned elsewhere in a MatML document.

TestConditionDetails has two optional elements, ParameterValue and Notes.

  • ParameterValue contains the value(s) of a parameter, i.e., a test condition, and may occur zero or more times within the TestConditionDetails element. For additional information, see the documentation for the ParameterValue element.

  • Notes contains any additional information concerning the test conditions and may occur once or not at all within the TestConditionDetails element.

class elematic.api.MatML_api.Uncertainty(DistributionType: str = 'Normal/Gaussian', Num_Std_Dev: float = 2, Percentile: float = None, ConfidenceLevel: float = None, Value: str = None, Units: Units = None, Unitless: Unitless = None, Notes: str = None, Scale='Linear', gds_collector_=None, **kwargs_)#

This element declares the content model for Uncertainty, which contains a description of the measurement uncertainty of the data.

Uncertainty has 1 optional attributes:

  1. Name is a description of the nature of the uncertainty value, for example ‘6 sigma’, ‘Gaussian’ or ‘2 std dev.’

Uncertainty is composed of the following elements.

  • Value contains the value of the uncertainty and has one required attribute, format, for indicating the format of the value. Value must occur once and only once within the Uncertainty element.

  • Units contains the units for the value of the uncertainty and must occur once and only once within the Uncertainty element. For additional information, see the documentation for the Units element.

  • Percentile is a value indicating the percentage of the data population that have values less than or equal to that expressed by the Uncertainty value. Percentile can occur zero or more times. If Percentile is not given then Value is interpreted as being an equal and unspecified deviation above and below the property value(s). An uncertainty of 2 standard deviations below the mean for a normally distributed dataset would have a uncertainty percentile of 5%, and 2 standard deviations above the mean would be 95%.

  • Notes contains any additional information concerning the uncertainty, such as a description of the evaluation of the uncertainty, and may occur once or not at all within the Uncertainty element.

class elematic.api.MatML_api.Unit(power: float = None, description: str = None, Name: str = None, Currency: CurrencyCode = None, gds_collector_=None, **kwargs_)#

This element declares the content model for Unit, which contains a unit and has two optional attributes.

  1. The first attribute, power, is used to indicate the exponent for Unit.

  2. The second attribute, description, is used to describe Unit.

Note - Multiple Unit elements are multiplied together to form units. Division is specified by setting the power attribute of Unit equal to “-1.” For additional information, see the documentation for the Units element.

Unit has a choice between two elements:

  • Name is the Name of the unit, and can occur only once in the Unit element.

  • Currency is the CurrencyCode for the unit, if it is a unit expressing cost in an ISO 4217 recognised currency.

class elematic.api.MatML_api.Unitless(gds_collector_=None, **kwargs_)#

This element declares the content model for Unitless, which is an empty element used whenever a property, parameter, or uncertainty value has no units.

class elematic.api.MatML_api.Units(system: str = None, factor: float = None, name: str = None, description: str = None, Unit=None, gds_collector_=None, **kwargs_)#

This element declares the content model for Units, which contains units and has four optional attributes.

  1. The first attribute, system, is used to indicate the units system, such as “SI.”

  2. The second attribute, factor, is used to indicate a constant multiplier in floating point format.

  3. The third attribute, name, is used to indicate the name of the units

  4. The fourth attribute, description, is used to describe the units.

Units is composed of the following elements.

  • Unit contains a unit and must occur one or more times within the Units element. For additional information, see the documentation for the Unit element.

Note - Multiple Unit elements are multiplied together to form the units. Division is specified by using setting the power attribute of Unit equal to “-1.”

string(format: str | None = None) str#

Returns a formatted representation of the Units.

Args:

format (str | None, optional): the units string formatter. Say your units are pound-force (lbf) per square inch (in), the following formats will return: Defaults to None.

  • format = ‘explicit’: ‘lbf^1·in^-2’

  • format = ‘short’: ‘lbf·in^-2’

  • format = None (default): ‘lbf / in^-2’

Returns:

str: the formatted string representation

class elematic.api.MatML_api.Value(format: DataFormat = None, valueOf_=None, gds_collector_=None, **kwargs_)#

This element declares the content model for Value, which contains a string representing a value. Value has one required attribute, format, for indicating the format of the value.