|
Subject: Re: Architecture-based Processing with DSSSL and Jade From: Paul Prescod <papresco@xxxxxxxxxxxxxxxx> Date: Thu, 04 Sep 1997 17:45:56 -0400 |
I do a simple form of architectural processing by hiding the element's
"real" GI in an attribute. If the attribute matches one of a list, then
I process it "specially", if it doesn't, I send it on to the
architectural version in another module unmolested:
<!doctype style-sheet PUBLIC "-//James Clark//DTD DSSSL Style
Sheet//EN"[
<!entity tei.lit.stylesheet SYSTEM "c:\tei\jade\tei-dsl\tei-lite.dsl"
NDATA DSSSL>
]>
<style-specification use="tei.lit.stylesheet">
<style-specification-body>
(define *visual-acuity* "presbyopic")
(element ROW
(case (attribute-string "role")
(("HEADING")
(make sequence font-weight: 'bold font-size: 14pt
(next-match)))
(("data")
(next-match))))
(element P
(case (attribute-string "rend")
(("CAUTION" "NOTE")
(sosofo-append
(make paragraph
font-size: 14pt
quadding: 'start
(literal (attribute-string "rend") ":"))
(make sequence font-weight: 'bold
(next-match))))
((#f)
(next-match))))
This is okay for small changes to a stylesheet, but for more powerful
processing you would want to be able to do the opposite:
(element NOTE
(make sequence font-weight: 'bold
(process-as TEI.2 P)))
I haven't completely thought it through, but I think that it should
always be the derived element's construction rule's responsibility to
pass information to invoke the base element's rule explicitly. You can't
do it automatically because of multiple inheritance. How would the
processor reasonably choose which base class to invoke?
Paul Prescod
DSSSList info and archive: http://www.mulberrytech.com/dsssl/dssslist
| Current Thread |
|---|
|
| <- Previous | Index | Next -> |
|---|---|---|
| Architecture-based Processing with , W. Eliot Kimber | Thread | Re: Architecture-based Processing w, James Clark |
| Architecture-based Processing with , W. Eliot Kimber | Date | Administrivia, dssslist-owner |
| Month |