Skip to content

Check and implement parsing and logic for the sugested attributes in 3.4.0.rc DCC

There will be new attributes for lists see this schema https://ptb.de/dcc/v3.4.0-rc.1/dcc.xsd change.

changes:

    <xs:complexType name="quantityType">
        <xs:annotation>
            <xs:documentation>
                Single measurement quantity containing a name, description, a D-SI element (numerical value), and text.
                Additionally, e.g., used methods, used software, influence conditions, and metadata that are related to this quantity can be added.
            </xs:documentation>
        </xs:annotation>
        <xs:sequence>
            <xs:element name="name" type="dcc:textType" minOccurs="0"/>
            <xs:element name="description" type="dcc:richContentType" minOccurs="0"/>
            <xs:choice>
                <xs:element name="noQuantity" type="dcc:richContentType"/>
                <xs:element name="charsXMLList" type="dcc:charsXMLListType"/>
                <xs:element ref="si:real"/>
                <xs:element ref="si:list"/>
                <xs:element ref="si:hybrid"/>
                <xs:element ref="si:complex"/>
                <xs:element ref="si:constant"/>
                <xs:element ref="si:realListXMLList"/>
                <xs:element ref="si:complexListXMLList"/>
            </xs:choice>
            <xs:element name="relativeUncertainty" type="dcc:relativeUncertaintyType" minOccurs="0" />
            <xs:element name="measurands" type="dcc:measurandListType" minOccurs="0"/>
            <xs:element name="usedMethods" type="dcc:usedMethodListType" minOccurs="0"/>
            <xs:element name="usedSoftware" type="dcc:softwareListType" minOccurs="0"/>
            <xs:element name="measuringEquipments" type="dcc:measuringEquipmentListType" minOccurs="0"/>
            <xs:element name="influenceConditions" type="dcc:influenceConditionListType" minOccurs="0"/>
            <xs:element name="measurementMetaData" type="dcc:measurementMetaDataListType" minOccurs="0"/>
        </xs:sequence>
        <xs:attribute name="id" type="xs:ID" use="optional"/>
        <xs:attribute name="refId" type="xs:IDREFS" use="optional"/>
        <xs:attribute name="refType" type="dcc:refTypesType" use="optional"/>
		<xs:attribute name="index" type="xs:nonNegativeInteger" use="optional"/>
    </xs:complexType>

    <xs:complexType name="listType">
        <xs:annotation>
            <xs:documentation>
                List for (primarily) structuring (lists of) quantities and related data, e.g., influence conditions, used methods, etc.
                A recursive usage of the list allows the creation of matrix and tensor structures, as well as structures of higher dimensions.
            </xs:documentation>
        </xs:annotation>
        <xs:sequence>
            <xs:element name="name" type="dcc:textType" minOccurs="0"/>
            <xs:element name="description" type="dcc:richContentType" minOccurs="0"/>
            <xs:choice>
                <xs:element name="dateTime" type="xs:dateTime" minOccurs="0"/>
                <xs:element name="dateTimeXMLList" type="dcc:dateTimeXMLListType" minOccurs="0"/>
            </xs:choice>
            <xs:choice maxOccurs="unbounded">
                <xs:element name="list" type="dcc:listType"/>
                <xs:element name="quantity" type="dcc:quantityType"/>
            </xs:choice>
            <xs:element name="measurands" type="dcc:measurandListType" minOccurs="0"/>
            <xs:element name="usedMethods" type="dcc:usedMethodListType" minOccurs="0"/>
            <xs:element name="usedSoftware" type="dcc:softwareListType" minOccurs="0"/>
            <xs:element name="measuringEquipments" type="dcc:measuringEquipmentListType" minOccurs="0"/>
            <xs:element name="influenceConditions" type="dcc:influenceConditionListType" minOccurs="0"/>
            <xs:element name="measurementMetaData" type="dcc:measurementMetaDataListType" minOccurs="0"/>
        </xs:sequence>
        <xs:attribute name="id" type="xs:ID" use="optional"/>
        <xs:attribute name="refId" type="xs:IDREFS" use="optional"/>
        <xs:attribute name="refType" type="dcc:refTypesType" use="optional"/>
		<xs:attribute name="dimension" type="xs:positiveInteger" use="optional"/>
    </xs:complexType>

New atributes

  • dcc:list :<xs:attribute name="dimension" type="xs:positiveInteger" use="optional"/>
  • dcc:quantity : <xs:attribute name="index" type="xs:nonNegativeInteger" use="optional"/>

https://gitlab1.ptb.de/digitaldynamicmeasurement/dccQuantities/-/blob/devel/src/dcc_quantity_table.py?ref_type=heads#L225-L226

This Code is used to generate the large ND flat test example tables and is used by the CD/CI testing. :https://gitlab1.ptb.de/digitaldynamicmeasurement/dccQuantities/-/blob/devel/tests/miscAndHelpers/disjunctPrimeTableGen.py?ref_type=heads

Edited by Benedikt