In the "truthy" RDF mapping, DataValues are represented as plain RDF literals (or resources), associated directly with a property (as the predicate) and an item (as the subject), e.g.
Q23 P1477 "Douglas Noël Adams"@en
How shall we represent a quantity with unit here? We could use plain strings with unit identifiers, and invent a type for those:
Q3375 P.... "2962m"^^"wikibase:value-with-unit"
But no triple store will support this out of the box. Especially not if values for the same property use different units.
Units can be normalized by converting to a) the unit's base unit or b) to the property's "standard" unit (if we decide to define such a thing). Option (b) would allow us to use the plain number:
Q3375 P.... "2962"^^"xsd:decimal"
Any values that can not be converted to the property's standard unit would be omitted.
This would work nicely with indexing and querying. But it's semantically awkward: one would have to look up the definition of the property to know 2962 //what//.
Is there a way in RDF to declare that all values of a given predicate are to be interpreted as using a specific unit of measurement?
(Side note: all this doesn't touch upon representing upport and lower bound. These would probably use separate (derived) predicates).