Replies: 7 comments 3 replies
-
@steveraysteveray Any thoughts on this? |
Beta Was this translation helpful? Give feedback.
-
@mgberg, we discussed your idea, and could use your help with some clarification. Take unit:PH for example. What would the triple look like that relates this unit to another? We have unit:MOL-PER-DeciM3, but would we need to define a new unit that is the reciprocal of that, for your qudt:isLog10Of to point to? More generally, since the object of the triple is a unit and not a mathematical expression, would this always be the case? |
Beta Was this translation helpful? Give feedback.
-
I believe you have come to the same conclusion we have, namely that it would be nice to be able to express arbitrary mathematical relations between some units and/or quantity kinds, but it is non-trivial to do right, and possibly out of scope for QUDT. Creating intermediate units so that triples such as the inverse of (hydrogen ion) activity seems (to me) a bit of a slippery slope. Finally, your choice of :isInverseOf is probably not the best, as it will be confused with owl:inverseOf, which means something completely different. Something more like :isReciprocalOf might be better. However, this information is derivable by comparing the dimension vectors, so the counter-argument is "DRY" (Don't repeat yourself). So at this point, there doesn't seem (again, to me) to be a silver bullet solution that is both elegant and generally applicable... |
Beta Was this translation helpful? Give feedback.
-
I agree, I don't see a silver bullet solution either. And I also agree that creating intermediate units so does seem like it could be a slippery slope. And good point about If there's no good path forward on these kind of issues at this point in time, I'd definitely be interested to know if a future effort falls in this area. In the meantime, perhaps we'll just have to do something internally. However, I will note that only comparing dimension vectors for some operations as you suggest is not always fully sufficient, so I'm not sure the |
Beta Was this translation helpful? Give feedback.
-
Is MathML still a thing? https://www.w3.org/TR/MathML3/ |
Beta Was this translation helpful? Give feedback.
-
@mgberg, in thinking and discussing the :isReciprocalOf relation with the QUDT Board, including your examples for AngularFrequency etc., it seems like choosing what quantity kinds are considered reciprocals of others can be contextual. Also, there will be the need to specify n x m such relations, which will not scale well (assuming we continue to publish explicit relations rather than dynamically computed relations). For these reasons, we are concluding that for now it's probably best to support these relations within applications that build on QUDT. @dr-shorthair, yes, I suppose MathML is a possibility. I think the QUDT Board would need convincing before we jump into the rabbit hole of using a general mathematical markup for content (rather than, say LaTeX, which we already use for presentation of expressions). |
Beta Was this translation helpful? Give feedback.
-
On occasion, it is the case that data is presented in the logarithm of a dimensional unit. For example, viscosity data is sometimes reported in log of Pa⋅s (expressed as log₁₀(Pa⋅s) or log₁₀(𝜈/Pa⋅s) depending on the preferred system of notation) or log of Poise. It would be convenient to be able to express these in QUDT, even though it would be ideal to not express these values logarithmically.
Already defined is the property
qudt:isScalingOf
which is used to say one unit is equal to another multiplied by a conversion multiplier, e.g.unit:MilliM qudt:isScalingOf unit:M
. It would conceivably be possible to add one or more properties to express something similar but for logarithms, e.g.qudt:isLog10Of
, in order to capture that values expressed as log₁₀(𝜈/Pa⋅s) are numerically equivalent to the logarithm of a value expressed in Pa⋅s.It would also be conceivably possible to do some conversions between units in that log scale using the existing conversion framework via
qudt:conversionOffset
, e.g.:A challenge comes in with the representation of the dimensionality of these units. Especially if the notation log₁₀(𝜈/Pa⋅s) is considered, it could be expressed as dimensionless with a Quantity Kind that is also dimensionless. Perhaps the
qudt:isLog10Of
property could be used to connect the dimensionless logarithmic Quantity Kind toqudt:DynamicViscosity
as well in this case.A few questions for the community:
qudt:isLog10Of
approach seem reasonable?If this functionality is found to be in-scope and acceptable, I'd be happy to create a PR with the appropriate additions.
Beta Was this translation helpful? Give feedback.
All reactions