Subject: RE: XML/XSL parsers
From: "John C. Spinosa, MD, PhD" <john@xxxxxxxxxxx>
Date: Mon, 15 Feb 1999 09:09:57 +0000
|
So sequoia is actually looking at this stuff.
John
At 11:08 AM 2/15/99 -0500, you wrote:
>Thanks for the info. I had IE5b installed, but another app registered
>an older version of msxml.dll. After re-registering the IE5b msxml.dll,
>and setting IIS up properly, I'm good to go. Thanks again.
>
>Craig
>Software Engineer
>Sequoia Software
>e: craigh@xxxxxxxxxxxxx
>p: 410.715.0206
>
>-----Original Message-----
>From: Guy_Murphy@xxxxxxxxxx [mailto:Guy_Murphy@xxxxxxxxxx]
>Sent: Friday, February 12, 1999 4:57 AM
>To: xsl-list@xxxxxxxxxxxxxxxx
>Subject: RE: XML/XSL parsers
>
>
>Hi Craig.
>
>I have fielded the question with a couple of people, and in each case I
>found that the problem was they had the answer, but where looking for
>the
>catch. There is little documentation on this matter because there is
>little
>to document :)
>
>In order to process XSL on IIS you should ideally have IE5 installed on
>the
>server, but you can simply copy across the parsers DLL and register it
>on
>the server. Decoupling the parser in this way is unsupported with IE5b2
>(although MS say it will be supported for the gold release), but I have
>heard of no adverse consequence of doing so.
>
>Given that you now have the parser on your server, and that IIS is setup
>to
>process ASP as normal, the examples on the MS site are all you need.
>
>Note the scripted process is the same on the server as it is on the
>client
>except that obviously you write out the result with Response.Write
>rather
>than Document.Write
>
>If it provides any further help I've pasted bellow an example of an ASP
>page I use which detects whether IE4 or IE5 is accessing the site, if
>it's
>IE4 the transformation is performed on the server, if IE5 the client.
>
>Good luck
> Guy.
><!--
> File: load.asp
> Browser: IE4sp1
> Author: Guy J Murphy
> Creation: 09/12/98
> Update: n/a
>
> Generic load and transformer for XML and XSL files.
>
> Please consult:-
> "htm/convensions.htm" ...for coding
>conventions
> "htm/issue.htm" ...for known
>outstanding
> issues
> "htm/readme.htm" ...for general issues
> "htm/dependancies.htm" ...installation
>issues
>
> To Do:-
> [1] ...Write the above readmes at some point
>-->
>
><%@ LANGUAGE = JScript %>
><!--#include file="../inc/constants.inc"-->
><%
> var data = Request('data');
> var style = Request('style');
> var side = Request('side');
>
> // Sniff the client
> var client = new
>String(Request.ServerVariables("HTTP_USER_AGENT"));
> var version = client.split(";");
>
> if (version[1] == ' MSIE 5.0b2') {
> // transform on the client
> %>
> <html>
> <head>
> <title>LiveIntranet XML Experiment</title>
> </head>
> <script type="text/JScript">
> var ROOT = '<%= ROOT %>';
>
> // Error formatting function:
> function reportError(where, error) {
> document.write("<font face=Arial><B>Error
>loading '" + where + "'</B></font> <BLOCKQUOTE><XMP>" + error.reason +
>"</XMP></BLOCKQUOTE>");
> return;
> }
>
> // Load the XML
> var xmlDoc = new
>ActiveXObject("Microsoft.XMLDOM");
> xmlDoc.async = false;
> xmlDoc.load('<%= ROOT+data+'?side='+side %>');
>
> if (xmlDoc.parseError.errorCode != 0) {
> reportError('<%= ROOT+data %>',
>xmlDoc.parseError);
> } else {
> // Load the stylesheet
> var xslMain = new
>ActiveXObject("Microsoft.XMLDOM");
> xslMain.async = false;
> xslMain.load('<%= ROOT+style %>');
>
> if (xslMain.parseError.errorCode != 0) {
> reportError('<%= ROOT+style %>',
>xmlDoc.parseError);
> }
>
> // Process it
> var result =
>xmlDoc.transformNode(xslMain);
> }
>
> document.write(result);
> </script>
> </html>
>
> <%
> } else {
>
> // transform on the server
>
> // Error formatting function:
> function reportError(where, error) {
> Response.Write('<p>Data: '+ROOT+data+'</p>');
> Response.Write('<p>Style: '+ROOT+style+'</p>');
> Response.Write('<font face=Arial><B>Error loading "' +
>where
> + '"</B></font> <BLOCKQUOTE><XMP>' + error.reason +
>'</XMP></BLOCKQUOTE>');
> }
>
> // Load the XML
> //Response.Write('<p>Data:
>'+ROOT+data+'?side='+Request('side')+'</p>');
> //Response.Write('<p>Style: '+ROOT+style+'</p>');
>
> var xmlDoc = Server.CreateObject("Microsoft.XMLDOM");
> xmlDoc.async = false;
> try {
> xmlDoc.load(ROOT+data+'?side='+side);
> } catch (err) {
> Response.Write('Failed to load XML doc...'+ROOT+data);
> }
>
> if (xmlDoc.parseError.errorCode != 0) {
> reportError(data, xmlDoc.parseError);
> } else {
> var xslMain = Server.CreateObject("Microsoft.XMLDOM");
> xslMain.async = false;
> xslMain.load(ROOT+style);
>
> if (xslMain.parseError.errorCode != 0) {
> reportError(style, xmlDoc.parseError);
> }
> else
> {
> // Process it
> var result = xmlDoc.transformNode(xslMain);
> }
> }
> }
>%>
>
><% Response.Write(result); %>
>
>
>
>
>
>xsl-list@xxxxxxxxxxxxxxxx on 02/11/99 09:48:07 PM
>
>To: xsl-list@xxxxxxxxxxxxxxxx
>cc: (bcc: Guy Murphy/UK/MAID)
>Subject: RE: XML/XSL parsers
>
>
>
>
>Quick newbie question. Is there a site or page describing the process
>to add the control to IIS and possibly has some example .asp pages for
>it's use. I have viewed the server-side demo and other assorted demos
>on Microsoft's site, but I haven't really found great documentation on
>the server set-up. Thanks.
>Craig E. Hohlbein
>Software Engineer
>Sequoia Software
>e: craigh@xxxxxxxxxxxxx
>p: 410.715.0206
>-----Original Message-----
>From: Mark Birbeck [mailto:Mark.Birbeck@xxxxxxxxxxxxx]
>Sent: Thursday, February 11, 1999 11:30 AM
>To: 'xsl-list@xxxxxxxxxxxxxxxx'
>Subject: RE: XML/XSL parsers
>
>> As I have not yet taught myself Java I have done most of my
>> XML/xsl work
>> with IE5beta. However, before I load anything onto a web site
>> I have to
>> allow for other browsers. Can anyone suggest where I can find
>> a stand-alone
>> (exe) parser that I can use with other browsers (or
>> versions). Everything I
>> have found seems to be java source code.
>Obviously depends on your server, but if it's IIS then have you
>considered putting the IE5 control onto the server? We've got it going
>here quite nicely. The script checks for IE5 browsers, and sends the
>XML/XSL separate if it is. Otherwise it merges the XML and XSL.
>If the data is not that dynamic - say the XML pages are not coming from
>a database, or the data changes infrequently, then you can speed up the
>whole process by using Content Replication from Site Server to take a
>snapshot of the site. This is the same as what your EXE would achieve,
>but a bit more flexible, I think.
>Mark Birbeck
>Managing Director
>Intra Extra Digital Ltd.
>39 Whitfield Street
>London
>W1P 5RE
>w: http://www.iedigital.net/
>t: 0171 681 4135
>e: Mark.Birbeck@xxxxxxxxxxxxx
>
> XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
>
> XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
>
>
>
>
>
>
> XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
>
>
> XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
>
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
|