473,385 Members | 1,848 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,385 software developers and data experts.

Performing XSL Translation on Client vs. Server

Our web application currently uses MSXML 4.0 to perform XSL
translation of our XML document into HTML which is then delivered to
the client's browser. By specifying the XSL file used for translation
in the XML file, we can simply send the XML document to the client's
browser and have the browser perform the translation for us. This
reduces the amount of processing that must be performed on the server.

I know certain browser versions install MSXML 3.0 by default and that
should not be a problem since we are not doing anything special that
3.0 can't handle. The organization using this web application has a
requirement that users have IE 5.5 or higher.

Can anyone provide pros and cons of doing this and recommend which
approach we should follow?

Thanks,
Michael Levy
Jul 20 '05 #1
3 2293
On 23 Apr 2004 15:52:17 -0700, Mi*****@MichaelLevy.net (Michael)
wrote:
Can anyone provide pros and cons of doing this and recommend which
approach we should follow?


Do it server-side. Look at caching downstream of the server.

I only ever use client-side as a way of doing complex data-browsers on
intranets. These are all data islands (embedded on a static HTML page)
and there's usually client-sde scripting to control sort order,
filters etc. Very powerful, very useful, not much use for the public
web.

I don't use client-side XSL (serving a bare XML document with a
stylsheet boudn to it) at all. I have done in the past, but not now.
It's not friendly or reliable to the public web, and data islands give
a better "user experience" (especially after errors) for user groups
where I know I can guarantee client-side XSL support.

Also look at dynamically serving different content, depending on the
user agents. You can offer a basic page (server-side XSLT) and a more
functional (data island) page if you know the browser can support it.
Typically I've built systems that did this for various filter or sort
orders. The "smart" version did it on the browser quickly, the "dumb"
version round-tripped it to the server for a new page.

--
Smert' spamionam
Jul 20 '05 #2
On Fri, 23 Apr 2004 15:52:17 -0700, Michael wrote:
Our web application currently uses MSXML 4.0 to perform XSL
translation of our XML document into HTML which is then delivered to
the client's browser. By specifying the XSL file used for translation
in the XML file, we can simply send the XML document to the client's
browser and have the browser perform the translation for us. This
reduces the amount of processing that must be performed on the server.

I know certain browser versions install MSXML 3.0 by default and that
should not be a problem since we are not doing anything special that
3.0 can't handle. The organization using this web application has a
requirement that users have IE 5.5 or higher.

Can anyone provide pros and cons of doing this and recommend which
approach we should follow?

Thanks,
Michael Levy


Client side transformations are the work of the devil! The only time it is
acceptable to do the transformation client side (IMO) is for intranet
applications where an organiastion has strict control over client
configurations and can aford the support hassles for the
machines under which the transformations just will not work! (Trust me ,
it happens).

If youre considering the approach for a internet application - expect to
lose eye-balls and customers for those (and there will be many) who the
site does not work for. In addition if youre based in Europe, Aus or the US
also be prepared to put together an accessible version so as to not
contravine the various pieces of accessibility legislation floating about.
If youre in Australia - expect to be successfully sued if you dont :)

The above is also likely to become true for intranet applications also.

Basically server side transformations allow guarenteed successful delivery
of content to many *target* browsers and offer an easy upgrade path (Ive
successfully migrated a site between Xalan, MSXML and LibXSLT). The cost
of this is that a high traffic website will require additional
architechtural considerations (load balancing, possibly dedicated hardware
to offload transformations ). Any high trafic site should be considering
these issues anyway.

Jul 20 '05 #3
My recollection is that IE 5.5 (and IE 6.0) do not support client
side XSL transformations out of the box. You have to add MSXML3.0
(or MSXML 4.0) a download from Microsoft.

That might be a consideration. You might not have a choice.
Jul 20 '05 #4

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

3
by: Bernie Yeater | last post by:
I am used to I_SQL in SQL SERVER and SQL Plus in Oracle, I can not find anything in MySQL that is simlar for building a querry. Is there a client side tool that is simular?
3
by: Dick Zeeman | last post by:
Hi, I have a problem regarding the perfomance of a stp in combination with character translation. The following happens. We have an automated installation script (nt command file) for...
0
by: Gene Ellis | last post by:
Thanks for reading my posting. We are running an Apache webserver on a Linux machine. For whatever reason, our nerver admin cannot get the XSLT libraries installed for PHP which would enable us to...
5
by: Gene Ellis | last post by:
Our sys op won't/can't install the server side XSLT libraries, to allow us perform server-side translations on our webserver It is a Linux machine. Is it possible to put the XML and XSL files on a...
2
by: Charles | last post by:
Hi, I'd like to offer 4 versions of my website (3 foreign languages) this way: - I want the language to be detected by the browser - I want to be able to choose the language I want by...
7
by: Peter Eisentraut | last post by:
Greetings. The official PostgreSQL documentation has been translated to German and has been published as a book by verlag moderne industrie/mitp ("PostgreSQL: Das offizielle Handbuch", ISBN...
2
by: Phil C. | last post by:
Hi. I'm having trouble translating a routine to alter validation at the client and the server. A portion of the C# code is: >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>...
0
by: Satheshkumar | last post by:
Dear Sir/Madam, I am Sathesh, i am working as a Software Engineer in one software concern. In my project work, I will need to install the Microsoft .NET FrameWork1.1 and Microsoft VJ#...
6
by: g35rider | last post by:
Hi, sometimes due to unchecked code I get segmentation faults once in a while and would like to be able to catch them and do some cleanup on things. This segmentation fault could be anywhere in the...
0
by: taylorcarr | last post by:
A Canon printer is a smart device known for being advanced, efficient, and reliable. It is designed for home, office, and hybrid workspace use and can also be used for a variety of purposes. However,...
0
by: aa123db | last post by:
Variable and constants Use var or let for variables and const fror constants. Var foo ='bar'; Let foo ='bar';const baz ='bar'; Functions function $name$ ($parameters$) { } ...
0
by: ryjfgjl | last post by:
If we have dozens or hundreds of excel to import into the database, if we use the excel import function provided by database editors such as navicat, it will be extremely tedious and time-consuming...
0
by: ryjfgjl | last post by:
In our work, we often receive Excel tables with data in the same format. If we want to analyze these data, it can be difficult to analyze them because the data is spread across multiple Excel files...
0
by: emmanuelkatto | last post by:
Hi All, I am Emmanuel katto from Uganda. I want to ask what challenges you've faced while migrating a website to cloud. Please let me know. Thanks! Emmanuel
1
by: Sonnysonu | last post by:
This is the data of csv file 1 2 3 1 2 3 1 2 3 1 2 3 2 3 2 3 3 the lengths should be different i have to store the data by column-wise with in the specific length. suppose the i have to...
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.