<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" /><style type="text/css"><!--
#msg dl { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt;  }
#msg dl a { font-weight: bold}
#msg dl a:link    { color:#fc3; }
#msg dl a:active  { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre { overflow: auto; background: #ffc; border: 1px #fc0 solid; padding: 6px; }
#msg ul, pre { overflow: auto; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff  {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<title>[19963] trunk</title>
</head>
<body>

<div id="msg">
<dl>
<dt>Revision</dt> <dd><a href="http://trac.webkit.org/projects/webkit/changeset/19963">19963</a></dd>
<dt>Author</dt> <dd>ap</dd>
<dt>Date</dt> <dd>2007-03-05 09:36:24 -0800 (Mon, 05 Mar 2007)</dd>
</dl>

<h3>Log Message</h3>
<pre>        Reviewed by Darin.

        http://bugs.webkit.org/show_bug.cgi?id=12954
        XPath relative operations are implemented incorrectly

WebCore:
        * xml/XPathPredicate.cpp:
        (WebCore::XPath::NumericOp::doEvaluate):
        (WebCore::XPath::EqTestOp::compare):
        (WebCore::XPath::EqTestOp::doEvaluate):
        Reimplemented relative equality operations to match the spec.

        * xml/XPathPredicate.h:
        (WebCore::XPath::NumericOp::):
        (WebCore::XPath::EqTestOp::):
        Moved relative operations to EqTestOp.

        * xml/XPathGrammar.y:
        * xml/XPathParser.cpp:
        (WebCore::XPath::Parser::nextTokenInternal):
        (WebCore::XPath::Parser::lex):
        Adapted for the above changes.

LayoutTests:
        * fast/xpath/4XPath/Core/test_boolean_expr-expected.txt: Added.
        * fast/xpath/4XPath/Core/test_boolean_expr.html: Added.

        * fast/xpath/4XPath/Borrowed/cz_20030217-expected.txt: Added.
        * fast/xpath/4XPath/Borrowed/cz_20030217.html: Added.
        * fast/xpath/4XPath/Borrowed/kd_20010423-expected.txt: Added.
        * fast/xpath/4XPath/Borrowed/kd_20010423.html: Added.
        * fast/xpath/4XPath/Borrowed/od_20000608-expected.txt: Added.
        * fast/xpath/4XPath/Borrowed/od_20000608.html: Added.
        * fast/xpath/4XPath/Borrowed/resources/od_20000608.xml: Added.
        * fast/xpath/4XPath/Borrowed/rs_20010831-expected.txt: Added.
        * fast/xpath/4XPath/Borrowed/rs_20010831.html: Added.
        * fast/xpath/4XPath/Borrowed/sr_20021217-expected.txt: Added.
        * fast/xpath/4XPath/Borrowed/sr_20021217.html: Added.
        Added a bunch of XPath tests that already passed.

        * fast/xpath/4XPath/Borrowed/namespace-nodes-expected.txt: Added.
        * fast/xpath/4XPath/Borrowed/namespace-nodes.html: Added.
        * fast/xpath/namespace-nodes-expected.txt: Removed.
        * fast/xpath/namespace-nodes.html: Removed.
        Moved a previously imported 4XPath test.</pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkLayoutTestsChangeLog">trunk/LayoutTests/ChangeLog</a></li>
<li><a href="#trunkWebCoreChangeLog">trunk/WebCore/ChangeLog</a></li>
<li><a href="#trunkWebCorexmlXPathGrammary">trunk/WebCore/xml/XPathGrammar.y</a></li>
<li><a href="#trunkWebCorexmlXPathParsercpp">trunk/WebCore/xml/XPathParser.cpp</a></li>
<li><a href="#trunkWebCorexmlXPathPredicatecpp">trunk/WebCore/xml/XPathPredicate.cpp</a></li>
<li><a href="#trunkWebCorexmlXPathPredicateh">trunk/WebCore/xml/XPathPredicate.h</a></li>
</ul>

<h3>Added Paths</h3>
<ul>
<li>trunk/LayoutTests/fast/xpath/4XPath/</li>
<li>trunk/LayoutTests/fast/xpath/4XPath/Borrowed/</li>
<li><a href="#trunkLayoutTestsfastxpath4XPathBorrowedcz_20030217expectedtxt">trunk/LayoutTests/fast/xpath/4XPath/Borrowed/cz_20030217-expected.txt</a></li>
<li><a href="#trunkLayoutTestsfastxpath4XPathBorrowedcz_20030217html">trunk/LayoutTests/fast/xpath/4XPath/Borrowed/cz_20030217.html</a></li>
<li><a href="#trunkLayoutTestsfastxpath4XPathBorrowedkd_20010423expectedtxt">trunk/LayoutTests/fast/xpath/4XPath/Borrowed/kd_20010423-expected.txt</a></li>
<li><a href="#trunkLayoutTestsfastxpath4XPathBorrowedkd_20010423html">trunk/LayoutTests/fast/xpath/4XPath/Borrowed/kd_20010423.html</a></li>
<li><a href="#trunkLayoutTestsfastxpath4XPathBorrowednamespacenodesexpectedtxt">trunk/LayoutTests/fast/xpath/4XPath/Borrowed/namespace-nodes-expected.txt</a></li>
<li><a href="#trunkLayoutTestsfastxpath4XPathBorrowednamespacenodeshtml">trunk/LayoutTests/fast/xpath/4XPath/Borrowed/namespace-nodes.html</a></li>
<li><a href="#trunkLayoutTestsfastxpath4XPathBorrowedod_20000608expectedtxt">trunk/LayoutTests/fast/xpath/4XPath/Borrowed/od_20000608-expected.txt</a></li>
<li><a href="#trunkLayoutTestsfastxpath4XPathBorrowedod_20000608html">trunk/LayoutTests/fast/xpath/4XPath/Borrowed/od_20000608.html</a></li>
<li>trunk/LayoutTests/fast/xpath/4XPath/Borrowed/resources/</li>
<li><a href="#trunkLayoutTestsfastxpath4XPathBorrowedresourcesod_20000608xml">trunk/LayoutTests/fast/xpath/4XPath/Borrowed/resources/od_20000608.xml</a></li>
<li><a href="#trunkLayoutTestsfastxpath4XPathBorrowedrs_20010831expectedtxt">trunk/LayoutTests/fast/xpath/4XPath/Borrowed/rs_20010831-expected.txt</a></li>
<li><a href="#trunkLayoutTestsfastxpath4XPathBorrowedrs_20010831html">trunk/LayoutTests/fast/xpath/4XPath/Borrowed/rs_20010831.html</a></li>
<li><a href="#trunkLayoutTestsfastxpath4XPathBorrowedsr_20021217expectedtxt">trunk/LayoutTests/fast/xpath/4XPath/Borrowed/sr_20021217-expected.txt</a></li>
<li><a href="#trunkLayoutTestsfastxpath4XPathBorrowedsr_20021217html">trunk/LayoutTests/fast/xpath/4XPath/Borrowed/sr_20021217.html</a></li>
<li>trunk/LayoutTests/fast/xpath/4XPath/Core/</li>
<li><a href="#trunkLayoutTestsfastxpath4XPathCoretestjs">trunk/LayoutTests/fast/xpath/4XPath/Core/test.js</a></li>
<li><a href="#trunkLayoutTestsfastxpath4XPathCoretest_boolean_exprexpectedtxt">trunk/LayoutTests/fast/xpath/4XPath/Core/test_boolean_expr-expected.txt</a></li>
<li><a href="#trunkLayoutTestsfastxpath4XPathCoretest_boolean_exprhtml">trunk/LayoutTests/fast/xpath/4XPath/Core/test_boolean_expr.html</a></li>
<li><a href="#trunkLayoutTestsfastxpath4XPathCoretest_core_functionsexpectedtxt">trunk/LayoutTests/fast/xpath/4XPath/Core/test_core_functions-expected.txt</a></li>
<li><a href="#trunkLayoutTestsfastxpath4XPathCoretest_core_functionshtml">trunk/LayoutTests/fast/xpath/4XPath/Core/test_core_functions.html</a></li>
<li><a href="#trunkLayoutTestsfastxpath4XPathCoretest_literal_exprexpectedtxt">trunk/LayoutTests/fast/xpath/4XPath/Core/test_literal_expr-expected.txt</a></li>
<li><a href="#trunkLayoutTestsfastxpath4XPathCoretest_literal_exprhtml">trunk/LayoutTests/fast/xpath/4XPath/Core/test_literal_expr.html</a></li>
<li><a href="#trunkLayoutTestsfastxpath4XPathCoretest_location_pathexpectedtxt">trunk/LayoutTests/fast/xpath/4XPath/Core/test_location_path-expected.txt</a></li>
<li><a href="#trunkLayoutTestsfastxpath4XPathCoretest_location_pathhtml">trunk/LayoutTests/fast/xpath/4XPath/Core/test_location_path.html</a></li>
<li><a href="#trunkLayoutTestsfastxpath4XPathCoretest_node_testexpectedtxt">trunk/LayoutTests/fast/xpath/4XPath/Core/test_node_test-expected.txt</a></li>
<li><a href="#trunkLayoutTestsfastxpath4XPathCoretest_node_testhtml">trunk/LayoutTests/fast/xpath/4XPath/Core/test_node_test.html</a></li>
<li><a href="#trunkLayoutTestsfastxpath4XPathCoretest_nodeset_exprexpectedtxt">trunk/LayoutTests/fast/xpath/4XPath/Core/test_nodeset_expr-expected.txt</a></li>
<li><a href="#trunkLayoutTestsfastxpath4XPathCoretest_nodeset_exprhtml">trunk/LayoutTests/fast/xpath/4XPath/Core/test_nodeset_expr.html</a></li>
<li><a href="#trunkLayoutTestsfastxpath4XPathCoretest_numeric_exprexpectedtxt">trunk/LayoutTests/fast/xpath/4XPath/Core/test_numeric_expr-expected.txt</a></li>
<li><a href="#trunkLayoutTestsfastxpath4XPathCoretest_numeric_exprhtml">trunk/LayoutTests/fast/xpath/4XPath/Core/test_numeric_expr.html</a></li>
<li><a href="#trunkLayoutTestsfastxpath4XPathCoretest_parserexpectedtxt">trunk/LayoutTests/fast/xpath/4XPath/Core/test_parser-expected.txt</a></li>
<li><a href="#trunkLayoutTestsfastxpath4XPathCoretest_parserhtml">trunk/LayoutTests/fast/xpath/4XPath/Core/test_parser.html</a></li>
<li><a href="#trunkLayoutTestsfastxpath4XPathCoretest_predicate_listexpectedtxt">trunk/LayoutTests/fast/xpath/4XPath/Core/test_predicate_list-expected.txt</a></li>
<li><a href="#trunkLayoutTestsfastxpath4XPathCoretest_predicate_listhtml">trunk/LayoutTests/fast/xpath/4XPath/Core/test_predicate_list.html</a></li>
<li><a href="#trunkLayoutTestsfastxpath4XPathCoretest_stepexpectedtxt">trunk/LayoutTests/fast/xpath/4XPath/Core/test_step-expected.txt</a></li>
<li><a href="#trunkLayoutTestsfastxpath4XPathCoretest_stephtml">trunk/LayoutTests/fast/xpath/4XPath/Core/test_step.html</a></li>
</ul>

<h3>Removed Paths</h3>
<ul>
<li><a href="#trunkLayoutTestsfastxpathnamespacenodesexpectedtxt">trunk/LayoutTests/fast/xpath/namespace-nodes-expected.txt</a></li>
<li><a href="#trunkLayoutTestsfastxpathnamespacenodeshtml">trunk/LayoutTests/fast/xpath/namespace-nodes.html</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkLayoutTestsChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/ChangeLog (19962 => 19963)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/ChangeLog        2007-03-05 09:41:06 UTC (rev 19962)
+++ trunk/LayoutTests/ChangeLog        2007-03-05 17:36:24 UTC (rev 19963)
</span><span class="lines">@@ -1,3 +1,32 @@
</span><ins>+2007-03-05  Alexey Proskuryakov  &lt;ap@webkit.org&gt;
+
+        Reviewed by Darin.
+
+        http://bugs.webkit.org/show_bug.cgi?id=12954
+        XPath relative operations are implemented incorrectly
+
+        * fast/xpath/4XPath/Core/test_boolean_expr-expected.txt: Added.
+        * fast/xpath/4XPath/Core/test_boolean_expr.html: Added.
+
+        * fast/xpath/4XPath/Borrowed/cz_20030217-expected.txt: Added.
+        * fast/xpath/4XPath/Borrowed/cz_20030217.html: Added.
+        * fast/xpath/4XPath/Borrowed/kd_20010423-expected.txt: Added.
+        * fast/xpath/4XPath/Borrowed/kd_20010423.html: Added.
+        * fast/xpath/4XPath/Borrowed/od_20000608-expected.txt: Added.
+        * fast/xpath/4XPath/Borrowed/od_20000608.html: Added.
+        * fast/xpath/4XPath/Borrowed/resources/od_20000608.xml: Added.
+        * fast/xpath/4XPath/Borrowed/rs_20010831-expected.txt: Added.
+        * fast/xpath/4XPath/Borrowed/rs_20010831.html: Added.
+        * fast/xpath/4XPath/Borrowed/sr_20021217-expected.txt: Added.
+        * fast/xpath/4XPath/Borrowed/sr_20021217.html: Added.
+        Added a bunch of XPath tests that already passed.
+
+        * fast/xpath/4XPath/Borrowed/namespace-nodes-expected.txt: Added.
+        * fast/xpath/4XPath/Borrowed/namespace-nodes.html: Added.
+        * fast/xpath/namespace-nodes-expected.txt: Removed.
+        * fast/xpath/namespace-nodes.html: Removed.
+        Moved a previously imported 4XPath test.
+
</ins><span class="cx"> 2007-03-05  Rob Buis  &lt;buis@kde.org&gt;
</span><span class="cx"> 
</span><span class="cx">         Reviewed by Darin.
</span></span></pre></div>
<a id="trunkLayoutTestsfastxpath4XPathBorrowedcz_20030217expectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/fast/xpath/4XPath/Borrowed/cz_20030217-expected.txt (0 => 19963)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/fast/xpath/4XPath/Borrowed/cz_20030217-expected.txt                                (rev 0)
+++ trunk/LayoutTests/fast/xpath/4XPath/Borrowed/cz_20030217-expected.txt        2007-03-05 17:36:24 UTC (rev 19963)
</span><span class="lines">@@ -0,0 +1,8 @@
</span><ins>+PASS nodeset.snapshotLength is 1
+PASS nodeset.snapshotLength is 0
+PASS nodeset.snapshotLength is 1
+PASS nodeset.snapshotLength is 0
+PASS successfullyParsed is true
+
+TEST COMPLETE
+
</ins><span class="cx">Property changes on: trunk/LayoutTests/fast/xpath/4XPath/Borrowed/cz_20030217-expected.txt
</span><span class="cx">___________________________________________________________________
</span><span class="cx">Name: svn:mime-type
</span><span class="cx">   + text/plain
</span><span class="cx">Name: svn:eol-style
</span><span class="cx">   + native
</span></span></pre></div>
<a id="trunkLayoutTestsfastxpath4XPathBorrowedcz_20030217html"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/fast/xpath/4XPath/Borrowed/cz_20030217.html (0 => 19963)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/fast/xpath/4XPath/Borrowed/cz_20030217.html                                (rev 0)
+++ trunk/LayoutTests/fast/xpath/4XPath/Borrowed/cz_20030217.html        2007-03-05 17:36:24 UTC (rev 19963)
</span><span class="lines">@@ -0,0 +1,54 @@
</span><ins>+&lt;!-- http://mail.python.org/pipermail/xml-sig/2003-February/009070.html --&gt;
+&lt;!DOCTYPE HTML PUBLIC &quot;-//IETF//DTD HTML//EN&quot;&gt;
+&lt;html&gt;
+&lt;head&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;../../../js/resources/js-test-style.css&quot;&gt;
+&lt;script src=&quot;../../../js/resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
+&lt;/head&gt;
+&lt;body&gt;
+&lt;div id=&quot;console&quot;&gt;&lt;/div&gt;
+
+&lt;script&gt;
+    SRC = '&lt;?xml version=\'1.0\'?&gt;\
+&lt;alpha&gt;\
+  &lt;beta no=&quot;a&quot;&gt;\
+    &lt;gamma&gt;\
+      &lt;delta&gt;1&lt;/delta&gt;\
+    &lt;/gamma&gt;\
+    &lt;delta mark=&quot;foo&quot;&gt;2&lt;/delta&gt;\
+    &lt;gamma mark=&quot;bar&quot;&gt;\
+      &lt;delta&gt;3&lt;/delta&gt;\
+    &lt;/gamma&gt;\
+  &lt;/beta&gt;\
+  &lt;beta no=&quot;b&quot;&gt;\
+    &lt;delta&gt;4&lt;/delta&gt;\
+    &lt;gamma&gt;\
+      &lt;delta&gt;5&lt;/delta&gt;\
+    &lt;/gamma&gt;\
+  &lt;/beta&gt;\
+&lt;/alpha&gt;';
+
+    doc = (new DOMParser).parseFromString(SRC, &quot;application/xml&quot;);
+
+    expr = '/alpha/beta[attribute::no = &quot;a&quot;]'
+    nodeset = doc.evaluate(expr, doc, null, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null);
+    shouldBe('nodeset.snapshotLength', '1')
+
+    expr = '/alpha/beta[attribute::no = 1]'
+    nodeset = doc.evaluate(expr, doc, null, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null);
+    shouldBe('nodeset.snapshotLength', '0')
+
+    expr = '/alpha/beta[@no = &quot;a&quot;]'
+    nodeset = doc.evaluate(expr, doc, null, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null);
+    shouldBe('nodeset.snapshotLength', '1')
+
+    expr = '/alpha/beta[@no = 1]'
+    nodeset = doc.evaluate(expr, doc, null, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null);
+    shouldBe('nodeset.snapshotLength', '0')
+
+    var successfullyParsed = true;
+
+&lt;/script&gt;
+&lt;script src=&quot;../../../js/resources/js-test-post.js&quot;&gt;&lt;/script&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins><span class="cx">Property changes on: trunk/LayoutTests/fast/xpath/4XPath/Borrowed/cz_20030217.html
</span><span class="cx">___________________________________________________________________
</span><span class="cx">Name: svn:mime-type
</span><span class="cx">   + text/html
</span></span></pre></div>
<a id="trunkLayoutTestsfastxpath4XPathBorrowedkd_20010423expectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/fast/xpath/4XPath/Borrowed/kd_20010423-expected.txt (0 => 19963)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/fast/xpath/4XPath/Borrowed/kd_20010423-expected.txt                                (rev 0)
+++ trunk/LayoutTests/fast/xpath/4XPath/Borrowed/kd_20010423-expected.txt        2007-03-05 17:36:24 UTC (rev 19963)
</span><span class="lines">@@ -0,0 +1,5 @@
</span><ins>+PASS actual is &quot;abcabca&quot;
+PASS successfullyParsed is true
+
+TEST COMPLETE
+
</ins><span class="cx">Property changes on: trunk/LayoutTests/fast/xpath/4XPath/Borrowed/kd_20010423-expected.txt
</span><span class="cx">___________________________________________________________________
</span><span class="cx">Name: svn:mime-type
</span><span class="cx">   + text/plain
</span><span class="cx">Name: svn:eol-style
</span><span class="cx">   + native
</span></span></pre></div>
<a id="trunkLayoutTestsfastxpath4XPathBorrowedkd_20010423html"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/fast/xpath/4XPath/Borrowed/kd_20010423.html (0 => 19963)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/fast/xpath/4XPath/Borrowed/kd_20010423.html                                (rev 0)
+++ trunk/LayoutTests/fast/xpath/4XPath/Borrowed/kd_20010423.html        2007-03-05 17:36:24 UTC (rev 19963)
</span><span class="lines">@@ -0,0 +1,35 @@
</span><ins>+&lt;!-- https://sourceforge.net/tracker/?func=detail&amp;atid=106473&amp;aid=418317&amp;group_id=6473 --&gt;
+&lt;!DOCTYPE HTML PUBLIC &quot;-//IETF//DTD HTML//EN&quot;&gt;
+&lt;html&gt;
+&lt;head&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;../../../js/resources/js-test-style.css&quot;&gt;
+&lt;script src=&quot;../../../js/resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
+&lt;/head&gt;
+&lt;body&gt;
+&lt;div id=&quot;console&quot;&gt;&lt;/div&gt;
+
+&lt;script&gt;
+SRC_1 = '&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt;\
+&lt;doc&gt;\
+&lt;elem&gt;abc&lt;/elem&gt;\
+&lt;elem&gt;&lt;![CDATA[abc]]&gt;&lt;/elem&gt;\
+&lt;elem&gt;a&lt;![CDATA[b]]&gt;c&lt;/elem&gt;\
+&lt;/doc&gt;';
+
+    doc = (new DOMParser).parseFromString(SRC_1, &quot;application/xml&quot;);
+
+    EXPR = '/doc/elem/text()'
+    nodeset = doc.evaluate(EXPR, doc, null, XPathResult.UNORDERED_NODE_ITERATOR_TYPE, null);
+    actual = &quot;&quot;;
+    while (currNode = nodeset.iterateNext())
+        actual += currNode.nodeValue;
+    
+    // In the original 4Suite test, the expectation was &quot;abcabcabc&quot;. I believe it was wrong.
+    shouldBe('actual', '&quot;abcabca&quot;')
+
+    var successfullyParsed = true;
+
+&lt;/script&gt;
+&lt;script src=&quot;../../../js/resources/js-test-post.js&quot;&gt;&lt;/script&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins><span class="cx">Property changes on: trunk/LayoutTests/fast/xpath/4XPath/Borrowed/kd_20010423.html
</span><span class="cx">___________________________________________________________________
</span><span class="cx">Name: svn:mime-type
</span><span class="cx">   + text/html
</span></span></pre></div>
<a id="trunkLayoutTestsfastxpath4XPathBorrowednamespacenodesexpectedtxtfromrev19962trunkLayoutTestsfastxpathnamespacenodesexpectedtxt"></a>
<div class="copfile"><h4>Copied: trunk/LayoutTests/fast/xpath/4XPath/Borrowed/namespace-nodes-expected.txt (from rev 19962, trunk/LayoutTests/fast/xpath/namespace-nodes-expected.txt) (0 => 19963)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/fast/xpath/4XPath/Borrowed/namespace-nodes-expected.txt                                (rev 0)
+++ trunk/LayoutTests/fast/xpath/4XPath/Borrowed/namespace-nodes-expected.txt        2007-03-05 17:36:24 UTC (rev 19963)
</span><span class="lines">@@ -0,0 +1,11 @@
</span><ins>+Tests that accessing XPath namespace axis doesn't cause a crash, see bug 12724.
+
+The actual results are incorrect, because XPath namespace nodes are not implemented yet.
+
+FAILURE: 0 result nodes (should be 7)
+FAILURE: 0 result nodes (should be 7)
+FAILURE: 0 result nodes (should be 7)
+FAILURE: 0 result nodes (should be 6)
+FAILURE: 0 result nodes (should be 7)
+PASS: 4 result nodes
+
</ins></span></pre></div>
<a id="trunkLayoutTestsfastxpath4XPathBorrowednamespacenodeshtmlfromrev19962trunkLayoutTestsfastxpathnamespacenodeshtml"></a>
<div class="copfile"><h4>Copied: trunk/LayoutTests/fast/xpath/4XPath/Borrowed/namespace-nodes.html (from rev 19962, trunk/LayoutTests/fast/xpath/namespace-nodes.html) (0 => 19963)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/fast/xpath/4XPath/Borrowed/namespace-nodes.html                                (rev 0)
+++ trunk/LayoutTests/fast/xpath/4XPath/Borrowed/namespace-nodes.html        2007-03-05 17:36:24 UTC (rev 19963)
</span><span class="lines">@@ -0,0 +1,56 @@
</span><ins>+&lt;!DOCTYPE HTML PUBLIC &quot;-//IETF//DTD HTML//EN&quot;&gt;
+&lt;html&gt;
+&lt;body&gt;
+&lt;p&gt;Tests that accessing XPath namespace axis doesn't cause a crash, see 
+&lt;a href=&quot;bug http://bugs.webkit.org/show_bug.cgi?id=12724&quot;&gt;bug 12724&lt;/a&gt;.&lt;/p&gt;
+&lt;p&gt;The actual results are incorrect, because XPath namespace nodes are not implemented yet.&lt;/p&gt;
+
+&lt;div id=&quot;console&quot;&gt;&lt;/div&gt;
+
+&lt;script&gt;
+SRC_1 = '&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt;\
+&lt;docu&gt;\
+&lt;elem xmlns:unused=&quot;urn:uuu000&quot;/&gt;\
+&lt;elem xmlns=&quot;urn:sss111&quot;/&gt;\
+&lt;y:elem xmlns:y=&quot;urn:yyyy222&quot;/&gt;\
+&lt;/docu&gt;'
+
+    if (window.layoutTestController)
+        layoutTestController.dumpAsText();
+
+    function shouldBe(actual, expected) {
+        if (actual == expected)
+            document.write(&quot;PASS: &quot; + actual + &quot; result nodes&lt;br&gt;&quot;);
+        else
+            document.write(&quot;FAILURE: &quot; + actual + &quot; result nodes (should be &quot; + expected + &quot;)&lt;br&gt;&quot;);
+    }
+
+    doc = (new DOMParser).parseFromString(SRC_1, &quot;application/xml&quot;);
+
+    EXPR = '//namespace::node()'
+    nodeset = doc.evaluate(EXPR, doc, null, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null);
+    shouldBe(nodeset.snapshotLength, 7)
+
+    EXPR = '//node()/namespace::node()'
+    nodeset = doc.evaluate(EXPR, doc, null, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null);
+    shouldBe(nodeset.snapshotLength, 7)
+
+    EXPR = '//*/namespace::node()'
+    nodeset = doc.evaluate(EXPR, doc, null, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null);
+    shouldBe(nodeset.snapshotLength, 7)
+
+    EXPR = '/*/*/namespace::node()'
+    nodeset = doc.evaluate(EXPR, doc, null, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null);
+    shouldBe(nodeset.snapshotLength, 6)
+
+    EXPR = '/*/namespace::node()|/*/*/namespace::node()'
+    nodeset = doc.evaluate(EXPR, doc, null, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null);
+    shouldBe(nodeset.snapshotLength, 7)
+
+    EXPR = '//*'
+    nodeset = doc.evaluate(EXPR, doc, null, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null);
+    shouldBe(nodeset.snapshotLength, 4)
+
+&lt;/script&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestsfastxpath4XPathBorrowedod_20000608expectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/fast/xpath/4XPath/Borrowed/od_20000608-expected.txt (0 => 19963)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/fast/xpath/4XPath/Borrowed/od_20000608-expected.txt                                (rev 0)
+++ trunk/LayoutTests/fast/xpath/4XPath/Borrowed/od_20000608-expected.txt        2007-03-05 17:36:24 UTC (rev 19963)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+PASS nodeset.snapshotLength is 0
+PASS nodeset.snapshotLength is 12
+PASS successfullyParsed is true
+
+TEST COMPLETE
+
</ins><span class="cx">Property changes on: trunk/LayoutTests/fast/xpath/4XPath/Borrowed/od_20000608-expected.txt
</span><span class="cx">___________________________________________________________________
</span><span class="cx">Name: svn:mime-type
</span><span class="cx">   + text/plain
</span><span class="cx">Name: svn:eol-style
</span><span class="cx">   + native
</span></span></pre></div>
<a id="trunkLayoutTestsfastxpath4XPathBorrowedod_20000608html"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/fast/xpath/4XPath/Borrowed/od_20000608.html (0 => 19963)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/fast/xpath/4XPath/Borrowed/od_20000608.html                                (rev 0)
+++ trunk/LayoutTests/fast/xpath/4XPath/Borrowed/od_20000608.html        2007-03-05 17:36:24 UTC (rev 19963)
</span><span class="lines">@@ -0,0 +1,85 @@
</span><ins>+&lt;!-- 
+4XPath Performance test from &quot;Olivier Deckmyn&quot; &lt;odeckmyn.list@teaser.fr&gt;, with import and filename updates
+
+Subject: [4suite] 4XPath performance ?
+Date: Thu, 8 Jun 2000 16:30:21 +0200
+From: &quot;Olivier Deckmyn&quot; &lt;odeckmyn.list@teaser.fr&gt;
+To: &quot;4Suite list&quot; &lt;4suite@dollar.fourthought.com&gt;
+
+I am playing and testing 4XPath....
+And I am a little afraid of the results I see...
+The machine is a Dell Server (2400) with a single PIII-750 and 256MB RAM,
+USCSI disks (10K RPM), running FreeBSD4.
+
+There is a lot of memory, cpu is not used for anything else than the test...
+
+With a 100KB xml file, I have applied the attached test1.py
+
+Here are the results :
+QUERY=&quot;//author&quot; (no match in the file)
+Reading document
+took 1.336457 sec
+Starting query
+took 307.572385 sec
+Indexing DOM
+took 0.125362 sec
+Starting query
+took 84.692544 sec
+
+QUERY=&quot;//date&quot; (few matches in the file)
+Reading document
+took 1.341848 sec
+Starting query
+took 308.466919 sec
+&lt;date&gt; 10 October 1996&lt;/date&gt;&lt;date&gt;1 August 1996&lt;/date&gt;&lt;date&gt;17 April
+1996&lt;/date&gt;&lt;date&gt; 17 April 1996&lt;/date&gt;&lt;date&gt; 17 April 1996&lt;/date&gt;&lt;date&gt; 12
+April 1996&lt;/date&gt;&lt;date&gt;27 March 1996&lt;/date&gt;&lt;date&gt;27 March
+1996&lt;/date&gt;&lt;date&gt;23 February 1996&lt;/date&gt;&lt;date&gt;9 December 1996&lt;/date&gt;&lt;date&gt;
+29 November 1996&lt;/date&gt;&lt;date&gt; 31 October 1996&lt;/date&gt;Indexing DOM
+took 0.128668 sec
+Starting query
+took 85.145023 sec
+&lt;date&gt; 10 October 1996&lt;/date&gt;&lt;date&gt;1 August 1996&lt;/date&gt;&lt;date&gt;17 April
+1996&lt;/date&gt;&lt;date&gt; 17 April 1996&lt;/date&gt;&lt;date&gt; 17 April 1996&lt;/date&gt;&lt;date&gt; 12
+April 1996&lt;/date&gt;&lt;date&gt;27 March 1996&lt;/date&gt;&lt;date&gt;27 March
+1996&lt;/date&gt;&lt;date&gt;23 February 1996&lt;/date&gt;&lt;date&gt;9 December 1996&lt;/date&gt;&lt;date&gt;
+29 November 1996&lt;/date&gt;&lt;date&gt; 31 October 1996&lt;/date&gt;
+
+
+Result :
+Indexing is worth the price ! Very quick index build, and 3.5x speed gain
+...
+But, it very slow anyway :(
+
+Is this the &quot;normal&quot; performance ? Can I do better?
+--&gt;
+&lt;!DOCTYPE HTML PUBLIC &quot;-//IETF//DTD HTML//EN&quot;&gt;
+&lt;html&gt;
+&lt;head&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;../../../js/resources/js-test-style.css&quot;&gt;
+&lt;script src=&quot;../../../js/resources/js-test-pre.js&quot;&gt;&lt;/script&gt;
+&lt;/head&gt;
+&lt;body&gt;
+&lt;div id=&quot;console&quot;&gt;&lt;/div&gt;
+
+&lt;script&gt;
+
+    req = new XMLHttpRequest;
+    req.open(&quot;GET&quot;, 'resources/od_20000608.xml', false);
+    req.send(null);
+    xml_dom_object = req.responseXML;
+
+    EXPR = '//author'
+    nodeset = xml_dom_object.evaluate(EXPR, xml_dom_object, null, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null);
+    shouldBe('nodeset.snapshotLength', '0')
+
+    EXPR = '//date'
+    nodeset = xml_dom_object.evaluate(EXPR, xml_dom_object, null, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null);
+    shouldBe('nodeset.snapshotLength', '12')
+
+    var successfullyParsed = true;
+
+&lt;/script&gt;
+&lt;script src=&quot;../../../js/resources/js-test-post.js&quot;&gt;&lt;/script&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins><span class="cx">Property changes on: trunk/LayoutTests/fast/xpath/4XPath/Borrowed/od_20000608.html
</span><span class="cx">___________________________________________________________________
</span><span class="cx">Name: svn:mime-type
</span><span class="cx">   + text/html
</span></span></pre></div>
<a id="trunkLayoutTestsfastxpath4XPathBorrowedresourcesod_20000608xml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/fast/xpath/4XPath/Borrowed/resources/od_20000608.xml (0 => 19963)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/fast/xpath/4XPath/Borrowed/resources/od_20000608.xml                                (rev 0)
+++ trunk/LayoutTests/fast/xpath/4XPath/Borrowed/resources/od_20000608.xml        2007-03-05 17:36:24 UTC (rev 19963)
</span><span class="lines">@@ -0,0 +1,1039 @@
</span><ins>+&lt;?xml version=&quot;1.0&quot; encoding='ISO-8859-1'?&gt;
+&lt;telecoms&gt;
+&lt;telecom&gt;
+&lt;lr&gt;Ottawa,&lt;/lr&gt;
+&lt;date&gt; 10 October 1996&lt;/date&gt;
+&lt;typdoc&gt;Taxation Order &lt;/typdoc&gt;
+&lt;decision&gt;&lt;para&gt;CRTC 96-10&lt;/para&gt;
+&lt;/decision&gt;
+&lt;parties&gt;&lt;para&gt;&lt;underline&gt;In re:  AGT Limited - Interim Rate Increase 1996, Telecom Decision CRTC 96-4, 19 February 1996&lt;/underline&gt;&lt;/para&gt;
+&lt;/parties&gt;
+&lt;text&gt;&lt;para&gt;Mr. James A. Wachowich for the Alberta Consumers' Coalition (AltaCC).&lt;/para&gt;
+&lt;para&gt;Mr. Bohdan Romaniuk for AGT Limited (AGT).&lt;/para&gt;
+&lt;para&gt;&lt;underline&gt;TAXATION OF COSTS OF ALTACC&lt;/underline&gt;&lt;/para&gt;
+&lt;para&gt;Taxing Officer:  Jean-Pierre Blais&lt;/para&gt;
+&lt;/text&gt;
+&lt;text&gt;&lt;para&gt;This order constitutes the taxation of costs awarded to AltaCC in the proceeding leading to &lt;underline&gt;AGT Limited - Interim Rate Increase 1996&lt;/underline&gt;, Telecom Decision CRTC 96-4, 19 February 1996 (Decision 96-4).&lt;/para&gt;
+&lt;/text&gt;
+&lt;text&gt;&lt;para&gt;Costs were awarded to AltaCC pursuant to Telecom Costs Order CRTC 96-6, 1 May 1996, in accordance with section 44 of the &lt;underline&gt;CRTC Telecommunications Rules of Procedure&lt;/underline&gt;.&lt;/para&gt;
+&lt;/text&gt;
+&lt;text&gt;&lt;para&gt;On 21 May 1996, AltaCC submitted a Bill of Costs for its participation in the proceeding leading to Decision 96-4, claiming a total of $4,306.75 in fees for its legal counsel, a total of $13,417.80 in fees for its two consultants and a total of $448.43 in disbursements.  AltaCC's claim included GST on the fees and the disbursements.  I understand that AltaCC, as opposed to its various member organizations, is not entitled to a GST rebate.&lt;/para&gt;
+&lt;/text&gt;
+&lt;text&gt;&lt;para&gt;In a letter dated 11 June 1996, AGT stated that it acknowledged the costs claimed as reasonable.&lt;/para&gt;
+&lt;/text&gt;
+&lt;text&gt;&lt;para&gt;&lt;underline&gt;Counsel and Consultant Fees&lt;/underline&gt;&lt;/para&gt;
+&lt;/text&gt;
+&lt;text&gt;&lt;para&gt;AltaCC claimed a total of $4,306.75 representing 23 hours of work at a rate of $175 per hour for its legal counsel, Mr. James A. Wachowich.&lt;/para&gt;
+&lt;/text&gt;
+&lt;text&gt;&lt;para&gt;AltaCC also claimed $5,970.60 for its consultant, Mr. Jeffrey A. Jodoin, and $7,447.20, for Mr. Azad P. Merani.  These amounts represent a total of 46.5 hours of work at a rate of $120 per hour for Mr. Jodoin, and a total of 43.5 hours of work at a rate of $160 per hour for Mr. Merani.&lt;/para&gt;
+&lt;/text&gt;
+&lt;text&gt;&lt;para&gt;Mr. Wachowich has been practising law for ten years.  Mr. Jodoin and Mr. Merani have respectively 6 and 14 years of experience as consultants.&lt;/para&gt;
+&lt;/text&gt;
+&lt;text&gt;&lt;para&gt;I note that the rates claimed are in accordance with the rates specified in the Commission's Legal Directorate's &lt;underline&gt;Guidelines for the Taxation of Costs&lt;/underline&gt;.  Moreover, I accept these rates as appropriate.  I also find that the hours claimed are reasonable.  Accordingly, I will allow the amounts as claimed.&lt;/para&gt;
+&lt;/text&gt;
+&lt;text&gt;&lt;para&gt;&lt;underline&gt;Disbursements&lt;/underline&gt;&lt;/para&gt;
+&lt;/text&gt;
+&lt;text&gt;&lt;para&gt;AltaCC also claimed $32.55 for photocopies, $34.54 for long distance charges, $352 for fax charges, and $29.34 for GST in relation thereto, for total disbursements of $448.43.  I find that these disbursements are reasonable, and will allow the amounts as claimed.&lt;/para&gt;
+&lt;/text&gt;
+&lt;text&gt;&lt;para&gt;&lt;underline&gt;Costs as Taxed&lt;/underline&gt;&lt;/para&gt;
+&lt;/text&gt;
+&lt;text&gt;&lt;para&gt;I hereby tax the fees and disbursements, including GST, as follows:&lt;/para&gt;
+&lt;/text&gt;
+&lt;text&gt;&lt;para&gt;&lt;underline&gt;Counsel Fees&lt;/underline&gt;&lt;/para&gt;
+&lt;/text&gt;
+&lt;text&gt;&lt;para&gt;Mr. James A. Wachowich        $ 4,306.75&lt;/para&gt;
+&lt;/text&gt;
+&lt;text&gt;&lt;para&gt;&lt;underline&gt;Consultants Fees&lt;/underline&gt;&lt;/para&gt;
+&lt;/text&gt;
+&lt;text&gt;&lt;para&gt;Mr. Jeffrey A. Jodoin               $ 5,970.60&lt;/para&gt;
+&lt;/text&gt;
+&lt;text&gt;&lt;para&gt;Mr. Azad P. Merani                  $ 7,447.20&lt;/para&gt;
+&lt;/text&gt;
+&lt;text&gt;&lt;para&gt;&lt;underline&gt;TOTAL FEES&lt;/underline&gt;                          $&lt;underline&gt;17,724.55&lt;/underline&gt;&lt;/para&gt;
+&lt;/text&gt;
+&lt;text&gt;&lt;para&gt;&lt;underline&gt;TOTAL DISBURSEMENTS&lt;/underline&gt;        $    &lt;underline&gt;448.43&lt;/underline&gt;&lt;/para&gt;
+&lt;/text&gt;
+&lt;text&gt;&lt;para&gt;&lt;underline&gt;TOTAL&lt;/underline&gt;&lt;/para&gt;
+&lt;para&gt;&lt;underline&gt;FEES/DISBURSEMENTS&lt;/underline&gt;            $&lt;underline&gt;18,172.98&lt;/underline&gt;&lt;/para&gt;
+&lt;/text&gt;
+&lt;text&gt;&lt;para&gt;Pursuant to Telecom Costs Order CRTC 96-6, the costs as taxed shall be paid by AGT Limited.&lt;/para&gt;
+&lt;/text&gt;
+&lt;text&gt;&lt;para&gt;Jean-Pierre Blais&lt;/para&gt;
+&lt;para&gt;Legal Counsel&lt;/para&gt;
+&lt;para&gt;Canadian Radio-television and Telecommunications Commission&lt;/para&gt;
+&lt;/text&gt;
+&lt;warning&gt;The official version of this document is available at the following Internet site: http://www.crtc.gc.ca&lt;/warning&gt;
+&lt;copyright&gt;Copyright Canadian Radio-television and Telecommunications Commission,  1999.&lt;/copyright&gt;
+&lt;/telecom&gt;
+&lt;telecom&gt;
+&lt;lr&gt;Ottawa, &lt;/lr&gt;
+&lt;date&gt;1 August 1996&lt;/date&gt;
+&lt;typdoc&gt;Taxation Order &lt;/typdoc&gt;
+&lt;decision&gt;&lt;para&gt;CRTC 96-9&lt;/para&gt;
+&lt;/decision&gt;
+&lt;parties&gt;&lt;para&gt;&lt;underline&gt;In re:  Maritime Tel &amp;amp; Tel Limited - Application for Interim and Final Rate Increases for 1995, Telecom Decision CRTC 95-7 and Letter Decision of 21 December 1995&lt;/underline&gt;&lt;/para&gt;
+&lt;/parties&gt;
+&lt;text&gt;&lt;para&gt;Michael Janigan for the Nova Scotia Consumers' Coalition (NSCC).&lt;/para&gt;
+&lt;para&gt;Don MacDonald and David Taylor for Maritime Tel &amp;amp; Tel Limited (MT&amp;amp;T).&lt;/para&gt;
+&lt;/text&gt;
+&lt;text&gt;&lt;para&gt;&lt;underline&gt;TAXATION OF COSTS OF NSCC&lt;/underline&gt;&lt;/para&gt;
+&lt;/text&gt;
+&lt;text&gt;&lt;para&gt;Taxing Officer:  Lori Assheton-Smith&lt;/para&gt;
+&lt;/text&gt;
+&lt;text&gt;&lt;para&gt;This order constitutes the taxation of costs awarded to NSCC in the proceedings leading to &lt;underline&gt;Maritime Tel &amp;amp; Tel Limited - Application for Interim Rate Increases and Tariff Notice 501&lt;/underline&gt;, Telecom Decision CRTC 95-7, 1 May 1995 and the Commission's Letter Decision of 21 December 1995.  Costs were awarded to NSCC by Telecom Costs Order CRTC 96-7, 23 May 1996, in accordance with subsection 44(1) of the &lt;underline&gt;CRTC Telecommunications Rules of Procedure&lt;/underline&gt;.&lt;/para&gt;
+&lt;/text&gt;
+&lt;text&gt;&lt;para&gt;On 21 June 1996, NSCC submitted a Bill of Costs in the amount of $3,696.25, consisting of $3,673.22 in fees and $23.03 in disbursements.  These amounts are inclusive of GST, where applicable.&lt;/para&gt;
+&lt;/text&gt;
+&lt;text&gt;&lt;para&gt;On 3 July 1996, MT&amp;amp;T filed its comments on NSCC's Bill of Costs, indicating that it did not object to the costs claimed, with the exception of the hourly rate charged by NSCC's counsel, Mr. Janigan.  Subsequently, in a letter dated 17 July 1996, MT&amp;amp;T stated that it was withdrawing its objection to the rate claimed on behalf of Mr. Janigan in light of the fact that the rate is in accordance with that set out for counsel of similar experience in the Commission's Legal Directorate's &lt;underline&gt;Guidelines for the Taxation of Costs&lt;/underline&gt; (the Guidelines).&lt;/para&gt;
+&lt;/text&gt;
+&lt;text&gt;&lt;para&gt;&lt;underline&gt;Counsel and Consultant Fees&lt;/underline&gt;&lt;/para&gt;
+&lt;/text&gt;
+&lt;text&gt;&lt;para&gt;NSCC claimed a total of 13.2 hours at an hourly rate of $230 for its counsel, Mr. Janigan, and it claimed 3.1 hours at an hourly rate of $160 for its consultant, Mr. Todd.  The rates claimed for both Mr. Janigan and Mr. Todd reflect those specified in the Guidelines, and I will allow the rates as claimed.&lt;/para&gt;
+&lt;/text&gt;
+&lt;text&gt;&lt;para&gt;I also find the number of hours claimed by NSCC for Mr. Janigan and Mr. Todd to be reasonable in light of the nature and extent of NSCC's participation in these proceedings, and I will allow the amounts as claimed.&lt;/para&gt;
+&lt;/text&gt;
+&lt;text&gt;&lt;para&gt;I note, however, that NSCC has claimed 3.5% GST on Mr. Janigan's fees and 7% GST on Mr. Todd's fees.  In light of the 50% GST rebate that I understand is available in the circumstances of this case, I have disallowed half of the GST claimed on Mr. Todd's fees.&lt;/para&gt;
+&lt;/text&gt;
+&lt;text&gt;&lt;para&gt;&lt;underline&gt;Disbursements&lt;/underline&gt;&lt;/para&gt;
+&lt;/text&gt;
+&lt;text&gt;&lt;para&gt;NSCC claimed a total of $23.03 in disbursements.  I am satisfied that these expenses were reasonably and necessarily incurred, and I will allow them as claimed.&lt;/para&gt;
+&lt;/text&gt;
+&lt;text&gt;&lt;para&gt;&lt;underline&gt;Costs as Taxed&lt;/underline&gt;&lt;/para&gt;
+&lt;/text&gt;
+&lt;text&gt;&lt;para&gt;I hereby tax the fees and disbursements, inclusive of 50% of GST, where applicable, as follows:&lt;/para&gt;
+&lt;/text&gt;
+&lt;text&gt;&lt;para&gt;&lt;underline&gt;Fees&lt;/underline&gt;&lt;/para&gt;
+&lt;/text&gt;
+&lt;text&gt;&lt;para&gt;Mr. Janigan                              $3,142.27&lt;/para&gt;
+&lt;/text&gt;
+&lt;text&gt;&lt;para&gt;Mr. Todd                                    $513.36&lt;/para&gt;
+&lt;/text&gt;
+&lt;text&gt;&lt;para&gt;&lt;underline&gt;Disbursements&lt;/underline&gt;&lt;/para&gt;
+&lt;/text&gt;
+&lt;text&gt;&lt;para&gt;In-house photocopies                       $4.50&lt;/para&gt;
+&lt;/text&gt;
+&lt;text&gt;&lt;para&gt;Long distance (telephone/fax)           $6.11&lt;/para&gt;
+&lt;/text&gt;
+&lt;text&gt;&lt;para&gt;Courier                                         $12.42&lt;/para&gt;
+&lt;/text&gt;
+&lt;text&gt;&lt;para&gt;&lt;underline&gt;Total Fees and&lt;/underline&gt;&lt;/para&gt;
+&lt;para&gt;&lt;underline&gt;Disbursements Owing&lt;/underline&gt;                &lt;underline&gt;$3,678.66&lt;/underline&gt;&lt;/para&gt;
+&lt;/text&gt;
+&lt;text&gt;&lt;para&gt;Lori Assheton-Smith&lt;/para&gt;
+&lt;para&gt;Legal Counsel&lt;/para&gt;
+&lt;para&gt;Canadian Radio-television and&lt;/para&gt;
+&lt;para&gt;  Telecommunications Commission&lt;/para&gt;
+&lt;/text&gt;
+&lt;warning&gt;The official version of this document is available at the following Internet site: http://www.crtc.gc.ca&lt;/warning&gt;
+&lt;copyright&gt;Copyright Canadian Radio-television and Telecommunications Commission,  1999.&lt;/copyright&gt;
+&lt;/telecom&gt;
+&lt;telecom&gt;
+&lt;lr&gt;Ottawa, &lt;/lr&gt;
+&lt;date&gt;17 April 1996&lt;/date&gt;
+&lt;typdoc&gt;Taxation Order &lt;/typdoc&gt;
+&lt;decision&gt;&lt;para&gt;CRTC 96-8&lt;/para&gt;
+&lt;/decision&gt;
+&lt;parties&gt;&lt;para&gt;&lt;underline&gt;In re:  Implementation of Regulatory Framework - Splitting of the Rate Base and Related Issues, Telecom Decision CRTC 95-21 and Telecom Costs Order CRTC 95-11&lt;/underline&gt;&lt;/para&gt;
+&lt;/parties&gt;
+&lt;text&gt;&lt;para&gt;Byron Williams, of the Public Interest Law Centre, Legal Aid Manitoba, for the Consumers' Association of Canada (Manitoba) and the Manitoba Society of Seniors (CAC/MSOS).&lt;/para&gt;
+&lt;/text&gt;
+&lt;text&gt;&lt;para&gt;Denis Henry for Stentor Resource Centre Inc. (Stentor).&lt;/para&gt;
+&lt;/text&gt;
+&lt;text&gt;&lt;para&gt;&lt;underline&gt;TAXATION OF COSTS OF CAC/MSOS&lt;/underline&gt;&lt;/para&gt;
+&lt;/text&gt;
+&lt;text&gt;&lt;para&gt;Taxing Officer:  Lori Assheton-Smith&lt;/para&gt;
+&lt;/text&gt;
+&lt;text&gt;&lt;para&gt;This order constitutes the taxation of costs awarded to CAC/MSOS in the proceeding leading to &lt;underline&gt;Implementation of Regulatory Framework - Splitting of the Rate Base and Related Issues&lt;/underline&gt;, Telecom Decision CRTC 95-21, 31 October 1995 (Decision 95-21).  Costs were awarded to CAC/MSOS by Telecom Costs Order CRTC 95-11, 1 November 1995 (Costs Order 95-11), in accordance with subsection 44(1) of the &lt;underline&gt;CRTC Telecommunications Rules of Procedure&lt;/underline&gt;.  Costs Order 95-11 provided that costs are to be paid by the respondents identified therein in proportion to their revenues from telecommunications activities, as reported in each company's most recent audited financial statements.&lt;/para&gt;
+&lt;/text&gt;
+&lt;text&gt;&lt;para&gt;On 28 November 1995, CAC/MSOS submitted a Bill of Costs in the amount of $78,022.80, consisting of $69,396.85 in fees and $8,625.95 in disbursements.&lt;/para&gt;
+&lt;/text&gt;
+&lt;text&gt;&lt;para&gt;On 13 December 1995, Stentor filed its comments on CAC/MSOS's Bill of Costs.  The remaining respondents did not file comments.  CAC/MSOS filed its reply to Stentor's comments on 19 December 1995.&lt;/para&gt;
+&lt;/text&gt;
+&lt;text&gt;&lt;para&gt;&lt;underline&gt;Counsel and Expert Fees&lt;/underline&gt;&lt;/para&gt;
+&lt;/text&gt;
+&lt;text&gt;&lt;para&gt;CAC/MSOS claimed fees of $42,111.85 for its counsel, consisting of $38,477.85 for Mr. Williams and $3,634.00 for Mr. Peltz.  With respect to Mr. Williams, CAC/MSOS claimed 334.59 hours, consisting of 9.3 hours for attendance at the oral hearing and 325.29 hours for preparation time, at an hourly rate of $115/hour.  CAC/MSOS claimed 15.8 hours of preparation time for Mr. Peltz at an hourly rate of $230/hour.  These rates reflect those set out by the Commission's Legal Directorate in its &lt;underline&gt;Guidelines for the Taxation of Costs&lt;/underline&gt; (the Guidelines), and I will allow the rates as claimed.&lt;/para&gt;
+&lt;/text&gt;
+&lt;text&gt;&lt;para&gt;For its expert, Mr. Todd, CAC/MSOS claimed fees of $27,285.00, representing 3 hours of attendance and 157.5 hours of preparation at an hourly rate of $170/hour.  This rate is also in accordance with the rates specified in the Guidelines for expert witnesses, and I accept it as an appropriate rate for Mr. Todd.&lt;/para&gt;
+&lt;/text&gt;
+&lt;text&gt;&lt;para&gt;&lt;underline&gt;Preparation and Attendance Time&lt;/underline&gt;&lt;/para&gt;
+&lt;/text&gt;
+&lt;text&gt;&lt;para&gt;I will allow the attendance time claimed by CAC/MSOS with respect to both Mr. Williams and Mr. Todd.  With respect to the amount of preparation time claimed by CAC/MSOS, Stentor submitted that given the nature and extent of CAC/MSOS's submissions in argument, the combined claim of 143.75 hours for the preparation of argument by counsel and Mr. Todd appears somewhat high and should be reduced.&lt;/para&gt;
+&lt;/text&gt;
+&lt;text&gt;&lt;para&gt;In its reply, CAC/MSOS submitted that the hours claimed for the preparation of argument were reasonable and appropriate given the nature of the proceeding and the issues addressed by CAC/MSOS.  CAC/MSOS noted that there were three rounds of argument in this proceeding, and submitted that it was obliged to expend substantial efforts in each of the oral, written and reply rounds of argument.  CAC/MSOS added that a more extensive closing argument was required, in part, due to the absence of a cross-examination of CAC/MSOS's expert witness by MTS NetCom Inc. (MTS) (formerly Manitoba Telephone System).&lt;/para&gt;
+&lt;/text&gt;
+&lt;text&gt;&lt;para&gt;In my view, rather than focusing on the amount of time claimed by CAC/MSOS for the preparation of argument, it is more useful and appropriate to consider whether CAC/MSOS's total claim for preparation time by its counsel and expert is reasonable.&lt;/para&gt;
+&lt;/text&gt;
+&lt;text&gt;&lt;para&gt;CAC/MSOS claimed a total of 498.59 hours of preparation time for its counsel and expert.  In determining whether this amount is reasonable, I have considered the nature and extent of CAC/MSOS's participation in the proceeding leading to Decision 95-21, the level of experience of CAC/MSOS's counsel and expert and the preparation time allowed for other interveners in this proceeding.&lt;/para&gt;
+&lt;/text&gt;
+&lt;text&gt;&lt;para&gt;I note that CAC/MSOS did not address in argument the full range of issues that were considered in this proceeding.  Instead, CAC/MSOS's participation in this proceeding focused almost exclusively on the form of regulation for MTS, which was one of a number of issues considered in the proceeding leading to Decision 95-21.&lt;/para&gt;
+&lt;/text&gt;