Associating DSSSL style sheets with documents

James Clark jjc at jclark.com
Sat Mar 22 13:09:24 GMT 1997


At 08:29 18/03/97 -0800, Jon Bosak wrote:

>| So allow the processing instructions.
>
>When we start downloading a DSSSL stylesheet from the server, I think
>that this is probably the method we'll try first.  Of all the
>alternatives, I like James Clark's last suggestion best for initial
>experimentation:
>
><?XML-stylesheet type="text/dsssl" href="foo.dsl"?>

I've just implemented this in Jade.  For the benefit of others implementing
DSSSL or XML here are the details:

- I recognize the PI anywhere in the prolog (so you can put it an external DTD).

- When there are multiple such PIs, I give the first precedence.

- I allow any of text/dsssl, text/x-dsssl, application/dsssl and
application/x-dsssl for the type. The type is case insensitive.

- I recognize <?stylesheet as well as <?xml-stylesheet.

- The contents of the PI are parsed like a start-tag. In particular the name
of the PI and the names of the attributes are case insensitive.

- The value of the HREF attribute can have the form foo.dsl#bar to indicate
the style-specification in foo.dsl with id bar.

- If the value of the HREF attribute is relative, then the storage object
that contains the PI is the base.

- After the removal of any #id part, the value of the HREF is treated like a
system identifier. So it can be an FSI as well as a URL.

- If there aren't any processing instructions I fall back to using the
document system identifier with  the extension changed to .dsl.

I've also implemented a simpler alternative:

 <?dsssl foo.dsl>

I also plan to implement something to allow catalogs to be used as an
alternative to PIs, but I haven't decided what yet.

James



xml-dev: A list for W3C XML Developers
Archived as: http://www.lists.ic.ac.uk/hypermail/xml-dev/
To unsubscribe, send to majordomo at ic.ac.uk the following message;
unsubscribe xml-dev
List coordinator, Henry Rzepa (rzepa at ic.ac.uk)




More information about the Xml-dev mailing list