
Material Markup Language
Public Review Draft 01, 06 June 2006
Document identifier:
materials-matml-spec-pr-01
Location:
http://docs.oasis-open.org/materials/
Editor:
Brett Johanson, The Boeing Company <brett.m.johanson@boeing.com>
Contributors:
J.G. (Gil) Kaufman, Individual
Sally Fahrenholz-Mann,.ASM International
Craig Seymour, Associate Member
TC Members:
Sally Fahrenholz-Mann, ASM International
David Celznick, ASM International
Fran Cverna, ASM International
Craig Seymour, Individual
Michael Mitchell, NASA
Carlos Beauchamp, NIST
Kent Reed, NIST
Brett Johanson, The Boeing Company
James Pillers, The Boeing Company
David Goodall, Rolls-Royce, plc
Abstract:
This specification describes a standard XML format for the exchange of materials information. Information such as product form, heat treatment, mechanical properties and chemistry can be transmitted.
Status:
This document was last revised or approved by the OASIS Materials Markup Language TC on the above date. The level of approval is also listed above. Check the current location noted above for possible later revisions of this document. This document is updated periodically on no particular schedule.
Technical Committee members should send comments on this specification to the Technical Committee’s email list. Others should send comments to the Technical Committee by using the “Send A Comment” button on the Technical Committee’s web page at www.oasis-open.org/committees/materials.
For information on whether any patents have been disclosed that may be essential to implementing this specification, and any offers of patent licensing terms, please refer to the Intellectual Property Rights section of the Technical Committee web page (www.oasis-open.org/committees/materials/ipr.php).
The non-normative errata page for this specification is located at www.oasis-open.org/committees/materials.
Table of Contents
2.1.40 MeasurementTechniqueDetails
Appendix D. Terminology Specifications and Materials Nomenclature
The materials markup language or MatML was initially developed by the National Institute of Standards and Technology (NIST). Prior versions to this work can be found on www.matml.org and are authored and edited by E.F. Begley on behalf of the MatML working group (1999-2001) and the MatML Steering Committee (2002).
The intent of this document is to standardize the way companies such as material suppliers, test houses, manufacturing companies and all other companies who use and depend on materials information exchange data.
The key words must, must not, required, shall, shall not, should, should not, recommended, may, and optional in this document are to be interpreted as described in [RFC2119]. For a list of terminology and recommended naming conventions for materials related data transmittal, refer to table 1 of appendix D.
The following sections and subsections of this document outline the recommended format to be used in the electronic submission, transmission and collection of materials related information, properties and characteristics used in the materials industry.
For schema code and other normative code, use the Code paragraph style. It fits 71 characters. For example:
- <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
- <!--
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.
The main element:
-->
- <xsd:element name="MatML_Doc">
- <xsd:annotation>
<xsd:documentation>
</xsd:documentation>
</xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
<xsd:element name="Material" type="Material" maxOccurs="unbounded" />
<xsd:element name="Metadata" type="Metadata" minOccurs="0" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
- <!--
This element declares the content model for Associate, which contains a string representing a component's associate.
Type definitions follow:
-->
- <xsd:simpleType name="Associate">
- <xsd:annotation>
<xsd:documentation>
</xsd:documentation>
</xsd:annotation>
<xsd:restriction base="xsd:string" />
</xsd:simpleType>
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.
- <xsd:complexType name="AssociationDetails">
- <xsd:annotation>
<xsd:documentation>
</xsd:documentation>
</xsd:annotation>
- <xsd:sequence>
<xsd:element name="Associate" type="Associate" minOccurs="0" />
<xsd:element name="Relationship" type="Relationship" minOccurs="0" />
<xsd:element name="Notes" type="Notes" minOccurs="0" />
</xsd:sequence>
</xsd:complexType>
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.
- <xsd:complexType name="BulkDetails">
- <xsd:annotation>
<xsd:documentation>
</xsd:documentation>
</xsd:annotation>
- <xsd:sequence>
<xsd:element name="Name" type="Name" />
<xsd:element name="Class" type="Class" minOccurs="0" maxOccurs="unbounded" />
<xsd:element name="Subclass" type="Class" minOccurs="0" maxOccurs="unbounded" />
<xsd:element name="Specification" type="Specification" minOccurs="0" maxOccurs="unbounded" />
<xsd:element name="Source" type="Source" minOccurs="0" />
<xsd:element name="Form" type="Form" minOccurs="0" />
<xsd:element name="ProcessingDetails" type="ProcessingDetails" minOccurs="0" maxOccurs="unbounded" />
<xsd:element name="Characterization" type="Characterization" minOccurs="0" />
<xsd:element name="PropertyData" type="PropertyData" minOccurs="0" maxOccurs="unbounded" />
<xsd:element name="Notes" type="Notes" minOccurs="0" />
</xsd:sequence>
</xsd:complexType>
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.
- <xsd:complexType name="Characterization">
- <xsd:annotation>
<xsd:documentation>
</xsd:documentation>
</xsd:annotation>
- <xsd:sequence>
<xsd:element name="Formula" type="Formula" />
<xsd:element name="ChemicalComposition" type="ChemicalComposition" minOccurs="0" />
<xsd:element name="PhaseComposition" type="PhaseComposition" minOccurs="0" maxOccurs="unbounded" />
<xsd:element name="DimensionalDetails" type="DimensionalDetails" minOccurs="0" maxOccurs="unbounded" />
<xsd:element name="Notes" type="Notes" minOccurs="0" />
</xsd:sequence>
</xsd:complexType>
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.
- <xsd:complexType name="ChemicalComposition">
- <xsd:annotation>
<xsd:documentation>
</xsd:documentation>
</xsd:annotation>
- <xsd:choice maxOccurs="unbounded">
<xsd:element name="Compound" type="Compound" />
<xsd:element name="Element" type="Element" />
</xsd:choice>
</xsd:complexType>
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 an reference by ID to another Material in the MatML_Doc and can occur only once in the Class element.
- <xsd:complexType name="Class">
- <xsd:annotation>
<xsd:documentation>
</xsd:documentation>
</xsd:annotation>
- <xsd:sequence>
- <xsd:choice>
<xsd:element name="Name" type="Name" />
- <xsd:element name="ParentMaterial" minOccurs="0" maxOccurs="unbounded">
- <xsd:complexType>
<xsd:attribute name="id" type="xsd:IDREF" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
<xsd:element name="ParentSubClass" type="Class" minOccurs="0" maxOccurs="unbounded" />
</xsd:sequence>
</xsd:complexType>
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.
- <xsd:complexType name="ComponentDetails">
- <xsd:annotation>
<xsd:documentation>
</xsd:documentation>
</xsd:annotation>
- <xsd:sequence>
<xsd:element name="Name" type="Name" />
<xsd:element name="Class" type="Class" minOccurs="0" maxOccurs="unbounded" />
<xsd:element name="Subclass" type="Class" minOccurs="0" maxOccurs="unbounded" />
<xsd:element name="Specification" type="Specification" minOccurs="0" maxOccurs="unbounded" />
<xsd:element name="Source" type="Source" minOccurs="0" />
<xsd:element name="Form" type="Form" minOccurs="0" />
<xsd:element name="ProcessingDetails" type="ProcessingDetails" minOccurs="0" maxOccurs="unbounded" />
<xsd:element name="Characterization" type="Characterization" minOccurs="0" />
<xsd:element name="PropertyData" type="PropertyData" minOccurs="0" maxOccurs="unbounded" />
<xsd:element name="AssociationDetails" type="AssociationDetails" minOccurs="0" maxOccurs="unbounded" />
<xsd:element name="ComponentDetails" type="ComponentDetails" minOccurs="0" maxOccurs="unbounded" />
</xsd:sequence>
<xsd:attribute name="id" type="xsd:ID" use="optional" />
</xsd:complexType>
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.
- <xsd:complexType name="Compound">
- <xsd:annotation>
<xsd:documentation>
</xsd:documentation>
</xsd:annotation>
- <xsd:sequence>
<xsd:element name="Element" type="Element" maxOccurs="unbounded" />
<xsd:element name="Concentration" type="Concentration" minOccurs="0" />
<xsd:element name="Notes" type="Notes" minOccurs="0" />
</xsd:sequence>
</xsd:complexType>
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.
- <xsd:complexType name="Concentration">
- <xsd:annotation>
<xsd:documentation>
</xsd:documentation>
</xsd:annotation>
- <xsd:sequence>
<xsd:element name="Value" type="Value" />
<xsd:element name="Units" type="Units" />
<xsd:element name="Qualifier" type="Qualifier" minOccurs="0" maxOccurs="unbounded" />
<xsd:element name="Uncertainty" type="Uncertainty" minOccurs="0" maxOccurs="unbounded" />
<xsd:element name="Notes" type="Notes" minOccurs="0" />
</xsd:sequence>
</xsd:complexType>
This element declares the content model for DataFormat and is composed of the following elements. DataFormat is used to indicate the format of a value with which it is associated ("float," "integer," "string,", "exponential" or "mixed") "mixed" is only used for a group of data where each individual member of the group can be given a unique format.
- <xsd:simpleType name="DataFormat">
- <xsd:annotation>
<xsd:documentation>
</xsd:documentation>
</xsd:annotation>
- <xsd:restriction base="xsd:string">
<xsd:enumeration value="float" />
<xsd:enumeration value="integer" />
<xsd:enumeration value="string" />
<xsd:enumeration value="exponential" />
<xsd:enumeration value="mixed" />
</xsd:restriction>
</xsd:simpleType>
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.
- <xsd:complexType name="DimensionalDetails">
- <xsd:annotation>
<xsd:documentation>
</xsd:documentation>
</xsd:annotation>
- <xsd:sequence>
<xsd:element name="Name" type="Name" />
<xsd:element name="Value" type="Value" />
<xsd:element name="Units" type="Units" />
<xsd:element name="Qualifier" type="Qualifier" minOccurs="0" />
<xsd:element name="Uncertainty" type="Uncertainty" minOccurs="0" maxOccurs="unbounded" />
<xsd:element name="Notes" type="Notes" minOccurs="0" />
</xsd:sequence>
</xsd:complexType>
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.
- <xsd:complexType name="Element">
- <xsd:annotation>
<xsd:documentation>
</xsd:documentation>
</xsd:annotation>
- <xsd:sequence>
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.