[Dev] XML Learning
Tom Bryan
dev@trilug.org
Sat, 13 Jul 2002 19:17:57 +0500
On Saturday 13 July 2002 12:42 am, Michael Mueller wrote:
> Bit of Pandora's Box is it not? I am coming at XML from a DocBook user
> manual perspective. My first goal is to be proficient with DocBook.
> There's just too much magic going on for me to feel comfortable. I started
> reading a bit about SGML and XML and XSL and my comfort level started to
> rise. I want my DocBook experience to be a launching point for further XML
> study.
Then the WROX book I mentioned might be a good starting point, especially if
there has been an update recently. After the first few chapters, it's set up
as topic chapters so (while there is some building on previous chapters) many
of the chapters can be read out of order acording to your interest.
I know what you mean, though. The basics of XML are fairly simple. I can
state them in a few sentences. XML defines a standard, tag-based plain text
document/data/content mark up language. XML "instance" documents conforming
to the basic rules of XML are well-formed. Each document may also conform to
a specific DTD or XML Schema, which defines what a valid document looks like.
Esentially, the DTD/XML Schema defines a vocabulary, and an instance document
can then be written to that vocabulary.
>From a programmer's perspective, this separation is nice. People can write
tools for processing XML documents. These tools are very generic since they
just need to process well-formed documents and maybe determine the instance
document's validity against a given DTD/XML Schema. Xerces is an example of
such a tool. Then, there are other tools that can lean on the first set of
tools. These tools are designed to process documents within a specific
vocabulary. For example, there are tools that can convert DocBook XML
documents into other formats, such as HTML.
Unfortunately, beyond those basics, using XML effectively seems somehwhat
daunting. For example, if you really want to learn about XSLT, you need to
have a grasp of XML namespaces, XPath, and XPointer. None of those are hard
in themselves, but like you said: it feels like a Pandora's box. Or perhaps,
the old junk closet. It's hard to reach in and get just one thing.
---Tom