[
Lists Home |
Date Index |
Thread Index
]
> Why do we use XML to validate, manipulate, transform etc. other XML
> documents, fragments?
>
> I want to do my work in Java or another language, not a XML
> "language"
> like XSLT, XML Schema etc. The XML "languages" contains a lot
> of noise
> and duplicated information. Just try build a fairly large XSL
> stylesheet, an it will fast be hard to read. My favorite IDE do not
> support manipulating XML documents.
It's certainly true that using XML syntax for things like stylesheets has
its disadvantages. The reason the designers chose this approach include:
(a) many stylesheets consist of 75% templates for the output document, 25%
processing logic. Writing the template for the output document in XML is
very natural; it also means a stylesheet can easily be created from examples
of the required output document, by adding the processing code once the
output has been designed.
(b) it's extremely common in complex processing environments to write XSLT
transformations that take stylesheets as their input or output.
(c) it avoided the need to invent a new set of lexical conventions for
handling extended character sets, file inclusions, etc.
(d) it allows stylesheets to be easily embedded within other XML documents.
The designers of XQuery took your view that the clumsiness of an XML
representation outweighed these advantages. Many people have criticised them
for this.
Meanwhile Paul Tchistopolskii has developed a way of writing XSLT
stylesheets in non-XML notation: see
http://www.pault.com/pault/prod/XSLScript. So you can take your pick.
Michael Kay
Software AG
home: Michael.H.Kay@ntlworld.com
work: Michael.Kay@softwareag.com
>
> We have Java, C++ etc. We have if-else, while, switch etc. We can do
> classes, compile ......... We don't we use them??
>
> To me XML should be a part of my chosen programming language. No only
> files on a network or filesystem.
>
> I want XML in Java! Why not like this:
>
>
> Stylesheet style = {
>
> <XSL:STYLESHEET {
> [xmlns.xsl = "http://www.w3.org/1999/XSL/Transform"]
> [version = "1.0"]
>
> // Book
> <XSL:TEMPLATES {
> [match = "Book"]
> <HTML {
> <HEAD {
> <TITLE {
>
> name.equals("") ? "Hej,
> Guest!" : "Hej, " + name +"!";
> }
> }
> <BODY {
> <CENTER {
> <XSL:TEMPLATES
> { [select="title"] }
> }
> <XSL:TEMPLATES
> { [select="chapter"] }
> <XSL:TEMPLATES
> { [select="appendix"] }
> }
> }
> }
> }
> } // stylesheet
>
>
> I use Apples Project Builder, and the indenting works
> perfectly, for the
> code above!
>
> Niels Peter
>
>
> -----------------------------------------------------------------
> The xml-dev list is sponsored by XML.org <http://www.xml.org>, an
> initiative of OASIS <http://www.oasis-open.org>
>
> The list archives are at http://lists.xml.org/archives/xml-dev/
>
> To subscribe or unsubscribe from this list use the subscription
> manager: <http://lists.xml.org/ob/adm.pl>
>
>
|