HajoRijgersberg/OM

Problematic Definition of 'carbon dioxide equivalent mass unit'

Opened this issue · 21 comments

jmkeil commented

Probably caused by #55.

The definition of carbon dioxide equivalent mass unit is problematic.
om-issue-carbon-dioxide-equivalent
Together the equivalentClass Axiom and the subClassOf Axiom entail that the three carbon dioxide equivalent mass units are the sameAs some of the mass units.

Are the special carbon dioxide equivalent mass units needed anyhow? I think, the carbon dioxide equivalent mass aspect belongs to the quantity, not the units. That way, carbon dioxide equivalent mass unit could just be defined as oneOf gram, kilogram and tonne.

This is a good example of the disadvantages of thee strong oneOf Axioms in the unit class definitions (see #84).

Hi @jmkeil ,

I am not sure I understand what exactly you mean. Of course you realize that for example 1g of methane has a mass of 1g and is equivalent to 28g of carbon dioxide when in the atmosphere. So the carbon dioxide equivalent mass (equivalent to 28g CO2) is not the mass of the substance (1g). Therefore, I wanted to distinguish the unit for this from a mass unit.

If I understand correctly (ignoring the oneOf axiom issue) you want to use the normal mass units for the quantity of carbon dioxide equivalents. Is that correct? And if so, are you sure that a distinction of the units is really unnecessary?

Maybe you can elaborate a bit.

Grateful for any help,
cheers,
Georg

jmkeil commented

Hi @GeorgJung!

What currently is modeled in OM is, that e.g. gram of carbon dioxide equivalent is the same as at least one of kilogram, gram, tonne, pound (avoirdupois), … (any mass unit). From that follows, one could use gram of carbon dioxide equivalent for e.g. the mass of moon, too. I guess, it is out of doubt, that this should be fixed, right?

And if so, are you sure that a distinction of the units is really unnecessary?

Almost. I think, this mixes aspects of the quantity kind into the unit. I could think of multiple (in my point of few correct - but please correct me) modeling approaches, that make the additional unit unnecessary.

Approach 1:

flowchart LR

ex:someAmountOfMethan ~~~ ex:massQunatity & ex:co2equivalentMassQunatity

ex:massQunatity -- om:hasPhenomen --> ex:someAmountOfMethan
ex:massQunatity -- om:hasValue --> ex:massValue 
ex:massQunatity -- rdf:tpye--> om:Mass
ex:massValue -- om:hasUnit --> om:gram
ex:massValue -- om:hasNumericalValue --> 1

ex:co2equivalentMassQunatity -- om:hasPhenomen --> ex:someAmountOfMethan
ex:co2equivalentMassQunatity -- om:hasValue --> ex:co2equivalentMassValue 
ex:co2equivalentMassQunatity -- rdf:tpye--> om:CarbonDioxideEquivalentMass
ex:co2equivalentMassValue -- om:hasUnit --> om:gram
ex:co2equivalentMassValue -- om:hasNumericalValue --> 28
Loading

Approach 2:

flowchart LR

ex:someAmountOfMethan -- ex:hasEquivalentAmountOfCo2 --> ex:someAmountOfCo2

ex:someAmountOfMethan ~~~ ex:massQunatity

ex:massQunatity -- om:hasPhenomen --> ex:someAmountOfMethan
ex:massQunatity -- om:hasValue --> ex:massValue 
ex:massQunatity -- rdf:tpye--> om:Mass
ex:massValue -- om:hasUnit --> om:gram
ex:massValue -- om:hasNumericalValue --> 1

ex:someAmountOfCo2 ~~~ ex:co2equivalentMassQunatity

ex:co2equivalentMassQunatity -- om:hasPhenomen --> ex:someAmountOfCo2
ex:co2equivalentMassQunatity -- om:hasValue --> ex:co2equivalentMassValue 
ex:co2equivalentMassQunatity -- rdf:tpye--> om:Mass
ex:co2equivalentMassValue -- om:hasUnit --> om:gram
ex:co2equivalentMassValue -- om:hasNumericalValue --> 28
Loading

A talk at recent ISWC 2023 on TEC: Transparent Emissions Calculation Toolkit reminded my for this issue: The authors built a KG for data that are required to calculate emission caused by ML model calculation. In the paper they model CO2 equivalent mass in a very similar way as I proposed in approach 1 (see e.g. Figure 3 and Figure 5). That way, I would like to update my "I am almost sure" into an "I am sure" that a distinction of the units is unnecessary.

Hi @jmkeil,

sorry for my superficial answers/questions. I am sure you are on to something, it is just that I am not an expert in ontology design. Also, my day job is quite demanding these days...

So one question. You are aware that mass of CO2 equivalents is not the same as mass. Our example is an amount of methane with a mass of 1g which we consider equivalent to 28g of CO2. The methane itself does not have two masses. That is why the dimension of the value '28' to me is not mass...

Yes, you could assign a CO2 equivalents value to the moon. You can also assign a power or a force or a calories value to the moon. It just would not make sense. Indeed the examples that you linked make no distinction between gram and gram of CO2 equivalents. But are they right? For me, grammes of CO2 equivalent does not have mass dimension.

So what is a good way to model this? Your two examples have both be the same dimension.

Thanks for any help,
Cheers,
Georg

You are aware that mass of CO2 equivalents is not the same as mass.

Yes. These are two different kinds of quantity (as in JCGM 2012, 1.2). However, their values can be expressed by the same set of measurement units (see JCGM 2012, 1.9 NOTE 2), i.e. mass units.

That is why the dimension of the value '28' to me is not mass...

I do not agree on this: Both values have the same dimension (as in JCGM 2012, 1.7), i.e. L⁰M¹T⁰I⁰Θ⁰N⁰J⁰. Which exponent of the dimension vector should be different here? (Sometimes, "dimensionless" is considered as a further part in the dimension vector, but it would not differ too.) However, they have different quantity kinds, namely mass and CO2 equivalent mass. As both quantity kinds have the same dimension, one can use for them the same set of units, namely the set of mass units, which have the same dimension as these quantity kinds. It is important to make a distinction between dimension and quantity kind here.

The CO2 equivalent mass of a real portion of methane is the mass of a fictional portion of CO2 whose emission has the same impact as the real portion of methane in a defined time span. It is used to make emitted portions of different gases comparable. But to compare them, one must use for all of them the CO2 equivalent mass value, i.e. values of the same quantity kind. (In case of real portions of CO2, the value for CO2 equivalent mass and mass is numerically equal by definition and the calculation can be omitted. Note that this calculation is not a classical unit conversion, as the factor depends on the described phenomenon, i.e. the gas.) It is not the measurement unit, which determines comparability of values, but the quantity kind. Therefore, different units for mass and CO2 equivalent mass are not needed.

Yes, you could assign a CO2 equivalents value to the moon. You can also assign a power or a force or a calories value to the moon. It just would not make sense.

I wrote "to the mass of moon". Up to the current model of OM, it would be valid to use gram of CO2 equivalent as unit for mass of the moon. Using newton or calories would not be valid.

So what is a good way to model this? Your two examples have both be the same dimension.

By making a distinction between dimension and quantity kind. There is no need to have different dimensions.

Okay, I seem to be getting it now. With "dimension" I am using the wrong concept for distinction. We both agree that the mass and the CO2 equivalent mass are two different beasts (your explanation is a bit more eloquent than mine), however according to convention the distinction is in the quantity kind, not in the dimension.

Note 4 in your reference gave it away: "quantities having the same quantity dimension are not necessarily of the same kind."

(not sure yet if I like this solution, but people who are more knowledgeable in the field probably know better than me 😅 )

I did not check, but I suppose this entails a re-engineering of fundamentals of OM, does it?

Also, I think I grok the moon example now. Sorry for being a bit dense. As noted, I am from a different field. Learned something today, sincere thanks for that.

Cheers

I did not check, but I suppose this entails a re-engineering of fundamentals of OM, does it?

Luckily not. OM is in general close to JCGM 2012. As the original described problem also affects carbon dioxide equivalent mass per energy unit, the only things that needs to be changed are:

However, this might require adaptions in upstream ontologies.

@HajoRijgersberg What do you think about the proposed changes?

@jmkeil. thanks! You only mentioned what has to be removed. Is there no necessity for introducing the quantity kind? That is why I was asking about a reengineering of OM.

The quantity kinds carbon dioxide equivalent mass and carbon dioxide equivalent mass per energy already exist. Only their definition needs to be slightly adapted.

Hi both, and so sorry for my absolutely late response.... :/ The same as reason as read above, demanding day job, and other reasons as well.
Very good discussion, many thanx! :) I have things to add: in principle, Jan Martin, you could be right (although I would have to read more closer), but:

  • it appears that the sustainability field uses such quantity-like units, the CO2eq mass units. We have tried to remain close to that in order to support this field. I also recognize this from some projects that I did in this field.
  • in more domains quantity-like units are used, like in astronomy, the mass of the sun. Masses of other stars etc. can be expressed in terms of sun masses.
  • in fact, in OM 3.0 I would like to support such units better. These are units that are the same as specific quantities, no other symbol or name is made up for them that would make them into a unit. Presently we would have to define both the specific quantity and the unit to define such concepts, which is redundant.
  • and last but not least, as already touched upon in the point above, all units in the end are defined in terms of specific quantities; most units indirectly through their definition in terms of other units, some units directly such as the base SI units. Metre for example, which is defined in terms of the speed of light in a vacuum and a short time period.

I'll read the above thread more closely the coming weeks. It is very interesting, and I highly appreciate both your thoughts, views, considerations, and we'll get to the bottom! :) Hopefully my remarks above are not too quick, since I have read the entire thread but not as close as I would have wanted, due to time restrictions. If too quick, please accept my apologies! :)

Best, Hajo

  • in more domains quantity-like units are used, like in astronomy, the mass of the sun. Masses of other stars etc. can be expressed in terms of sun masses.
    […]
  • and last but not least, as already touched upon in the point above, all units in the end are defined in terms of specific quantities; most units indirectly through their definition in terms of other units, some units directly such as the base SI units. Metre for example, which is defined in terms of the speed of light in a vacuum and a short time period.

There is an important difference between "mass of sun" and "kg CO2eq": The conversion factor of "mass of sun" to other mass units depends always and only on the mass of the sun, whereas the conversion factor of "kg CO2eq" to other mass units would depend on the measured phenomenon itself. The "kg CO2eq" value would be different for e.g. 1 kg of methane (28 kg CO2eq) and 1 kg of laughing gas (273 kg CO2eq) although they have the same mass. However, expressing them in "mass of sun" (both ~0,5·10⁻³⁰ M☉) would (apart from precision issues) be perfectly fine.

Thanx Jan Martin, that is a very good point. So kg CO2eq is not a mass unit as the other mass units. Perhaps it is not even a mass unit, I'm not sure yet. Is it a unit of some kind of relative mass, like mass fractions? We have to think about this. Perhaps you already know the answer, Jan Martin. If so, please tell/guide/help/direct us; that would be highly appreciated.
Nevertheless, I have immediately commented out the following lines in the ontology. In several cases I have added an alternative line just behind the commented-out line:

```    <rdfs:label xml:lang="en">carbon dioxide equivalent mass</rdfs:label>
```    <!-- <rdfs:subClassOf rdf:resource="&om;Mass"/> --> <rdfs:subClassOf rdf:resource="&om;Quantity"/>
```  </owl:Class>

```  <owl:Class rdf:about="&om;CarbonDioxideEquivalentMassPerEnergy">
```    <rdfs:label xml:lang="en">carbon dioxide equivalent mass per energy</rdfs:label>
```    <!-- <rdfs:subClassOf rdf:resource="&om;MassPerEnergy"/> --> <rdfs:subClassOf rdf:resource="&om;Quantity"/>
```  </owl:Class>

```  <om:Unit rdf:about="&om;gramOfCarbonDioxideEquivalent">
```    <rdfs:label xml:lang="en">gram of carbon dioxide equivalent</rdfs:label>
```    <om:symbol>gCO2eq</om:symbol>
```    <rdf:type rdf:resource="&om;SingularUnit"/>
```    <!-- <om:hasFactor rdf:datatype="&xsd;decimal">1</om:hasFactor> -->
```    <!-- <om:hasUnit rdf:resource="&om;gram"/> -->
```  </om:Unit>

```  <om:Unit rdf:about="&om;tonneOfCarbonDioxideEquivalent">
```    <rdfs:label xml:lang="en">tonne of carbon dioxide equivalent</rdfs:label>
```    <om:symbol>tCO2eq</om:symbol>
```    <rdf:type rdf:resource="&om;SingularUnit"/>
```    <!-- <om:hasFactor rdf:datatype="&xsd;decimal">1</om:hasFactor> -->
```    <!-- <om:hasUnit rdf:resource="&om;tonne"/>  -->
```  </om:Unit>

```  <owl:Class rdf:about="&om;CarbonDioxideEquivalentMassUnit">
```    <rdfs:label xml:lang="en">carbon dioxide equivalent mass unit</rdfs:label>
```    <!-- <rdfs:subClassOf rdf:resource="&om;MassUnit"/> --> <rdfs:subClassOf rdf:resource="&om;Unit"/>
```    <owl:equivalentClass>
```      <owl:Class>
```        <owl:oneOf rdf:parseType="Collection">
```          <om:Unit rdf:about="&om;gramOfCarbonDioxideEquivalent"/>
```          <om:PrefixedUnit rdf:about="&om;kilogramOfCarbonDioxideEquivalent"/>
```          <om:Unit rdf:about="&om;tonneOfCarbonDioxideEquivalent"/>
```        </owl:oneOf>
```      </owl:Class>
```    </owl:equivalentClass>
```  </owl:Class>  	  

```  <owl:Class rdf:about="&om;CarbonDioxideEquivalentMassPerEnergyUnit">
```    <rdfs:label xml:lang="en">carbon dioxide equivalent mass per energy unit</rdfs:label>
```    <!-- <rdfs:subClassOf rdf:resource="&om;MassPerEnergyUnit"/> --> <rdfs:subClassOf rdf:resource="&om;Unit"/>
```    <owl:equivalentClass>
```      <owl:Class>
```        <owl:oneOf rdf:parseType="Collection">
```          <om:Unit rdf:about="&om;gramOfCarbonDioxideEquivalentPerKilowattHour"/>
```          <om:PrefixedUnit rdf:about="&om;kilogramOfCarbonDioxideEquivalentPerMegawattHour"/>
```          <om:Unit rdf:about="&om;tonneOfCarbonDioxideEquivalentPerGigawattHour"/>
```        </owl:oneOf>
```      </owl:Class>
```    </owl:equivalentClass>
```  </owl:Class>  	  

For presentation purposes, for the units, I have removed the '<!-- hasDefinition -->' comments above, that were already there.

I've slept a night about it and have come to the conclusion that g CO2eq and the like (t CO2eq, kg CO2eq) are mass units, but their definitions are not fixed like normally is the case with units (and is the idea with units). One does also encounter this with currencies, which are time-dependent. In the case of the CO2eq mass units they are dependent on the measured phenomenon itself, as Jan Martin pointed out. Presently we can not indicate such formally in OM yet, so the definitions of these units in grams remain disabled, but the other definitions/productions that I have disabled yesterday, can be reversed, which I have just done.

I wonder by the way why we originally have defined tonneOfCarbonDioxideEquivalent in (normal) tonnes. It seems more logical to define it as 1000 kilogramOfCarbonDioxideEquivalent, which on its turn has already correctly been defined as a prefixed unit in terms of kilo and gramOfCarbonDioxideEquivalent. So, I have also changed this, accordingly.

By the way (2), I think we should define gramOfCarbonDioxideEquivalent as 0.001 kilogramOfCarbonDioxideEquivalent, just like gram is officially defined in terms of kilogram in the SI (I admit, this is strange). Until yesterday, gramOfCarbonDioxideEquivalent was defined as 1 gram, and since yesterday - as described above - this definition has been disabled. I have just changed this accordingly.

An update of the definitions in the message above:

```    <rdfs:label xml:lang="en">carbon dioxide equivalent mass</rdfs:label>
```    <rdfs:subClassOf rdf:resource="&om;Mass"/>
```  </owl:Class>

```  <owl:Class rdf:about="&om;CarbonDioxideEquivalentMassPerEnergy">
```    <rdfs:label xml:lang="en">carbon dioxide equivalent mass per energy</rdfs:label>
```    <rdfs:subClassOf rdf:resource="&om;MassPerEnergy"/>
```  </owl:Class>

```  <om:Unit rdf:about="&om;gramOfCarbonDioxideEquivalent">
```    <rdfs:label xml:lang="en">gram of carbon dioxide equivalent</rdfs:label>
```    <om:symbol>gCO2eq</om:symbol>
```    <rdf:type rdf:resource="&om;SingularUnit"/>
```    <om:hasFactor rdf:datatype="&xsd;decimal">0.0010</om:hasFactor>
```    <om:hasUnit rdf:resource="&om;kiligramOfCarbonDioxideEquivalent"/>
```  </om:Unit>

```  <om:Unit rdf:about="&om;tonneOfCarbonDioxideEquivalent">
```    <rdfs:label xml:lang="en">tonne of carbon dioxide equivalent</rdfs:label>
```    <om:symbol>tCO2eq</om:symbol>
```    <rdf:type rdf:resource="&om;SingularUnit"/>
```    <om:hasFactor rdf:datatype="&xsd;decimal">1000</om:hasFactor>
```    <om:hasUnit rdf:resource="&om;kilogramOfCarbonDioxideEquivalent"/>
```  </om:Unit>

```  <owl:Class rdf:about="&om;CarbonDioxideEquivalentMassUnit">
```    <rdfs:label xml:lang="en">carbon dioxide equivalent mass unit</rdfs:label>
```    <rdfs:subClassOf rdf:resource="&om;MassUnit"/>
```    <owl:equivalentClass>
```      <owl:Class>
```        <owl:oneOf rdf:parseType="Collection">
```          <om:Unit rdf:about="&om;gramOfCarbonDioxideEquivalent"/>
```          <om:PrefixedUnit rdf:about="&om;kilogramOfCarbonDioxideEquivalent"/>
```          <om:Unit rdf:about="&om;tonneOfCarbonDioxideEquivalent"/>
```        </owl:oneOf>
```      </owl:Class>
```    </owl:equivalentClass>
```  </owl:Class>  	  

```  <owl:Class rdf:about="&om;CarbonDioxideEquivalentMassPerEnergyUnit">
```    <rdfs:label xml:lang="en">carbon dioxide equivalent mass per energy unit</rdfs:label>
```    <rdfs:subClassOf rdf:resource="&om;MassPerEnergyUnit"/>
```    <owl:equivalentClass>
```      <owl:Class>
```        <owl:oneOf rdf:parseType="Collection">
```          <om:Unit rdf:about="&om;gramOfCarbonDioxideEquivalentPerKilowattHour"/>
```          <om:PrefixedUnit rdf:about="&om;kilogramOfCarbonDioxideEquivalentPerMegawattHour"/>
```          <om:Unit rdf:about="&om;tonneOfCarbonDioxideEquivalentPerGigawattHour"/>
```        </owl:oneOf>
```      </owl:Class>
```    </owl:equivalentClass>
```  </owl:Class>  	  

For presentation purposes, for the units, I have removed the '<!-- hasDefinition -->' comments above, that were already there.

So kg CO2eq is not a mass unit as the other mass units. Perhaps it is not even a mass unit, I'm not sure yet. Is it a unit of some kind of relative mass, like mass fractions?

This question bothered me at the weekend after writing my previous comment on Friday afternoon. I went a little bit into the literature (IPCC, 2013: Climate Change 2013: The Physical Science Basis (Sec. 8.7.1) and IPCC, 2023: Climate Change 2023: Synthesis Report) and learned that my above statement "carbon dioxide equivalent mass" is not a "mass" is true, however, my conclusion "kg CO2eq" is not a unit is wrong. It is a unit of the dimension L⁰M¹T⁰I⁰Θ⁰N⁰J⁰ (mass), but it is not a mass quantity unit.

According to IPCC, 2013: Climate Change 2013: The Physical Science Basis (Sec. 8.7.1), we might want to define:

  • Quantities
    • Absolute Global Warming Potential (AGWP) with unspecific time horizon, with specific variants:
      • Absolute Global Warming Potential with 20-year horizon (AGWP₂₀)
      • Absolute Global Warming Potential with 100-year horizon (AGWP₁₀₀)
    • (relative) Global Warming Potential (GWP) over an unspecific time interval with the specific variants
      • Global Warming Potential with 20-year horizon (GWP₂₀)
      • Global Warming Potential with 100-year horizon (GWP₁₀₀), which is the default metic for CO2 equivalent emissions, up to the Kyoto Protocol
    • Absolute Global Temperature change Potential (AGTP) over an unspecific time interval with the specific variants
      • Absolute Global Temperature Potential with 20-year horizon (AGTP₂₀)
      • Absolute Global Temperature Potential with 50-year horizon (AGTP₅₀)
      • Absolute Global Temperature Potential with 100-year horizon (AGTP₁₀₀)
    • (relative) Global Temperature change Potential (GTP) over an unspecific time interval with the specific variants
      • Global Temperature Potential with 20-year horizon (GTP₂₀)
      • Global Temperature Potential with 50-year horizon (GTP₅₀)
      • Global Temperature Potential with 100-year horizon (GTP₁₀₀)
    • Radiative forcing (RF)
    • Concentration / mole fractions (already exists)
  • Units
    • ppt = pmol mol⁻¹ (ppm is currently defined based on one, not sure if different variants are needed)
    • W m⁻² for RF
    • W m⁻² yr kg⁻¹ for AGWP
    • (W m⁻² yr kg⁻¹) / (W m⁻² yr kg⁻¹) with dimension L⁰M⁰T⁰I⁰Θ⁰N⁰J⁰ for GWP
    • K kg⁻¹ with dimension L⁰M⁻¹T¹I⁰Θ⁰N⁰J⁰ for AGTP
    • (K kg⁻¹) / (K kg⁻¹) with dimension L⁰M⁰T⁰I⁰Θ⁰N⁰J⁰ for GTP

From that we can derive:

  • Quantities
    • CO₂ equivalent emissions mass (carbon dioxide equivalent mass) that is typically *mass * GWP₁₀₀ (maybe we should have different variants again)
  • Units
    • (to my understanding, but I didn't find yet a source there this is written explicitly:) kg CO₂-eq = kg (W m⁻² yr kg⁻¹) / (W m⁻² yr kg⁻¹) with dimension L⁰M⁰T⁰I⁰Θ⁰N⁰J⁰

Further units that are used in the reports and should be defined to:

I wonder by the way why we originally have defined tonneOfCarbonDioxideEquivalent in (normal) tonnes. It seems more logical to define it as 1000 kilogramOfCarbonDioxideEquivalent, which on its turn has already correctly been defined as a prefixed unit in terms of kilo and gramOfCarbonDioxideEquivalent. So, I have also changed this, accordingly.

Both should be contained, as both are used in practice.

By the way (2), I think we should define gramOfCarbonDioxideEquivalent as 0.001 kilogramOfCarbonDioxideEquivalent, just like gram is officially defined in terms of kilogram in the SI (I admit, this is strange). Until yesterday, gramOfCarbonDioxideEquivalent was defined as 1 gram, and since yesterday - as described above - this definition has been disabled. I have just changed this accordingly.

  • CO₂-eq should be defined based on (W m⁻² yr kg⁻¹) as (W m⁻² yr kg⁻¹) / (W m⁻² yr kg⁻¹)
  • kg CO₂-eq should be defined based on kg and CO₂-eq as kg * CO₂-eq (defining it that way explains the dependency from the phenomenon itself, as the numerator in (W m⁻² yr kg⁻¹) / (W m⁻² yr kg⁻¹) is about the chemical element the phenomenon consists of)
  • g CO₂-eq, t CO₂-eq and other <prefix>g CO₂-eq should be defined based on kg CO₂-eq
  • other <prefix>t CO₂-eq should be defined based on t CO₂-eq

PS: You can use the following syntax to format XML:

```xml
<owl:Class rdf:about="&om;CarbonDioxideEquivalentMassPerEnergy">
    <rdfs:label xml:lang="en">carbon dioxide equivalent mass per energy</rdfs:label>
    <!-- <rdfs:subClassOf rdf:resource="&om;MassPerEnergy"/> --> <rdfs:subClassOf rdf:resource="&om;Quantity"/>
</owl:Class>
```

will become

<owl:Class rdf:about="&om;CarbonDioxideEquivalentMassPerEnergy">
    <rdfs:label xml:lang="en">carbon dioxide equivalent mass per energy</rdfs:label>
    <!-- <rdfs:subClassOf rdf:resource="&om;MassPerEnergy"/> --> <rdfs:subClassOf rdf:resource="&om;Quantity"/>
</owl:Class>

Hi Jan Martin,

Very interesting, thanx again so much! :) I would say, we have to define it all in this way.

For now, I have started with replacing the <rdfs:subClassOf rdf:resource="&om;Mass"/> and <rdfs:subClassOf rdf:resource="&om;MassPerEnergy"/> productions with <rdfs:subClassOf rdf:resource="&om;Quantity"/> again, and the <rdfs:subClassOf rdf:resource="&om;MassUnit"/> and <rdfs:subClassOf rdf:resource="&om;MassPerEnergyUnit"/> productions with <rdfs:subClassOf rdf:resource="&om;Unit"/>.

Both should be contained, as both are used in practice.
Sorry, it was difficult to express clearly what I meant. Hopefully this effort is better: what I meant was that the definition of tonneOfCarbonDioxideEquivalent should not be based on 1 tonne but 1000 kilogramOfCarbonDioxideEquivalent, not that '1000 kilogramOfCarbonDioxideEquivalent' should be defined as a separate unit. You know what I mean?
This is in accordance with what you state later:
g CO₂-eq, t CO₂-eq and other g CO₂-eq should be defined based on kg CO₂-eq

And thanx for the hint of formatting multiple lines of xml code! :)

Cheers, Hajo

For now, I have started with replacing the <rdfs:subClassOf rdf:resource="&om;Mass"/> and <rdfs:subClassOf rdf:resource="&om;MassPerEnergy"/> productions with <rdfs:subClassOf rdf:resource="&om;Quantity"/> again, and the <rdfs:subClassOf rdf:resource="&om;MassUnit"/> and <rdfs:subClassOf rdf:resource="&om;MassPerEnergyUnit"/> productions with <rdfs:subClassOf rdf:resource="&om;Unit"/>.

What about doing all related changes in one dedicated draft pull request (i.e. a separate branch)? That would give us the chance to discuss intermediate changes and collaboratively contributing to it without releasing intermediate states.

Hey @jmkeil , @HajoRijgersberg ,
Thanks a lot for cleaning this up! I appreciate your expertise a lot. I keep following the issue, but I cannot contribute at the same level.
Cheers,
Georg

Hi Jan Martin and Georg,

Jan Martin:

What about doing all related changes in one dedicated draft pull request (i.e. a separate branch)?

I started with the indicated replacements just to at least have no incorrect productions at the moment in OM.
Yes, in principle a good suggestion (a separate branch), although maybe just to be quick that I define all manually in the main version. You see, I hardly have time for any management at the moment... Of course, if you're willing to do that, define all in a separate branch, that would certainly be Ok with me. You really know a lot about OM. I expect you to be able to define it all within the present structure which is not fully ideal, the - albeit well-intentioned - distinction between quantity and unit sections. You probably know what I mean. It will change in OM 3.0.
Please let me know if you see opportunities here or that I should do it quickly in the main version.

Georg:
Of course, fully understandable. Don't worry! :) Really appreciate any contribution, even if that would mean "only" following the issue, etc.

Cheers, Hajo

Of course, if you're willing to do that, define all in a separate branch, that would certainly be Ok with me. You really know a lot about OM. I expect you to be able to define it all within the present structure which is not fully ideal, the - albeit well-intentioned - distinction between quantity and unit sections.

I started a PR at #100. I know the logical structure - lets see how I get along with the serialization structure.

Thanx so much, Jan Martin! I am studying all your changes.

In general it really looks good! You get along very well with the structure of OM.
See at the PR for some further questions from my side. Looking very much forward to your response! :)