YOUR FEEDBACK
NGASI Releases AppServer Manager 8.1
Dave Jenkins wrote: The remote server management is a welcomed added feature...
SOA World Conference
Virtualization Conference
$200 Savings Expire May 16, 2008... – Register Today!


2007 West
GOLD SPONSORS:
Active Endpoints
Your SOA Needs BPEL for Orchestration
BEA
Virtualized SOA: Adaptive Infrastructure for Demanding Applications
Nexaweb
Overcoming Bandwidth Challenges with Nexaweb
TIBCO
What is Service Virtualization?
SILVER SPONSORS:
WSO2
Using Web Services Technologies and FOSS Solutions
Click For 2007 East
Event Webcasts

2008 East
PLATINUM SPONSORS:
Appcelerator
Think Fast: Accelerate AJAX Development with Appcelerator
GOLD SPONSORS:
DreamFace Interactive
The Ultimate Framework for Creating Personalized Web 2.0 Mashups
ICEsoft
AJAX and Social Computing for the Enterprise
Kaazing
Enterprise Comet: Real–Time, Real–Time, or Real–Time Web 2.0?
Nexaweb
Now Playing: Desktop Apps in the Browser!
Sun
jMaki as an AJAX Mashup Framework
POWER PANELS:
The Business Value
of RIAs
What Lies Beyond AJAX?
KEYNOTES:
Douglas Crockford
Can We Fix the Web?
Anthony Franco
2008: The Year of the RIA
Click For 2007 Event Webcasts
SYS-CON.TV
TODAY'S TOP SOA & WEBSERVICES LINKS


Interview With Didier Martin

Digg This!

XML-J: Tell us what Talva does.
Martin:
We do XML servers. What we do is something that's at the end of the pipeline. It sits on top of XML stores, because XML stores are also called XML servers.

We're partnering with IXIASOFT. Our product will include the IXIASOFT datastore and other XML stores. It actually includes basic folders - file system folders. The end product will most likely include the XMLExtreme datastore. We also included the Tamino datastore. Our customers can pick the best one. "Okay, I like this XML store so I may take either IXIASOFT, Tamino, or XMLExtreme."

XML-J: What do you feed into the pipe? You pull XML formatted data from the store and then...
Martin:
We're just behind the Web server. We receive the GET or the POST request. The first stage is that we recognize these agents and then search the user agent capabilities in our database. We have a database that contains the information of about 900 different devices. We can recognize if the device is a VoiceXML, i-mode, or an HTML device, then we build a device profile. The device profile is used later on for the transformation stage. When the browser requests an XML document, whatever browser it is, we build this device profile, get the XML document or the document's fragment from the store, and finally transform the document into a rendering format. But not only that. We can do some aggregation with XInclude or XSLT, and more particularly with the document function.

XML-J: What's the difference between the competition and your product?
Martin:
The answer is that we've created an XInclude engine, which is based on the XInclude recommendations. We created the XPart element, which inherits from the XInclude behavior and provides, among other things, conditional inclusion. For instance, based on the device profile, it will or will not include a particular document or a document fragment. You can also override the HTTP caching parameters and cache the included document to speed the future requests on the same document.

If you aggregate contents from a partner who forgets to set a Time to Live (TTL) for the document and you know that this content is renewed only once a week, you can overload that default behavior and cache the content locally. To do so, set a TTL for this document in the XPart element. We manage a two-stage caching mechanism. The first stage is caching the document on the disk. The second stage is caching the XML document in the virtual memory. However, when you build a DOM or a structure in memory, after a certain time your content is spread everywhere on different virtual memory pages. We worked hard to get a document's info set in the same page continuum. It's like a cluster. That way you don't have a lot of page fault. This is the second level of caching. We're also caching the XSLT stylesheets, which is similar to what the other engines are doing. As a work in progress we're working on an infoset virtual machine. This means it will be a virtual machine that processes infosets. You'll have operators to manipulate the infosets, operators like a processor's op code. The good thing about it is you'll be able to compile your stylesheet into code that will be interpreted by this VM.

XML-J: This VM is one that you've developed?
Martin:
Yes. Last June at the GCA Conference in Paris someone made a presentation about using a VM engine to process XML documents with XSLT. We started to discuss it and then realized, "Gee, this is a good idea!" Especially since not everyone wants their XSLT code exposed. Because it's compiled as op codes, they can produce their stylesheets in binary code and protect their assets, otherwise the source is available as open. It's a choice. You can use the source code, so in that case we do a just-in-time compiling and keep the compiled version. Otherwise you publish the compiled version and there's no parsing, no translation, just code execution. It's minor things like that that improve the performance.

In addition, the server has been set from the beginning to work on a single processor machine, or a multiple processor machine with a cluster of up to 256 processors each having several processors each. In other words, a supercomputer. What we discovered from processing XSLT stylesheets on a quad processor machine is that if you don't have a well-managed heap, you end up with a situation in which you don't increase the performance even if you add new processors. Since they all share the same heap, the system swaps a lot. We manage to have each processor with its own heap. Many minor things like that increase the performance of the server and also its scalability factor.

XML-J: Typically, in an enterprise application, the next level that would sit on top of your server would be something similar to a content presentation layer?
Martin:
This is where we deal with TalvaStudio.com. Since a lot of people say, "Here's the server. You say it works, but do you have anything to run on top of that? How can we manage this XML site?" we concluded that developers need a place where they can create their own XML environment to build XML applications. This is why we are creating TalvaStudio.com, which will be a free space where all the XML developers can test their XML applications.

XML-J: And that's running out of your site?
Martin:
Yes, on the server side. Also, we have partners providing other development environments, such as the Tellme Studio. Included in TalvaStudio we have all the studios that are Web-based XML environments. TalvaStudio itself is an XML application. It's a wall-to-wall XML application using XSLT, XML, XInclude, and XLink.

We tend to stick to what's in the W3C recommendations and we're happy with the results so far. Surprisingly, we can do a lot more with the XML technologies than we expected at first. For instance, take what we call the NetFolder. It's a complete document-management system. At the beginning of the process used to create the NetFolder is a Java Servlet that contains all the procedural code. The Java Servlet is producing an XML document. The XML document could be syndicated or transformed and have a different look and feel.

For instance, an XSLT stylesheet can transform it into VoiceXML. From a theoretical point of view, it makes sense to produce an XML document that's produced by a Web service. For rendering devices it can be adapted to their rendering capabilities. To produce XML documents with procedural code, we've included a J2EE environment in TalvaStudio.com. This J2EE environment is used to produce XML documents, then these XML documents may be transformed. When we started this development, we weren't confident that it would work and that it would scale. Let's say you have a couple hundred connections or a couple thousand simultaneous connections, it may crash somewhere or it may take an eternity to return a rendering document or to fulfill a service request. But we learned how to balance things, such as putting the transformation process on a separate machine and the XML document creation on another one.

We came up with a new scheme, a new way to create a Web farm. Today the actual practice is to create a Web farm from a collection of HTTP servers, all with equal capabilities. We discovered that this scheme doesn't work. You have to create several specialized server farms - a server farm for transformation engines, for XML stores or XML creation engines, and for aggregation engines. As you can imagine, it's not so easy to set up. Now we're in the process of creating the tools to make that setup easier to do. We learned by trial and error, but things are getting better and we're happy with the results.

XML-J: Can people go to www.talva.com and check it out?
Martin:
Yes. TalvaStudio includes the "My Community" service, again all based on XML technologies. You'll see all the people connected to TalvaStudio and be able to share and exchange with them - useful in case you're in trouble and need help or you simply want to exchange some info with your peers.
ajit @ Sys-con.com

About XML News Desk
The XML-Journal News Desk monitors the world of XML and SOA /Web services to present IT professionals with updates on technology advances and business trends, as well as new products and standards.

XML JOURNAL LATEST STORIES . . .
3rd International Virtualization Conference & Expo: Themes & Topics
From Application Virtualization to Xen, a round-up of the virtualization themes & topics being discussed in NYC June 23-24, 2008 by the world-class speaker faculty at the 3rd International Virtualization Conference & Expo being held by SYS-CON Events in The Roosevelt Hotel, in midtown
Red Hat Named "Platinum Sponsor" of Virtualization Conference & Expo
Red Hat is a trusted open source provider. Red Hat offers enterprise customers a long-term plan for building infrastructures on the quality and innovation of open source. Combining open source operating system platform, Red Hat Enterprise Linux, together with applications, management
JustSystems Contributes Key XBRL Rendering Technology to Financial Community
JustSystems announced that it is contributing intellectual property rights for its invention of eXtensible Business Reporting Language (XBRL) rendering technologies to XBRL International, the standards body responsible for the oversight of the XBRL specification. The invention, known a
JustSystems Launches Campaign for XBRL Success
JustSystems announced its campaign to help organizations adopt XBRL (eXtensible Business Reporting Language), the XML-based standard for communicating financial and business information. In related news, JustSystems also announced that it has contributed intellectual property rights of
Virtualization Meets DaaS - Desktop-as-a-Service
After a $1.5 million angel round, Desktone, which was started in 2006 by Eric Pulier, who also started SOA Software, US Interactive and IVT, picked up $17 million in first-round funding about a year ago from Highland Capital Partners, SoftBank Capital, Citrix Systems and the China-base
SUBSCRIBE TO THE WORLD'S MOST POWERFUL NEWSLETTERS
SUBSCRIBE TO OUR RSS FEEDS & GET YOUR SYS-CON NEWS LIVE!
Click to Add our RSS Feeds to the Service of Your Choice:
Google Reader or Homepage Add to My Yahoo! Subscribe with Bloglines Subscribe in NewsGator Online
myFeedster Add to My AOL Subscribe in Rojo Add 'Hugg' to Newsburst from CNET News.com Kinja Digest View Additional SYS-CON Feeds
Publish Your Article! Please send it to editorial(at)sys-con.com!

Advertise on this site! Contact advertising(at)sys-con.com! 201 802-3021

SYS-CON FEATURED WHITEPAPERS


ADS BY GOOGLE
BREAKING XML NEWS
RCG IT Addresses BI and SOA Convergence and Business Architecture at TDWI World Conference in Chicago
RCG Information Technology, Inc. (http://www.rcgit.com/) will participate in The Data Wareho