[xsl] Processing XML files with entity and notation declarations

Subject: [xsl] Processing XML files with entity and notation declarations
From: dvint@xxxxxxxxx
Date: Fri, 21 Sep 2012 13:27:06 -0700
I have a situation where I'm trying to push a bunch of files through a
number of separate stylesheets to convert them from one format to another.
That is I'm moving from s1000d issue 2.2 sgml to issue 3 xml and then to
issue 4.

I'm doing this in separate steps so I can keep the stylesheet logic simple
and with a specific purpose. This makes maintenance easier and allows me
to drop in new conversion details as I discover problems in a given
version of the spec or with how the resulting markup then interacts with
the next step. Also I will be able to move files to a specific version
without having to rewrite the conversion process. So if I get issue 3.0
files, I'll be able to move them to 4 by using the same stylesheet.

So all of this would work just fine if I was only dealing with the XML
content, but s1000d is designed to use graphic entity declarations with
their associated notation declarations and then reference the entities in
the content when a <graphic> tag is inserted.

I think the answer to my question (coming up) is going to be I have to
live with it, but I was just wondering if folks had some alternate ideas.

So I have the stylesheet that is able to read this doctype declaration
informaiton and rebuild the entities and notations. What I would really
like is to just use something like xsl:copy-of to clone this each time,
but I can't. I've set this processing up as a separate stylesheet that I
can include in other stylesheets, but there are slight processing
differences I want to introduce depending upon the stage I'm at. I'm
making this work, but it just seems like more work than it should be. Any
suggestions on an easier way to handle this?

This effort originally started as a one off conversion that I set
direction on, so I could minimaize the number of steps. Well we now want
this to be a little more production oriented and also allow the
flexibility to break the process into even more steps. So I might want to
renumber/rename the files or I might just want to strip the change markup
information.

..dan

Current Thread