Re: [jats-list] Row headers in OASIS table model

Subject: Re: [jats-list] Row headers in OASIS table model
From: "Gareth Oakes goakes@xxxxxxx" <jats-list-service@xxxxxxxxxxxxxxxxxxxxxx>
Date: Sat, 17 Sep 2022 19:39:07 -0000
I'm not sure of the sort of subject matter you are thinking of but I think of
row headings as labels for the row. That means they are not part of the data
in the grid. In a table representing data on person heights you might have
column headers for male/female (and other?) and row headers for each country
in the study. The data would be average heights.

A good test is that if you had a wide table and clipped the table off halfway
through, would it make sense to repeat the row headers on the next page where
the remainder of the table displays? If I clipped the example table between
male and female then I'd for sure want the country labels (row headers) to
display against the female column too.

Does that help at all?

Thanks,
Gareth

From: Michael Boudreau mboudreau@xxxxxxxxxxxx
<jats-list-service@xxxxxxxxxxxxxxxxxxxxxx>
Sent: Friday, 16 September 2022 8:54 AM
To: jats-list@xxxxxxxxxxxxxxxxxxxxxx
Subject: Re: [jats-list] Row headers in OASIS table model

Thanks, Debbie. On the question of recognizing whether a row entry needs to
designated a header, do you know of any good guides for training editors to
make this judgment? Without having thought much about it, I'm not sure I can
yet articulate more than "Do it if it's bold" or "You'll know when you see
it".

--
Michael R. Boudreau
Electronic Publishing Technology Manager
The University of Chicago Press
1427 E. 60th Street
Chicago, IL 60637
www.journals.uchicago.edu<http://www.journals.uchicago.edu>


From: Debbie Lapeyre
dalapeyre@xxxxxxxxxxxxxxxx<mailto:dalapeyre@xxxxxxxxxxxxxxxx>
<jats-list-service@xxxxxxxxxxxxxxxxxxxxxx<mailto:jats-list-service@xxxxxxxxxx
errytech.com>>
Date: Wednesday, September 14, 2022 at 5:34 PM
To: jats-list@xxxxxxxxxxxxxxxxxxxxxx<mailto:jats-list@xxxxxxxxxxxxxxxxxxxxxx>
<jats-list@xxxxxxxxxxxxxxxxxxxxxx<mailto:jats-list@xxxxxxxxxxxxxxxxxxxxxx>>
Subject: Re: [jats-list] Row headers in OASIS table model


> On Sep 14, 2022, at 5:32 PM, Michael Boudreau
mboudreau@xxxxxxxxxxxx<mailto:mboudreau@xxxxxxxxxxxx>
<jats-list-service@xxxxxxxxxxxxxxxxxxxxxx<mailto:jats-list-service@xxxxxxxxxx
errytech.com>> wrote:
>
> We use the OASIS table model in our JATS 1.2 XML for in-house editing with
Arbortext Editor. Is there a way to tag a table row so that the first cell in
the row is designated as a row header, so that this
>
>
>
> <row>
>     <entry>Row header</entry>
>     <entry>Some value</entry>
>     <entry>Another value</entry>
> </row>
>
> can be converted to this
>
> <tr>
>     <th scope="row">Row header</th>
>     <td>Some value</td>
>     <td>Another value</td>
> </tr>
>

OASIS THEADS ARE NOT FOR YOU

Not directly. OASIS <tgroup>s hold both <header> and <body>
elements, but OASIS table header elements are COLUMN
headers and you want a ROW header. That is, the OASIS
headers are not in the same row; they expect the header
to be its own (first) row.  So here is a typical OASIS table,
which does NOT help you a bit:

<table>
<tgroup cols="3">
<colspec colnum="1" .../>
<colspec colnum="2" .../>
<colspec colnum="3" .../>
<thead>
<row>
<entry>Row header</entry>
<row>
<thead>
<tbody>
<row>
<entry>Some value</entry>
<entry>Another value</entry>
</row>
</tbody>
</tgroup>
</table>

THE CONCEPTUAL PROBLEM

How do you recognize an entry that needs to become a <th>?
Should every first entry in a row become a <tr>? Only if
it has content? How?

POSSIBLE HACKS

IFF you can ALWAYS recognize a potential row header entry,
you can probably hack this.

I suggest attribute(s) on the first entry in each row, or
however else you are recognizing that you want this entry
to become a <th>.

You might want to just set up your @scope attribute.

The attributes that already attach to <entry> are:
        colname         NMTOKEN          #IMPLIED
        namest          NMTOKEN          #IMPLIED
        nameend         NMTOKEN          #IMPLIED
        morerows        NMTOKEN          #IMPLIED
        colsep          %yesorno;        #IMPLIED
        rowsep          %yesorno;        #IMPLIED
        align           (left|right|center|justify|char)        #IMPLIED
        char            CDATA            #IMPLIED
        charoff         NMTOKEN          #IMPLIED
        valign          (top|middle|bottom)                     #IMPLIED

And there also is a parameter entity (%tbl.entry.att;) that lets you
add any attributes you want. You need to set the parameter entity
in a customization module or in the DTD BEFORE calling the OASIS table model.

It would be easy enough to add a @scope attribute, but
if the value is not always "row", I do not know how you
would decide the value.

Hope this helps. CALS is just not set up in the way
you would like it to be.

--Debbie
JATS-List info and archive<http://www.mulberrytech.com/JATS/JATS-List/>
EasyUnsubscribe<http://lists.mulberrytech.com/unsub/jats-list/2708257> (by
email<>)

Current Thread