W3C home > Mailing lists > Public > www-xsl-fo@w3.org > January 2011

Odd syntax? xsl-fo 1.1

From: Dave Pawson <dave.pawson@gmail.com>
Date: Fri, 7 Jan 2011 15:23:19 +0000
Message-ID: <AANLkTim1M4Cd_3ErZTGkKyLCrVk48C5DjpBDacu=THCe@mail.gmail.com>
To: www-xsl-fo@w3.org
7.17.4 "text-decoration"

CSS2 Definition:
Value: 	none | [ [ underline | no-underline] || [ overline |
no-overline ] || [ line-through | no-line-through ] || [ blink |
no-blink ] ] | inherit


When converted (laboriously) to a schema definition...
It is long.
It is (to me) largely incomprehensible. I asked and received help from
the rng list.

There are a few examples of this...
I wonder
a) if xsd 1.1 can cope any better
b) this complexity is needed.
c) If it is needed, could it be simplified in some way

DaveP


<define name='textDecoration'>
  <attribute name='text-decoration'>
    <choice>
      <data type='token'>
	<param name='pattern'>(no-)?overline\s+((no-)?underline)?\s+((no-)?line-through)?\s+((no-)?blink)?\s*</param>
      </data>
      <data type='token'>
	<param name='pattern'>(no-)?overline\s+((no-)?underline)?\s+((no-)?blink)?\s+((no-)?line-through)?\s*</param>
      </data>
      <data type='token'>
	<param name='pattern'>(no-)?overline\s+((no-)?line-through)?\s+((no-)?underline)?\s+((no-)?blink)?\s*</param>
      </data>
      <data type='token'>
	<param name='pattern'>(no-)?overline\s+((no-)?line-through)?\s+((no-)?blink)?\s+((no-)?underline)?\s*</param>
      </data>
      <data type='token'>
	<param name='pattern'>(no-)?overline\s+((no-)?blink)?\s+((no-)?underline)?\s+((no-)?line-through)?\s*</param>
      </data>
      <data type='token'>
	<param name='pattern'>(no-)?overline\s+((no-)?blink)?\s+((no-)?line-through)?\s+((no-)?underline)?\s*</param>
      </data>
      <data type='token'>
	<param name='pattern'>((no-)?underline)?\s+(no-)?overline\s+((no-)?line-through)?\s+((no-)?blink)?\s*</param>
      </data>
      <data type='token'>
	<param name='pattern'>((no-)?underline)?\s+(no-)?overline\s+((no-)?blink)?\s+((no-)?line-through)?\s*</param>
      </data>
      <data type='token'>
	<param name='pattern'>((no-)?underline)?\s+((no-)?line-through)?\s+(no-)?overline\s+((no-)?blink)?\s*</param>
      </data>
      <data type='token'>
	<param name='pattern'>((no-)?underline)?\s+((no-)?line-through)?\s+((no-)?blink)?\s+(no-)?overline\s*</param>
      </data>
      <data type='token'>
	<param name='pattern'>((no-)?underline)?\s+((no-)?blink)?\s+(no-)?overline\s+((no-)?line-through)?\s*</param>
      </data>
      <data type='token'>
	<param name='pattern'>((no-)?underline)?\s+((no-)?blink)?\s+((no-)?line-through)?\s+(no-)?overline\s*</param>
      </data>
      <data type='token'>
	<param name='pattern'>((no-)?line-through)?\s+(no-)?overline\s+((no-)?underline)?\s+((no-)?blink)?\s*</param>
      </data>
      <data type='token'>
	<param name='pattern'>((no-)?line-through)?\s+(no-)?overline\s+((no-)?blink)?\s+((no-)?underline)?\s*</param>
      </data>
      <data type='token'>
	<param name='pattern'>((no-)?line-through)?\s+((no-)?underline)?\s+(no-)?overline\s+((no-)?blink)?\s*</param>
      </data>
      <data type='token'>
	<param name='pattern'>((no-)?line-through)?\s+((no-)?underline)?\s+((no-)?blink)?\s+(no-)?overline\s*</param>
      </data>
      <data type='token'>
	<param name='pattern'>((no-)?line-through)?\s+((no-)?blink)?\s+(no-)?overline\s+((no-)?underline)?\s*</param>
      </data>
      <data type='token'>
	<param name='pattern'>((no-)?line-through)?\s+((no-)?blink)?\s+((no-)?underline)?\s+(no-)?overline\s*</param>
      </data>
      <data type='token'>
	<param name='pattern'>((no-)?blink)?\s+(no-)?overline\s+((no-)?underline)?\s+((no-)?line-through)?\s*</param>
      </data>
      <data type='token'>
	<param name='pattern'>((no-)?blink)?\s+(no-)?overline\s+((no-)?line-through)?\s+((no-)?underline)?\s*</param>
      </data>
      <data type='token'>
	<param name='pattern'>((no-)?blink)?\s+((no-)?underline)?\s+(no-)?overline\s+((no-)?line-through)?\s*</param>
      </data>
      <data type='token'>
	<param name='pattern'>((no-)?blink)?\s+((no-)?underline)?\s+((no-)?line-through)?\s+(no-)?overline\s*</param>
      </data>
      <data type='token'>
	<param name='pattern'>((no-)?blink)?\s+((no-)?line-through)?\s+(no-)?overline\s+((no-)?underline)?\s*</param>
      </data>
      <data type='token'>
	<param name='pattern'>((no-)?blink)?\s+((no-)?line-through)?\s+((no-)?underline)?\s+(no-)?overline\s*</param>
      </data>
    </choice>
  </attribute>
</define>


-- 
Dave Pawson
XSLT XSL-FO FAQ.
Docbook FAQ.
http://www.dpawson.co.uk
Received on Friday, 7 January 2011 15:23:52 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Friday, 7 January 2011 15:23:53 GMT