W3C home > Mailing lists > Public > www-style@w3.org > December 2010

Re: [CSS21] 4.3.2 Lengths (reference pixel?)

From: Dr. Olaf Hoffmann <Dr.O.Hoffmann@gmx.de>
Date: Mon, 13 Dec 2010 15:21:06 +0100
To: www-style@w3.org
Message-Id: <201012131521.06773.Dr.O.Hoffmann@gmx.de>
Anton Prowse:

>True, but the draft goes on to clearly define what the notation and 
>terminology means in the specific context of CSS.

Well, because the meaning of centimeter and millimeter is
already well defined, if the draft stats something different, this
results in a contradiction. And words like centimeter and
millimeter are always  unambiguously related to the
international standard unit meter, that every other definition
creates a contradiction, that disqualifies the section with
this deviating definition automatically.

>I agree that it's possibly undesirable to use the words "centimeters", 
>"millimeters" etc at that specific point in the spec, since it seems to 
>me that it's not necessary to redefine those words; it should be 
>sufficient to redefine just the unit notation and to then go on and 
>state the conditions under which those units do represent "real" 
>centimeters and millimeters (print media and similar high-resolution 
>devices).  However, it's not "wrong" to expropriate those terms provided 
>that the new meanings are clearly defined.

Of course it is possible to redefine standard units, for example if
it turns out, that there is a more accurate method to measure times,
this may result in a change (with no practical relevance to applications
like the size of graphics or fonts, because their error margin is orders
of magnitudes larger than the accuracy improvement of a possible
future redefinition of a second has consequences for such objects).
Therefore a redefinition of such standard units it out of reach and
relevance for the CSS WG.
There is only the unit centimeter and no more or less 'true' or 'real'
centimeters. This is the whole point about standards, that it is always
the same and that everybody can rely on this within the accuracy level
of relevance for the related application ;o)

>> If the CSS WG wants to define own units for whatever purpose,
>> they must not use 'cm', 'mm' and words like 'centimeter' and 'millimeter'.
>But that defeats the purpose.  

Following the discussions, there is a strong  presentiment, what the
'real' purpose might be, only to camouflage implementation bugs instead
of fixing them ;o) And I think, it helps authors, if we succedd in defeating
this - especially because the camounflage results in contradiction, 
which results in unusable absolute length unit for the future.

>(I'm sure the WG would do so precisely  
>that, if it served any useful purpose.)  The fact that the notation and 
>terminology matches existing established notation and terminology is 
>perhaps unfortunate 

faking and corruption the meaning of standards assists cheapting or
prepares for cheating or tries to cover bugs and cheating.

>from a universality perspective, but given the  
>motivating reason behind deciding to redefine these CSS unit through 
>hooking them to the reference pixel (namely to work around the fact 
>there there is significant misuse of these units when they were 
>originally defined to match the existing established meanings) it's 
>inevitable that we end up at a situation where the notation and 
>terminology has to be redefined for CSS's own purposes.

Well, even if many people do not understand a lot of mathematics,
that is no good reason to introduce contradictions in mathematics
just to cover their errors. 
It does not help those people living in falsity and it clearly has no
sense for those people, who do not have such a problem, but
useful applications.

>It's not clear to me why this is so very objectionable to you.  If you 
>prefer, just regard the strings "cm", "mm", "centimeter" and 
>"millimeter" as identifiers.  I agree that this could be confusing if 
>the redefinition were obfuscated, but given that it's clearly and 
>explicitly stated in the section of the spec that discusses <length>s, I 
>don't see that this is a problem.

Within CSS is is clearly incompatible with previous recommendations
and therefore in fact with all currently existing documents using CSS
with such units (whatever authors assume, how this should be presented
or not).
And even worse, it is incompatible with international standards, the
base of culture, science, techniques and trade.
Successful obfuscation here finally could result in a situation, 
where it is not possible anymore to build the devices that are needed
to view documents styled with CSS, because the production of
such devices require proper science, techniques and trade.

>If there is a internal inconsistency with the new definitions then 
>that's a different issue which needs to be addressed separately from 
>your issue about disliking the notation/terminology.

My comment is about the inconsistency, not about terminology.
CSS lives in a cultural environment and has only a meaning related
to such a cultural environment. It does not just end in itself.
Therefore it is not possible to disconnect it from this environment
that defines basic things like units, if there should remain any
meaning for the cultural environment.
Of course it is possible to call a building a flower, but the 
consequence it, that statements become meaningless for the

Brad Kemper:
> On Dec 12, 2010, at 5:05 AM, Dr. Olaf Hoffmann wrote:
> >> The point you seem to be missing is that we are not trying to define
> >> inches and centimeters. We are defining the CSS units of 'in' and 'cm'.
> >> In some contexts, these have a direct relationship to inches and
> >> centimeters, and in others they do not. On projector screens, for
> >> instance, 'in' is just about as divorced in meaning from a physical
> >> "inch" as it is from the preposition "in".
> >
> > No, as cited several times, it is written in the draft:
> >
> > "
> > cm: centimeters
> > mm: millimeters
> > "
> > This means, that 'cm' represents centimeters and
> > 'mm' represents millimeters. These are the same
> > letters (symbols) and words as commonly used for international
> > standard length units called 'centimeter' and 'millimeter'.
> So, would it be less objectionable to you if we had:
> in: CSS inches*
> cm:  CSS centimeters*
> mm: CSS millimeters*
> [ etc. ]
> *See discussion below for times when the CSS units are not equal to the
> corresponding metric or traditional units.
> In theory, you could argue that it would have been better to use
> abbreviations that did not so closely match the metric abreviations, e.g.:
> cssin: CSS inches*
> csscm:  CSS centimeters*
> cssmm: CSS millimeters*
> [ etc. ]

Useful could be something like:

in: inches — note, that 1in is equal to 2.54cm.
cm: centimeters
mm: millimeters
pt: points — 1/72nd of 1in. 
pc: picas — 1pc is equal to 12pt.
px: pixel units — a device pixel
rpx: reference pixel — as explained below

> However, as Anton pointed out, this doesn't serve any practical purpose.

If you do it properly as above, it improves CSS.
I think, such reference pixel have use cases as many other units have as
well, but these are not the only use cases, therefore the other units are
important as well for several applications. And once implemented, one
will see more and more of these use cases. That one cannot see them
right now, is just an indication, that authors know about the bugs in 
current implementation and that CSS fails for their intentions 
and use others formats or communication channels for those applications -
or do not realise their applications at all waiting for bug fixes instead
of camouflage.

> It 
> just makes the units harder to learn and use, 

To obfuscate the meaning and to frustrate use cases for such
units is simply not explainable. I discussed it with other authors
and what I got are shaking heads about such an obfuscation.
And if some authors are already mixing up pt and px as
reported, do you really believe, that they understand the
difference between a standard unit like cm and a obfuscated
unit like cm in CSS? 

> and at this point cannot be 
> changed retroactively because the old CSS units are already in widespread
> use 

Well, I think, absolute units are currently not often used, due to the known
bugs of browsers. 
And if some authors already use them with success, it would a stroke of fate,
if those units are obfuscated in future versions of CSS preventing further
use of such units for meaningful applications. 
And another problem is of course, that older documents based on CSS2.0
do not change their meaning. In fact one had to explore the date of creation
to find out, whether the author used standard units or CSS obfuscated units.

> and need practical meanings in all output devices. 

There are output devices with no meaning for a length at all -
possibly only (vsiual) angles matter or no display plane or volume or they 
have no digital base and therefore pixels are meaningless.
There will be always device specific units and applications, that have
no meaning for other devices and vice versa.
Luckily CSS has relative units, which are almost device independent.
These are ok for many applications and authors should use them.
However there will be always some applications for those other
units like px and cm as well. 

> The CSSWG considered  
> it more important to have consistency of converting between the various CSS
> units than it did it creating definitions that could not be reliably
> adhered to.

I agree that consistency is important, therefore I created the first comment 
about this issue. At least the inconsistency/contradiction in the draft needs 
to be removed. It would be even better of course still to have meaningful
absolute units for some use cases in the future, instead of obfuscated
aliases of a reference pixel. Of course the reference pixel as possible
unit has its use cases as well, but those are not the only use cases and
I don't think, that authors really need a large collection of aliases for
a reference pixel.

Received on Monday, 13 December 2010 14:21:41 UTC

This archive was generated by hypermail 2.3.1 : Monday, 2 May 2016 14:38:41 UTC