Hello all, new to this list and fairly new to XML (my assistant and I have
been writing it for about a month). We are delving into XML and XSL as a
means to facilitate what is, for us, an otherwise painful and time consuming
process: the production, dissemination, and revision of our tutorials and
handouts. Let me give you some background on who I am and what I do, then I will
give a summary of what we are doing/trying to do with XML /XSL and you
experienced users can comment or criticize our strategy.
PROBLEM
I am an instructional designer for a college and chair our college's
faculty training committee. I also run our faculty center for technology,
and produce online tutorials, print tutorials, workshop handouts, etc on a small
handful of technologies for three different audiences: faculty, TAs/graders,
students. The technology we spend most of our time on is WebCT, which, for
those of you who don't know, is a learning management system--essentially a
webserver that hosts course websites with a bunch of built-in tools.
Anyway, as I say I write and teach instructional materials on WebCT for several
different audiences, so as an example parts of the contenton the WebCT Mail tool
currently lives in 5 incarnations containing variable other
content: 1 web tutorial for faculty, 1 web tutorial for students, 1 paper
tutorial for faculty, 1 paper workshop handout for faculty, 1 paper tutorial for
students. Since much of the content is the same in all 5 of these
documents we decided it would be advantageous to use XML to contain that
content, and use XSL to provide the 5 transformations.
ASIDE: has anyone seen this done with tutorials before? I'm sure it has,
but here in Utah the idea is new to every institution I have talked to. We all
know about shareable content objects and learning objects, but very little has
been done to implement such stuff, at least around here.
STRATEGY
Here's our general strategy to accomplish this: we will have one XML file
per technology, e.g. "uvsc_webct-ce41.xml". That XML doc will contain a
hierarchy that contains at least these nodes as the critical elements:
<technology>
<tool>
<tool_topic>
So in the example I mentioned technology ("WebCT") is the highest
level, the document contains multiple tools (e.g. "Mail", each containing
multiple tool_topics (e.g. "Creating New Mail Folders"). I've determined
that the tool_topic will be the lowest common denominator if you will, the
smallest useable "chunk" of content that can be repurposed across all the
different incarnations. So the tool_topic "Creating New Mail Folders" might
appear in all the faculty tutorials but none of the student tutorials. Well,
technically it would appear in all the tutorials but I'm pained for a better
example right now.
So up to this point we are doing fine. We've got what I think is a nice,
comprehensive DTD and some basic tutorials in xml, and have even begun to do
some transformations of the content. We haven't done a whole lot with the
XSL end, just a bit, but we are planning on having it work something like this:
we have a general XSL doc that contains only the most basic transformation
information--call it format.xsl. We also have a XSL doc that alters that
formatting for print (print.xsl), and an XSL doc that alters that formatting for
web (web.xsl)--we consciously chose to do this instead of having just 2
different CSSs (print & web) because of some other issues we encountered in
the print vs. web presentation. All three of those XSL documents would
remain static. We would then come up with a fairly dynamic set of additions XSL
documents that contain: a variable "list" of the tool_topics to be included
from the xml doc and the order in which they will appear, a ref to the XSL print
or web doc, a ref to the XSL formatting doc, various document-specific
information. So for example I might have an XSL document called
webct_mail_tutorial_print.xsl which grabs the print.xsl doc, the format.xsl doc,
and grabs specific tool_topics from the "Mail" tool node. I could then
print that sucker via the web or by converting to a PDF with XSL-FO (the book of
which I have yet to open).
So that's it in a nutshell. If you read this entire post I appreciate it,
and, as I said, would love to hear your experienced comments and criticisms of
what we are trying to do. If you have seen similar projects that I could refer
to as a model, let me know.
J. Stein
phone: (801) 863 8929
office: Computer Science 633
|