Subject: RE: Portal applications using XSL From: Didier PH Martin <martind@xxxxxxxxxxxxx> Date: Fri, 26 May 2000 08:47:12 -0400 |
Hi Richard, We are doing something similar but not solely with Java. The engine works also with JavaScript, VBScript, PythonScript and PerlScript. The engine is a pipeline engine with several process stages: a) aggregation (XML fragments obtained from XML web services included in the XML document to be sent to the user agent) b) styling. For A) the document fragment could be created in Java, JSP, ASP and the 4 scripting languages mentioned. To this effect, we are using constructs like: <xinclude:include href="local/sqlwrapper.asp"/> which uses the same syntax as ASP and one of the four previously mentioned script language or <xinclude:include href="document('http://externaldomain.com?param=val1&parma=val2')/element1/e lement1.2"/> which call an external web service, obtain an XML document from it and then extract the right nodelist with the XPath construct and include the fragment in the main XML document or <xinclude:include href="local/ldapwrapper.jsp"/> which locally calls a JSP script to produce an XML fragment to be included into the XML document. And some other variants on the same theme... Off course all the aggregation process is done concurrently not sequentially. For B) we have two style and transformation strategies. 1) for languages like MIF, RTF, PDF and HDML we are using DSSSL. But I should say that concretely we use DSSSL for HDML which is, for the moment the most popular digital phone language. For instance all UP browser version 3.0 support HDML but not WML. For WML though, we are using XSLT transformation as we do for HTML, SMILE, VoiceXML. In the case of VoiceXML we still have some work to have a better adaptation to the speech servers out there. So, for style and transformation into rendering languages we support both DSSSL and XSLT (both can perform styling and transformation on XML documents). There is no needs to include any processing instructions in the XML documents since the server does a pattern match to recognize the user agent, detect the document type and then pick the right style sheet (could be a DSSSL or XSLT style sheet) to transform the document into a rendering language the user agent understand. At first we used java XSLT engines but quite soon we got performance issues under heavy load. However, for average loaded intranets, it seems to be sufficient. For heavy loaded intranets or extranets, we quite soon discovered that Java transformation is a bit slow with the current XSLT engines. We switched to C++ and even there got some performance problems under heavy loads. IN this last case, the performance problem was caused by all threads sharing the same heap. So we had to provide a separate heap to each thread so that the performance increase with several processor is nearly linear. In the context of portals we soon discovered that if you want to support different devices like phones, desktop browsers and digital phone browsers, the server has to do a lot of processing to match the right pipeline, stylesheet to the requested document. For instance, just with digital cell phones, you can have as user agent IDs: UP.Browser/3.0... (HDML), UP.Browser/2.0... (HDML), UP.Browser/3.1... (WML) etc.. and this is only one brand of digital phone browser. We discovered that a lot of them are still requesting XML to HDML transformation. Maybe you know that, but HDML is SGML based and several elements are omit tags. Thus, XSLT is of no use there, only for UP.Browser/3.x and up (just for this brand of browser off course). So, we discovered the hard way that versatile portals is not a piece of cake to build, but tremendously fun to develop :-)) PS: I am always interested to share in private with other with similar experience. I mean here the others trying to build tools adapted to portals. For those who will be at XML Europe, I'll be glad to show you our actual version or to simply exchange ideas. just drop me an email message. Cheers Didier PH Martin ---------------------------------------------- Email: martind@xxxxxxxxxxxxx Conferences: XML Europe (http://www.gca.org) Book: XML Professional (http://www.wrox.com) column: Style Matters (http://www.xml.com) Products: http://www.netfolder.com -----Original Message----- From: owner-xsl-list@xxxxxxxxxxxxxxxx [mailto:owner-xsl-list@xxxxxxxxxxxxxxxx]On Behalf Of Hoad, Richard (AFIS) Sent: Friday, May 26, 2000 4:01 AM To: 'xsl-list@xxxxxxxxxxxxxxxx' Subject: Portal applications using XSL We are using XSL, XML, Java servlets and Oracle to make a re-skinable generic Internet/Intranet CDS/Portal application. Java objects load themselves from the RDBMS and render themselves in XML. The interface is created by a series of XSL stylesheets. Is anyone else was doing anything similar? Richard Hoad FAO, Rome Italy P.S. WE ARE HIRING. If you are interested contact me off the 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
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
RE: Portal applications using XSL, Paulo Gaspar | Thread | Re: Portal applications using XSL, Tangi Vass |
RE: Grouping in the FAQ (was Re: Co, Kay Michael | Date | Re: Xalan Extension, ed billings |
Month |