<?xml version="1.0" encoding="UTF-8" ?>

<rss version="2.0"
  xmlns:ent="http://www.purl.org/NET/ENT/1.0/"
  xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
  <title>Saxon diaries</title>
  <link>http://saxonica.blogharbor.com/blog</link>
  <description></description>
  <language>en-us</language>
  <lastBuildDate>Thu, 22 Oct 2009 18:23:35 +0100</lastBuildDate>
  <category domain="http://saxonica.blogharbor.com/blog">Main Page</category>
  <generator>Blogware</generator>
  
  <item>
    <dc:creator>Michael Kay</dc:creator>
    <title>A stylesheet conversion</title>
    <link>http://saxonica.blogharbor.com/blog/_archives/2009/8/20/4294785.html</link>
    <guid>http://saxonica.blogharbor.com/blog/_archives/2009/8/20/4294785.html</guid>
    <pubDate>Thu, 20 Aug 2009 22:13:55 +0100</pubDate>
    <description>I&#39;m doing what looks like a fairly simple project to upgrade an XSLT 1.0 stylesheet. It&#39;s XSLT 1.0 because it has to run in the browser, but fortunately it doesn&#39;t really need any 2.0 features. The old version of the stylesheet worked with XML files in format A, described by a DTD. The new version of the stylesheet has to produce the same HTML output, but this time from XML files in format B, described by an XSD schema...</description>
    
    <category domain="http://saxonica.blogharbor.com/blog">Main Page</category>
    
    
    
    
  </item>
  
  <item>
    <dc:creator>Michael Kay</dc:creator>
    <title>Beyond Saxon 9.2</title>
    <link>http://saxonica.blogharbor.com/blog/_archives/2009/8/14/4288490.html</link>
    <guid>http://saxonica.blogharbor.com/blog/_archives/2009/8/14/4288490.html</guid>
    <pubDate>Fri, 14 Aug 2009 20:16:10 +0100</pubDate>
    <description>So, Saxon 9.2 is finally out. I haven&#39;t had much chance to sit back and think yet - it&#39;s been a busy and stimulating week at the Balisage conference. Regulars will know that I don&#39;t do planning, either of dates or facilities: I prefer to keep the programme completely flexible, so that I can always find room to put new things in if the opportunity presents itself. But it&#39;s worth thinking a little bit about what&#39;s on the to-do list.</description>
    
    <category domain="http://saxonica.blogharbor.com/blog">Main Page</category>
    
    
    
    
  </item>
  
  <item>
    <dc:creator>Michael Kay</dc:creator>
    <title>Analyzing dependencies in a class library: a use case for XSLT streaming</title>
    <link>http://saxonica.blogharbor.com/blog/_archives/2009/6/26/4235816.html</link>
    <guid>http://saxonica.blogharbor.com/blog/_archives/2009/6/26/4235816.html</guid>
    <pubDate>Fri, 26 Jun 2009 18:01:10 +0100</pubDate>
    <description>IKVM (in version 0.40) now has much more complete coverage of the Java class library, but an unfortunate consequence of this is that the libraries have become rather large. To cut down the size of the library, we need to understand the dependencies between its parts. Read on to find how I&#39;m doing this using the streaming facilities of the new Saxon 9.2 release...</description>
    
    <category domain="http://saxonica.blogharbor.com/blog">Main Page</category>
    
    
    
    
  </item>
  
  <item>
    <dc:creator>Michael Kay</dc:creator>
    <title>Saxon repackaging</title>
    <link>http://saxonica.blogharbor.com/blog/_archives/2009/6/19/4227718.html</link>
    <guid>http://saxonica.blogharbor.com/blog/_archives/2009/6/19/4227718.html</guid>
    <pubDate>Fri, 19 Jun 2009 22:44:31 +0100</pubDate>
    <description>Saxon9.2-EE is out on beta release, so the release process has finally started. It was beginning to feel as if the light at the end of the tunnel was an optical illusion. I decided not to change the licensing. GPL is just too distasteful, and other licenses that prevent use with commercial products just seem too burdensome. So here&#39;s what I&#39;ve decided to do...</description>
    
    <category domain="http://saxonica.blogharbor.com/blog">Main Page</category>
    
    
    
    
  </item>
  
  <item>
    <dc:creator>Michael Kay</dc:creator>
    <title>The GNU Public License</title>
    <link>http://saxonica.blogharbor.com/blog/_archives/2009/6/7/4213973.html</link>
    <guid>http://saxonica.blogharbor.com/blog/_archives/2009/6/7/4213973.html</guid>
    <pubDate>Sun, 07 Jun 2009 17:47:55 +0100</pubDate>
    <description>I&#39;ve been thinking carefully about whether there&#39;s a way to reduce the number of people &quot;freeloading&quot; on the back of Saxon - that is, selling commercial software that relies heavily on Saxon functionality without contributing anything in return. One potential way of doing that is switch in some way to a dual licensing approach: make application vendors choose between paying for a commercial license, and using the product under the GPL (GNU public license), which prevents them from creating &quot;derivative works&quot; unless those works are also licensed under the GPL (that is, made available as open source products). This is essentially the way MySQL works, and it seems to work well for them...</description>
    
    <category domain="http://saxonica.blogharbor.com/blog">Main Page</category>
    
    
    
    
  </item>
  
  <item>
    <dc:creator>Michael Kay</dc:creator>
    <title>All nodes untyped</title>
    <link>http://saxonica.blogharbor.com/blog/_archives/2009/5/14/4185505.html</link>
    <guid>http://saxonica.blogharbor.com/blog/_archives/2009/5/14/4185505.html</guid>
    <pubDate>Thu, 14 May 2009 09:34:08 +0100</pubDate>
    <description>Users sometimes imagine that just by running an application under Saxon-SA instead of Saxon-B, they will automatically get a performance boost. Sadly, this isn&#39;t the case. Sometimes Saxon-SA&#39;s more powerful optimizer will give a dramatic benefit, sometimes it will give none at all. In fact, sometimes if you move a workload to Saxon-SA without change, you see a performance regression. This is caused by the fact that Saxon-B can assume all nodes are untyped, whereas Saxon-SA can&#39;t make this assumption....</description>
    
    <category domain="http://saxonica.blogharbor.com/blog">Main Page</category>
    
    
    
    
  </item>
  
  <item>
    <dc:creator>Michael Kay</dc:creator>
    <title>Repackaging Saxon</title>
    <link>http://saxonica.blogharbor.com/blog/_archives/2009/5/6/4176679.html</link>
    <guid>http://saxonica.blogharbor.com/blog/_archives/2009/5/6/4176679.html</guid>
    <pubDate>Wed, 06 May 2009 13:32:31 +0100</pubDate>
    <description>I&#39;ve been thinking for a while about some repackaging for Saxon, and I&#39;ve now got to the point where I&#39;m working out the fine detail and creating appropriate build files. The main idea is that instead of two products, Saxon-B and Saxon-SA, there will in future be three: Home Edition (HE), Professional Edition (PE), and Enterprise Edition (EE).</description>
    
    <category domain="http://saxonica.blogharbor.com/blog">Main Page</category>
    
    
    
    
  </item>
  
  <item>
    <dc:creator>Michael Kay</dc:creator>
    <title>Streaming templates</title>
    <link>http://saxonica.blogharbor.com/blog/_archives/2009/2/23/4102743.html</link>
    <guid>http://saxonica.blogharbor.com/blog/_archives/2009/2/23/4102743.html</guid>
    <pubDate>Mon, 23 Feb 2009 23:48:41 +0000</pubDate>
    <description>The streaming facilities in Saxon-SA have been proving very popular with those users who have very large documents to process. However, at present the only thing you can do in streaming mode is to split the document into a flat sequence of subtrees, and then process each subtree independently. That meets many needs, but not all. There are many simple tasks that can intrinsically be streamed despite the fact that they don&#39;t fit this model: for example, renaming all the elements in a document, or deleting all the NOTE elements. So I&#39;ve started implementing &quot;streaming templates&quot;, where the document is processed hierarchically in classic XSLT style by applying template rules to each node at every level....</description>
    
    <category domain="http://saxonica.blogharbor.com/blog">Main Page</category>
    
    
    
    
  </item>
  
  <item>
    <dc:creator>Michael Kay</dc:creator>
    <title>Some threading tests</title>
    <link>http://saxonica.blogharbor.com/blog/_archives/2009/2/11/4089230.html</link>
    <guid>http://saxonica.blogharbor.com/blog/_archives/2009/2/11/4089230.html</guid>
    <pubDate>Wed, 11 Feb 2009 18:20:43 +0000</pubDate>
    <description>Continuing the investigation of Tatu Saloranta&#39;s XSLTMark measurements, I was puzzled by the fact that on certiain tests, he was seeing a very different ratio between Saxon and XSLTC performance from the figures I was seeing.... I thought one theory worth testing was that XSLTC might be making better use of multiple processors than Saxon (which is essentially single-threaded).....</description>
    
    <category domain="http://saxonica.blogharbor.com/blog">Main Page</category>
    
    
    
    
  </item>
  
  <item>
    <dc:creator>Michael Kay</dc:creator>
    <title>Another five-finger performance exercise</title>
    <link>http://saxonica.blogharbor.com/blog/_archives/2009/2/7/4084363.html</link>
    <guid>http://saxonica.blogharbor.com/blog/_archives/2009/2/7/4084363.html</guid>
    <pubDate>Sat, 07 Feb 2009 13:16:52 +0000</pubDate>
    <description>Tatu Saloranta has started doing some work looking at the performance of XML parsers in an XSLT environment, and in that context he started running the old Datapower XSLTMark tests (no longer available, sadly) which are all 1.0 stylesheets, and the figures comparing Saxon and Xalan seemed to be worth investigating....</description>
    
    <category domain="http://saxonica.blogharbor.com/blog">Main Page</category>
    
    
    
    
  </item>
  
  <item>
    <dc:creator>Michael Kay</dc:creator>
    <title>Bugs that don&#39;t crawl out of the woodwork</title>
    <link>http://saxonica.blogharbor.com/blog/_archives/2008/12/22/4031927.html</link>
    <guid>http://saxonica.blogharbor.com/blog/_archives/2008/12/22/4031927.html</guid>
    <pubDate>Mon, 22 Dec 2008 15:30:05 +0000</pubDate>
    <description>I&#39;ve said this before, but sometimes I&#39;m truly amazed by some of the bugs I find: how on earth can they remain undetected for so long?</description>
    
    <category domain="http://saxonica.blogharbor.com/blog">Main Page</category>
    
    
    
    
  </item>
  
  <item>
    <dc:creator>Michael Kay</dc:creator>
    <title>Ten Reasons why Saxon XQuery is Fast</title>
    <link>http://saxonica.blogharbor.com/blog/_archives/2008/12/13/4019383.html</link>
    <guid>http://saxonica.blogharbor.com/blog/_archives/2008/12/13/4019383.html</guid>
    <pubDate>Sat, 13 Dec 2008 15:42:16 +0000</pubDate>
    <description>A paper under this title is published this month in a special issue of the IEEE Data Engineering Bulletin. Available online at:&lt;br&gt;&lt;br&gt;&lt;a href=&quot;http://sites.computer.org/debull/A08dec/saxonica.pdf&quot;&gt;http://sites.computer.org/debull/A08dec/saxonica.pdf&lt;/a&gt;&lt;br&gt;&lt;br&gt;Of course, nearly all of what it says applies equally to XSLT. But for some reason, the academic community continues to be much more interested in XQuery.&lt;br&gt;</description>
    
    <category domain="http://saxonica.blogharbor.com/blog">Main Page</category>
    
    
    
    
  </item>
  
  <item>
    <dc:creator>Michael Kay</dc:creator>
    <title>Schema-Awareness and XMark performance</title>
    <link>http://saxonica.blogharbor.com/blog/_archives/2008/11/30/4001792.html</link>
    <guid>http://saxonica.blogharbor.com/blog/_archives/2008/11/30/4001792.html</guid>
    <pubDate>Sun, 30 Nov 2008 21:27:41 +0000</pubDate>
    <description>When people ask what performance benefits they can expect from using schema-aware transformations and queries, I&#39;ve often replied in a way that avoids setting expectations too high. Some queries can benefit significantly, others actually slow down because the extra cost of validating the input is not recovered by improvements in query execution speed. I&#39;ve often stressed that the main benefit of schema-awareness is in the speed and ease of debugging and testing the query, not primarily in performance. But I&#39;ve been taking another look at it, and I think I can probably start to be a bit more up-beat...</description>
    
    <category domain="http://saxonica.blogharbor.com/blog">Main Page</category>
    
    
    
    
  </item>
  
  <item>
    <dc:creator>Michael Kay</dc:creator>
    <title>TEI Conference</title>
    <link>http://saxonica.blogharbor.com/blog/_archives/2008/11/11/3972719.html</link>
    <guid>http://saxonica.blogharbor.com/blog/_archives/2008/11/11/3972719.html</guid>
    <pubDate>Tue, 11 Nov 2008 15:14:25 +0000</pubDate>
    <description>I spent a couple of days last week at the annual members meeting of the TEI (Text Encoding Initiative). It was good to meet so many Saxon users: a few familiar faces, rather more familiar names, and quite a few who introduced themselves as avid fans of the product, the book, or both...</description>
    
    <category domain="http://saxonica.blogharbor.com/blog">Main Page</category>
    
    
    
    
  </item>
  
  <item>
    <dc:creator>Michael Kay</dc:creator>
    <title>XML Schema: allowing new lexical forms</title>
    <link>http://saxonica.blogharbor.com/blog/_archives/2008/10/23/3943494.html</link>
    <guid>http://saxonica.blogharbor.com/blog/_archives/2008/10/23/3943494.html</guid>
    <pubDate>Thu, 23 Oct 2008 12:39:49 +0100</pubDate>
    <description>In a suggestion to the XML Schema Working Group, Axel Dahmen suggested defining a facet that allows the introduction of new lexical forms for existing data types. This would allow you, for example, to write a decimal value as &quot;1,23&quot;, or a date as &quot;12DEC2008&quot;, or a boolean as &quot;yes&quot;. The Schema WG has already put out two &quot;last call&quot; drafts of the XSD 1.1 spec, so it&#39;s not really welcoming ideas for new features at the moment, but I thought I would take a look at this one independently...</description>
    
    <category domain="http://saxonica.blogharbor.com/blog">Main Page</category>
    
    
    
    
  </item>
  
  <item>
    <dc:creator>Michael Kay</dc:creator>
    <title>Software Patents</title>
    <link>http://saxonica.blogharbor.com/blog/_archives/2008/10/2/3911326.html</link>
    <guid>http://saxonica.blogharbor.com/blog/_archives/2008/10/2/3911326.html</guid>
    <pubDate>Thu, 02 Oct 2008 12:20:25 +0100</pubDate>
    <description>I have absolutely no doubt that software patents are unquestionably a bad thing. It simply isn&#39;t in the public interest to grant them. The only possible reason for doing so is to reward and encourage innovation, and there is no evidence that they have that effect, and plenty of evidence that they do exactly the opposite...</description>
    
    <category domain="http://saxonica.blogharbor.com/blog">Main Page</category>
    
    
    
    
  </item>
  
  <item>
    <dc:creator>Michael Kay</dc:creator>
    <title>Just-in-Time Optimization</title>
    <link>http://saxonica.blogharbor.com/blog/_archives/2008/9/20/3893491.html</link>
    <guid>http://saxonica.blogharbor.com/blog/_archives/2008/9/20/3893491.html</guid>
    <pubDate>Sat, 20 Sep 2008 21:44:53 +0100</pubDate>
    <description>Rereading my last post on compile-time performance, the thought leaps out at me: if I don&#39;t want to rely on users setting a switch to control whether optimization happens or not, then I should be doing lazy (or just-in-time) optimization...</description>
    
    <category domain="http://saxonica.blogharbor.com/blog">Main Page</category>
    
    
    
    
  </item>
  
  <item>
    <dc:creator>Michael Kay</dc:creator>
    <title>More thoughts on compile-time performance</title>
    <link>http://saxonica.blogharbor.com/blog/_archives/2008/9/18/3890530.html</link>
    <guid>http://saxonica.blogharbor.com/blog/_archives/2008/9/18/3890530.html</guid>
    <pubDate>Thu, 18 Sep 2008 19:11:59 +0100</pubDate>
    <description>Another user has sent me some samples of generated code (XSLT this time) with a request to take a look at compile-time performance issues.  It takes about 3900ms to compile (5000ms under Saxon-SA), and the new switch to suppress optimization reduces this to about 1180ms. So optimization is the culprit here. 

So the switch will be useful here. But I hate performance improvements that depend on the user setting a switch, because 99% of users will never discover the switch is there. So, are there opportunities to improve the compile-time performance of the optimizer? You bet there are....</description>
    
    <category domain="http://saxonica.blogharbor.com/blog">Main Page</category>
    
    
    
    
  </item>
  
  <item>
    <dc:creator>Michael Kay</dc:creator>
    <title>Compile-time Performance</title>
    <link>http://saxonica.blogharbor.com/blog/_archives/2008/9/16/3887125.html</link>
    <guid>http://saxonica.blogharbor.com/blog/_archives/2008/9/16/3887125.html</guid>
    <pubDate>Tue, 16 Sep 2008 12:48:43 +0100</pubDate>
    <description>There was a support request a couple of days ago asking for a switch to turn optimization off. The user had a large query that was taking a long time to compile, and naturally felt that the cost could be reduced by omitting the optimization phase. But as always with performance, assumptions are dangerous until they have been verified by measurement...</description>
    
    <category domain="http://saxonica.blogharbor.com/blog">Main Page</category>
    
    
    
    
  </item>
  
  <item>
    <dc:creator>Michael Kay</dc:creator>
    <title>Tweaking the TinyTree</title>
    <link>http://saxonica.blogharbor.com/blog/_archives/2008/9/10/3877536.html</link>
    <guid>http://saxonica.blogharbor.com/blog/_archives/2008/9/10/3877536.html</guid>
    <pubDate>Wed, 10 Sep 2008 08:26:44 +0100</pubDate>
    <description>It&#39;s unusual to find anything these days that gives Saxon a 5% performance boost across the board, but I seem to have achieved that with some tweaks to the TinyTree data structure...</description>
    
    <category domain="http://saxonica.blogharbor.com/blog">Main Page</category>
    
    
    
    
  </item>
  
  <item>
    <dc:creator>Michael Kay</dc:creator>
    <title>There&#39;s an R in the month</title>
    <link>http://saxonica.blogharbor.com/blog/_archives/2008/9/1/3863838.html</link>
    <guid>http://saxonica.blogharbor.com/blog/_archives/2008/9/1/3863838.html</guid>
    <pubDate>Mon, 01 Sep 2008 10:57:15 +0100</pubDate>
    <description>September is upon us; summer is over; so it&#39;s time to start thinking about a new season. This blog has become rather dormant. Well, I&#39;m going to try and reform, and post more regularly, and if I haven&#39;t got much to say then I&#39;ll just witter on about what I&#39;ve been up to recently...</description>
    
    <category domain="http://saxonica.blogharbor.com/blog">Main Page</category>
    
    
    
    
  </item>
  
  <item>
    <dc:creator>Michael Kay</dc:creator>
    <title>XQuery Update and Node Identity</title>
    <link>http://saxonica.blogharbor.com/blog/_archives/2008/2/14/3523047.html</link>
    <guid>http://saxonica.blogharbor.com/blog/_archives/2008/2/14/3523047.html</guid>
    <pubDate>Thu, 14 Feb 2008 10:36:45 +0000</pubDate>
    <description>An interesting little spat on the XQuery internal mailing list over the last couple of days on the question of whether or not XQuery Update guarantees to preserve node identity. The spec says that it does. Someone remarked during a telcon that there were difficulties meeting this requirement in a SQL/XML environment. After the meeting I sent an email claiming that the assertion in the spec that updates preserve node identity is untestable and therefore ought to be removed.</description>
    
    <category domain="http://saxonica.blogharbor.com/blog">Main Page</category>
    
    
    
    
  </item>
  
  <item>
    <dc:creator>Michael Kay</dc:creator>
    <title>Further progress on XQuery Update</title>
    <link>http://saxonica.blogharbor.com/blog/_archives/2008/1/2/3442989.html</link>
    <guid>http://saxonica.blogharbor.com/blog/_archives/2008/1/2/3442989.html</guid>
    <pubDate>Wed, 02 Jan 2008 14:15:13 +0000</pubDate>
    <description>I&#39;ve no got to the point where my XQuery Update implementation is passing almost all the published tests. That doesn&#39;t mean its complete, because the test suite doesn&#39;t cover certain areas, such as revalidation of updated documents. But it&#39;s looking good.</description>
    
    <category domain="http://saxonica.blogharbor.com/blog">Main Page</category>
    
    
    
    
  </item>
  
  <item>
    <dc:creator>Michael Kay</dc:creator>
    <title>Progress on XQuery Update</title>
    <link>http://saxonica.blogharbor.com/blog/_archives/2007/12/19/3419605.html</link>
    <guid>http://saxonica.blogharbor.com/blog/_archives/2007/12/19/3419605.html</guid>
    <pubDate>Wed, 19 Dec 2007 19:03:48 +0000</pubDate>
    <description>A progress report on the state of the XQuery Update implementation in Saxon, in particular, a list of things still to be done and some thoughts on how they might be tackled.</description>
    
    <category domain="http://saxonica.blogharbor.com/blog">Main Page</category>
    
    
    
    
  </item>
  
  <item>
    <dc:creator>Michael Kay</dc:creator>
    <title>Implementing XQuery Update</title>
    <link>http://saxonica.blogharbor.com/blog/_archives/2007/12/11/3403913.html</link>
    <guid>http://saxonica.blogharbor.com/blog/_archives/2007/12/11/3403913.html</guid>
    <pubDate>Tue, 11 Dec 2007 18:00:30 +0000</pubDate>
    <description>I&#39;ve been asked a number of times whether I planned to implement XQuery Updates, and my answer has always been that I would do it when the time was right (i.e. when the spec seemed to be stable enough and when I had a suitable gap in my hectic schedule)...</description>
    
    <category domain="http://saxonica.blogharbor.com/blog">Main Page</category>
    
    
    
    
  </item>
  
  <item>
    <dc:creator>Michael Kay</dc:creator>
    <title>Final Draft of XQJ</title>
    <link>http://saxonica.blogharbor.com/blog/_archives/2007/11/21/3367880.html</link>
    <guid>http://saxonica.blogharbor.com/blog/_archives/2007/11/21/3367880.html</guid>
    <pubDate>Wed, 21 Nov 2007 16:29:45 +0000</pubDate>
    <description>A &quot;Final Draft&quot; of XQJ has been published (http://jcp.org/en/jsr/detail?id=225). There aren&#39;t many changes, but this time the specification is accompanied by actual interface definitions, and by a test suite.

Swapping in the published interface definitions for my previous handmade versions proved no trouble - one or two discrepancies as regards which methods throw exceptions, and one or two methods that have had an extra argument added.

Running the test suite is likely to be a bit more effort....</description>
    
    <category domain="http://saxonica.blogharbor.com/blog">Main Page</category>
    
    
    
    
  </item>
  
  <item>
    <dc:creator>Michael Kay</dc:creator>
    <title>Transforming 20 Gigabytes</title>
    <link>http://saxonica.blogharbor.com/blog/_archives/2007/9/25/3252121.html</link>
    <guid>http://saxonica.blogharbor.com/blog/_archives/2007/9/25/3252121.html</guid>
    <pubDate>Tue, 25 Sep 2007 13:20:28 +0100</pubDate>
    <description>My heart sank when I received an email yesterday from a Saxonica customer reporting a failure when running a transformation on a 20Gb source file (using the &quot;streaming&quot; capabilities described at http://www.saxonica.com/documentation/sourcedocs/serial.html.) It was apparently failing half way through with no error message of any kind. How do you go about debugging such a problem, especially when you&#39;re in a different continent from the client?</description>
    
    <category domain="http://saxonica.blogharbor.com/blog">Main Page</category>
    
    
    
    
  </item>
  
  <item>
    <dc:creator>Michael Kay</dc:creator>
    <title>Document Projection</title>
    <link>http://saxonica.blogharbor.com/blog/_archives/2007/8/25/3183053.html</link>
    <guid>http://saxonica.blogharbor.com/blog/_archives/2007/8/25/3183053.html</guid>
    <pubDate>Sat, 25 Aug 2007 10:34:13 +0100</pubDate>
    <description>Document Projection [1] is a technique invented by Amélie Marian and Jérôme Siméon designed to reduce the amount of memory occupied by a source document used by a query or transformation. The idea is to analyze the query and determine what nodes it is capable of accessing, and then while parsing and building the document, to filter out all those nodes that the query can never access. I decided to have a go at implementing this in Saxon...</description>
    
    <category domain="http://saxonica.blogharbor.com/blog">Main Page</category>
    
    
    
    
  </item>
  
  <item>
    <dc:creator>Michael Kay</dc:creator>
    <title>A new XQJ draft</title>
    <link>http://saxonica.blogharbor.com/blog/_archives/2007/6/13/3019935.html</link>
    <guid>http://saxonica.blogharbor.com/blog/_archives/2007/6/13/3019935.html</guid>
    <pubDate>Wed, 13 Jun 2007 22:54:32 +0100</pubDate>
    <description>XQJ is the proposed XQuery API for Java. A new draft of the XQJ specifications came out yesterday, with the psychologically significant version number of 0.9, and I spent today updating Saxon&#39;s implementation to conform. The spec can be downloaded from http://jcp.org/en/jsr/detail?id=225 ....</description>
    
    <category domain="http://saxonica.blogharbor.com/blog">Main Page</category>
    
    
    
    
  </item>
  
  <item>
    <dc:creator>Michael Kay</dc:creator>
    <title>Path Expressions Revisited</title>
    <link>http://saxonica.blogharbor.com/blog/_archives/2007/4/27/2908908.html</link>
    <guid>http://saxonica.blogharbor.com/blog/_archives/2007/4/27/2908908.html</guid>
    <pubDate>Fri, 27 Apr 2007 15:01:39 +0100</pubDate>
    <description>The core of XSLT and XQuery performance is the ability to evaluate simple path expressions efficiently. This area of Saxon has been untouched for some time, and I tend to assume it has been tuned to death. But I&#39;ve always had a nagging feeling that the machinery created for evaluating a multi-step path expression might have room for improvement....</description>
    
    <category domain="http://saxonica.blogharbor.com/blog">Main Page</category>
    
    
    
    
  </item>
  
</channel>
</rss>
