You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@xalan.apache.org by mu...@apache.org on 2025/05/16 06:33:41 UTC

(xalan-java) branch xalan-j_xslt3.0_mvn updated: adding more w3c xslt 3.0 test sets and corresponding xalan-j xsl 3 implementation results

This is an automated email from the ASF dual-hosted git repository.

mukulg pushed a commit to branch xalan-j_xslt3.0_mvn
in repository https://gitbox.apache.org/repos/asf/xalan-java.git


The following commit(s) were added to refs/heads/xalan-j_xslt3.0_mvn by this push:
     new 0cfdf491f adding more w3c xslt 3.0 test sets and corresponding xalan-j xsl 3 implementation results
0cfdf491f is described below

commit 0cfdf491fdbe0aa746f0a214f1e8b8f218fc5427
Author: Mukul Gandhi <ga...@gmail.com>
AuthorDate: Fri May 16 12:03:22 2025 +0530

    adding more w3c xslt 3.0 test sets and corresponding xalan-j xsl 3 implementation results
---
 README                                             |  10 +-
 .../xalan/tests/main/AllXalanXSLT3Tests.java       |   2 +-
 ...sl3TestSuite1.java => XalanXsl3TestSuite1.java} |   2 +-
 ...sl3TestSuite2.java => XalanXsl3TestSuite2.java} |  12 +-
 .../xalan/tests/w3c/xslt3/W3CXSLT3Tests.java       |  12 +-
 .../tests/w3c/xslt3/W3CXslTransformTestsUtil.java  |  92 ++++++-
 .../tests/w3c/xslt3/decl/XslCharacterMapTests.java |   4 +-
 .../tests/w3c/xslt3/decl/XslFunctionTests.java     |   4 +-
 .../xalan/tests/w3c/xslt3/expr/XslAxesTests.java   |   4 +-
 .../tests/w3c/xslt3/expr/XslCastableTests.java     |   4 +-
 .../tests/w3c/xslt3/expr/XslExpressionTests.java   |   4 +-
 .../xalan/tests/w3c/xslt3/expr/XslForTests.java    |   4 +-
 .../xalan/tests/w3c/xslt3/expr/XslMathTests.java   |   4 +-
 .../{XslAxesTests.java => XslNodeTestTests.java}   |  10 +-
 .../expr/{XslAxesTests.java => XslPathTests.java}  |  10 +-
 ...slCastableTests.java => XslPredicateTests.java} |  10 +-
 .../w3c/xslt3/insn/XslAnalyzeStringTests.java      |   4 +-
 .../w3c/xslt3/insn/XslApplyTemplatesTests.java     |   4 +-
 .../tests/w3c/xslt3/insn/XslAttributeTests.java    |   4 +-
 .../tests/w3c/xslt3/insn/XslCallTemplateTests.java |   4 +-
 .../w3c/xslt3/insn/XslChooseTemplateTests.java     |   4 +-
 .../insn/{XslTryTests.java => XslCopyTests.java}   |  10 +-
 .../tests/w3c/xslt3/insn/XslForEachGroupTests.java |   4 +-
 .../xalan/tests/w3c/xslt3/insn/XslTryTests.java    |   4 +-
 ...lts.xml => _analyze-string-test-set_result.xml} |   2 +-
 ...ts.xml => _apply-templates-test-set_result.xml} |   2 +-
 ..._results.xml => _attribute-test-set_result.xml} |   2 +-
 ...t-set_results.xml => _axes-test-set_result.xml} |   2 +-
 .../w3c/xslt3/result/_boolean-test-set_result.xml  | 133 ++++++++++
 ...ults.xml => _call-template-test-set_result.xml} |   2 +-
 ...t_results.xml => _castable-test-set_result.xml} |   2 +-
 ...ults.xml => _character-map-test-set_result.xml} |   2 +-
 ...set_results.xml => _choose-test-set_result.xml} |   2 +-
 .../w3c/xslt3/result/_copy-test-set_result.xml     | 243 +++++++++++++++++
 ...results.xml => _expression-test-set_result.xml} |   2 +-
 ...lts.xml => _for-each-group-test-set_result.xml} |   2 +-
 ...st-set_results.xml => _for-test-set_result.xml} |   2 +-
 ...t_results.xml => _function-test-set_result.xml} |   2 +-
 ...t-set_results.xml => _math-test-set_result.xml} |   2 +-
 .../w3c/xslt3/result/_node-test-set_result.xml     |  54 ++++
 .../w3c/xslt3/result/_nodetest-test-set_result.xml | 293 +++++++++++++++++++++
 .../w3c/xslt3/result/_path-test-set_result.xml     |  16 ++
 .../xslt3/result/_predicate-test-set_result.xml    |  67 +++++
 .../w3c/xslt3/result/_string-test-set_result.xml   | 144 ++++++++++
 ...st-set_results.xml => _try-test-set_result.xml} |   2 +-
 .../XslBooleanTests.java}                          |  12 +-
 .../XslAxesTests.java => type/XslNodeTests.java}   |  12 +-
 .../XslAxesTests.java => type/XslStringTests.java} |  12 +-
 .../xpath3/W3c_xslt30_fn_deep_equalTests.java      |  72 -----
 .../tests/xslt3/W3c_xslt30_AnalyzeStringTests.java |  62 -----
 .../xalan/tests/xslt3/W3c_xslt30_AxesTests.java    | 222 ----------------
 .../tests/xslt3/W3c_xslt30_ForEachGroupTests.java  |  92 -------
 .../xalan/tests/xslt3/W3c_xslt30_IterateTests.java |  62 -----
 53 files changed, 1127 insertions(+), 623 deletions(-)

diff --git a/README b/README
index ea1b67a7f..db8e0e60f 100644
--- a/README
+++ b/README
@@ -17,7 +17,7 @@
 
 Copyright 1999-2025 The Apache Software Foundation
 
-Document last modified : 2025-05-15
+Document last modified : 2025-05-16
 
 Authors:
    Gary Gregory <gg...@apache.org>
@@ -58,17 +58,17 @@ This produces Maven build output with trailing information like following:
 [INFO] -------------------------------------------------------
 [INFO]  T E S T S
 [INFO] -------------------------------------------------------
-[INFO] Running org.apache.xalan.tests.main.AllXsl3Tests
-[INFO] Tests run: 1062, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 48.346 s - in org.apache.xalan.tests.main.AllXalanXSLT3Tests
+[INFO] Running org.apache.xalan.tests.main.AllXalanXSLT3Tests
+[INFO] Tests run: 1037, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 32.662 s - in org.apache.xalan.tests.main.AllXalanXSLT3Tests
 [INFO]
 [INFO] Results:
 [INFO]
-[INFO] Tests run: 1062, Failures: 0, Errors: 0, Skipped: 0
+[INFO] Tests run: 1037, Failures: 0, Errors: 0, Skipped: 0
 [INFO]
 [INFO] ------------------------------------------------------------------------
 [INFO] BUILD SUCCESS
 [INFO] ------------------------------------------------------------------------
-[INFO] Total time:  02:01 min
+[INFO] Total time:  01:34 min
 
 To run Xalan-J's XSL 3 processor for invoking an XSL stylesheet transformation, the jar file xalan-java-3.0.1.jar and other 
 jar files available within 'libs' folder need to be made available on Java run-time's classpath.   
diff --git a/src/test/java/org/apache/xalan/tests/main/AllXalanXSLT3Tests.java b/src/test/java/org/apache/xalan/tests/main/AllXalanXSLT3Tests.java
index db8718428..8ff56d56c 100644
--- a/src/test/java/org/apache/xalan/tests/main/AllXalanXSLT3Tests.java
+++ b/src/test/java/org/apache/xalan/tests/main/AllXalanXSLT3Tests.java
@@ -40,7 +40,7 @@ import org.junit.runners.Suite.SuiteClasses;
  * @xsl.usage advanced
  */
 @RunWith(Suite.class)
-@SuiteClasses({ Xsl3TestSuite1.class, Xsl3TestSuite2.class})
+@SuiteClasses({ XalanXsl3TestSuite1.class, XalanXsl3TestSuite2.class})
 public class AllXalanXSLT3Tests {
 
 }
diff --git a/src/test/java/org/apache/xalan/tests/main/Xsl3TestSuite1.java b/src/test/java/org/apache/xalan/tests/main/XalanXsl3TestSuite1.java
similarity index 99%
rename from src/test/java/org/apache/xalan/tests/main/Xsl3TestSuite1.java
rename to src/test/java/org/apache/xalan/tests/main/XalanXsl3TestSuite1.java
index f421f51db..4dcda4da7 100644
--- a/src/test/java/org/apache/xalan/tests/main/Xsl3TestSuite1.java
+++ b/src/test/java/org/apache/xalan/tests/main/XalanXsl3TestSuite1.java
@@ -104,6 +104,6 @@ import org.junit.runners.Suite.SuiteClasses;
                 XPathExprFunctionCallSuffixTests.class, XslEvaluateTests.class, XslValueofTests.class,
                 XslCopyofValidationTests.class, XslCopyValidationTests.class, FnPositionTests.class,
                 XslForEachGroupWithCollationTests.class })
-public class Xsl3TestSuite1 {
+public class XalanXsl3TestSuite1 {
 
 }
diff --git a/src/test/java/org/apache/xalan/tests/main/Xsl3TestSuite2.java b/src/test/java/org/apache/xalan/tests/main/XalanXsl3TestSuite2.java
similarity index 91%
rename from src/test/java/org/apache/xalan/tests/main/Xsl3TestSuite2.java
rename to src/test/java/org/apache/xalan/tests/main/XalanXsl3TestSuite2.java
index db6b10172..43d34f994 100644
--- a/src/test/java/org/apache/xalan/tests/main/Xsl3TestSuite2.java
+++ b/src/test/java/org/apache/xalan/tests/main/XalanXsl3TestSuite2.java
@@ -43,7 +43,6 @@ import org.apache.xalan.tests.xpath3.FnTokenizeTests;
 import org.apache.xalan.tests.xpath3.FnTransformTests;
 import org.apache.xalan.tests.xpath3.FnUnparsedTextLinesTests;
 import org.apache.xalan.tests.xpath3.FnUnparsedTextTests;
-import org.apache.xalan.tests.xpath3.W3c_xslt30_fn_deep_equalTests;
 import org.apache.xalan.tests.xpath3.XPathArithmeticOnDurationValuesTests;
 import org.apache.xalan.tests.xpath3.XPathBuiltinFunctionNamespceTests;
 import org.apache.xalan.tests.xpath3.XPathDynamicFunctionCallTests;
@@ -64,10 +63,6 @@ import org.apache.xalan.tests.xpath3.XPathSimpleMapOperatorTests;
 import org.apache.xalan.tests.xpath3.XPathStringConcatExprTests;
 import org.apache.xalan.tests.xpath3.XsDurationComponentExtractionFunctionTests;
 import org.apache.xalan.tests.xpath3.XsGregorianTypeTests;
-import org.apache.xalan.tests.xslt3.W3c_xslt30_AnalyzeStringTests;
-import org.apache.xalan.tests.xslt3.W3c_xslt30_AxesTests;
-import org.apache.xalan.tests.xslt3.W3c_xslt30_ForEachGroupTests;
-import org.apache.xalan.tests.xslt3.W3c_xslt30_IterateTests;
 import org.apache.xalan.tests.xslt3.XslAnalyzeStringTests;
 import org.apache.xalan.tests.xslt3.XslAttributeTests;
 import org.apache.xalan.tests.xslt3.XslCharacterMapTests;
@@ -103,10 +98,7 @@ import org.junit.runners.Suite.SuiteClasses;
 @SuiteClasses({ XslAnalyzeStringTests.class, XslAttributeTests.class, XslForEachGroupTests.class,
                 XslForEachGroupWithSortTests.class, XslRtfMigrationTests.class, XPathQuantifiedExprTests.class, 
                 FnUnparsedTextTests.class, FnTokenizeTests.class, FnStringJoinTests.class,                 
-                FnIndexOfTests.class, XPathSequenceTests.class, XPathRangeExprTests.class, 
-                W3c_xslt30_IterateTests.class, W3c_xslt30_AxesTests.class, 
-                W3c_xslt30_fn_deep_equalTests.class, W3c_xslt30_ForEachGroupTests.class, 
-                W3c_xslt30_AnalyzeStringTests.class, XslIterateTests.class,                 
+                FnIndexOfTests.class, XPathSequenceTests.class, XPathRangeExprTests.class, XslIterateTests.class,                 
                 FnFilterTests.class, XPathDynamicFunctionCallTests.class, XPathIfExprTests.class, 
                 XPathForExprTests.class, XPathLetExprTests.class, FnDistinctValuesTests.class,
                 XPathMathFunctionTests.class, XPathBuiltinFunctionNamespceTests.class,
@@ -125,6 +117,6 @@ import org.junit.runners.Suite.SuiteClasses;
                 FnTransformTests.class, FnStartsWithEndsWithTests.class, FnContainsTests.class,
                 FnSubstringBeforeAndAfterTests.class, XslTryCatchTests.class, XslCharacterMapTests.class,
                 XslInitialTemplateTests.class, XslContextItemTests.class })
-public class Xsl3TestSuite2 {
+public class XalanXsl3TestSuite2 {
 
 }
diff --git a/src/test/java/org/apache/xalan/tests/w3c/xslt3/W3CXSLT3Tests.java b/src/test/java/org/apache/xalan/tests/w3c/xslt3/W3CXSLT3Tests.java
index 3b68f469f..63a764fbc 100644
--- a/src/test/java/org/apache/xalan/tests/w3c/xslt3/W3CXSLT3Tests.java
+++ b/src/test/java/org/apache/xalan/tests/w3c/xslt3/W3CXSLT3Tests.java
@@ -23,13 +23,20 @@ import org.apache.xalan.tests.w3c.xslt3.expr.XslCastableTests;
 import org.apache.xalan.tests.w3c.xslt3.expr.XslExpressionTests;
 import org.apache.xalan.tests.w3c.xslt3.expr.XslForTests;
 import org.apache.xalan.tests.w3c.xslt3.expr.XslMathTests;
+import org.apache.xalan.tests.w3c.xslt3.expr.XslNodeTestTests;
+import org.apache.xalan.tests.w3c.xslt3.expr.XslPathTests;
+import org.apache.xalan.tests.w3c.xslt3.expr.XslPredicateTests;
 import org.apache.xalan.tests.w3c.xslt3.insn.XslAnalyzeStringTests;
 import org.apache.xalan.tests.w3c.xslt3.insn.XslApplyTemplatesTests;
 import org.apache.xalan.tests.w3c.xslt3.insn.XslAttributeTests;
 import org.apache.xalan.tests.w3c.xslt3.insn.XslCallTemplateTests;
 import org.apache.xalan.tests.w3c.xslt3.insn.XslChooseTemplateTests;
+import org.apache.xalan.tests.w3c.xslt3.insn.XslCopyTests;
 import org.apache.xalan.tests.w3c.xslt3.insn.XslForEachGroupTests;
 import org.apache.xalan.tests.w3c.xslt3.insn.XslTryTests;
+import org.apache.xalan.tests.w3c.xslt3.type.XslBooleanTests;
+import org.apache.xalan.tests.w3c.xslt3.type.XslNodeTests;
+import org.apache.xalan.tests.w3c.xslt3.type.XslStringTests;
 import org.junit.runner.RunWith;
 import org.junit.runners.Suite;
 import org.junit.runners.Suite.SuiteClasses;
@@ -45,9 +52,10 @@ import org.junit.runners.Suite.SuiteClasses;
 @RunWith(Suite.class)
 @SuiteClasses({ XslAnalyzeStringTests.class, XslApplyTemplatesTests.class, XslForEachGroupTests.class,
 	            XslTryTests.class, XslAttributeTests.class, XslCallTemplateTests.class,
-	            XslChooseTemplateTests.class, XslFunctionTests.class, XslCharacterMapTests.class,
+	            XslChooseTemplateTests.class, XslCopyTests.class, XslFunctionTests.class, XslCharacterMapTests.class,
 	            XslAxesTests.class, XslCastableTests.class, XslExpressionTests.class, XslForTests.class,
-	            XslMathTests.class })
+	            XslMathTests.class, XslNodeTestTests.class, XslPathTests.class, XslPredicateTests.class,
+	            XslBooleanTests.class, XslNodeTests.class, XslStringTests.class })
 public class W3CXSLT3Tests {
 
 }
diff --git a/src/test/java/org/apache/xalan/tests/w3c/xslt3/W3CXslTransformTestsUtil.java b/src/test/java/org/apache/xalan/tests/w3c/xslt3/W3CXslTransformTestsUtil.java
index 5a90e19bd..6b3845c95 100644
--- a/src/test/java/org/apache/xalan/tests/w3c/xslt3/W3CXslTransformTestsUtil.java
+++ b/src/test/java/org/apache/xalan/tests/w3c/xslt3/W3CXslTransformTestsUtil.java
@@ -25,7 +25,10 @@ import java.net.URI;
 import java.nio.charset.StandardCharsets;
 import java.nio.file.Files;
 import java.nio.file.Paths;
+import java.text.SimpleDateFormat;
+import java.util.Date;
 import java.util.List;
+import java.util.TimeZone;
 
 import javax.xml.transform.Transformer;
 import javax.xml.transform.dom.DOMSource;
@@ -52,14 +55,16 @@ import org.xml.sax.SAXException;
  * 
  * @xsl.usage advanced
  */
-public class W3CXslTransformTestsUtil extends XslTransformTestsUtil {
-	
+public class W3CXslTransformTestsUtil extends XslTransformTestsUtil {	    
+    
+    protected static final String W3C_XSLT3_TESTS_META_DATA_DIR_HOME = "file:/d:/xslt30-test-master/tests/";
+    
+    private static final String XSL_TRANSFORM_TEST_ALL_OF_TEMPLATE_FILE_PATH =  W3C_XSLT3_TESTS_META_DATA_DIR_HOME + "variant_all_of_test_template.xsl";
+    
     protected static String m_xslTransformTestSetFilePath = null;
     
     protected static String m_testResultFileName = null;
     
-    private static final String XSL_TRANSFORM_TEST_ALL_OF_TEMPLATE_FILE_PATH = "file:/d:/xslt30-test-master/tests/variant_all_of_test_template.xsl";
-    
     private static final String EXPECTED_NODE_KIND_ERROR = "error";
     
     private static final String EXPECTED_NODE_KIND_ASSERT_ALL_OF = "all-of";
@@ -67,7 +72,8 @@ public class W3CXslTransformTestsUtil extends XslTransformTestsUtil {
     private static final String EXPECTED_NODE_KIND_ASSERT_XML = "assert-xml";
 	
 	/**
-	 * Run all XSL transformation tests from a test set.
+	 * Method definition to run all XSL transformation tests from 
+	 * a test set.
 	 */
     public void runXslTestSet() {    	
     	
@@ -75,7 +81,8 @@ public class W3CXslTransformTestsUtil extends XslTransformTestsUtil {
     	
     	FileOutputStream testResultFos = null;
     	
-    	Document testResultDoc = null;
+    	Document testResultDoc = null;    	
+    	Element elemTestRun = null;
     	
     	try {
     	   xslTestSetDoc = m_xmlDocumentBuilder.parse(m_xslTransformTestSetFilePath);
@@ -85,16 +92,18 @@ public class W3CXslTransformTestsUtil extends XslTransformTestsUtil {
 		   // individual test results will be appended.
 		   String testSetName = docElem.getAttribute("name");
 		   testResultDoc = m_xmlDocumentBuilder.newDocument();
-    	   Element elemTestRun = testResultDoc.createElement("testrun");
+    	   elemTestRun = testResultDoc.createElement("testrun");
+    	   String testRunDateStrValue = getDateISOString(new Date());
     	   elemTestRun.setAttribute("name", testSetName);
-    	   testResultDoc.appendChild(elemTestRun);
+    	   elemTestRun.setAttribute("dateTime", testRunDateStrValue);
+    	   testResultDoc.appendChild(elemTestRun);    	   
     	   
     	   NodeList nodeList = xslTestSetDoc.getElementsByTagNameNS("http://www.w3.org/2012/10/xslt-test-catalog", "test-case");
     	   for (int idx = 0; idx < nodeList.getLength(); idx++) {
     		   Node node = nodeList.item(idx);
     		   
     		   if (isXslt2OnlyTestCase(node)) {
-    			  // We skip running XSLT 2.0 only test case
+    			  // We skip running XSLT 2.0 only test cases
     			  Element elemTestResult = testResultDoc.createElement("testResult");
     			  elemTestResult.setAttribute("status", "skipped");
     			  elemTestResult.setAttribute("xsltVersion", "2.0 only");
@@ -103,7 +112,7 @@ public class W3CXslTransformTestsUtil extends XslTransformTestsUtil {
     			  continue; 
     		   }
     		   else if (isStreamingFeatureTestCase(node)) {
-     			  // We skip running streaming feature test case
+     			  // We skip running streaming feature test cases
        			  Element elemTestResult = testResultDoc.createElement("testResult");
        			  elemTestResult.setAttribute("status", "skipped");
        			  elemTestResult.setAttribute("feature", "streaming");
@@ -190,17 +199,54 @@ public class W3CXslTransformTestsUtil extends XslTransformTestsUtil {
     		   
     		   StreamSource xsltStreamSrc = new StreamSource(xslStylesheetUriStr);
     		   
-    		   runW3CXSLTTestSuiteXslTransformAndProduceResult(testCaseName, xmlInpDomSource, xsltStreamSrc, expectedResultElem, 
-    				                                                            elemTestRun, testResultDoc);
+    		   try {
+    		      runW3CXSLTTestSuiteXslTransformAndProduceResult(testCaseName, xmlInpDomSource, xsltStreamSrc, 
+    		    		                                          expectedResultElem, elemTestRun, testResultDoc);
+    		   }
+    		   catch (Exception ex) {
+    			  System.out.println("Test case name : " + testCaseName + ", Exception message : " + ex.getMessage()); 
+    		   }
        		   
     	   }    	   
     	}
     	catch (Exception ex) {
-    	   ex.printStackTrace();
+    	   System.out.println(ex.getMessage());
     	}
     	finally {
     	   try {
-    		   // Serialize testResultDoc to file
+    		   NodeList nodeList = testResultDoc.getElementsByTagName("testResult");
+        	   
+    		   int testsPassCount = 0;
+        	   int testsfailCount = 0;
+        	   int testsSkippedCount = 0;
+        	   int testStatusUnknownCount = 0;
+        	   
+        	   for (int idx = 0; idx < nodeList.getLength(); idx++) {
+        		  Element element = (Element)(nodeList.item(idx));
+        		  String statusValue = element.getAttribute("status");
+        		  if ("pass".equals(statusValue)) {
+        			  testsPassCount++; 
+        		  }
+        		  else if ("fail".equals(statusValue)) {
+        			  testsfailCount++; 
+        		  }
+        		  else if ("skipped".equals(statusValue)) {
+        			  testsSkippedCount++; 
+        		  }
+        		  else {
+        			  testStatusUnknownCount++; 
+        		  }
+        	   }
+        	   
+        	   int totalTestsRun = (testsPassCount + testsfailCount + testsSkippedCount + testStatusUnknownCount);    
+        	   
+        	   elemTestRun.setAttribute("pass", String.valueOf(testsPassCount));
+        	   elemTestRun.setAttribute("fail", String.valueOf(testsfailCount));
+        	   elemTestRun.setAttribute("skipped", String.valueOf(testsSkippedCount));
+        	   elemTestRun.setAttribute("statusUnknown", String.valueOf(testStatusUnknownCount));
+        	   elemTestRun.setAttribute("totalRun", String.valueOf(totalTestsRun));
+        	   
+    		   // Serialize W3C XSLT 3.0 test set results file to file system
     		   String xslTestResultStr = serializeXmlDomElementNode(testResultDoc);
         	   
         	   File xslAnalyzeStringTestResultFile = new File(new URI(m_w3cXslt3TestSuiteXalanResultsPathPrefix + m_testResultFileName));
@@ -490,5 +536,23 @@ public class W3CXslTransformTestsUtil extends XslTransformTestsUtil {
     	
     	return result;
     }
+    
+    /**
+     * Method definition to get an ISO formatted date string for the supplied 
+     * java.util.Date value.
+     *  
+     * @param date				The supplied date object value
+     * @return					The formatted date string
+     */
+    private String getDateISOString(Date dateValue) {
+    	String result = null;
+    	
+        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'");
+        sdf.setTimeZone(TimeZone.getTimeZone("UTC"));
+        
+        result = sdf.format(dateValue); 
+        
+        return result;
+    }
 
 }
diff --git a/src/test/java/org/apache/xalan/tests/w3c/xslt3/decl/XslCharacterMapTests.java b/src/test/java/org/apache/xalan/tests/w3c/xslt3/decl/XslCharacterMapTests.java
index 3c19cbc2a..5575ce590 100644
--- a/src/test/java/org/apache/xalan/tests/w3c/xslt3/decl/XslCharacterMapTests.java
+++ b/src/test/java/org/apache/xalan/tests/w3c/xslt3/decl/XslCharacterMapTests.java
@@ -33,8 +33,8 @@ public class XslCharacterMapTests extends W3CXslTransformTestsUtil {
 
     @BeforeClass
     public static void setUpBeforeClass() throws Exception {
-    	m_xslTransformTestSetFilePath = "file:/d:/xslt30-test-master/tests/decl/character-map/_character-map-test-set.xml";
-    	m_testResultFileName = "_character-map-test-set_results.xml";    	   
+    	m_xslTransformTestSetFilePath = W3C_XSLT3_TESTS_META_DATA_DIR_HOME + "decl/character-map/_character-map-test-set.xml";
+    	m_testResultFileName = "_character-map-test-set_result.xml";    	   
     }
 
     @AfterClass
diff --git a/src/test/java/org/apache/xalan/tests/w3c/xslt3/decl/XslFunctionTests.java b/src/test/java/org/apache/xalan/tests/w3c/xslt3/decl/XslFunctionTests.java
index 5648294ce..e89828897 100644
--- a/src/test/java/org/apache/xalan/tests/w3c/xslt3/decl/XslFunctionTests.java
+++ b/src/test/java/org/apache/xalan/tests/w3c/xslt3/decl/XslFunctionTests.java
@@ -33,8 +33,8 @@ public class XslFunctionTests extends W3CXslTransformTestsUtil {
 
     @BeforeClass
     public static void setUpBeforeClass() throws Exception {
-    	m_xslTransformTestSetFilePath = "file:/d:/xslt30-test-master/tests/decl/function/_function-test-set.xml";
-    	m_testResultFileName = "_function-test-set_results.xml";    	   
+    	m_xslTransformTestSetFilePath = W3C_XSLT3_TESTS_META_DATA_DIR_HOME + "decl/function/_function-test-set.xml";
+    	m_testResultFileName = "_function-test-set_result.xml";    	   
     }
 
     @AfterClass
diff --git a/src/test/java/org/apache/xalan/tests/w3c/xslt3/expr/XslAxesTests.java b/src/test/java/org/apache/xalan/tests/w3c/xslt3/expr/XslAxesTests.java
index cb5c73b53..32e7b8b3d 100644
--- a/src/test/java/org/apache/xalan/tests/w3c/xslt3/expr/XslAxesTests.java
+++ b/src/test/java/org/apache/xalan/tests/w3c/xslt3/expr/XslAxesTests.java
@@ -33,8 +33,8 @@ public class XslAxesTests extends W3CXslTransformTestsUtil {
 
     @BeforeClass
     public static void setUpBeforeClass() throws Exception {
-    	m_xslTransformTestSetFilePath = "file:/d:/xslt30-test-master/tests/expr/axes/_axes-test-set.xml";
-    	m_testResultFileName = "_axes-test-set_results.xml";    	   
+    	m_xslTransformTestSetFilePath = W3C_XSLT3_TESTS_META_DATA_DIR_HOME + "expr/axes/_axes-test-set.xml";
+    	m_testResultFileName = "_axes-test-set_result.xml";    	   
     }
 
     @AfterClass
diff --git a/src/test/java/org/apache/xalan/tests/w3c/xslt3/expr/XslCastableTests.java b/src/test/java/org/apache/xalan/tests/w3c/xslt3/expr/XslCastableTests.java
index e75884231..11fb03b3a 100644
--- a/src/test/java/org/apache/xalan/tests/w3c/xslt3/expr/XslCastableTests.java
+++ b/src/test/java/org/apache/xalan/tests/w3c/xslt3/expr/XslCastableTests.java
@@ -33,8 +33,8 @@ public class XslCastableTests extends W3CXslTransformTestsUtil {
 
     @BeforeClass
     public static void setUpBeforeClass() throws Exception {
-    	m_xslTransformTestSetFilePath = "file:/d:/xslt30-test-master/tests/expr/castable/_castable-test-set.xml";
-    	m_testResultFileName = "_castable-test-set_results.xml";    	   
+    	m_xslTransformTestSetFilePath = W3C_XSLT3_TESTS_META_DATA_DIR_HOME + "expr/castable/_castable-test-set.xml";
+    	m_testResultFileName = "_castable-test-set_result.xml";    	   
     }
 
     @AfterClass
diff --git a/src/test/java/org/apache/xalan/tests/w3c/xslt3/expr/XslExpressionTests.java b/src/test/java/org/apache/xalan/tests/w3c/xslt3/expr/XslExpressionTests.java
index bf1c2a464..43bbb6664 100644
--- a/src/test/java/org/apache/xalan/tests/w3c/xslt3/expr/XslExpressionTests.java
+++ b/src/test/java/org/apache/xalan/tests/w3c/xslt3/expr/XslExpressionTests.java
@@ -33,8 +33,8 @@ public class XslExpressionTests extends W3CXslTransformTestsUtil {
 
     @BeforeClass
     public static void setUpBeforeClass() throws Exception {
-    	m_xslTransformTestSetFilePath = "file:/d:/xslt30-test-master/tests/expr/expression/_expression-test-set.xml";
-    	m_testResultFileName = "_expression-test-set_results.xml";    	   
+    	m_xslTransformTestSetFilePath = W3C_XSLT3_TESTS_META_DATA_DIR_HOME + "expr/expression/_expression-test-set.xml";
+    	m_testResultFileName = "_expression-test-set_result.xml";    	   
     }
 
     @AfterClass
diff --git a/src/test/java/org/apache/xalan/tests/w3c/xslt3/expr/XslForTests.java b/src/test/java/org/apache/xalan/tests/w3c/xslt3/expr/XslForTests.java
index 36d144815..c26c69cf5 100644
--- a/src/test/java/org/apache/xalan/tests/w3c/xslt3/expr/XslForTests.java
+++ b/src/test/java/org/apache/xalan/tests/w3c/xslt3/expr/XslForTests.java
@@ -33,8 +33,8 @@ public class XslForTests extends W3CXslTransformTestsUtil {
 
     @BeforeClass
     public static void setUpBeforeClass() throws Exception {
-    	m_xslTransformTestSetFilePath = "file:/d:/xslt30-test-master/tests/expr/for/_for-test-set.xml";
-    	m_testResultFileName = "_for-test-set_results.xml";    	   
+    	m_xslTransformTestSetFilePath = W3C_XSLT3_TESTS_META_DATA_DIR_HOME + "expr/for/_for-test-set.xml";
+    	m_testResultFileName = "_for-test-set_result.xml";    	   
     }
 
     @AfterClass
diff --git a/src/test/java/org/apache/xalan/tests/w3c/xslt3/expr/XslMathTests.java b/src/test/java/org/apache/xalan/tests/w3c/xslt3/expr/XslMathTests.java
index 780cc5b52..6b6cf9a89 100644
--- a/src/test/java/org/apache/xalan/tests/w3c/xslt3/expr/XslMathTests.java
+++ b/src/test/java/org/apache/xalan/tests/w3c/xslt3/expr/XslMathTests.java
@@ -33,8 +33,8 @@ public class XslMathTests extends W3CXslTransformTestsUtil {
 
     @BeforeClass
     public static void setUpBeforeClass() throws Exception {
-    	m_xslTransformTestSetFilePath = "file:/d:/xslt30-test-master/tests/expr/math/_math-test-set.xml";
-    	m_testResultFileName = "_math-test-set_results.xml";    	   
+    	m_xslTransformTestSetFilePath = W3C_XSLT3_TESTS_META_DATA_DIR_HOME + "expr/math/_math-test-set.xml";
+    	m_testResultFileName = "_math-test-set_result.xml";    	   
     }
 
     @AfterClass
diff --git a/src/test/java/org/apache/xalan/tests/w3c/xslt3/expr/XslAxesTests.java b/src/test/java/org/apache/xalan/tests/w3c/xslt3/expr/XslNodeTestTests.java
similarity index 81%
copy from src/test/java/org/apache/xalan/tests/w3c/xslt3/expr/XslAxesTests.java
copy to src/test/java/org/apache/xalan/tests/w3c/xslt3/expr/XslNodeTestTests.java
index cb5c73b53..09f83811b 100644
--- a/src/test/java/org/apache/xalan/tests/w3c/xslt3/expr/XslAxesTests.java
+++ b/src/test/java/org/apache/xalan/tests/w3c/xslt3/expr/XslNodeTestTests.java
@@ -23,18 +23,18 @@ import org.junit.Test;
 
 /**
  * Xalan-J XSL 3 test driver, to run W3C XSL 3.0 transformation 
- * tests for XPath axes.
+ * tests for XPath nodetest.
  * 
  * @author Mukul Gandhi <mu...@apache.org>
  * 
  * @xsl.usage advanced
  */
-public class XslAxesTests extends W3CXslTransformTestsUtil {     
+public class XslNodeTestTests extends W3CXslTransformTestsUtil {     
 
     @BeforeClass
     public static void setUpBeforeClass() throws Exception {
-    	m_xslTransformTestSetFilePath = "file:/d:/xslt30-test-master/tests/expr/axes/_axes-test-set.xml";
-    	m_testResultFileName = "_axes-test-set_results.xml";    	   
+    	m_xslTransformTestSetFilePath = W3C_XSLT3_TESTS_META_DATA_DIR_HOME + "expr/nodetest/_nodetest-test-set.xml";
+    	m_testResultFileName = "_nodetest-test-set_result.xml";    	   
     }
 
     @AfterClass
@@ -45,7 +45,7 @@ public class XslAxesTests extends W3CXslTransformTestsUtil {
     }
 
     @Test
-    public void runXslAxesTests() {    	
+    public void runXslNodeTestTests() {    	
        runXslTestSet();
     }
 
diff --git a/src/test/java/org/apache/xalan/tests/w3c/xslt3/expr/XslAxesTests.java b/src/test/java/org/apache/xalan/tests/w3c/xslt3/expr/XslPathTests.java
similarity index 82%
copy from src/test/java/org/apache/xalan/tests/w3c/xslt3/expr/XslAxesTests.java
copy to src/test/java/org/apache/xalan/tests/w3c/xslt3/expr/XslPathTests.java
index cb5c73b53..9041ac106 100644
--- a/src/test/java/org/apache/xalan/tests/w3c/xslt3/expr/XslAxesTests.java
+++ b/src/test/java/org/apache/xalan/tests/w3c/xslt3/expr/XslPathTests.java
@@ -23,18 +23,18 @@ import org.junit.Test;
 
 /**
  * Xalan-J XSL 3 test driver, to run W3C XSL 3.0 transformation 
- * tests for XPath axes.
+ * tests for XPath path tests.
  * 
  * @author Mukul Gandhi <mu...@apache.org>
  * 
  * @xsl.usage advanced
  */
-public class XslAxesTests extends W3CXslTransformTestsUtil {     
+public class XslPathTests extends W3CXslTransformTestsUtil {     
 
     @BeforeClass
     public static void setUpBeforeClass() throws Exception {
-    	m_xslTransformTestSetFilePath = "file:/d:/xslt30-test-master/tests/expr/axes/_axes-test-set.xml";
-    	m_testResultFileName = "_axes-test-set_results.xml";    	   
+    	m_xslTransformTestSetFilePath = W3C_XSLT3_TESTS_META_DATA_DIR_HOME + "expr/path/_path-test-set.xml";
+    	m_testResultFileName = "_path-test-set_result.xml";    	   
     }
 
     @AfterClass
@@ -45,7 +45,7 @@ public class XslAxesTests extends W3CXslTransformTestsUtil {
     }
 
     @Test
-    public void runXslAxesTests() {    	
+    public void runXslPathTests() {    	
        runXslTestSet();
     }
 
diff --git a/src/test/java/org/apache/xalan/tests/w3c/xslt3/expr/XslCastableTests.java b/src/test/java/org/apache/xalan/tests/w3c/xslt3/expr/XslPredicateTests.java
similarity index 81%
copy from src/test/java/org/apache/xalan/tests/w3c/xslt3/expr/XslCastableTests.java
copy to src/test/java/org/apache/xalan/tests/w3c/xslt3/expr/XslPredicateTests.java
index e75884231..095309513 100644
--- a/src/test/java/org/apache/xalan/tests/w3c/xslt3/expr/XslCastableTests.java
+++ b/src/test/java/org/apache/xalan/tests/w3c/xslt3/expr/XslPredicateTests.java
@@ -23,18 +23,18 @@ import org.junit.Test;
 
 /**
  * Xalan-J XSL 3 test driver, to run W3C XSL 3.0 transformation 
- * tests for XPath castable expression.
+ * tests for XPath predicate tests.
  * 
  * @author Mukul Gandhi <mu...@apache.org>
  * 
  * @xsl.usage advanced
  */
-public class XslCastableTests extends W3CXslTransformTestsUtil {     
+public class XslPredicateTests extends W3CXslTransformTestsUtil {     
 
     @BeforeClass
     public static void setUpBeforeClass() throws Exception {
-    	m_xslTransformTestSetFilePath = "file:/d:/xslt30-test-master/tests/expr/castable/_castable-test-set.xml";
-    	m_testResultFileName = "_castable-test-set_results.xml";    	   
+    	m_xslTransformTestSetFilePath = W3C_XSLT3_TESTS_META_DATA_DIR_HOME + "expr/predicate/_predicate-test-set.xml";
+    	m_testResultFileName = "_predicate-test-set_result.xml";    	   
     }
 
     @AfterClass
@@ -45,7 +45,7 @@ public class XslCastableTests extends W3CXslTransformTestsUtil {
     }
 
     @Test
-    public void runXslCastableTests() {    	
+    public void runXslPredicateTests() {    	
        runXslTestSet();
     }
 
diff --git a/src/test/java/org/apache/xalan/tests/w3c/xslt3/insn/XslAnalyzeStringTests.java b/src/test/java/org/apache/xalan/tests/w3c/xslt3/insn/XslAnalyzeStringTests.java
index a0eaf446c..74d3b6cb5 100644
--- a/src/test/java/org/apache/xalan/tests/w3c/xslt3/insn/XslAnalyzeStringTests.java
+++ b/src/test/java/org/apache/xalan/tests/w3c/xslt3/insn/XslAnalyzeStringTests.java
@@ -33,8 +33,8 @@ public class XslAnalyzeStringTests extends W3CXslTransformTestsUtil {
 
     @BeforeClass
     public static void setUpBeforeClass() throws Exception {
-    	m_xslTransformTestSetFilePath = "file:/d:/xslt30-test-master/tests/insn/analyze-string/_analyze-string-test-set.xml";
-    	m_testResultFileName = "_analyze-string-test-set_results.xml";    	   
+    	m_xslTransformTestSetFilePath = W3C_XSLT3_TESTS_META_DATA_DIR_HOME + "insn/analyze-string/_analyze-string-test-set.xml";
+    	m_testResultFileName = "_analyze-string-test-set_result.xml";    	   
     }
 
     @AfterClass
diff --git a/src/test/java/org/apache/xalan/tests/w3c/xslt3/insn/XslApplyTemplatesTests.java b/src/test/java/org/apache/xalan/tests/w3c/xslt3/insn/XslApplyTemplatesTests.java
index a8c950d27..247f69a55 100644
--- a/src/test/java/org/apache/xalan/tests/w3c/xslt3/insn/XslApplyTemplatesTests.java
+++ b/src/test/java/org/apache/xalan/tests/w3c/xslt3/insn/XslApplyTemplatesTests.java
@@ -33,8 +33,8 @@ public class XslApplyTemplatesTests extends W3CXslTransformTestsUtil {
 
     @BeforeClass
     public static void setUpBeforeClass() throws Exception {
-    	m_xslTransformTestSetFilePath = "file:/d:/xslt30-test-master/tests/insn/apply-templates/_apply-templates-test-set.xml";
-    	m_testResultFileName = "_apply-templates-test-set_results.xml";    	   
+    	m_xslTransformTestSetFilePath = W3C_XSLT3_TESTS_META_DATA_DIR_HOME + "insn/apply-templates/_apply-templates-test-set.xml";
+    	m_testResultFileName = "_apply-templates-test-set_result.xml";    	   
     }
 
     @AfterClass
diff --git a/src/test/java/org/apache/xalan/tests/w3c/xslt3/insn/XslAttributeTests.java b/src/test/java/org/apache/xalan/tests/w3c/xslt3/insn/XslAttributeTests.java
index 7f99d1932..c0fe0d53e 100644
--- a/src/test/java/org/apache/xalan/tests/w3c/xslt3/insn/XslAttributeTests.java
+++ b/src/test/java/org/apache/xalan/tests/w3c/xslt3/insn/XslAttributeTests.java
@@ -33,8 +33,8 @@ public class XslAttributeTests extends W3CXslTransformTestsUtil {
 
     @BeforeClass
     public static void setUpBeforeClass() throws Exception {
-    	m_xslTransformTestSetFilePath = "file:/d:/xslt30-test-master/tests/insn/attribute/_attribute-test-set.xml";
-    	m_testResultFileName = "_attribute-test-set_results.xml";    	   
+    	m_xslTransformTestSetFilePath = W3C_XSLT3_TESTS_META_DATA_DIR_HOME + "insn/attribute/_attribute-test-set.xml";
+    	m_testResultFileName = "_attribute-test-set_result.xml";    	   
     }
 
     @AfterClass
diff --git a/src/test/java/org/apache/xalan/tests/w3c/xslt3/insn/XslCallTemplateTests.java b/src/test/java/org/apache/xalan/tests/w3c/xslt3/insn/XslCallTemplateTests.java
index 03e4dc7a7..00711d1d0 100644
--- a/src/test/java/org/apache/xalan/tests/w3c/xslt3/insn/XslCallTemplateTests.java
+++ b/src/test/java/org/apache/xalan/tests/w3c/xslt3/insn/XslCallTemplateTests.java
@@ -33,8 +33,8 @@ public class XslCallTemplateTests extends W3CXslTransformTestsUtil {
 
     @BeforeClass
     public static void setUpBeforeClass() throws Exception {
-    	m_xslTransformTestSetFilePath = "file:/d:/xslt30-test-master/tests/insn/call-template/_call-template-test-set.xml";
-    	m_testResultFileName = "_call-template-test-set_results.xml";    	   
+    	m_xslTransformTestSetFilePath = W3C_XSLT3_TESTS_META_DATA_DIR_HOME + "insn/call-template/_call-template-test-set.xml";
+    	m_testResultFileName = "_call-template-test-set_result.xml";    	   
     }
 
     @AfterClass
diff --git a/src/test/java/org/apache/xalan/tests/w3c/xslt3/insn/XslChooseTemplateTests.java b/src/test/java/org/apache/xalan/tests/w3c/xslt3/insn/XslChooseTemplateTests.java
index f0ba448de..74721e05f 100644
--- a/src/test/java/org/apache/xalan/tests/w3c/xslt3/insn/XslChooseTemplateTests.java
+++ b/src/test/java/org/apache/xalan/tests/w3c/xslt3/insn/XslChooseTemplateTests.java
@@ -33,8 +33,8 @@ public class XslChooseTemplateTests extends W3CXslTransformTestsUtil {
 
     @BeforeClass
     public static void setUpBeforeClass() throws Exception {
-    	m_xslTransformTestSetFilePath = "file:/d:/xslt30-test-master/tests/insn/choose/_choose-test-set.xml";
-    	m_testResultFileName = "_choose-test-set_results.xml";    	   
+    	m_xslTransformTestSetFilePath = W3C_XSLT3_TESTS_META_DATA_DIR_HOME + "insn/choose/_choose-test-set.xml";
+    	m_testResultFileName = "_choose-test-set_result.xml";    	   
     }
 
     @AfterClass
diff --git a/src/test/java/org/apache/xalan/tests/w3c/xslt3/insn/XslTryTests.java b/src/test/java/org/apache/xalan/tests/w3c/xslt3/insn/XslCopyTests.java
similarity index 81%
copy from src/test/java/org/apache/xalan/tests/w3c/xslt3/insn/XslTryTests.java
copy to src/test/java/org/apache/xalan/tests/w3c/xslt3/insn/XslCopyTests.java
index 818a3e20b..0e2769f81 100644
--- a/src/test/java/org/apache/xalan/tests/w3c/xslt3/insn/XslTryTests.java
+++ b/src/test/java/org/apache/xalan/tests/w3c/xslt3/insn/XslCopyTests.java
@@ -23,18 +23,18 @@ import org.junit.Test;
 
 /**
  * Xalan-J XSL 3 test driver, to run W3C XSL 3.0 transformation 
- * tests for xsl:try instruction.
+ * tests for xsl:copy and xsl:copy-of instructions.
  * 
  * @author Mukul Gandhi <mu...@apache.org>
  * 
  * @xsl.usage advanced
  */
-public class XslTryTests extends W3CXslTransformTestsUtil {     
+public class XslCopyTests extends W3CXslTransformTestsUtil {     
 
     @BeforeClass
     public static void setUpBeforeClass() throws Exception {
-    	m_xslTransformTestSetFilePath = "file:/d:/xslt30-test-master/tests/insn/try/_try-test-set.xml";
-    	m_testResultFileName = "_try-test-set_results.xml";    	   
+    	m_xslTransformTestSetFilePath = W3C_XSLT3_TESTS_META_DATA_DIR_HOME + "insn/copy/_copy-test-set.xml";
+    	m_testResultFileName = "_copy-test-set_result.xml";    	   
     }
 
     @AfterClass
@@ -45,7 +45,7 @@ public class XslTryTests extends W3CXslTransformTestsUtil {
     }
 
     @Test
-    public void runXslTryTests() {    	    	
+    public void runXslCopyTests() {    	    	
     	runXslTestSet();
     }
 
diff --git a/src/test/java/org/apache/xalan/tests/w3c/xslt3/insn/XslForEachGroupTests.java b/src/test/java/org/apache/xalan/tests/w3c/xslt3/insn/XslForEachGroupTests.java
index 8da0fad14..37a090031 100644
--- a/src/test/java/org/apache/xalan/tests/w3c/xslt3/insn/XslForEachGroupTests.java
+++ b/src/test/java/org/apache/xalan/tests/w3c/xslt3/insn/XslForEachGroupTests.java
@@ -33,8 +33,8 @@ public class XslForEachGroupTests extends W3CXslTransformTestsUtil {
 
     @BeforeClass
     public static void setUpBeforeClass() throws Exception {
-    	m_xslTransformTestSetFilePath = "file:/d:/xslt30-test-master/tests/insn/for-each-group/_for-each-group-test-set.xml";
-    	m_testResultFileName = "_for-each-group-test-set_results.xml";
+    	m_xslTransformTestSetFilePath = W3C_XSLT3_TESTS_META_DATA_DIR_HOME + "insn/for-each-group/_for-each-group-test-set.xml";
+    	m_testResultFileName = "_for-each-group-test-set_result.xml";
     }
 
     @AfterClass
diff --git a/src/test/java/org/apache/xalan/tests/w3c/xslt3/insn/XslTryTests.java b/src/test/java/org/apache/xalan/tests/w3c/xslt3/insn/XslTryTests.java
index 818a3e20b..f85623295 100644
--- a/src/test/java/org/apache/xalan/tests/w3c/xslt3/insn/XslTryTests.java
+++ b/src/test/java/org/apache/xalan/tests/w3c/xslt3/insn/XslTryTests.java
@@ -33,8 +33,8 @@ public class XslTryTests extends W3CXslTransformTestsUtil {
 
     @BeforeClass
     public static void setUpBeforeClass() throws Exception {
-    	m_xslTransformTestSetFilePath = "file:/d:/xslt30-test-master/tests/insn/try/_try-test-set.xml";
-    	m_testResultFileName = "_try-test-set_results.xml";    	   
+    	m_xslTransformTestSetFilePath = W3C_XSLT3_TESTS_META_DATA_DIR_HOME + "insn/try/_try-test-set.xml";
+    	m_testResultFileName = "_try-test-set_result.xml";    	   
     }
 
     @AfterClass
diff --git a/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_analyze-string-test-set_results.xml b/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_analyze-string-test-set_result.xml
similarity index 97%
rename from src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_analyze-string-test-set_results.xml
rename to src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_analyze-string-test-set_result.xml
index 3817e114f..fc759ed44 100644
--- a/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_analyze-string-test-set_results.xml
+++ b/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_analyze-string-test-set_result.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0" encoding="UTF-8"?><testrun name="analyze-string">
+<?xml version="1.0" encoding="UTF-8"?><testrun dateTime="2025-05-16T06:27:16Z" fail="19" name="analyze-string" pass="33" skipped="5" statusUnknown="1" totalRun="58">
    <testResult status="pass" testName="analyze-string-001"/>
    <testResult status="pass" testName="analyze-string-002"/>
    <testResult status="pass" testName="analyze-string-003"/>
diff --git a/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_apply-templates-test-set_results.xml b/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_apply-templates-test-set_result.xml
similarity index 97%
rename from src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_apply-templates-test-set_results.xml
rename to src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_apply-templates-test-set_result.xml
index f48e287de..4330fb73a 100644
--- a/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_apply-templates-test-set_results.xml
+++ b/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_apply-templates-test-set_result.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0" encoding="UTF-8"?><testrun name="apply-templates">
+<?xml version="1.0" encoding="UTF-8"?><testrun dateTime="2025-05-16T06:27:17Z" fail="26" name="apply-templates" pass="22" skipped="2" statusUnknown="0" totalRun="50">
    <testResult status="fail" testName="apply-templates-001">
       <outResult>
          <errTrace>java.lang.NullPointerException</errTrace>
diff --git a/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_attribute-test-set_results.xml b/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_attribute-test-set_result.xml
similarity index 93%
rename from src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_attribute-test-set_results.xml
rename to src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_attribute-test-set_result.xml
index 234531492..97bc139af 100644
--- a/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_attribute-test-set_results.xml
+++ b/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_attribute-test-set_result.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0" encoding="UTF-8"?><testrun name="attribute">
+<?xml version="1.0" encoding="UTF-8"?><testrun dateTime="2025-05-16T06:27:20Z" fail="11" name="attribute" pass="7" skipped="0" statusUnknown="3" totalRun="21">
    <testResult status="fail" testName="attribute-0001"/>
    <testResult status="fail" testName="attribute-0002">
       <outResult/>
diff --git a/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_axes-test-set_results.xml b/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_axes-test-set_result.xml
similarity index 98%
rename from src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_axes-test-set_results.xml
rename to src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_axes-test-set_result.xml
index 4d944b2b3..2b66f55e4 100644
--- a/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_axes-test-set_results.xml
+++ b/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_axes-test-set_result.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0" encoding="UTF-8"?><testrun name="axes">
+<?xml version="1.0" encoding="UTF-8"?><testrun dateTime="2025-05-16T06:27:38Z" fail="27" name="axes" pass="174" skipped="0" statusUnknown="0" totalRun="201">
    <testResult status="pass" testName="axes-001"/>
    <testResult status="pass" testName="axes-002"/>
    <testResult status="pass" testName="axes-003"/>
diff --git a/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_boolean-test-set_result.xml b/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_boolean-test-set_result.xml
new file mode 100644
index 000000000..d1170edf3
--- /dev/null
+++ b/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_boolean-test-set_result.xml
@@ -0,0 +1,133 @@
+<?xml version="1.0" encoding="UTF-8"?><testrun dateTime="2025-05-16T06:27:49Z" fail="23" name="boolean" pass="89" skipped="0" statusUnknown="0" totalRun="112">
+   <testResult status="pass" testName="boolean-001"/>
+   <testResult status="pass" testName="boolean-002"/>
+   <testResult status="pass" testName="boolean-003"/>
+   <testResult status="pass" testName="boolean-004"/>
+   <testResult status="pass" testName="boolean-005"/>
+   <testResult status="pass" testName="boolean-006"/>
+   <testResult status="pass" testName="boolean-007"/>
+   <testResult status="pass" testName="boolean-008"/>
+   <testResult status="pass" testName="boolean-009"/>
+   <testResult status="pass" testName="boolean-010"/>
+   <testResult status="pass" testName="boolean-011"/>
+   <testResult status="pass" testName="boolean-012"/>
+   <testResult status="pass" testName="boolean-013"/>
+   <testResult status="pass" testName="boolean-014"/>
+   <testResult status="pass" testName="boolean-015"/>
+   <testResult status="pass" testName="boolean-016"/>
+   <testResult status="pass" testName="boolean-017"/>
+   <testResult status="fail" testName="boolean-018"/>
+   <testResult status="pass" testName="boolean-019"/>
+   <testResult status="pass" testName="boolean-020"/>
+   <testResult status="pass" testName="boolean-021"/>
+   <testResult status="pass" testName="boolean-022"/>
+   <testResult status="pass" testName="boolean-023"/>
+   <testResult status="pass" testName="boolean-024"/>
+   <testResult status="pass" testName="boolean-025"/>
+   <testResult status="pass" testName="boolean-026"/>
+   <testResult status="pass" testName="boolean-027"/>
+   <testResult status="pass" testName="boolean-028"/>
+   <testResult status="pass" testName="boolean-029"/>
+   <testResult status="pass" testName="boolean-030"/>
+   <testResult status="pass" testName="boolean-031"/>
+   <testResult status="pass" testName="boolean-032"/>
+   <testResult status="pass" testName="boolean-033"/>
+   <testResult status="pass" testName="boolean-034"/>
+   <testResult status="pass" testName="boolean-035"/>
+   <testResult status="pass" testName="boolean-036"/>
+   <testResult status="pass" testName="boolean-037"/>
+   <testResult status="pass" testName="boolean-038"/>
+   <testResult status="pass" testName="boolean-039"/>
+   <testResult status="fail" testName="boolean-040"/>
+   <testResult status="fail" testName="boolean-041"/>
+   <testResult status="fail" testName="boolean-042"/>
+   <testResult status="fail" testName="boolean-043"/>
+   <testResult status="fail" testName="boolean-044"/>
+   <testResult status="pass" testName="boolean-045"/>
+   <testResult status="pass" testName="boolean-046"/>
+   <testResult status="pass" testName="boolean-047"/>
+   <testResult status="fail" testName="boolean-048"/>
+   <testResult status="pass" testName="boolean-049"/>
+   <testResult status="pass" testName="boolean-050"/>
+   <testResult status="pass" testName="boolean-051"/>
+   <testResult status="pass" testName="boolean-052"/>
+   <testResult status="pass" testName="boolean-053"/>
+   <testResult status="pass" testName="boolean-054"/>
+   <testResult status="pass" testName="boolean-055"/>
+   <testResult status="pass" testName="boolean-056"/>
+   <testResult status="pass" testName="boolean-057"/>
+   <testResult status="pass" testName="boolean-058"/>
+   <testResult status="pass" testName="boolean-059"/>
+   <testResult status="pass" testName="boolean-060"/>
+   <testResult status="pass" testName="boolean-061"/>
+   <testResult status="pass" testName="boolean-062"/>
+   <testResult status="pass" testName="boolean-063"/>
+   <testResult status="pass" testName="boolean-064"/>
+   <testResult status="pass" testName="boolean-065"/>
+   <testResult status="fail" testName="boolean-066"/>
+   <testResult status="fail" testName="boolean-067"/>
+   <testResult status="fail" testName="boolean-068"/>
+   <testResult status="fail" testName="boolean-069"/>
+   <testResult status="pass" testName="boolean-070"/>
+   <testResult status="fail" testName="boolean-071"/>
+   <testResult status="fail" testName="boolean-072"/>
+   <testResult status="fail" testName="boolean-073"/>
+   <testResult status="fail" testName="boolean-074"/>
+   <testResult status="pass" testName="boolean-075"/>
+   <testResult status="fail" testName="boolean-076"/>
+   <testResult status="fail" testName="boolean-077"/>
+   <testResult status="fail" testName="boolean-078">
+      <outResult>
+         <errTrace>A location path was expected, but the following token was encountered:  )</errTrace>
+         <errTrace>java.lang.RuntimeException: Programmer's assertion in getNextStepPos: unknown stepType: -1</errTrace>
+      </outResult>
+   </testResult>
+   <testResult status="fail" testName="boolean-079">
+      <outResult>
+         <errTrace>A location path was expected, but the following token was encountered:  )</errTrace>
+         <errTrace>java.lang.RuntimeException: Programmer's assertion in getNextStepPos: unknown stepType: -1</errTrace>
+      </outResult>
+   </testResult>
+   <testResult status="pass" testName="boolean-080"/>
+   <testResult status="pass" testName="boolean-081"/>
+   <testResult status="fail" testName="boolean-082">
+      <outResult>
+         <errTrace>ERROR! Unknown op code: 0</errTrace>
+         <errTrace>java.lang.ArrayIndexOutOfBoundsException</errTrace>
+      </outResult>
+   </testResult>
+   <testResult status="pass" testName="boolean-083"/>
+   <testResult status="pass" testName="boolean-084"/>
+   <testResult status="pass" testName="boolean-085"/>
+   <testResult status="pass" testName="boolean-086"/>
+   <testResult status="pass" testName="boolean-087"/>
+   <testResult status="pass" testName="boolean-088"/>
+   <testResult status="pass" testName="boolean-089"/>
+   <testResult status="pass" testName="boolean-090"/>
+   <testResult status="pass" testName="boolean-091"/>
+   <testResult status="pass" testName="boolean-092"/>
+   <testResult status="pass" testName="boolean-093"/>
+   <testResult status="pass" testName="boolean-094"/>
+   <testResult status="pass" testName="boolean-095"/>
+   <testResult status="pass" testName="boolean-096"/>
+   <testResult status="fail" testName="boolean-097">
+      <outResult>&lt;?xml version="1.0" encoding="UTF-8"?&gt;&lt;out&gt;true&lt;/out&gt;</outResult>
+   </testResult>
+   <testResult status="fail" testName="boolean-098">
+      <outResult>&lt;?xml version="1.0" encoding="UTF-8"?&gt;&lt;out&gt;true&lt;/out&gt;</outResult>
+   </testResult>
+   <testResult status="fail" testName="boolean-099"/>
+   <testResult status="pass" testName="boolean-100"/>
+   <testResult status="pass" testName="boolean-101"/>
+   <testResult status="pass" testName="boolean-102"/>
+   <testResult status="pass" testName="boolean-103"/>
+   <testResult status="pass" testName="boolean-104"/>
+   <testResult status="pass" testName="boolean-105"/>
+   <testResult status="pass" testName="boolean-106"/>
+   <testResult status="pass" testName="boolean-107"/>
+   <testResult status="pass" testName="boolean-108"/>
+   <testResult status="pass" testName="boolean-109"/>
+   <testResult status="pass" testName="boolean-110"/>
+   <testResult status="pass" testName="boolean-111"/>
+   <testResult status="pass" testName="boolean-112"/>
+</testrun>
diff --git a/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_call-template-test-set_results.xml b/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_call-template-test-set_result.xml
similarity index 96%
rename from src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_call-template-test-set_results.xml
rename to src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_call-template-test-set_result.xml
index ca3197a59..31f93107f 100644
--- a/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_call-template-test-set_results.xml
+++ b/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_call-template-test-set_result.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0" encoding="UTF-8"?><testrun name="call-template">
+<?xml version="1.0" encoding="UTF-8"?><testrun dateTime="2025-05-16T06:27:25Z" fail="14" name="call-template" pass="25" skipped="1" statusUnknown="2" totalRun="42">
    <testResult status="fail" testName="call-template-0001">
       <outResult>
          <errTrace>java.lang.NullPointerException</errTrace>
diff --git a/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_castable-test-set_results.xml b/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_castable-test-set_result.xml
similarity index 91%
rename from src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_castable-test-set_results.xml
rename to src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_castable-test-set_result.xml
index 771d6be90..91cdf7778 100644
--- a/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_castable-test-set_results.xml
+++ b/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_castable-test-set_result.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0" encoding="UTF-8"?><testrun name="castable">
+<?xml version="1.0" encoding="UTF-8"?><testrun dateTime="2025-05-16T06:27:39Z" fail="9" name="castable" pass="0" skipped="0" statusUnknown="0" totalRun="9">
    <testResult status="fail" testName="castable-001"/>
    <testResult status="fail" testName="castable-002">
       <outResult>
diff --git a/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_character-map-test-set_results.xml b/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_character-map-test-set_result.xml
similarity index 97%
rename from src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_character-map-test-set_results.xml
rename to src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_character-map-test-set_result.xml
index 3e3b290f3..ebdc97b50 100644
--- a/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_character-map-test-set_results.xml
+++ b/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_character-map-test-set_result.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0" encoding="UTF-8"?><testrun name="character-map">
+<?xml version="1.0" encoding="UTF-8"?><testrun dateTime="2025-05-16T06:27:38Z" fail="18" name="character-map" pass="1" skipped="0" statusUnknown="10" totalRun="29">
    <testResult status="fail" testName="character-map-001">
       <outResult>
          <errTrace>A location path was expected, but the following token was encountered:  [</errTrace>
diff --git a/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_choose-test-set_results.xml b/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_choose-test-set_result.xml
similarity index 89%
rename from src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_choose-test-set_results.xml
rename to src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_choose-test-set_result.xml
index b7af8b594..e0bb635fb 100644
--- a/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_choose-test-set_results.xml
+++ b/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_choose-test-set_result.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0" encoding="UTF-8"?><testrun name="choose">
+<?xml version="1.0" encoding="UTF-8"?><testrun dateTime="2025-05-16T06:27:25Z" fail="3" name="choose" pass="17" skipped="0" statusUnknown="4" totalRun="24">
    <testResult status="pass" testName="choose-0101"/>
    <testResult status="pass" testName="choose-0102"/>
    <testResult status="fail" testName="choose-0103"/>
diff --git a/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_copy-test-set_result.xml b/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_copy-test-set_result.xml
new file mode 100644
index 000000000..1a45ae7d9
--- /dev/null
+++ b/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_copy-test-set_result.xml
@@ -0,0 +1,243 @@
+<?xml version="1.0" encoding="UTF-8"?><testrun dateTime="2025-05-16T06:27:35Z" fail="38" name="copy" pass="16" skipped="0" statusUnknown="6" totalRun="60">
+   <testResult status="fail" testName="copy-0101"/>
+   <testResult status="pass" testName="copy-0102"/>
+   <testResult status="fail" testName="copy-0103"/>
+   <testResult status="fail" testName="copy-0104">
+      <outResult>
+         <errTrace>in is not allowed in this position in the stylesheet</errTrace>
+      </outResult>
+   </testResult>
+   <testResult status="fail" testName="copy-0105">
+      <outResult>
+         <errTrace>Extra illegal tokens: 'processing-instruction', '(', ')|', 'text', '(', ')'</errTrace>
+         <errTrace>Extra illegal tokens: 'processing-instruction', '(', ')|', 'text', '(', ')'</errTrace>
+      </outResult>
+   </testResult>
+   <testResult status="pass" testName="copy-0201"/>
+   <testResult status="pass" testName="copy-0202"/>
+   <testResult status="pass" testName="copy-0203"/>
+   <testResult status="pass" testName="copy-0401"/>
+   <testResult status="pass" testName="copy-0501"/>
+   <testResult status="fail" testName="copy-0601"/>
+   <testResult status="fail" testName="copy-0602"/>
+   <testResult status="fail" testName="copy-0603"/>
+   <testResult status="fail" testName="copy-0604"/>
+   <testResult status="fail" testName="copy-0605"/>
+   <testResult status="fail" testName="copy-0606"/>
+   <testResult status="fail" testName="element-0607">
+      <outResult>&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;output&gt;&lt;with-namespaces&gt;&lt;pink xmlns:rose="http://www.rose.com"&gt;&#13;
+ &lt;green xmlns:grass="http://www.grass.com"&gt;&#13;
+  &lt;red xmlns:blood="http://www.blood.com"&gt;&#13;
+   &lt;blue xmlns:sky="http://www.sky.com"/&gt;&#13;
+  &lt;/red&gt;&#13;
+ &lt;/green&gt;&#13;
+&lt;/pink&gt;&lt;/with-namespaces&gt;&lt;without-namespaces&gt;&lt;pink xmlns:rose="http://www.rose.com"&gt;&#13;
+ &lt;green xmlns:grass="http://www.grass.com"&gt;&#13;
+  &lt;red xmlns:blood="http://www.blood.com"&gt;&#13;
+   &lt;blue xmlns:sky="http://www.sky.com"/&gt;&#13;
+  &lt;/red&gt;&#13;
+ &lt;/green&gt;&#13;
+&lt;/pink&gt;&lt;/without-namespaces&gt;&lt;/output&gt;</outResult>
+   </testResult>
+   <testResult status="fail" testName="element-0608">
+      <outResult>
+         <errTrace>Illegal value: #current used for QNAME attribute: mode</errTrace>
+         <errTrace>Illegal value: #current used for QNAME attribute: mode</errTrace>
+      </outResult>
+   </testResult>
+   <testResult testName="copy-0609"/>
+   <testResult testName="copy-0610"/>
+   <testResult testName="copy-0611"/>
+   <testResult status="fail" testName="copy-0612">
+      <outResult>
+         <errTrace>XPTY0004 : Function call argument at position 1 for function {http://local-functions/}in-scope-namespaces(), doesn't match the declared parameter type element(*).</errTrace>
+         <errTrace>XPTY0004 : Function call argument at position 1 for function {http://local-functions/}in-scope-namespaces(), doesn't match the declared parameter type element(*).</errTrace>
+         <errTrace>XPTY0004 : Function call argument at position 1 for function {http://local-functions/}in-scope-namespaces(), doesn't match the declared parameter type element(*).</errTrace>
+         <errTrace>XPTY0004 : Function call argument at position 1 for function {http://local-functions/}in-scope-namespaces(), doesn't match the declared parameter type element(*).</errTrace>
+         <errTrace>XPTY0004 : Function call argument at position 1 for function {http://local-functions/}in-scope-namespaces(), doesn't match the declared parameter type element(*).</errTrace>
+         <errTrace>XPTY0004 : Function call argument at position 1 for function {http://local-functions/}in-scope-namespaces(), doesn't match the declared parameter type element(*).</errTrace>
+      </outResult>
+   </testResult>
+   <testResult status="fail" testName="copy-0613">
+      <outResult>
+         <errTrace>XPTY0004 : Function call argument at position 1 for function {http://local-functions/}in-scope-namespaces(), doesn't match the declared parameter type element(*).</errTrace>
+         <errTrace>XPTY0004 : Function call argument at position 1 for function {http://local-functions/}in-scope-namespaces(), doesn't match the declared parameter type element(*).</errTrace>
+         <errTrace>XPTY0004 : Function call argument at position 1 for function {http://local-functions/}in-scope-namespaces(), doesn't match the declared parameter type element(*).</errTrace>
+         <errTrace>XPTY0004 : Function call argument at position 1 for function {http://local-functions/}in-scope-namespaces(), doesn't match the declared parameter type element(*).</errTrace>
+         <errTrace>XPTY0004 : Function call argument at position 1 for function {http://local-functions/}in-scope-namespaces(), doesn't match the declared parameter type element(*).</errTrace>
+         <errTrace>XPTY0004 : Function call argument at position 1 for function {http://local-functions/}in-scope-namespaces(), doesn't match the declared parameter type element(*).</errTrace>
+      </outResult>
+   </testResult>
+   <testResult status="fail" testName="copy-0614">
+      <outResult>
+         <errTrace>XPTY0004 : Function call argument at position 1 for function {http://local-functions/}in-scope-namespaces(), doesn't match the declared parameter type element(*).</errTrace>
+         <errTrace>XPTY0004 : Function call argument at position 1 for function {http://local-functions/}in-scope-namespaces(), doesn't match the declared parameter type element(*).</errTrace>
+         <errTrace>XPTY0004 : Function call argument at position 1 for function {http://local-functions/}in-scope-namespaces(), doesn't match the declared parameter type element(*).</errTrace>
+         <errTrace>XPTY0004 : Function call argument at position 1 for function {http://local-functions/}in-scope-namespaces(), doesn't match the declared parameter type element(*).</errTrace>
+         <errTrace>XPTY0004 : Function call argument at position 1 for function {http://local-functions/}in-scope-namespaces(), doesn't match the declared parameter type element(*).</errTrace>
+         <errTrace>XPTY0004 : Function call argument at position 1 for function {http://local-functions/}in-scope-namespaces(), doesn't match the declared parameter type element(*).</errTrace>
+      </outResult>
+   </testResult>
+   <testResult status="fail" testName="copy-0615">
+      <outResult>
+         <errTrace>XPTY0004 : Function call argument at position 1 for function {http://local-functions/}in-scope-namespaces(), doesn't match the declared parameter type element(*).</errTrace>
+         <errTrace>XPTY0004 : Function call argument at position 1 for function {http://local-functions/}in-scope-namespaces(), doesn't match the declared parameter type element(*).</errTrace>
+         <errTrace>XPTY0004 : Function call argument at position 1 for function {http://local-functions/}in-scope-namespaces(), doesn't match the declared parameter type element(*).</errTrace>
+         <errTrace>XPTY0004 : Function call argument at position 1 for function {http://local-functions/}in-scope-namespaces(), doesn't match the declared parameter type element(*).</errTrace>
+         <errTrace>XPTY0004 : Function call argument at position 1 for function {http://local-functions/}in-scope-namespaces(), doesn't match the declared parameter type element(*).</errTrace>
+         <errTrace>XPTY0004 : Function call argument at position 1 for function {http://local-functions/}in-scope-namespaces(), doesn't match the declared parameter type element(*).</errTrace>
+      </outResult>
+   </testResult>
+   <testResult status="fail" testName="copy-0616">
+      <outResult>
+         <errTrace>org.apache.xalan.templates.StylesheetComposed cannot be cast to org.apache.xalan.templates.StylesheetRoot</errTrace>
+         <errTrace>org.apache.xalan.templates.StylesheetComposed cannot be cast to org.apache.xalan.templates.StylesheetRoot</errTrace>
+         <errTrace>org.apache.xalan.templates.StylesheetComposed cannot be cast to org.apache.xalan.templates.StylesheetRoot</errTrace>
+         <errTrace>org.apache.xalan.templates.StylesheetComposed cannot be cast to org.apache.xalan.templates.StylesheetRoot</errTrace>
+         <errTrace>org.apache.xalan.templates.StylesheetComposed cannot be cast to org.apache.xalan.templates.StylesheetRoot</errTrace>
+         <errTrace>org.apache.xalan.templates.StylesheetComposed cannot be cast to org.apache.xalan.templates.StylesheetRoot</errTrace>
+      </outResult>
+   </testResult>
+   <testResult status="fail" testName="copy-0617">
+      <outResult>
+         <errTrace>org.apache.xalan.templates.StylesheetComposed cannot be cast to org.apache.xalan.templates.StylesheetRoot</errTrace>
+         <errTrace>org.apache.xalan.templates.StylesheetComposed cannot be cast to org.apache.xalan.templates.StylesheetRoot</errTrace>
+         <errTrace>org.apache.xalan.templates.StylesheetComposed cannot be cast to org.apache.xalan.templates.StylesheetRoot</errTrace>
+         <errTrace>org.apache.xalan.templates.StylesheetComposed cannot be cast to org.apache.xalan.templates.StylesheetRoot</errTrace>
+         <errTrace>org.apache.xalan.templates.StylesheetComposed cannot be cast to org.apache.xalan.templates.StylesheetRoot</errTrace>
+         <errTrace>org.apache.xalan.templates.StylesheetComposed cannot be cast to org.apache.xalan.templates.StylesheetRoot</errTrace>
+      </outResult>
+   </testResult>
+   <testResult status="fail" testName="copy-0618">
+      <outResult>
+         <errTrace>org.apache.xalan.templates.StylesheetComposed cannot be cast to org.apache.xalan.templates.StylesheetRoot</errTrace>
+         <errTrace>org.apache.xalan.templates.StylesheetComposed cannot be cast to org.apache.xalan.templates.StylesheetRoot</errTrace>
+         <errTrace>org.apache.xalan.templates.StylesheetComposed cannot be cast to org.apache.xalan.templates.StylesheetRoot</errTrace>
+         <errTrace>org.apache.xalan.templates.StylesheetComposed cannot be cast to org.apache.xalan.templates.StylesheetRoot</errTrace>
+         <errTrace>org.apache.xalan.templates.StylesheetComposed cannot be cast to org.apache.xalan.templates.StylesheetRoot</errTrace>
+         <errTrace>org.apache.xalan.templates.StylesheetComposed cannot be cast to org.apache.xalan.templates.StylesheetRoot</errTrace>
+      </outResult>
+   </testResult>
+   <testResult status="fail" testName="copy-0619">
+      <outResult>
+         <errTrace>org.apache.xalan.templates.StylesheetComposed cannot be cast to org.apache.xalan.templates.StylesheetRoot</errTrace>
+         <errTrace>org.apache.xalan.templates.StylesheetComposed cannot be cast to org.apache.xalan.templates.StylesheetRoot</errTrace>
+         <errTrace>org.apache.xalan.templates.StylesheetComposed cannot be cast to org.apache.xalan.templates.StylesheetRoot</errTrace>
+         <errTrace>org.apache.xalan.templates.StylesheetComposed cannot be cast to org.apache.xalan.templates.StylesheetRoot</errTrace>
+         <errTrace>org.apache.xalan.templates.StylesheetComposed cannot be cast to org.apache.xalan.templates.StylesheetRoot</errTrace>
+         <errTrace>org.apache.xalan.templates.StylesheetComposed cannot be cast to org.apache.xalan.templates.StylesheetRoot</errTrace>
+      </outResult>
+   </testResult>
+   <testResult status="fail" testName="copy-0620">
+      <outResult>
+         <errTrace>XPTY0004 : Function call argument at position 1 for function {http://local-functions/}in-scope-namespaces(), doesn't match the declared parameter type element(*).</errTrace>
+         <errTrace>XPTY0004 : Function call argument at position 1 for function {http://local-functions/}in-scope-namespaces(), doesn't match the declared parameter type element(*).</errTrace>
+         <errTrace>XPTY0004 : Function call argument at position 1 for function {http://local-functions/}in-scope-namespaces(), doesn't match the declared parameter type element(*).</errTrace>
+         <errTrace>A node test that matches either NCName:* or QName was expected.</errTrace>
+      </outResult>
+   </testResult>
+   <testResult status="fail" testName="copy-0621">
+      <outResult>
+         <errTrace>XPTY0004 : Function call argument at position 1 for function {http://local-functions/}in-scope-namespaces(), doesn't match the declared parameter type element(*).</errTrace>
+         <errTrace>XPTY0004 : Function call argument at position 1 for function {http://local-functions/}in-scope-namespaces(), doesn't match the declared parameter type element(*).</errTrace>
+         <errTrace>XPTY0004 : Function call argument at position 1 for function {http://local-functions/}in-scope-namespaces(), doesn't match the declared parameter type element(*).</errTrace>
+         <errTrace>A node test that matches either NCName:* or QName was expected.</errTrace>
+      </outResult>
+   </testResult>
+   <testResult status="fail" testName="copy-0622">
+      <outResult>
+         <errTrace>XPTY0004 : Function call argument at position 1 for function {http://local-functions/}in-scope-namespaces(), doesn't match the declared parameter type element(*).</errTrace>
+         <errTrace>XPTY0004 : Function call argument at position 1 for function {http://local-functions/}in-scope-namespaces(), doesn't match the declared parameter type element(*).</errTrace>
+         <errTrace>XPTY0004 : Function call argument at position 1 for function {http://local-functions/}in-scope-namespaces(), doesn't match the declared parameter type element(*).</errTrace>
+         <errTrace>A node test that matches either NCName:* or QName was expected.</errTrace>
+      </outResult>
+   </testResult>
+   <testResult status="fail" testName="copy-0623">
+      <outResult>
+         <errTrace>XPTY0004 : Function call argument at position 1 for function {http://local-functions/}in-scope-namespaces(), doesn't match the declared parameter type element(*).</errTrace>
+         <errTrace>XPTY0004 : Function call argument at position 1 for function {http://local-functions/}in-scope-namespaces(), doesn't match the declared parameter type element(*).</errTrace>
+         <errTrace>XPTY0004 : Function call argument at position 1 for function {http://local-functions/}in-scope-namespaces(), doesn't match the declared parameter type element(*).</errTrace>
+         <errTrace>A node test that matches either NCName:* or QName was expected.</errTrace>
+      </outResult>
+   </testResult>
+   <testResult status="fail" testName="copy-0624">
+      <outResult>
+         <errTrace>A node test that matches either NCName:* or QName was expected.</errTrace>
+         <errTrace>org.apache.xalan.templates.StylesheetComposed cannot be cast to org.apache.xalan.templates.StylesheetRoot</errTrace>
+         <errTrace>org.apache.xalan.templates.StylesheetComposed cannot be cast to org.apache.xalan.templates.StylesheetRoot</errTrace>
+         <errTrace>org.apache.xalan.templates.StylesheetComposed cannot be cast to org.apache.xalan.templates.StylesheetRoot</errTrace>
+      </outResult>
+   </testResult>
+   <testResult status="fail" testName="copy-0625">
+      <outResult>
+         <errTrace>A node test that matches either NCName:* or QName was expected.</errTrace>
+         <errTrace>org.apache.xalan.templates.StylesheetComposed cannot be cast to org.apache.xalan.templates.StylesheetRoot</errTrace>
+         <errTrace>org.apache.xalan.templates.StylesheetComposed cannot be cast to org.apache.xalan.templates.StylesheetRoot</errTrace>
+         <errTrace>org.apache.xalan.templates.StylesheetComposed cannot be cast to org.apache.xalan.templates.StylesheetRoot</errTrace>
+      </outResult>
+   </testResult>
+   <testResult status="fail" testName="copy-0626">
+      <outResult>
+         <errTrace>A node test that matches either NCName:* or QName was expected.</errTrace>
+         <errTrace>org.apache.xalan.templates.StylesheetComposed cannot be cast to org.apache.xalan.templates.StylesheetRoot</errTrace>
+         <errTrace>org.apache.xalan.templates.StylesheetComposed cannot be cast to org.apache.xalan.templates.StylesheetRoot</errTrace>
+         <errTrace>org.apache.xalan.templates.StylesheetComposed cannot be cast to org.apache.xalan.templates.StylesheetRoot</errTrace>
+      </outResult>
+   </testResult>
+   <testResult status="fail" testName="copy-0627">
+      <outResult>
+         <errTrace>A node test that matches either NCName:* or QName was expected.</errTrace>
+         <errTrace>org.apache.xalan.templates.StylesheetComposed cannot be cast to org.apache.xalan.templates.StylesheetRoot</errTrace>
+         <errTrace>org.apache.xalan.templates.StylesheetComposed cannot be cast to org.apache.xalan.templates.StylesheetRoot</errTrace>
+         <errTrace>org.apache.xalan.templates.StylesheetComposed cannot be cast to org.apache.xalan.templates.StylesheetRoot</errTrace>
+      </outResult>
+   </testResult>
+   <testResult status="pass" testName="copy-0701"/>
+   <testResult status="pass" testName="copy-0801"/>
+   <testResult status="pass" testName="copy-0901"/>
+   <testResult status="pass" testName="copy-1001"/>
+   <testResult status="pass" testName="copy-1002"/>
+   <testResult status="pass" testName="copy-1003"/>
+   <testResult status="pass" testName="copy-1101"/>
+   <testResult status="fail" testName="copy-1201"/>
+   <testResult status="pass" testName="copy-1202"/>
+   <testResult status="pass" testName="copy-1203"/>
+   <testResult status="pass" testName="copy-1204"/>
+   <testResult testName="copy-1205"/>
+   <testResult status="fail" testName="copy-1206"/>
+   <testResult status="fail" testName="copy-1207"/>
+   <testResult status="fail" testName="copy-1208"/>
+   <testResult status="fail" testName="copy-1209">
+      <outResult>
+         <errTrace>XTSE0010 : an instruction xsl:document is not known to the XSLT processor.</errTrace>
+      </outResult>
+   </testResult>
+   <testResult status="fail" testName="copy-1210">
+      <outResult>
+         <errTrace>XTSE0010 : an instruction xsl:namespace is not known to the XSLT processor.</errTrace>
+         <errTrace>XTSE0010 : an instruction xsl:on-empty is not known to the XSLT processor.</errTrace>
+      </outResult>
+   </testResult>
+   <testResult testName="copy-1211"/>
+   <testResult status="fail" testName="copy-1212"/>
+   <testResult status="fail" testName="copy-1213">
+      <outResult>
+         <errTrace>XTSE0010 : an instruction xsl:where-populated is not known to the XSLT processor.</errTrace>
+         <errTrace>ERROR! Unknown op code: 0</errTrace>
+         <errTrace>java.lang.ArrayIndexOutOfBoundsException: -1</errTrace>
+      </outResult>
+   </testResult>
+   <testResult status="fail" testName="copy-1214">
+      <outResult>
+         <errTrace>XTTE0570 : The xs:string value '' cannot be cast to a type node().</errTrace>
+      </outResult>
+   </testResult>
+   <testResult status="fail" testName="copy-1215">
+      <outResult>
+         <errTrace>XTTE0570 : The xs:string value 'Boo!' cannot be cast to a type node().</errTrace>
+         <errTrace>ERROR! Unknown op code: 0</errTrace>
+         <errTrace>java.lang.ArrayIndexOutOfBoundsException: -1</errTrace>
+      </outResult>
+   </testResult>
+   <testResult testName="copy-1216"/>
+</testrun>
diff --git a/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_expression-test-set_results.xml b/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_expression-test-set_result.xml
similarity index 78%
rename from src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_expression-test-set_results.xml
rename to src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_expression-test-set_result.xml
index 646d8041b..12531d03d 100644
--- a/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_expression-test-set_results.xml
+++ b/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_expression-test-set_result.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0" encoding="UTF-8"?><testrun name="expression">
+<?xml version="1.0" encoding="UTF-8"?><testrun dateTime="2025-05-16T06:27:39Z" fail="0" name="expression" pass="9" skipped="0" statusUnknown="1" totalRun="10">
    <testResult status="pass" testName="expression-0101"/>
    <testResult status="pass" testName="expression-0301"/>
    <testResult status="pass" testName="expression-0302"/>
diff --git a/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_for-each-group-test-set_results.xml b/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_for-each-group-test-set_result.xml
similarity index 98%
rename from src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_for-each-group-test-set_results.xml
rename to src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_for-each-group-test-set_result.xml
index 4c02acfac..76129c253 100644
--- a/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_for-each-group-test-set_results.xml
+++ b/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_for-each-group-test-set_result.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0" encoding="UTF-8"?><testrun name="for-each-group">
+<?xml version="1.0" encoding="UTF-8"?><testrun dateTime="2025-05-16T06:27:17Z" fail="34" name="for-each-group" pass="37" skipped="4" statusUnknown="2" totalRun="77">
    <testResult status="pass" testName="for-each-group-001"/>
    <testResult status="skipped" xsltVersion="2.0 only"/>
    <testResult status="fail" testName="for-each-group-002">
diff --git a/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_for-test-set_results.xml b/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_for-test-set_result.xml
similarity index 56%
rename from src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_for-test-set_results.xml
rename to src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_for-test-set_result.xml
index 9bbe97649..34be6a624 100644
--- a/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_for-test-set_results.xml
+++ b/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_for-test-set_result.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0" encoding="UTF-8"?><testrun name="for">
+<?xml version="1.0" encoding="UTF-8"?><testrun dateTime="2025-05-16T06:27:40Z" fail="2" name="for" pass="1" skipped="0" statusUnknown="1" totalRun="4">
    <testResult status="pass" testName="for-001"/>
    <testResult status="fail" testName="for-002"/>
    <testResult status="fail" testName="for-003"/>
diff --git a/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_function-test-set_results.xml b/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_function-test-set_result.xml
similarity index 98%
rename from src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_function-test-set_results.xml
rename to src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_function-test-set_result.xml
index 1b53cd65b..c24f958f8 100644
--- a/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_function-test-set_results.xml
+++ b/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_function-test-set_result.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0" encoding="UTF-8"?><testrun name="function">
+<?xml version="1.0" encoding="UTF-8"?><testrun dateTime="2025-05-16T06:27:38Z" fail="28" name="function" pass="20" skipped="4" statusUnknown="18" totalRun="70">
    <testResult status="fail" testName="function-0001">
       <outResult>
          <errTrace>Could not find function: {http://www.w3.org/2005/xpath-functions}format-integer()</errTrace>
diff --git a/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_math-test-set_results.xml b/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_math-test-set_result.xml
similarity index 98%
rename from src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_math-test-set_results.xml
rename to src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_math-test-set_result.xml
index 1eff0ac69..d10660ff9 100644
--- a/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_math-test-set_results.xml
+++ b/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_math-test-set_result.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0" encoding="UTF-8"?><testrun name="math">
+<?xml version="1.0" encoding="UTF-8"?><testrun dateTime="2025-05-16T06:27:47Z" fail="34" name="math" pass="25" skipped="0" statusUnknown="89" totalRun="148">
    <testResult testName="math-0101"/>
    <testResult status="fail" testName="math-0102">
       <outResult>
diff --git a/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_node-test-set_result.xml b/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_node-test-set_result.xml
new file mode 100644
index 000000000..981c33b22
--- /dev/null
+++ b/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_node-test-set_result.xml
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="UTF-8"?><testrun dateTime="2025-05-16T06:27:49Z" fail="17" name="node" pass="15" skipped="0" statusUnknown="0" totalRun="32">
+   <testResult status="pass" testName="node-0101"/>
+   <testResult status="pass" testName="node-0201"/>
+   <testResult status="fail" testName="node-0301">
+      <outResult>
+         <errTrace>ERROR! Unknown op code: 0</errTrace>
+         <errTrace>java.lang.ArrayIndexOutOfBoundsException</errTrace>
+      </outResult>
+   </testResult>
+   <testResult status="pass" testName="node-0401"/>
+   <testResult status="pass" testName="node-0501"/>
+   <testResult status="pass" testName="node-0601"/>
+   <testResult status="pass" testName="node-0701"/>
+   <testResult status="pass" testName="node-0801"/>
+   <testResult status="pass" testName="node-0901"/>
+   <testResult status="fail" testName="node-1001">
+      <outResult>
+         <errTrace>ERROR! Unknown op code: 0</errTrace>
+         <errTrace>java.lang.ArrayIndexOutOfBoundsException</errTrace>
+      </outResult>
+   </testResult>
+   <testResult status="fail" testName="node-1101"/>
+   <testResult status="fail" testName="node-1102"/>
+   <testResult status="fail" testName="node-1201">
+      <outResult>
+         <errTrace>ERROR! Unknown op code: 0</errTrace>
+         <errTrace>java.lang.ArrayIndexOutOfBoundsException</errTrace>
+      </outResult>
+   </testResult>
+   <testResult status="pass" testName="node-1301"/>
+   <testResult status="fail" testName="node-1401">
+      <outResult>
+         <errTrace>ERROR! Unknown op code: 0</errTrace>
+         <errTrace>java.lang.ArrayIndexOutOfBoundsException</errTrace>
+      </outResult>
+   </testResult>
+   <testResult status="pass" testName="node-1501"/>
+   <testResult status="pass" testName="node-1502"/>
+   <testResult status="fail" testName="node-1601"/>
+   <testResult status="fail" testName="node-1701"/>
+   <testResult status="pass" testName="node-1801"/>
+   <testResult status="pass" testName="node-1802"/>
+   <testResult status="pass" testName="node-1901"/>
+   <testResult status="fail" testName="node-1902"/>
+   <testResult status="fail" testName="node-1903"/>
+   <testResult status="fail" testName="node-1904"/>
+   <testResult status="pass" testName="node-1905"/>
+   <testResult status="fail" testName="node-1906"/>
+   <testResult status="fail" testName="node-2001"/>
+   <testResult status="fail" testName="node-2002"/>
+   <testResult status="fail" testName="node-2003"/>
+   <testResult status="fail" testName="node-2004"/>
+   <testResult status="fail" testName="node-2005"/>
+</testrun>
diff --git a/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_nodetest-test-set_result.xml b/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_nodetest-test-set_result.xml
new file mode 100644
index 000000000..03ee2f254
--- /dev/null
+++ b/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_nodetest-test-set_result.xml
@@ -0,0 +1,293 @@
+<?xml version="1.0" encoding="UTF-8"?><testrun dateTime="2025-05-16T06:27:49Z" fail="36" name="nodetest" pass="2" skipped="0" statusUnknown="0" totalRun="38">
+   <testResult status="pass" testName="nodetest-001"/>
+   <testResult status="pass" testName="nodetest-002"/>
+   <testResult status="fail" testName="nodetest-003">
+      <outResult>
+         <errTrace>ERROR! Unknown op code: 0</errTrace>
+         <errTrace>java.lang.ArrayIndexOutOfBoundsException: -1</errTrace>
+      </outResult>
+   </testResult>
+   <testResult status="fail" testName="nodetest-004">
+      <outResult>
+         <errTrace>Failed calling setSchemaLocation method</errTrace>
+         <errTrace>Could not find function: {http://www.w3.org/2005/xpath-functions}schema-element()</errTrace>
+         <errTrace>function token not found.</errTrace>
+         <errTrace>java.lang.NullPointerException</errTrace>
+      </outResult>
+   </testResult>
+   <testResult status="fail" testName="nodetest-005">
+      <outResult>
+         <errTrace>Failed calling setSchemaLocation method</errTrace>
+         <errTrace>Could not find function: {http://www.w3.org/2005/xpath-functions}schema-attribute()</errTrace>
+         <errTrace>function token not found.</errTrace>
+         <errTrace>java.lang.NullPointerException</errTrace>
+      </outResult>
+   </testResult>
+   <testResult status="fail" testName="nodetest-006">
+      <outResult>
+         <errTrace>Failed calling setNamespace method</errTrace>
+         <errTrace>Failed calling setSchemaLocation method</errTrace>
+         <errTrace>Could not find function: {http://www.w3.org/2005/xpath-functions}schema-element()</errTrace>
+         <errTrace>function token not found.</errTrace>
+         <errTrace>java.lang.NullPointerException</errTrace>
+      </outResult>
+   </testResult>
+   <testResult status="fail" testName="nodetest-007">
+      <outResult>
+         <errTrace>Failed calling setNamespace method</errTrace>
+         <errTrace>Failed calling setSchemaLocation method</errTrace>
+         <errTrace>Could not find function: {http://www.w3.org/2005/xpath-functions}schema-element()</errTrace>
+         <errTrace>function token not found.</errTrace>
+         <errTrace>java.lang.NullPointerException</errTrace>
+      </outResult>
+   </testResult>
+   <testResult status="fail" testName="nodetest-008">
+      <outResult>
+         <errTrace>Failed calling setNamespace method</errTrace>
+         <errTrace>Failed calling setSchemaLocation method</errTrace>
+         <errTrace>Could not find function: {http://www.w3.org/2005/xpath-functions}schema-element()</errTrace>
+         <errTrace>function token not found.</errTrace>
+         <errTrace>java.lang.NullPointerException</errTrace>
+      </outResult>
+   </testResult>
+   <testResult status="fail" testName="nodetest-009">
+      <outResult>
+         <errTrace>"input-type-annotations" attribute is not allowed on the t:transform element!</errTrace>
+         <errTrace>Failed calling setNamespace method</errTrace>
+         <errTrace>Failed calling setSchemaLocation method</errTrace>
+         <errTrace>Could not find function: {http://www.w3.org/2005/xpath-functions}schema-element()</errTrace>
+         <errTrace>function token not found.</errTrace>
+         <errTrace>java.lang.NullPointerException</errTrace>
+      </outResult>
+   </testResult>
+   <testResult status="fail" testName="nodetest-010">
+      <outResult>
+         <errTrace>Failed calling setNamespace method</errTrace>
+         <errTrace>Failed calling setSchemaLocation method</errTrace>
+         <errTrace>Could not find function: {http://www.w3.org/2005/xpath-functions}schema-element()</errTrace>
+         <errTrace>function token not found.</errTrace>
+         <errTrace>java.lang.NullPointerException</errTrace>
+      </outResult>
+   </testResult>
+   <testResult status="fail" testName="nodetest-011"/>
+   <testResult status="fail" testName="nodetest-012">
+      <outResult>
+         <errTrace>Failed calling setNamespace method</errTrace>
+         <errTrace>Failed calling setSchemaLocation method</errTrace>
+         <errTrace>Could not find function: {http://www.w3.org/2005/xpath-functions}schema-element()</errTrace>
+         <errTrace>function token not found.</errTrace>
+         <errTrace>java.lang.NullPointerException</errTrace>
+      </outResult>
+   </testResult>
+   <testResult status="fail" testName="nodetest-013">
+      <outResult>
+         <errTrace>Failed calling setNamespace method</errTrace>
+         <errTrace>Failed calling setSchemaLocation method</errTrace>
+         <errTrace>Could not find function: {http://www.w3.org/2005/xpath-functions}schema-element()</errTrace>
+         <errTrace>function token not found.</errTrace>
+         <errTrace>java.lang.NullPointerException</errTrace>
+      </outResult>
+   </testResult>
+   <testResult status="fail" testName="nodetest-014"/>
+   <testResult status="fail" testName="nodetest-015">
+      <outResult>
+         <errTrace>Failed calling setNamespace method</errTrace>
+         <errTrace>Failed calling setSchemaLocation method</errTrace>
+         <errTrace>Could not find function: {http://www.w3.org/2005/xpath-functions}schema-element()</errTrace>
+         <errTrace>Extra illegal tokens: 'schema-element', '(', 'http://www.schemanodetest.example.com/ns/various', ':', 'complexMixedUserElem', ')', '/', '@', 'age'</errTrace>
+         <errTrace>function token not found.</errTrace>
+         <errTrace>java.lang.NullPointerException</errTrace>
+      </outResult>
+   </testResult>
+   <testResult status="fail" testName="nodetest-016"/>
+   <testResult status="fail" testName="nodetest-017">
+      <outResult>
+         <errTrace>Failed calling setNamespace method</errTrace>
+         <errTrace>Failed calling setSchemaLocation method</errTrace>
+         <errTrace>Could not find function: {http://www.w3.org/2005/xpath-functions}schema-element()</errTrace>
+         <errTrace>function token not found.</errTrace>
+         <errTrace>java.lang.NullPointerException</errTrace>
+      </outResult>
+   </testResult>
+   <testResult status="fail" testName="nodetest-018">
+      <outResult>
+         <errTrace>Failed calling setNamespace method</errTrace>
+         <errTrace>Failed calling setSchemaLocation method</errTrace>
+         <errTrace>Could not find function: {http://www.w3.org/2005/xpath-functions}schema-element()</errTrace>
+         <errTrace>function token not found.</errTrace>
+         <errTrace>java.lang.NullPointerException</errTrace>
+      </outResult>
+   </testResult>
+   <testResult status="fail" testName="nodetest-019">
+      <outResult>
+         <errTrace>Failed calling setNamespace method</errTrace>
+         <errTrace>Failed calling setSchemaLocation method</errTrace>
+         <errTrace>Could not find function: {http://www.w3.org/2005/xpath-functions}schema-element()</errTrace>
+         <errTrace>function token not found.</errTrace>
+         <errTrace>java.lang.NullPointerException</errTrace>
+      </outResult>
+   </testResult>
+   <testResult status="fail" testName="nodetest-020">
+      <outResult>
+         <errTrace>Failed calling setNamespace method</errTrace>
+         <errTrace>Failed calling setSchemaLocation method</errTrace>
+         <errTrace>Could not find function: {http://www.w3.org/2005/xpath-functions}schema-element()</errTrace>
+         <errTrace>function token not found.</errTrace>
+         <errTrace>java.lang.NullPointerException</errTrace>
+      </outResult>
+   </testResult>
+   <testResult status="fail" testName="nodetest-021">
+      <outResult>
+         <errTrace>Failed calling setNamespace method</errTrace>
+         <errTrace>Failed calling setSchemaLocation method</errTrace>
+         <errTrace>Could not find function: {http://www.w3.org/2005/xpath-functions}schema-element()</errTrace>
+         <errTrace>function token not found.</errTrace>
+         <errTrace>java.lang.NullPointerException</errTrace>
+      </outResult>
+   </testResult>
+   <testResult status="fail" testName="nodetest-022">
+      <outResult>
+         <errTrace>Failed calling setNamespace method</errTrace>
+         <errTrace>Failed calling setSchemaLocation method</errTrace>
+         <errTrace>Could not find function: {http://www.w3.org/2005/xpath-functions}schema-element()</errTrace>
+         <errTrace>Extra illegal tokens: 'schema-element', '(', 'http://www.schemanodetest.example.com/ns/subgroup', ':', 'book', ')', '/', 'http://www.schemanodetest.example.com/ns/subgroup', ':', 'price'</errTrace>
+         <errTrace>function token not found.</errTrace>
+         <errTrace>java.lang.NullPointerException</errTrace>
+      </outResult>
+   </testResult>
+   <testResult status="fail" testName="nodetest-023">
+      <outResult>
+         <errTrace>Failed calling setNamespace method</errTrace>
+         <errTrace>Failed calling setSchemaLocation method</errTrace>
+         <errTrace>Could not find function: {http://www.w3.org/2005/xpath-functions}schema-attribute()</errTrace>
+         <errTrace>function token not found.</errTrace>
+         <errTrace>java.lang.NullPointerException</errTrace>
+      </outResult>
+   </testResult>
+   <testResult status="fail" testName="nodetest-024">
+      <outResult>
+         <errTrace>Failed calling setNamespace method</errTrace>
+         <errTrace>Failed calling setSchemaLocation method</errTrace>
+         <errTrace>Could not find function: {http://www.w3.org/2005/xpath-functions}schema-attribute()</errTrace>
+         <errTrace>function token not found.</errTrace>
+         <errTrace>java.lang.NullPointerException</errTrace>
+      </outResult>
+   </testResult>
+   <testResult status="fail" testName="nodetest-025">
+      <outResult>
+         <errTrace>"input-type-annotations" attribute is not allowed on the t:transform element!</errTrace>
+         <errTrace>Failed calling setNamespace method</errTrace>
+         <errTrace>Failed calling setSchemaLocation method</errTrace>
+         <errTrace>Could not find function: {http://www.w3.org/2005/xpath-functions}schema-attribute()</errTrace>
+         <errTrace>function token not found.</errTrace>
+         <errTrace>java.lang.NullPointerException</errTrace>
+      </outResult>
+   </testResult>
+   <testResult status="fail" testName="nodetest-026">
+      <outResult>
+         <errTrace>Failed calling setNamespace method</errTrace>
+         <errTrace>Failed calling setSchemaLocation method</errTrace>
+         <errTrace>Could not find function: {http://www.w3.org/2005/xpath-functions}schema-attribute()</errTrace>
+         <errTrace>function token not found.</errTrace>
+         <errTrace>java.lang.NullPointerException</errTrace>
+      </outResult>
+   </testResult>
+   <testResult status="fail" testName="nodetest-027">
+      <outResult>
+         <errTrace>Failed calling setNamespace method</errTrace>
+         <errTrace>Failed calling setSchemaLocation method</errTrace>
+         <errTrace>Could not find function: {http://www.w3.org/2005/xpath-functions}schema-attribute()</errTrace>
+         <errTrace>Extra illegal tokens: ',', 'schema-attribute', '(', 'http://www.schemanodetest.example.com/ns/various', ':', 'listParts', ')'</errTrace>
+         <errTrace>function token not found.</errTrace>
+         <errTrace>java.lang.NullPointerException</errTrace>
+      </outResult>
+   </testResult>
+   <testResult status="fail" testName="nodetest-028">
+      <outResult>
+         <errTrace>Failed calling setNamespace method</errTrace>
+         <errTrace>Failed calling setSchemaLocation method</errTrace>
+         <errTrace>Could not find function: {http://www.w3.org/2005/xpath-functions}schema-attribute()</errTrace>
+         <errTrace>function token not found.</errTrace>
+         <errTrace>java.lang.NullPointerException</errTrace>
+      </outResult>
+   </testResult>
+   <testResult status="fail" testName="nodetest-029">
+      <outResult>
+         <errTrace>Failed calling setNamespace method</errTrace>
+         <errTrace>Failed calling setSchemaLocation method</errTrace>
+         <errTrace>Could not find function: {http://www.w3.org/2005/xpath-functions}schema-attribute()</errTrace>
+         <errTrace>Prefix must resolve to a namespace: http</errTrace>
+         <errTrace>Prefix must resolve to a namespace: various</errTrace>
+         <errTrace>Could not find function: {http://www.w3.org/2005/xpath-functions}schema-attribute()</errTrace>
+         <errTrace>A location step was expected following the '/' or '//' token.</errTrace>
+         <errTrace>function token not found.</errTrace>
+         <errTrace>java.lang.NullPointerException</errTrace>
+      </outResult>
+   </testResult>
+   <testResult status="fail" testName="nodetest-030"/>
+   <testResult status="fail" testName="nodetest-031">
+      <outResult>
+         <errTrace>Failed calling setNamespace method</errTrace>
+         <errTrace>Failed calling setSchemaLocation method</errTrace>
+         <errTrace>Could not find function: {http://www.w3.org/2005/xpath-functions}schema-attribute()</errTrace>
+         <errTrace>Extra illegal tokens: 'schema-attribute', '(', 'http://www.schemanodetest.example.com/ns/various', ':', 'count', ')', '/', 'self', '::', 'node', '(', ')', '/', 'name', '(', ')'</errTrace>
+         <errTrace>function token not found.</errTrace>
+         <errTrace>java.lang.NullPointerException</errTrace>
+      </outResult>
+   </testResult>
+   <testResult status="fail" testName="nodetest-032"/>
+   <testResult status="fail" testName="nodetest-033">
+      <outResult>
+         <errTrace>Failed calling setNamespace method</errTrace>
+         <errTrace>Failed calling setSchemaLocation method</errTrace>
+         <errTrace>Could not find function: {http://www.w3.org/2005/xpath-functions}schema-attribute()</errTrace>
+         <errTrace>function token not found.</errTrace>
+         <errTrace>java.lang.NullPointerException</errTrace>
+      </outResult>
+   </testResult>
+   <testResult status="fail" testName="nodetest-034">
+      <outResult>
+         <errTrace>Failed calling setNamespace method</errTrace>
+         <errTrace>Failed calling setSchemaLocation method</errTrace>
+         <errTrace>Could not find function: {http://www.w3.org/2005/xpath-functions}schema-attribute()</errTrace>
+         <errTrace>function token not found.</errTrace>
+         <errTrace>java.lang.NullPointerException</errTrace>
+      </outResult>
+   </testResult>
+   <testResult status="fail" testName="nodetest-035">
+      <outResult>
+         <errTrace>Failed calling setNamespace method</errTrace>
+         <errTrace>Failed calling setSchemaLocation method</errTrace>
+         <errTrace>Could not find function: {http://www.w3.org/2005/xpath-functions}schema-attribute()</errTrace>
+         <errTrace>function token not found.</errTrace>
+         <errTrace>java.lang.NullPointerException</errTrace>
+      </outResult>
+   </testResult>
+   <testResult status="fail" testName="nodetest-036">
+      <outResult>
+         <errTrace>Failed calling setNamespace method</errTrace>
+         <errTrace>Failed calling setSchemaLocation method</errTrace>
+         <errTrace>Could not find function: {http://www.w3.org/2005/xpath-functions}schema-element()</errTrace>
+         <errTrace>function token not found.</errTrace>
+         <errTrace>java.lang.NullPointerException</errTrace>
+      </outResult>
+   </testResult>
+   <testResult status="fail" testName="nodetest-037">
+      <outResult>
+         <errTrace>Failed calling setNamespace method</errTrace>
+         <errTrace>Failed calling setSchemaLocation method</errTrace>
+         <errTrace>Could not find function: {http://www.w3.org/2005/xpath-functions}schema-attribute()</errTrace>
+         <errTrace>function token not found.</errTrace>
+         <errTrace>java.lang.NullPointerException</errTrace>
+      </outResult>
+   </testResult>
+   <testResult status="fail" testName="nodetest-038">
+      <outResult>
+         <errTrace>Failed calling setNamespace method</errTrace>
+         <errTrace>Failed calling setSchemaLocation method</errTrace>
+         <errTrace>Could not find function: {http://www.w3.org/2005/xpath-functions}element()</errTrace>
+         <errTrace>function token not found.</errTrace>
+         <errTrace>java.lang.NullPointerException</errTrace>
+      </outResult>
+   </testResult>
+</testrun>
diff --git a/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_path-test-set_result.xml b/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_path-test-set_result.xml
new file mode 100644
index 000000000..f1f25cdc9
--- /dev/null
+++ b/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_path-test-set_result.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?><testrun dateTime="2025-05-16T06:27:49Z" fail="3" name="path" pass="7" skipped="0" statusUnknown="0" totalRun="10">
+   <testResult status="pass" testName="path-001"/>
+   <testResult status="pass" testName="path-002"/>
+   <testResult status="pass" testName="path-003"/>
+   <testResult status="pass" testName="path-004"/>
+   <testResult status="pass" testName="path-005"/>
+   <testResult status="pass" testName="path-006"/>
+   <testResult status="fail" testName="path-007"/>
+   <testResult status="fail" testName="path-008"/>
+   <testResult status="pass" testName="path-009"/>
+   <testResult status="fail" testName="path-010">
+      <outResult>
+         <errTrace>java.lang.NullPointerException</errTrace>
+      </outResult>
+   </testResult>
+</testrun>
diff --git a/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_predicate-test-set_result.xml b/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_predicate-test-set_result.xml
new file mode 100644
index 000000000..08314d68d
--- /dev/null
+++ b/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_predicate-test-set_result.xml
@@ -0,0 +1,67 @@
+<?xml version="1.0" encoding="UTF-8"?><testrun dateTime="2025-05-16T06:27:49Z" fail="7" name="predicate" pass="49" skipped="0" statusUnknown="1" totalRun="57">
+   <testResult status="fail" testName="predicate-001"/>
+   <testResult status="fail" testName="predicate-002"/>
+   <testResult status="fail" testName="predicate-003"/>
+   <testResult status="pass" testName="predicate-004"/>
+   <testResult status="pass" testName="predicate-005"/>
+   <testResult status="pass" testName="predicate-006"/>
+   <testResult status="pass" testName="predicate-007"/>
+   <testResult status="pass" testName="predicate-008"/>
+   <testResult status="pass" testName="predicate-009"/>
+   <testResult status="pass" testName="predicate-010"/>
+   <testResult status="pass" testName="predicate-011"/>
+   <testResult status="pass" testName="predicate-012"/>
+   <testResult status="pass" testName="predicate-013"/>
+   <testResult status="pass" testName="predicate-014"/>
+   <testResult status="pass" testName="predicate-015"/>
+   <testResult status="pass" testName="predicate-016"/>
+   <testResult status="pass" testName="predicate-017"/>
+   <testResult status="pass" testName="predicate-018"/>
+   <testResult status="pass" testName="predicate-019"/>
+   <testResult status="pass" testName="predicate-020"/>
+   <testResult status="pass" testName="predicate-021"/>
+   <testResult status="pass" testName="predicate-022"/>
+   <testResult status="pass" testName="predicate-023"/>
+   <testResult status="pass" testName="predicate-024"/>
+   <testResult status="pass" testName="predicate-025"/>
+   <testResult status="pass" testName="predicate-026"/>
+   <testResult status="pass" testName="predicate-027"/>
+   <testResult status="pass" testName="predicate-028"/>
+   <testResult status="pass" testName="predicate-029"/>
+   <testResult status="pass" testName="predicate-030"/>
+   <testResult status="pass" testName="predicate-031"/>
+   <testResult status="pass" testName="predicate-032"/>
+   <testResult status="pass" testName="predicate-033"/>
+   <testResult status="pass" testName="predicate-034"/>
+   <testResult status="pass" testName="predicate-035"/>
+   <testResult status="pass" testName="predicate-036"/>
+   <testResult status="pass" testName="predicate-037"/>
+   <testResult status="fail" testName="predicate-038"/>
+   <testResult status="fail" testName="predicate-039"/>
+   <testResult status="pass" testName="predicate-040"/>
+   <testResult status="pass" testName="predicate-041"/>
+   <testResult status="pass" testName="predicate-042"/>
+   <testResult status="pass" testName="predicate-043"/>
+   <testResult status="pass" testName="predicate-044"/>
+   <testResult status="pass" testName="predicate-045"/>
+   <testResult status="pass" testName="predicate-046"/>
+   <testResult status="pass" testName="predicate-047"/>
+   <testResult status="pass" testName="predicate-048"/>
+   <testResult status="pass" testName="predicate-049"/>
+   <testResult status="pass" testName="predicate-050"/>
+   <testResult status="pass" testName="predicate-051"/>
+   <testResult status="pass" testName="predicate-052"/>
+   <testResult status="pass" testName="predicate-053"/>
+   <testResult status="pass" testName="predicate-054"/>
+   <testResult testName="predicate-055"/>
+   <testResult status="fail" testName="predicate-056">
+      <outResult>
+         <errTrace>org.xml.sax.SAXException: Can not resolve namespace prefix: #all</errTrace>
+      </outResult>
+   </testResult>
+   <testResult status="fail" testName="predicate-057">
+      <outResult>
+         <errTrace>org.xml.sax.SAXException: Can not resolve namespace prefix: #all</errTrace>
+      </outResult>
+   </testResult>
+</testrun>
diff --git a/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_string-test-set_result.xml b/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_string-test-set_result.xml
new file mode 100644
index 000000000..18585c5bf
--- /dev/null
+++ b/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_string-test-set_result.xml
@@ -0,0 +1,144 @@
+<?xml version="1.0" encoding="UTF-8"?><testrun dateTime="2025-05-16T06:27:50Z" fail="6" name="string" pass="128" skipped="0" statusUnknown="2" totalRun="136">
+   <testResult status="pass" testName="string-001"/>
+   <testResult status="pass" testName="string-002"/>
+   <testResult status="pass" testName="string-003"/>
+   <testResult status="pass" testName="string-004"/>
+   <testResult status="pass" testName="string-005"/>
+   <testResult status="pass" testName="string-006"/>
+   <testResult status="pass" testName="string-007"/>
+   <testResult status="pass" testName="string-008"/>
+   <testResult status="pass" testName="string-009"/>
+   <testResult status="pass" testName="string-010"/>
+   <testResult status="pass" testName="string-011"/>
+   <testResult status="pass" testName="string-012"/>
+   <testResult status="pass" testName="string-013"/>
+   <testResult status="pass" testName="string-014"/>
+   <testResult status="pass" testName="string-015"/>
+   <testResult status="pass" testName="string-016"/>
+   <testResult status="pass" testName="string-017"/>
+   <testResult status="pass" testName="string-018"/>
+   <testResult status="pass" testName="string-019"/>
+   <testResult status="pass" testName="string-020"/>
+   <testResult status="pass" testName="string-021"/>
+   <testResult status="pass" testName="string-022"/>
+   <testResult status="pass" testName="string-023"/>
+   <testResult status="pass" testName="string-024"/>
+   <testResult status="pass" testName="string-025"/>
+   <testResult status="pass" testName="string-026"/>
+   <testResult status="pass" testName="string-027"/>
+   <testResult status="pass" testName="string-028"/>
+   <testResult status="pass" testName="string-029"/>
+   <testResult status="pass" testName="string-030"/>
+   <testResult status="pass" testName="string-031"/>
+   <testResult status="pass" testName="string-032"/>
+   <testResult status="pass" testName="string-033"/>
+   <testResult status="pass" testName="string-034"/>
+   <testResult status="pass" testName="string-035"/>
+   <testResult status="pass" testName="string-036"/>
+   <testResult status="pass" testName="string-037"/>
+   <testResult status="pass" testName="string-038"/>
+   <testResult status="pass" testName="string-039"/>
+   <testResult status="pass" testName="string-040"/>
+   <testResult status="pass" testName="string-041"/>
+   <testResult status="pass" testName="string-042"/>
+   <testResult status="pass" testName="string-043"/>
+   <testResult status="pass" testName="string-044"/>
+   <testResult status="pass" testName="string-045"/>
+   <testResult status="pass" testName="string-046"/>
+   <testResult status="pass" testName="string-047"/>
+   <testResult status="pass" testName="string-048"/>
+   <testResult status="pass" testName="string-049"/>
+   <testResult status="pass" testName="string-050"/>
+   <testResult status="pass" testName="string-051"/>
+   <testResult status="pass" testName="string-052"/>
+   <testResult status="pass" testName="string-053"/>
+   <testResult status="pass" testName="string-054"/>
+   <testResult status="pass" testName="string-055"/>
+   <testResult status="pass" testName="string-056"/>
+   <testResult status="pass" testName="string-057"/>
+   <testResult status="pass" testName="string-058"/>
+   <testResult status="pass" testName="string-059"/>
+   <testResult status="pass" testName="string-060"/>
+   <testResult status="pass" testName="string-061"/>
+   <testResult status="pass" testName="string-062"/>
+   <testResult status="pass" testName="string-063"/>
+   <testResult status="pass" testName="string-064"/>
+   <testResult status="pass" testName="string-065"/>
+   <testResult status="pass" testName="string-066"/>
+   <testResult status="pass" testName="string-067"/>
+   <testResult status="pass" testName="string-068"/>
+   <testResult status="pass" testName="string-069"/>
+   <testResult status="pass" testName="string-070"/>
+   <testResult status="pass" testName="string-071"/>
+   <testResult status="pass" testName="string-072"/>
+   <testResult status="pass" testName="string-073"/>
+   <testResult status="pass" testName="string-074"/>
+   <testResult status="pass" testName="string-075"/>
+   <testResult status="pass" testName="string-076"/>
+   <testResult status="pass" testName="string-077"/>
+   <testResult status="pass" testName="string-078"/>
+   <testResult status="pass" testName="string-079"/>
+   <testResult status="pass" testName="string-080"/>
+   <testResult status="pass" testName="string-081"/>
+   <testResult status="pass" testName="string-082"/>
+   <testResult status="pass" testName="string-083"/>
+   <testResult status="pass" testName="string-084"/>
+   <testResult status="pass" testName="string-085"/>
+   <testResult status="pass" testName="string-086"/>
+   <testResult status="pass" testName="string-087"/>
+   <testResult status="pass" testName="string-088"/>
+   <testResult status="pass" testName="string-089"/>
+   <testResult status="pass" testName="string-090"/>
+   <testResult status="pass" testName="string-091"/>
+   <testResult status="pass" testName="string-092"/>
+   <testResult status="pass" testName="string-093"/>
+   <testResult status="fail" testName="string-094">
+      <outResult/>
+   </testResult>
+   <testResult status="fail" testName="string-095"/>
+   <testResult status="pass" testName="string-096"/>
+   <testResult status="pass" testName="string-097"/>
+   <testResult status="pass" testName="string-098"/>
+   <testResult status="pass" testName="string-099"/>
+   <testResult status="pass" testName="string-100"/>
+   <testResult status="pass" testName="string-101"/>
+   <testResult status="pass" testName="string-102"/>
+   <testResult status="pass" testName="string-103"/>
+   <testResult status="pass" testName="string-104"/>
+   <testResult status="pass" testName="string-105"/>
+   <testResult status="pass" testName="string-106"/>
+   <testResult status="pass" testName="string-107"/>
+   <testResult status="pass" testName="string-108"/>
+   <testResult status="pass" testName="string-109"/>
+   <testResult status="pass" testName="string-110"/>
+   <testResult status="pass" testName="string-111"/>
+   <testResult status="pass" testName="string-112"/>
+   <testResult status="pass" testName="string-113"/>
+   <testResult status="pass" testName="string-114"/>
+   <testResult status="pass" testName="string-115"/>
+   <testResult status="pass" testName="string-116"/>
+   <testResult status="pass" testName="string-117"/>
+   <testResult status="pass" testName="string-118"/>
+   <testResult status="pass" testName="string-119"/>
+   <testResult status="pass" testName="string-120"/>
+   <testResult status="pass" testName="string-121"/>
+   <testResult status="fail" testName="string-122"/>
+   <testResult status="fail" testName="string-123"/>
+   <testResult status="pass" testName="string-124"/>
+   <testResult status="pass" testName="string-125"/>
+   <testResult status="pass" testName="string-126"/>
+   <testResult status="pass" testName="string-127"/>
+   <testResult status="pass" testName="string-128"/>
+   <testResult status="pass" testName="string-129"/>
+   <testResult status="pass" testName="string-130"/>
+   <testResult status="pass" testName="string-131"/>
+   <testResult status="fail" testName="string-132"/>
+   <testResult status="pass" testName="string-133"/>
+   <testResult testName="string-134"/>
+   <testResult testName="string-135"/>
+   <testResult status="fail" testName="string-136">
+      <outResult>
+         <errTrace>"expand-text" attribute is not allowed on the xsl:stylesheet element!</errTrace>
+      </outResult>
+   </testResult>
+</testrun>
diff --git a/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_try-test-set_results.xml b/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_try-test-set_result.xml
similarity index 99%
rename from src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_try-test-set_results.xml
rename to src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_try-test-set_result.xml
index 44554b246..d363fb3ab 100644
--- a/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_try-test-set_results.xml
+++ b/src/test/java/org/apache/xalan/tests/w3c/xslt3/result/_try-test-set_result.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0" encoding="UTF-8"?><testrun name="try">
+<?xml version="1.0" encoding="UTF-8"?><testrun dateTime="2025-05-16T06:27:20Z" fail="21" name="try" pass="11" skipped="5" statusUnknown="5" totalRun="42">
    <testResult status="pass" testName="try-001"/>
    <testResult status="fail" testName="try-002">
       <outResult/>
diff --git a/src/test/java/org/apache/xalan/tests/w3c/xslt3/expr/XslAxesTests.java b/src/test/java/org/apache/xalan/tests/w3c/xslt3/type/XslBooleanTests.java
similarity index 79%
copy from src/test/java/org/apache/xalan/tests/w3c/xslt3/expr/XslAxesTests.java
copy to src/test/java/org/apache/xalan/tests/w3c/xslt3/type/XslBooleanTests.java
index cb5c73b53..4cd6453c4 100644
--- a/src/test/java/org/apache/xalan/tests/w3c/xslt3/expr/XslAxesTests.java
+++ b/src/test/java/org/apache/xalan/tests/w3c/xslt3/type/XslBooleanTests.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.xalan.tests.w3c.xslt3.expr;
+package org.apache.xalan.tests.w3c.xslt3.type;
 
 import org.apache.xalan.tests.w3c.xslt3.W3CXslTransformTestsUtil;
 import org.junit.AfterClass;
@@ -23,18 +23,18 @@ import org.junit.Test;
 
 /**
  * Xalan-J XSL 3 test driver, to run W3C XSL 3.0 transformation 
- * tests for XPath axes.
+ * tests for XPath boolean types.
  * 
  * @author Mukul Gandhi <mu...@apache.org>
  * 
  * @xsl.usage advanced
  */
-public class XslAxesTests extends W3CXslTransformTestsUtil {     
+public class XslBooleanTests extends W3CXslTransformTestsUtil {     
 
     @BeforeClass
     public static void setUpBeforeClass() throws Exception {
-    	m_xslTransformTestSetFilePath = "file:/d:/xslt30-test-master/tests/expr/axes/_axes-test-set.xml";
-    	m_testResultFileName = "_axes-test-set_results.xml";    	   
+    	m_xslTransformTestSetFilePath = W3C_XSLT3_TESTS_META_DATA_DIR_HOME + "type/boolean/_boolean-test-set.xml";
+    	m_testResultFileName = "_boolean-test-set_result.xml";    	   
     }
 
     @AfterClass
@@ -45,7 +45,7 @@ public class XslAxesTests extends W3CXslTransformTestsUtil {
     }
 
     @Test
-    public void runXslAxesTests() {    	
+    public void runXslBooleanTests() {    	
        runXslTestSet();
     }
 
diff --git a/src/test/java/org/apache/xalan/tests/w3c/xslt3/expr/XslAxesTests.java b/src/test/java/org/apache/xalan/tests/w3c/xslt3/type/XslNodeTests.java
similarity index 80%
copy from src/test/java/org/apache/xalan/tests/w3c/xslt3/expr/XslAxesTests.java
copy to src/test/java/org/apache/xalan/tests/w3c/xslt3/type/XslNodeTests.java
index cb5c73b53..7c0f2e97f 100644
--- a/src/test/java/org/apache/xalan/tests/w3c/xslt3/expr/XslAxesTests.java
+++ b/src/test/java/org/apache/xalan/tests/w3c/xslt3/type/XslNodeTests.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.xalan.tests.w3c.xslt3.expr;
+package org.apache.xalan.tests.w3c.xslt3.type;
 
 import org.apache.xalan.tests.w3c.xslt3.W3CXslTransformTestsUtil;
 import org.junit.AfterClass;
@@ -23,18 +23,18 @@ import org.junit.Test;
 
 /**
  * Xalan-J XSL 3 test driver, to run W3C XSL 3.0 transformation 
- * tests for XPath axes.
+ * tests for XSL node types.
  * 
  * @author Mukul Gandhi <mu...@apache.org>
  * 
  * @xsl.usage advanced
  */
-public class XslAxesTests extends W3CXslTransformTestsUtil {     
+public class XslNodeTests extends W3CXslTransformTestsUtil {     
 
     @BeforeClass
     public static void setUpBeforeClass() throws Exception {
-    	m_xslTransformTestSetFilePath = "file:/d:/xslt30-test-master/tests/expr/axes/_axes-test-set.xml";
-    	m_testResultFileName = "_axes-test-set_results.xml";    	   
+    	m_xslTransformTestSetFilePath = W3C_XSLT3_TESTS_META_DATA_DIR_HOME + "type/node/_node-test-set.xml";
+    	m_testResultFileName = "_node-test-set_result.xml";    	   
     }
 
     @AfterClass
@@ -45,7 +45,7 @@ public class XslAxesTests extends W3CXslTransformTestsUtil {
     }
 
     @Test
-    public void runXslAxesTests() {    	
+    public void runXslNodeTests() {    	
        runXslTestSet();
     }
 
diff --git a/src/test/java/org/apache/xalan/tests/w3c/xslt3/expr/XslAxesTests.java b/src/test/java/org/apache/xalan/tests/w3c/xslt3/type/XslStringTests.java
similarity index 79%
copy from src/test/java/org/apache/xalan/tests/w3c/xslt3/expr/XslAxesTests.java
copy to src/test/java/org/apache/xalan/tests/w3c/xslt3/type/XslStringTests.java
index cb5c73b53..d53c33692 100644
--- a/src/test/java/org/apache/xalan/tests/w3c/xslt3/expr/XslAxesTests.java
+++ b/src/test/java/org/apache/xalan/tests/w3c/xslt3/type/XslStringTests.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.xalan.tests.w3c.xslt3.expr;
+package org.apache.xalan.tests.w3c.xslt3.type;
 
 import org.apache.xalan.tests.w3c.xslt3.W3CXslTransformTestsUtil;
 import org.junit.AfterClass;
@@ -23,18 +23,18 @@ import org.junit.Test;
 
 /**
  * Xalan-J XSL 3 test driver, to run W3C XSL 3.0 transformation 
- * tests for XPath axes.
+ * tests for XSL string types.
  * 
  * @author Mukul Gandhi <mu...@apache.org>
  * 
  * @xsl.usage advanced
  */
-public class XslAxesTests extends W3CXslTransformTestsUtil {     
+public class XslStringTests extends W3CXslTransformTestsUtil {     
 
     @BeforeClass
     public static void setUpBeforeClass() throws Exception {
-    	m_xslTransformTestSetFilePath = "file:/d:/xslt30-test-master/tests/expr/axes/_axes-test-set.xml";
-    	m_testResultFileName = "_axes-test-set_results.xml";    	   
+    	m_xslTransformTestSetFilePath = W3C_XSLT3_TESTS_META_DATA_DIR_HOME + "type/string/_string-test-set.xml";
+    	m_testResultFileName = "_string-test-set_result.xml";    	   
     }
 
     @AfterClass
@@ -45,7 +45,7 @@ public class XslAxesTests extends W3CXslTransformTestsUtil {
     }
 
     @Test
-    public void runXslAxesTests() {    	
+    public void runXslStringTests() {    	
        runXslTestSet();
     }
 
diff --git a/src/test/java/org/apache/xalan/tests/xpath3/W3c_xslt30_fn_deep_equalTests.java b/src/test/java/org/apache/xalan/tests/xpath3/W3c_xslt30_fn_deep_equalTests.java
deleted file mode 100644
index 5e70e0013..000000000
--- a/src/test/java/org/apache/xalan/tests/xpath3/W3c_xslt30_fn_deep_equalTests.java
+++ /dev/null
@@ -1,72 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- * 
- *      http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.xalan.tests.xpath3;
-
-import org.apache.xalan.tests.util.XSLTestConstants;
-import org.apache.xalan.tests.util.XslTransformTestsUtil;
-import org.junit.AfterClass;
-import org.junit.BeforeClass;
-import org.junit.Test;
-
-/**
- * XSLT 3.0 test cases for the fn:deep-equal function.
- * 
- * @author Mukul Gandhi <mu...@apache.org>
- * 
- * @xsl.usage advanced
- */
-public class W3c_xslt30_fn_deep_equalTests extends XslTransformTestsUtil {
-    
-    private static final String XSL_TRANSFORM_INPUT_DIRPATH = XSLTestConstants.XSL_TRANSFORM_INPUT_DIRPATH_PREFIX + 
-                                                                                                 "w3c_xslt30_testsuite/fn/deep_equal/";
-    
-    private static final String XSL_TRANSFORM_GOLD_DIRPATH = XSLTestConstants.XSL_TRANSFORM_GOLD_DIRPATH_PREFIX + 
-                                                                                                 "w3c_xslt30_testsuite/fn/deep_equal/gold/";
-
-    @BeforeClass
-    public static void setUpBeforeClass() throws Exception {
-        // no op
-    }
-
-    @AfterClass
-    public static void tearDownAfterClass() throws Exception {
-        m_xmlDocumentBuilderFactory = null;
-        m_xmlDocumentBuilder = null;
-        m_xslTransformerFactory = null;
-    }
-
-    @Test
-    public void xslFnDeepEqualTest1() {
-        String xmlFilePath = XSL_TRANSFORM_INPUT_DIRPATH + "test1_a.xml"; 
-        String xslFilePath = XSL_TRANSFORM_INPUT_DIRPATH + "test1.xsl";
-        
-        String goldFilePath = XSL_TRANSFORM_GOLD_DIRPATH + "test1.out";                
-        
-        runXslTransformAndAssertOutput(xmlFilePath, xslFilePath, goldFilePath, null);
-    }
-    
-    @Test
-    public void xslFnDeepEqualTest2() {
-        String xmlFilePath = XSL_TRANSFORM_INPUT_DIRPATH + "test1_a.xml"; 
-        String xslFilePath = XSL_TRANSFORM_INPUT_DIRPATH + "test2.xsl";
-        
-        String goldFilePath = XSL_TRANSFORM_GOLD_DIRPATH + "test2.out";                
-        
-        runXslTransformAndAssertOutput(xmlFilePath, xslFilePath, goldFilePath, null);
-    }
-
-}
diff --git a/src/test/java/org/apache/xalan/tests/xslt3/W3c_xslt30_AnalyzeStringTests.java b/src/test/java/org/apache/xalan/tests/xslt3/W3c_xslt30_AnalyzeStringTests.java
deleted file mode 100644
index e704e4ecc..000000000
--- a/src/test/java/org/apache/xalan/tests/xslt3/W3c_xslt30_AnalyzeStringTests.java
+++ /dev/null
@@ -1,62 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- * 
- *      http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.xalan.tests.xslt3;
-
-import org.apache.xalan.tests.util.XSLTestConstants;
-import org.apache.xalan.tests.util.XslTransformTestsUtil;
-import org.junit.AfterClass;
-import org.junit.BeforeClass;
-import org.junit.Test;
-
-/**
- * XSLT 3.0 test cases for the xsl:analyze-string instruction.
- * 
- * @author Mukul Gandhi <mu...@apache.org>
- * 
- * @xsl.usage advanced
- */
-public class W3c_xslt30_AnalyzeStringTests extends XslTransformTestsUtil {
-    
-    private static final String XSL_TRANSFORM_INPUT_DIRPATH = XSLTestConstants.XSL_TRANSFORM_INPUT_DIRPATH_PREFIX + 
-                                                                                                 "w3c_xslt30_testsuite/insn/analyze_string/";
-    
-    private static final String XSL_TRANSFORM_GOLD_DIRPATH = XSLTestConstants.XSL_TRANSFORM_GOLD_DIRPATH_PREFIX + 
-                                                                                                 "w3c_xslt30_testsuite/insn/analyze_string/gold/";
-
-    @BeforeClass
-    public static void setUpBeforeClass() throws Exception {
-        // no op
-    }
-
-    @AfterClass
-    public static void tearDownAfterClass() throws Exception {
-        m_xmlDocumentBuilderFactory = null;
-        m_xmlDocumentBuilder = null;
-        m_xslTransformerFactory = null;
-    }
-
-    @Test
-    public void xslAnalyzeStringTest1() {
-        String xmlFilePath = XSL_TRANSFORM_INPUT_DIRPATH + "regex001.xml"; 
-        String xslFilePath = XSL_TRANSFORM_INPUT_DIRPATH + "analyze-string-033.xsl";
-        
-        String goldFilePath = XSL_TRANSFORM_GOLD_DIRPATH + "analyze_string-001.out";                
-        
-        runXslTransformAndAssertOutput(xmlFilePath, xslFilePath, goldFilePath, null);
-    }
-
-}
diff --git a/src/test/java/org/apache/xalan/tests/xslt3/W3c_xslt30_AxesTests.java b/src/test/java/org/apache/xalan/tests/xslt3/W3c_xslt30_AxesTests.java
deleted file mode 100644
index 908272bf6..000000000
--- a/src/test/java/org/apache/xalan/tests/xslt3/W3c_xslt30_AxesTests.java
+++ /dev/null
@@ -1,222 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- * 
- *      http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.xalan.tests.xslt3;
-
-import org.apache.xalan.tests.util.XSLTestConstants;
-import org.apache.xalan.tests.util.XslTransformTestsUtil;
-import org.junit.AfterClass;
-import org.junit.BeforeClass;
-import org.junit.Test;
-
-/**
- * XSLT 3.0 test cases for the XPath axes.
- * 
- * @author Mukul Gandhi <mu...@apache.org>
- * 
- * @xsl.usage advanced
- */
-public class W3c_xslt30_AxesTests extends XslTransformTestsUtil {
-    
-    private static final String XSL_TRANSFORM_INPUT_DIRPATH = XSLTestConstants.XSL_TRANSFORM_INPUT_DIRPATH_PREFIX + 
-                                                                                                 "w3c_xslt30_testsuite/axes/";
-    
-    private static final String XSL_TRANSFORM_GOLD_DIRPATH = XSLTestConstants.XSL_TRANSFORM_GOLD_DIRPATH_PREFIX + 
-                                                                                                 "w3c_xslt30_testsuite/axes/gold/";
-
-    @BeforeClass
-    public static void setUpBeforeClass() throws Exception {
-        // no op
-    }
-
-    @AfterClass
-    public static void tearDownAfterClass() throws Exception {
-        m_xmlDocumentBuilderFactory = null;
-        m_xmlDocumentBuilder = null;
-        m_xslTransformerFactory = null;
-    }
-
-    @Test
-    public void xslAxesTest1() {
-        String xmlFilePath = XSL_TRANSFORM_INPUT_DIRPATH + "axes001.xml"; 
-        String xslFilePath = XSL_TRANSFORM_INPUT_DIRPATH + "axes-001.xsl";
-        
-        String goldFilePath = XSL_TRANSFORM_GOLD_DIRPATH + "test1.out";                
-        
-        runXslTransformAndAssertOutput(xmlFilePath, xslFilePath, goldFilePath, null);
-    }
-    
-    @Test
-    public void xslAxesTest2() {
-        String xmlFilePath = XSL_TRANSFORM_INPUT_DIRPATH + "axes002.xml"; 
-        String xslFilePath = XSL_TRANSFORM_INPUT_DIRPATH + "axes-002.xsl";
-        
-        String goldFilePath = XSL_TRANSFORM_GOLD_DIRPATH + "test2.out";                
-        
-        runXslTransformAndAssertOutput(xmlFilePath, xslFilePath, goldFilePath, null);
-    }
-    
-    @Test
-    public void xslAxesTest3() {
-        String xmlFilePath = XSL_TRANSFORM_INPUT_DIRPATH + "axes002.xml"; 
-        String xslFilePath = XSL_TRANSFORM_INPUT_DIRPATH + "axes-003.xsl";
-        
-        String goldFilePath = XSL_TRANSFORM_GOLD_DIRPATH + "test3.out";                
-        
-        runXslTransformAndAssertOutput(xmlFilePath, xslFilePath, goldFilePath, null);
-    }
-    
-    @Test
-    public void xslAxesTest4() {
-        String xmlFilePath = XSL_TRANSFORM_INPUT_DIRPATH + "axes002.xml"; 
-        String xslFilePath = XSL_TRANSFORM_INPUT_DIRPATH + "axes-004.xsl";
-        
-        String goldFilePath = XSL_TRANSFORM_GOLD_DIRPATH + "test4.out";                
-        
-        runXslTransformAndAssertOutput(xmlFilePath, xslFilePath, goldFilePath, null);
-    }
-    
-    @Test
-    public void xslAxesTest5() {
-        String xmlFilePath = XSL_TRANSFORM_INPUT_DIRPATH + "axes002.xml"; 
-        String xslFilePath = XSL_TRANSFORM_INPUT_DIRPATH + "axes-005.xsl";
-        
-        String goldFilePath = XSL_TRANSFORM_GOLD_DIRPATH + "test5.out";                
-        
-        runXslTransformAndAssertOutput(xmlFilePath, xslFilePath, goldFilePath, null);
-    }
-    
-    @Test
-    public void xslAxesTest6() {
-        String xmlFilePath = XSL_TRANSFORM_INPUT_DIRPATH + "axes002.xml"; 
-        String xslFilePath = XSL_TRANSFORM_INPUT_DIRPATH + "axes-006.xsl";
-        
-        String goldFilePath = XSL_TRANSFORM_GOLD_DIRPATH + "test6.out";                
-        
-        runXslTransformAndAssertOutput(xmlFilePath, xslFilePath, goldFilePath, null);
-    }
-    
-    @Test
-    public void xslAxesTest7() {
-        String xmlFilePath = XSL_TRANSFORM_INPUT_DIRPATH + "axes002.xml"; 
-        String xslFilePath = XSL_TRANSFORM_INPUT_DIRPATH + "axes-007.xsl";
-        
-        String goldFilePath = XSL_TRANSFORM_GOLD_DIRPATH + "test7.out";                
-        
-        runXslTransformAndAssertOutput(xmlFilePath, xslFilePath, goldFilePath, null);
-    }
-    
-    @Test
-    public void xslAxesTest8() {
-        String xmlFilePath = XSL_TRANSFORM_INPUT_DIRPATH + "axes002.xml"; 
-        String xslFilePath = XSL_TRANSFORM_INPUT_DIRPATH + "axes-008.xsl";
-        
-        String goldFilePath = XSL_TRANSFORM_GOLD_DIRPATH + "test8.out";                
-        
-        runXslTransformAndAssertOutput(xmlFilePath, xslFilePath, goldFilePath, null);
-    }
-    
-    @Test
-    public void xslAxesTest9() {
-        String xmlFilePath = XSL_TRANSFORM_INPUT_DIRPATH + "axes002.xml"; 
-        String xslFilePath = XSL_TRANSFORM_INPUT_DIRPATH + "axes-009.xsl";
-        
-        String goldFilePath = XSL_TRANSFORM_GOLD_DIRPATH + "test9.out";                
-        
-        runXslTransformAndAssertOutput(xmlFilePath, xslFilePath, goldFilePath, null);
-    }
-    
-    @Test
-    public void xslAxesTest10() {
-        String xmlFilePath = XSL_TRANSFORM_INPUT_DIRPATH + "axes002.xml"; 
-        String xslFilePath = XSL_TRANSFORM_INPUT_DIRPATH + "axes-010.xsl";
-        
-        String goldFilePath = XSL_TRANSFORM_GOLD_DIRPATH + "test10.out";                
-        
-        runXslTransformAndAssertOutput(xmlFilePath, xslFilePath, goldFilePath, null);
-    }
-    
-    @Test
-    public void xslAxesTest11() {
-        String xmlFilePath = XSL_TRANSFORM_INPUT_DIRPATH + "axes002.xml"; 
-        String xslFilePath = XSL_TRANSFORM_INPUT_DIRPATH + "axes-011.xsl";
-        
-        String goldFilePath = XSL_TRANSFORM_GOLD_DIRPATH + "test11.out";                
-        
-        runXslTransformAndAssertOutput(xmlFilePath, xslFilePath, goldFilePath, null);
-    }
-    
-    @Test
-    public void xslAxesTest12() {
-        String xmlFilePath = XSL_TRANSFORM_INPUT_DIRPATH + "axes002.xml"; 
-        String xslFilePath = XSL_TRANSFORM_INPUT_DIRPATH + "axes-012.xsl";
-        
-        String goldFilePath = XSL_TRANSFORM_GOLD_DIRPATH + "test12.out";                
-        
-        runXslTransformAndAssertOutput(xmlFilePath, xslFilePath, goldFilePath, null);
-    }
-    
-    @Test
-    public void xslAxesTest13() {
-        String xmlFilePath = XSL_TRANSFORM_INPUT_DIRPATH + "axes002.xml"; 
-        String xslFilePath = XSL_TRANSFORM_INPUT_DIRPATH + "axes-013.xsl";
-        
-        String goldFilePath = XSL_TRANSFORM_GOLD_DIRPATH + "test13.out";                
-        
-        runXslTransformAndAssertOutput(xmlFilePath, xslFilePath, goldFilePath, null);
-    }
-    
-    @Test
-    public void xslAxesTest14() {
-        String xmlFilePath = XSL_TRANSFORM_INPUT_DIRPATH + "axes002.xml"; 
-        String xslFilePath = XSL_TRANSFORM_INPUT_DIRPATH + "axes-014.xsl";
-        
-        String goldFilePath = XSL_TRANSFORM_GOLD_DIRPATH + "test14.out";                
-        
-        runXslTransformAndAssertOutput(xmlFilePath, xslFilePath, goldFilePath, null);
-    }
-    
-    @Test
-    public void xslAxesTest15() {
-        String xmlFilePath = XSL_TRANSFORM_INPUT_DIRPATH + "axes002.xml"; 
-        String xslFilePath = XSL_TRANSFORM_INPUT_DIRPATH + "axes-015.xsl";
-        
-        String goldFilePath = XSL_TRANSFORM_GOLD_DIRPATH + "test15.out";                
-        
-        runXslTransformAndAssertOutput(xmlFilePath, xslFilePath, goldFilePath, null);
-    }
-    
-    @Test
-    public void xslAxesTest16() {
-        String xmlFilePath = XSL_TRANSFORM_INPUT_DIRPATH + "axes003.xml"; 
-        String xslFilePath = XSL_TRANSFORM_INPUT_DIRPATH + "axes-031.xsl";
-        
-        String goldFilePath = XSL_TRANSFORM_GOLD_DIRPATH + "test16.out";                
-        
-        runXslTransformAndAssertOutput(xmlFilePath, xslFilePath, goldFilePath, null);
-    }
-    
-    @Test
-    public void xslAxesTest17() {
-        String xmlFilePath = XSL_TRANSFORM_INPUT_DIRPATH + "axes004.xml"; 
-        String xslFilePath = XSL_TRANSFORM_INPUT_DIRPATH + "axes-032.xsl";
-        
-        String goldFilePath = XSL_TRANSFORM_GOLD_DIRPATH + "test17.out";                
-        
-        runXslTransformAndAssertOutput(xmlFilePath, xslFilePath, goldFilePath, null);
-    }
-
-}
diff --git a/src/test/java/org/apache/xalan/tests/xslt3/W3c_xslt30_ForEachGroupTests.java b/src/test/java/org/apache/xalan/tests/xslt3/W3c_xslt30_ForEachGroupTests.java
deleted file mode 100644
index 13d7d16d7..000000000
--- a/src/test/java/org/apache/xalan/tests/xslt3/W3c_xslt30_ForEachGroupTests.java
+++ /dev/null
@@ -1,92 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- * 
- *      http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.xalan.tests.xslt3;
-
-import org.apache.xalan.tests.util.XSLTestConstants;
-import org.apache.xalan.tests.util.XslTransformTestsUtil;
-import org.junit.AfterClass;
-import org.junit.BeforeClass;
-import org.junit.Test;
-
-/**
- * XSLT 3.0 test cases for the xsl:for-each-group instruction.
- * 
- * @author Mukul Gandhi <mu...@apache.org>
- * 
- * @xsl.usage advanced
- */
-public class W3c_xslt30_ForEachGroupTests extends XslTransformTestsUtil {
-    
-    private static final String XSL_TRANSFORM_INPUT_DIRPATH = XSLTestConstants.XSL_TRANSFORM_INPUT_DIRPATH_PREFIX + 
-                                                                                                 "w3c_xslt30_testsuite/insn/for_each_group/";
-    
-    private static final String XSL_TRANSFORM_GOLD_DIRPATH = XSLTestConstants.XSL_TRANSFORM_GOLD_DIRPATH_PREFIX + 
-                                                                                                 "w3c_xslt30_testsuite/insn/for_each_group/gold/";
-
-    @BeforeClass
-    public static void setUpBeforeClass() throws Exception {
-        // no op
-    }
-
-    @AfterClass
-    public static void tearDownAfterClass() throws Exception {
-        m_xmlDocumentBuilderFactory = null;
-        m_xmlDocumentBuilder = null;
-        m_xslTransformerFactory = null;
-    }
-
-    @Test
-    public void xslForEachGroupTest1() {
-        String xmlFilePath = XSL_TRANSFORM_INPUT_DIRPATH + "test1.xsl"; 
-        String xslFilePath = XSL_TRANSFORM_INPUT_DIRPATH + "test1.xsl";
-        
-        String goldFilePath = XSL_TRANSFORM_GOLD_DIRPATH + "test1.out";                
-        
-        runXslTransformAndAssertOutput(xmlFilePath, xslFilePath, goldFilePath, null);
-    }
-    
-    @Test
-    public void xslForEachGroupTest2() {
-        String xmlFilePath = XSL_TRANSFORM_INPUT_DIRPATH + "test2.xsl"; 
-        String xslFilePath = XSL_TRANSFORM_INPUT_DIRPATH + "test2.xsl";
-        
-        String goldFilePath = XSL_TRANSFORM_GOLD_DIRPATH + "test2.out";                
-        
-        runXslTransformAndAssertOutput(xmlFilePath, xslFilePath, goldFilePath, null);
-    }
-    
-    @Test
-    public void xslForEachGroupTest3() {
-        String xmlFilePath = XSL_TRANSFORM_INPUT_DIRPATH + "test3.xsl"; 
-        String xslFilePath = XSL_TRANSFORM_INPUT_DIRPATH + "test3.xsl";
-        
-        String goldFilePath = XSL_TRANSFORM_GOLD_DIRPATH + "test3.out";                
-        
-        runXslTransformAndAssertOutput(xmlFilePath, xslFilePath, goldFilePath, null);
-    }
-    
-    @Test
-    public void xslForEachGroupTest4() {
-        String xmlFilePath = XSL_TRANSFORM_INPUT_DIRPATH + "test4.xml"; 
-        String xslFilePath = XSL_TRANSFORM_INPUT_DIRPATH + "test4.xsl";
-        
-        String goldFilePath = XSL_TRANSFORM_GOLD_DIRPATH + "test4.out";                
-        
-        runXslTransformAndAssertOutput(xmlFilePath, xslFilePath, goldFilePath, null);
-    }
-
-}
diff --git a/src/test/java/org/apache/xalan/tests/xslt3/W3c_xslt30_IterateTests.java b/src/test/java/org/apache/xalan/tests/xslt3/W3c_xslt30_IterateTests.java
deleted file mode 100644
index fc0aa5828..000000000
--- a/src/test/java/org/apache/xalan/tests/xslt3/W3c_xslt30_IterateTests.java
+++ /dev/null
@@ -1,62 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- * 
- *      http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.xalan.tests.xslt3;
-
-import org.apache.xalan.tests.util.XSLTestConstants;
-import org.apache.xalan.tests.util.XslTransformTestsUtil;
-import org.junit.AfterClass;
-import org.junit.BeforeClass;
-import org.junit.Test;
-
-/**
- * XSLT 3.0 test cases for the xsl:iterate instruction.
- * 
- * @author Mukul Gandhi <mu...@apache.org>
- * 
- * @xsl.usage advanced
- */
-public class W3c_xslt30_IterateTests extends XslTransformTestsUtil {
-    
-    private static final String XSL_TRANSFORM_INPUT_DIRPATH = XSLTestConstants.XSL_TRANSFORM_INPUT_DIRPATH_PREFIX + 
-                                                                                                 "w3c_xslt30_testsuite/insn/iterate/";
-    
-    private static final String XSL_TRANSFORM_GOLD_DIRPATH = XSLTestConstants.XSL_TRANSFORM_GOLD_DIRPATH_PREFIX + 
-                                                                                                 "w3c_xslt30_testsuite/insn/iterate/gold/";
-
-    @BeforeClass
-    public static void setUpBeforeClass() throws Exception {
-        // no op
-    }
-
-    @AfterClass
-    public static void tearDownAfterClass() throws Exception {
-        m_xmlDocumentBuilderFactory = null;
-        m_xmlDocumentBuilder = null;
-        m_xslTransformerFactory = null;
-    }
-
-    @Test
-    public void xslIterateTest1() {
-        String xmlFilePath = XSL_TRANSFORM_INPUT_DIRPATH + "iterate001.xml"; 
-        String xslFilePath = XSL_TRANSFORM_INPUT_DIRPATH + "iterate-001.xsl";
-        
-        String goldFilePath = XSL_TRANSFORM_GOLD_DIRPATH + "iterate-001.out";                
-        
-        runXslTransformAndAssertOutput(xmlFilePath, xslFilePath, goldFilePath, null);
-    }
-
-}


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@xalan.apache.org
For additional commands, e-mail: commits-help@xalan.apache.org