Re: rec 1.1 7.7.4

On Fri, Dec 10 2010 09:16:29 +0000, dave.pawson@gmail.com wrote:
> http://www.w3.org/TR/xsl/#text-decoration
>
> Notation used
>
> CSS2 Definition:
> Value: 	none | [ [ underline | no-underline] || [ overline |
> no-overline ] || [ line-through | no-line-through ] || [ blink |
> no-blink ] ] | inherit
>
> Doesn't make much sense to me as a content model?

It's not a content model in the XML sense.

> What does || mean? Are they alternataives? Why are two bars necessary.

It's copied wholesale from CSS2 [1][2].

>From Section 1.2, "Benefits of XSL" [3]:

   XSL builds on the prior work on Cascading Style Sheets [CSS2] and the
   Document Style Semantics and Specification Language [DSSSL].

>From Section 1.2.1 [4]:

   There are four classes of XSL properties that can be identified as:

   1. CSS properties by copy (unchanged from their CSS2 semantics)
   2. CSS properties with extended values
   3. CSS properties broken apart and/or extended
   4. XSL-only properties

> Replacing them with single bar would make it consistent with the
> remainder of the models?

There are many property value definitions that use "||" when
alternatives aren't mutually exclusive.

> none |
>    [
>        [ underline | no-underline]
>        || [ overline | no-overline ]
>        || [ line-through | no-line-through ]
>        || [ blink | no-blink ]
>    ] |
>   inherit
>
> becomes
>
> none |
>    [
>        [ underline | no-underline]
>        | [ overline | no-overline ]
>        | [ line-through | no-line-through ]
>        | [ blink | no-blink ]
>    ] |
>   inherit

Your reworking doesn't sufficiently indicate that you can have both
'underline' and 'overline' (and others).  If "underline | no-underline"
is mutually exclusive, then you've made it look like everything is
mutually exclusive.

> Is it really necessary to copy CSS fancies?

It was: "XSL builds on the prior work on Cascading Style Sheets".

One person's fancies is another person's bread and butter.  If you come
to XSL with familiarity with the CSS2 spec, then "||" is familiar to
you, just as when you are familiar with XML content models, then
"#PCDATA" is familiar to you.  XSL could have invented new syntaxes for
every little thing, but I contend that it's not the purpose of a spec to
redefine every other spec on which it depends, and inventing new
syntaxes just makes it harder both for people to understand your spec
and to show that your spec is compatible with the other specs on which
it depends.

Regards,


Tony Graham                         Tony.Graham@MenteithConsulting.com
Director                                  W3C XSL FO SG Invited Expert
Menteith Consulting Ltd                               XML Guild member
XML, XSL and XSLT consulting, programming and training
Registered Office: 13 Kelly's Bay Beach, Skerries, Co. Dublin, Ireland
Registered in Ireland - No. 428599   http://www.menteithconsulting.com
  --  --  --  --  --  --  --  --  --  --  --  --  --  --  --  --  --
xmlroff XSL Formatter                               http://xmlroff.org
xslide Emacs mode                  http://www.menteith.com/wiki/xslide
Unicode: A Primer                               urn:isbn:0-7645-4625-2


[1] http://www.w3.org/TR/xsl11/#d0e15664
[2] http://www.w3.org/TR/1998/REC-CSS2/about.html#q6
[3] http://www.w3.org/TR/xsl/#d0e284
[4] http://www.w3.org/TR/xsl/#d0e297

Received on Friday, 10 December 2010 11:06:50 UTC