Subject: Re: Which engine? (RE: JavaScript and XSL) From: Paul Tchistopolskii <paul@xxxxxxx> Date: Mon, 23 Oct 2000 01:33:14 -0700 |
From: Mike Brown <mike@xxxxxxxx> > Paul Tchistopolskii wrote: > > Mike Brown wrote: > > > My opinion is that if I write a stylesheet with version="1.0" then it is > > > my job as a document author to not attempt to do anything that isn't > > > allowed by XSLT 1.0. > > [...] > > This was the header of my stylesheet. It says version="1.0". > > > > This means SAXON already allows me to write XSLT 1.1 > > using version="1.0". Right? > > > > This means stylesheets I write in SAXON are not portable. > > ( in the universe of version="1.0" ) > Better yet, how do you define 'portable'? > > Does it mean you can execute the stylesheet with any processor? > Does it mean you will achieve the same output with any processor? > Does it mean the stylesheet contains nothing that is disallowed by the > version of XSLT the stylesheet claims to conform to, except within the > guidelines of 'forwards-compatible mode' processing? > > These are separate questions ... degrees of portability. Mike, I already confessed that I give up. I don't understand what does it mean when I write : <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> I simply don't understand what does it mean. If I can insert constructions of XSLT v 1.1 into my stylesheet and processor will not behave differently comparing to situation when I use <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.1"> What can I say? Nothing. I have no understanding what is this 'version' about. Is it written somewhere ? > XSLT provides function-available(), system-property(), xsl:version > attributes and 'forwards-compatible mode' ... I think SAXON should require > xsl:version="1.1" to be in effect to do the type cast, but I may be > misunderstanding that somewhat obtuse section of the spec. Hm. *That* I'l understand. No need in typecast in 1.1 - don't write the typecast. But I'm writing 1.0 and can safely use constructions which are *not* allowed in 1.0 ( processor does not even gives me a warning). This I can not understand. > I may have this wrong, but you see the idea... this stylesheet is > 'portable' and may also be 'conformant' to XSLT 1.0, but does not > necessarily produce the same results on all processors. I know that. For example, sorting is specified in the way that 2 conformant processors can produce different results and this will be not the error. Not that bad way of standardization, actually. Let's say: "the behavior of RTF node-set conversion is not specified. This is OK for 2 conformant processors to provide different feedback to RTF node-set conversion. Processor can report the error, or it can make a conversion." Write it on paper, call it 'standard' and enjoy. I think I started to understand the way it goes. Why not? I think this is consistent and will allow to explain any behavior of any engine. Something tells me this is funny, but why is it funny, but allowing different sorting is not funny? Just one sad thing. When I see your 'portable stylesheet snippet' - which tries protecting itself from any possible disaster - I can not say : "I like it" ( not because I think it is 'bad' XSLT code. I think it is 'good' XSLT code). I say ( to myself ) : "this is a hell of #ifdefs and I have been there and I don't understand why this "new design" proposed by W3C is in any way better than #ifdefs. I think it is not better" Also, now after your explanation I finally don't understand what is this 'version' about. Before your explanation I was thinking that in 5.5 SAXON just has a bug! It was so simple for me: "O, Steve says that old version of Saxon was reporting the 'no conversion allowed', now on the same stylesheet Saxon is not reporting that 'no conversion'. Nothing has changed ( there is no XSLT 1.1 ) - this is a bug in SAXON. Right? You say "wrong". Then you explained that this all happens on purpose and MS were 'too early' but now 'SAXON is right on the time' - this makes me feel that I'm crazy ( and I see that you really understand this magic, when I don't ). I think I'll better to stop participation in this thread, to save a bit of my common sense which is leaking with every letter ;-) Please don't get me wrong - your letters are very helpful. I'm just absolutely crushed with the way of things. Again - I think you do understand situation really much better than I do. Because, for example, I'll never push myself learning all the "portability" magic you have learned. Rgds.Paul. XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: Which engine? (RE: JavaScript a, Mike Brown | Thread | Re: Which engine? (RE: JavaScript a, Mike Brown |
RE: XPath expression as param, Kay Michael | Date | Simple XSL question, Rob van der Zeijden |
Month |