To quickly find answers to his questions, a page with questions and answers or links to the answers is created here.
If you have any questions, please send us an email dcc@ptb.de.
We will either answer the question directly or include this question here.
Please understand that this is a development process and that some answers must first be coordinated.
When creating the DCC schema (xsd), the same identifiers as used in ISO 17025, the VIM or the GUM were used wherever possible when choosing the element names for the DCC (xml). British English has been used for other element names.
In the DCC (xml) the textType is used in many places, this allows to select the used language according to ISO 6339. If there is only a limited choice of terms, British English is used.
In the case of the terms for the refTypes, British English is used. However, the choice of identifiers may involve compound identifiers or community specific identifiers, so a fixed default is not used.
One of the essential statements from the DCC is that SI units should be used primarily or exclusively. SI units are recognized by the vast majority of states and are used in those states. SI (French Système international d'unités) is currently disseminated by several states (full members) and states in the status of "special cooperation" supported organization and is based on natural constants.
Since 8 February 2022 there are 63 Member States and 40 Associate States and Economies. The term "Member States" is a synonym for the official term, "States Parties to the Metre Convention". [1]
The SI brochure can be downloaded from https://www.bipm.org/en/publications/si-brochure. The SI units are thus known to the DCC. SI units are always marked with a leading "\".
For information on the D-SI, see "D. Hutzschenreuter et al, "SmartCom Digital System of Units (D-SI) Guide to the use of the metadata format used in metrology for simple, secure, harmonised and unambiguous digital transmission of metrological data - Second edition", July 2020, doi: 10.5281/zenodo.3816686."[2]
The current version of the D-SI, version 2.1, entitled "D-PTB / D-SI / xsd-d-si" is available online at" [3].
Because of this prevalence, when using the DCC, it is specified that the SI system of units is the leading system of units. Non-SI units should therefore always occur together with SI units: After the value is represented using the SI unit, the value is represented in non-SI units (see si:hybrid). Before that, the used non-SI units shall be announced in the DCC, see further below.
By clearly specifying the SI unit system, it is ensured that the goal of machine interpretability of the DCC is achieved without confusion in the units used.
Non-SI units are used with varying frequency depending on the country or subject. The DCC takes full account of this and, in addition to the specification of results in SI units, also allows the same results to be specified in non-SI units. This procedure has the advantage that the experts in the calibration laboratories carry out the conversion and not the users of the DCC. This increases the quality of the transmission of these results because conversion errors can no longer occur at the customer.
All SI units are known to the DCC and can therefore be used immediately. Before a non-SI unit can be used in the DCC, the definition of this non-SI unit must be referenced, the name of the unit and the used characters must be named unambiguously. This is useful because in some cases there are several identically named units for the same quantity. For example, this is still the case today in the area of the basic quantity "length".
The announcement of a non-SI unit takes place in the range
<dcc:administrativeData>
...
<dcc:statements>
<dcc:statement>
Example 1: Must weight of unfermented grape juice, measured in degrees Oechsle (°Oe).
<dcc:statements>
<dcc:statement id="degree_Oechsle_definition">
<dcc:countryCodeISO3166_1>EN</dcc:countryCodeISO3166_1>
<dcc:norm>DIN 1301-3</dcc:norm>
<dcc:reference>"Units - Part 3: Conversion of non-SI units" (2018)</dcc:reference>
<dcc:nonSIDefinition>degree Oechsle</dcc:nonSIDefinition>
<dcc:nonSIUnit>|°Oe</dcc:nonSIUnit>
</dcc:statement>
</dcc:statements>
Example 2: Volume of liquid measured in Imperial Gallons (Gal).
<dcc:statements>
<dcc:statement id="Imperial_Gallon_definition">
<dcc:countryCodeISO3166_1>GB</dcc:countryCodeISO3166_1>
<dcc:norm>BS 350:2004</dcc:norm>
<dcc:reference> „Conversion Factors for Units:Section 5.8“ (2004)</dcc:reference>
<dcc:nonSIDefinition>Imperial Gallon</dcc:nonSIDefinition>
<dcc:nonSIUnit>|Gal</dcc:nonSIUnit>
</dcc:statement>
</dcc:statements>
Example 3: Volume of liquid measured in US Gallons (US Gal).
<dcc:statements>
<dcc:statement id="US_Gallon-Definition">
<dcc:countryCodeISO3166_1>US</dcc:countryCodeISO3166_1>
<dcc:norm>US Handbook 44:2022</dcc:norm>
<dcc:reference> „Appendix C. General Tables of Units of Measurement“ (2022)</dcc:reference>
<dcc:nonSIDefinition>US Gallon</dcc:nonSIDefinition>
<dcc:nonSIUnit>|US_Gal</dcc:nonSIUnit>
</dcc:statement>
</dcc:statements>
The non-SI unit within the element si:hybrid is specified after the value and the unit in the SI system. The entry is almost exactly the same as for the SI units. Unlike the SI units, which begin with an "\", the non-SI units begin with the "|". It is important that the non-SI unit has been made known beforehand, see above.
Example 1: Degree Oechsle (°Oe)
<si:hybrid>
<si:real>
<si:label>Density of unfermented wine must at 20 °C</si:label>
<si:value>1075</si:value>
<si:unit>\kilogram\metre\tothe{3}</si:unit>
</si:real>
<si:real>
<si:label>Unfermented wine must weight at 20 °C</si:label>
<si:value>75</si:value>
<si:unit>|°Oe</si:unit>
</si:real>
</si:hybrid>
Example 2: ... (to follow)
The element si:hybrid was created to represent values in different units. It was also considered that the conversion from the SI unit to a non-SI unit should be done by the experts in the calibration laboratory. This ensures that the conversion is done by trained professionals and not by laymen.
First, the SI units are named, ideally in the seven SI base units. This is followed by the non-SI units. In case of doubt, the values mentioned first with their units always apply. Machines use only the values and their units mentioned first.
The specification of the place of calibration is not optional according to ISO 17025, but obligatory.
The entry is made in the area <dcc:administrativeData> <dcc:coreData> and there in the penultimate child element <dcc:performanceLocation>.
The calibration location can be specified from a set of pre-assigned keywords or individually.
In most cases, calibration takes place at the location of the calibration laboratory which is responsible for the calibration. This location is known exactly via the element <dcc:administrativeData> <dcc:calibrationLaboratory>. In this case, the entry looks like this:
<dcc:performanceLocation>laboratory</dcc:performanceLocation>
However, there are also cases where this information is not precise enough. This can be, for example, a location at the customer or at the calibration laboratory that differs from the address given in the DCC for the customer or calibration laboratory. In this case, the keywords "laboratoryBranch" (for the calibration laboratory) or "customerBranch" (for the customer) are specified. If neither the location of the customer nor the location of the calibration laboratory is applicable, the keyword "other" is used. In these three cases, the location where the calibration took place should be specified.
This is a methodology that is valid everywhere in the DCC: the very fine-grained possible specification of information. It is possible to specify information such as the location for the entire calibration or parts of it down to a single measurement.
First, we enter the corresponding keyword, e.g. "other", in the element intended for the location of the calibration. In addition, it is necessary to insert a reference so that a relationship can be established between this element and the element further down in the DCC. To do this, use the attribute "id" and choose a suitable name. We recommend the name "basic_staticPerformanceLocation". There will be more information on the attributes. Attributes play an important role in GP-DCCs (good practice-DCC). The element for the location then looks like this:
<dcc:performanceLocation id="basic_staticPerformanceLocation">other</dcc:performanceLocation>
This is done in the area <dcc:administrativeData> <dcc:statements>
and there in one of the elements <dcc:statement>.
In this element there is the child element <dcc:location>.
You know this element because it is always used when addresses are entered. Now the relationship between the element "performanceLocation" and the child element "location" in the element "statement" must be established:
<dcc:statement refId="basic_staticPerformanceLocation">
<dcc:location>
...
</dcc:location>
</dcc:statement>
Here, too, a method applies that is valid everywhere in the DCC: the very fine-grained possible specification of information.
First, the global location of the calibration is determined. Since it is the calibration laboratory with the known address, the standard case is to be chosen:
<dcc:performanceLocation>laboratory</dcc:performanceLocation>
The measurements themselves were carried out in a moving passenger car, which has a readable GPS system[4]. Then, for each measurement point, the GPS coordinates (and, if possible, a timestamp) are attached to the measurement result. This metadata of the measurement is attached to the measurement value via the child element <dcc:metaData> of the element <dcc:measurementMetaData>, see example file.
<dcc:metaData>
<dcc:declaration>
<dcc:content lang="de">Ortsangabe der Messung</dcc:content>
<dcc:content lang="en">Measurement location</dcc:content>
</dcc:declaration>
<dcc:location>
<dcc:positionCoordinates>
<dcc:positionCoordinateSystem>GPS Coordinates</dcc:positionCoordinateSystem>
<dcc:reference>World Geodetic System (WGS84)</dcc:reference>
<dcc:declaration>
<dcc:content>dcc:positionCoordinate1 contains the Latitude in decimal degrees.</dcc:content>
<dcc:content>dcc:positionCoordinate2 contains the Longitude in decimal degrees.</dcc:content>
<dcc:content>dcc:positionCoordinate3 contains the Altitude in meters.</dcc:content>
</dcc:declaration>
<dcc:positionCoordinate1>
<si:value>52.2964135</si:value>
<si:unit>|decimaldegrees</si:unit>
</dcc:positionCoordinate1>
<dcc:positionCoordinate2>
<si:value>10.4655795</si:value>
<si:unit>|decimaldegrees</si:unit>
</dcc:positionCoordinate2>
<dcc:positionCoordinate3>
<si:value>66</si:value>
<si:unit>\metre</si:unit>
</dcc:positionCoordinate3>
</dcc:positionCoordinates>
</dcc:location>
</dcc:metaData>
You can use a bunch of commercial or open source tools to validate DCC XMLs against the DCC schema. Here is a list of tools you can use e.g.: Oxygen XML Developer (commercial), XML Notepad (open source), Notepad++ (open source) etc.
For Validation of a DCC XML document, you have to
Link: https://microsoft.github.io/XmlNotepad/
Validation
If the XML Tools Plugin is installed: