Re: FAQ about reasons behind CSS

Laurens Holst wrote:
> Mikko Rantalainen schreef:
> 
>>>As an example, look at: 
>>>http://map.tni.nl/resources/msxsystemvars.php#USRTAB
>>>[...]
>>
>>I disagree. Both examples you provided would be perfectly understandable 
>>if the rowspan were removed and missing cells were filled with the 
>>repetation of cell data.
> 
> The meaning would be different (even though the point would probably get 
> accross as well). None of these addresses is called USRTAB. The entire 
> range #F39A-#F3AC is called USRTAB.
> 
> When looking at defining those labels, the following code is incorrect 
> (and impossible):
> USRTAB: EQU #F39A
> USRTAB: EQU #F39B
> ...
> 
> (where EQU is the assembly equivalent of define). Nowhere in any 
> specification does it say that address #F39B has the label ‘USRTAB’.

Then I misundertood the data the table was trying to represent. I 
still do not believe that it's sematically correct to even try to 
present ranges of addresses and the addresses itself in a single 
table. Instead, we *really* need a <grid> element to encode such 
data. If you're trying to encode such data as a *strict* table, you 
can only say that #F39A is *part of range* called 'USRTAB'.

The fact that you need to combine multiple lines of data as one 
entity (rows #F39A to #F3AC) suggests to me that the data you're 
trying to represent isn't just rows and columns (that's what I'd 
consider as a table). I think that in this case we have a table 
(Address, Length and Description columns) and in addition we have an 
overlay that has been put over the table to group some of the lines 
and those groups have been given identifying names, such as 
"USRTAB". The colspan and rowspan attributes transfer enough 
*presentation* so that this overlaying can be done at least in 
visual user agent with some success (I wasn't the only one who 
misunderstood the table).

Another correct way (IMHO) to repsent this data would be to use 
nested tables (yes, I believe it transfers the data semantics better 
than colspan and rowspan). In this case, you have first table

     Table: MSX BIOS system area

   System area partition name  |  Details
   RDPRIM                      | <table>...</table>
   WRPRIM                      | <table>...</table>
   CLPRIM                      | <table>...</table>
   USRTAB                      | **1**
   ... ... ...


where the **1** is the <table> with columns Address, Length and 
Description for addresses from #F39A to #F3AC.

It's hard to align columns of different nested tables without using 
fixed table layout but it's a problem with presentation/CSS, not 
semantics.

-- 
Mikko

Received on Wednesday, 6 July 2005 11:45:56 UTC