diff --git a/.classpath b/.classpath
deleted file mode 100644
index b46784278..000000000
--- a/.classpath
+++ /dev/null
@@ -1,16 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml
index a11736399..5ea42e580 100644
--- a/.github/workflows/main.yml
+++ b/.github/workflows/main.yml
@@ -35,34 +35,39 @@ jobs:
java-version: 8
- name: 'Build Xalan jars'
run: |
- ant jar
+ mvn --no-transfer-progress clean compile site verify
- uses: actions/checkout@v3
name: 'Checkout xalan-test'
with:
repository: apache/xalan-test
path: xalan-test
ref: master
+ - name: 'Cheat xalan-test up to be sibling of xalan-java'
+ run: |
+ mv xalan-test ..; ls ..
- name: 'Run xalan-test tests'
- working-directory: xalan-test
+ working-directory: ../xalan-test
# NOTE: "alltest" target includes conformance tests known not to run in Xalan,
# as well as having dependencies on some targets which have since been edited
# out. The following is our typical minimal build test as documented in README,
# minus conf.xsltc since that one is currently throwing four known failures and
# isn't set up to say "but that's not a regression".
- run: |
- ant jar extensions.classes smoketest apitest -Dxalan.relpath=../ -Dparserjar=../lib/endorsed/xercesImpl.jar -Dxml-apis.jar=../lib/endorsed/xml-apis.jar
-# ant fulldist is failing: in CI
-# /home/runner/work/xalan-java/xalan-java/build.xml:1399: /home/runner/work/xalan-java/xalan-test does not exist.
-# Error replicated on my system if there is not a sibling xalan-test.
-# NOT replicated if sibling xalan-test directory is present
-# Simplest fix would be to have the above test checkout emulate the dev environment;
-# better would be to fix fulldist to intelligently check both locations;
-# best might be to adopt xalan-test back into the xalan repository, if it's no longer being used elsewhere.
- - name: 'Cheat xalan-test up to be sibling of xalan-java'
- run: |
- mv xalan-test ..; ls ..
- - id: build_artifacts
+# NOTE: Adjustments made for mvn build leaving things in a slightly different
+# place than ant build did (and recreating /lib).
run: |
- ant fulldist
+ ls; ant -debug jar extensions.classes smoketest apitest -Dxalan.relpath=../xalan-java -Dparserjar=../xalan-java/lib/xercesImpl-2.12.2.jar -Dxml-apis.jar=../xalan-java/lib/xml-apis-1.4.01.jar
+# Build distribution artifacts: Used to pull xalan-test back down as child and
+# run fulldist:
+# run: |
+# ant fulldist
+# fulldist isn't currently a separate target in the mvn build process
+# A near-equivalent is being performed every time to build the .tar.gz
+# and .zip distribution files.
+#
+# BUT NOTE that the binary distro has traditionally included
+# xalan-test as a subdirectory; maven build doesn't yet pull that in.
+# Discussion is in progress about whether it is (a) necessary, (b) a good
+# idea.
+# TODO: REVIEW.
diff --git a/.gitignore b/.gitignore
index d35296208..6c5d53050 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,36 +1,41 @@
-/bin/
-/build/
-/classes/
-/.idea/
+# Maven output
+target/
+**/dependency-reduced-pom.xml
+
+# In Maven, dependencies are downloaded during build;
+# we don't want to check them in
+/tools/
+
+# Xalan "Ant emulation" directories for xalan-test and distribution,
+# created by Maven build.
+# (xalan-test referenced dependencies from xalan-java; distro may be
+# publishing from lib/ though I hope not.)
+build/
+lib/
+
+# Eclipse configuration
+.settings/
+.project
+.classpath
+
+# IntelliJ IDEA
+.idea/
*.iml
-.DS_Store
-# We download the dependencies if they are missing
-/lib/
-/tools/java_cup.jar
-/tmp/
+# MacOS Finder
+.DS_Store
-# Generated sources
+# XPath parser generated during compilation
/src/org/apache/xalan/processor/XSLProcessorVersion.java
/src/org/apache/xalan/xsltc/compiler/XPathLexer.java
/src/org/apache/xalan/xsltc/compiler/XPathParser.java
/src/org/apache/xalan/xsltc/compiler/sym.java
-/xdocs/sources/xalan/DONE
-/xdocs/sources/xalan/XSLTCDONE
-
-# The following are unpacked from zipfile
-# NOTE: Might be simpler to just check 'em in unzipped.
-/xdocs/style/graphics/
-/xdocs/style/loader.xml
-/xdocs/style/resources/
-/xdocs/style/stylesheets/any2header.xsl
-/xdocs/style/stylesheets/any2project.xsl
-/xdocs/style/stylesheets/book2group.xsl
-/xdocs/style/stylesheets/book2project.xsl
-/xdocs/style/stylesheets/changes2document.xsl
-/xdocs/style/stylesheets/context2footer.xsl
-/xdocs/style/stylesheets/context2label.xsl
-/xdocs/style/stylesheets/directory2project.xsl
-/xdocs/style/stylesheets/document2html.xsl
-/xdocs/style/stylesheets/faqs2document.xsl
-/xdocs/style/stylesheets/group2document.xsl
+
+# Stylebook processing progress flags.
+/stylebook/sources/xalan/DONE
+/stylebook/sources/xalan/XSLTCDONE
+
+# Various temporary/work directories used by other tools
+/bin/
+/classes/
+/tmp/
diff --git a/.project b/.project
deleted file mode 100644
index 56d086ee9..000000000
--- a/.project
+++ /dev/null
@@ -1,33 +0,0 @@
-
-
-
- xalan-j-trunk
-
-
-
-
-
- org.eclipse.jdt.core.javabuilder
-
-
-
-
-
- org.eclipse.jdt.core.javanature
-
-
diff --git a/.settings/org.eclipse.jdt.core.prefs b/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index 5917cfb92..000000000
--- a/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,269 +0,0 @@
-eclipse.preferences.version=1
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.methodParameters=do not generate
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
-org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
-org.eclipse.jdt.core.compiler.compliance=1.8
-org.eclipse.jdt.core.compiler.debug.lineNumber=generate
-org.eclipse.jdt.core.compiler.debug.localVariable=generate
-org.eclipse.jdt.core.compiler.debug.sourceFile=generate
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
-org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=warning
-org.eclipse.jdt.core.compiler.release=disabled
-org.eclipse.jdt.core.compiler.source=1.8
-org.eclipse.jdt.core.formatter.align_type_members_on_columns=false
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16
-org.eclipse.jdt.core.formatter.alignment_for_assignment=0
-org.eclipse.jdt.core.formatter.alignment_for_binary_expression=16
-org.eclipse.jdt.core.formatter.alignment_for_compact_if=16
-org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=80
-org.eclipse.jdt.core.formatter.alignment_for_enum_constants=0
-org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16
-org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16
-org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16
-org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16
-org.eclipse.jdt.core.formatter.blank_lines_after_imports=1
-org.eclipse.jdt.core.formatter.blank_lines_after_package=1
-org.eclipse.jdt.core.formatter.blank_lines_before_field=0
-org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=0
-org.eclipse.jdt.core.formatter.blank_lines_before_imports=1
-org.eclipse.jdt.core.formatter.blank_lines_before_member_type=1
-org.eclipse.jdt.core.formatter.blank_lines_before_method=1
-org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk=1
-org.eclipse.jdt.core.formatter.blank_lines_before_package=0
-org.eclipse.jdt.core.formatter.blank_lines_between_import_groups=1
-org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations=1
-org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_array_initializer=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_block=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_block_in_case=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line
-org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=false
-org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=false
-org.eclipse.jdt.core.formatter.comment.format_block_comments=true
-org.eclipse.jdt.core.formatter.comment.format_header=false
-org.eclipse.jdt.core.formatter.comment.format_html=true
-org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=true
-org.eclipse.jdt.core.formatter.comment.format_line_comments=true
-org.eclipse.jdt.core.formatter.comment.format_source_code=true
-org.eclipse.jdt.core.formatter.comment.indent_parameter_description=true
-org.eclipse.jdt.core.formatter.comment.indent_root_tags=true
-org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert
-org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=insert
-org.eclipse.jdt.core.formatter.comment.line_length=80
-org.eclipse.jdt.core.formatter.compact_else_if=true
-org.eclipse.jdt.core.formatter.continuation_indentation=2
-org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=2
-org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header=true
-org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases=true
-org.eclipse.jdt.core.formatter.indent_empty_lines=false
-org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true
-org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true
-org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true
-org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=false
-org.eclipse.jdt.core.formatter.indentation.size=4
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter=insert
-org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_binary_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert
-org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_binary_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert
-org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert
-org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw=insert
-org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false
-org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false
-org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=false
-org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false
-org.eclipse.jdt.core.formatter.lineSplit=80
-org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false
-org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false
-org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0
-org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1
-org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=true
-org.eclipse.jdt.core.formatter.tabulation.char=space
-org.eclipse.jdt.core.formatter.tabulation.size=4
-org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false
-org.eclipse.jdt.core.formatter.wrap_before_binary_operator=true
diff --git a/.settings/org.eclipse.jdt.ui.prefs b/.settings/org.eclipse.jdt.ui.prefs
deleted file mode 100644
index 7e642675d..000000000
--- a/.settings/org.eclipse.jdt.ui.prefs
+++ /dev/null
@@ -1,5 +0,0 @@
-#Mon Jul 14 00:07:56 EDT 2008
-eclipse.preferences.version=1
-formatter_profile=_Development
-formatter_settings_version=11
-org.eclipse.jdt.ui.text.custom_code_templates=/**\r\n * @return the ${bare_field_name}\r\n *//**\r\n * @param ${param} the ${bare_field_name} to set\r\n *//**\r\n * ${tags}\r\n *//**\r\n * \r\n *//**\r\n * @author ${user}\r\n *\r\n * ${tags}\r\n *//**\r\n * \r\n *//**\r\n * ${tags}\r\n *//* (non-Javadoc)\r\n * ${see_to_overridden}\r\n *//**\r\n * ${tags}\r\n * ${see_to_target}\r\n *//*\r\n * Licensed to the Apache Software Foundation (ASF) under one or more\r\n * contributor license agreements. See the NOTICE file distributed with\r\n * this work for additional information regarding copyright ownership.\r\n * The ASF licenses this file to You under the Apache License, Version 2.0\r\n * (the "License"); you may not use this file except in compliance with\r\n * the License. You may obtain a copy of the License at\r\n * \r\n * http\://www.apache.org/licenses/LICENSE-2.0\r\n * \r\n * Unless required by applicable law or agreed to in writing, software\r\n * distributed under the License is distributed on an "AS IS" BASIS,\r\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r\n * See the License for the specific language governing permissions and\r\n * limitations under the License.\r\n */\r\n\r\n${package_declaration}\r\n\r\n/**\r\n * @version $$Id\: $$\r\n */\r\n${type_declaration}\r\n\r\n\r\n\r\n// ${todo} Auto-generated catch block\r\n${exception_var}.printStackTrace();// ${todo} Auto-generated method stub\r\n${body_statement}${body_statement}\r\n// ${todo} Auto-generated constructor stubreturn ${field};${field} \= ${param};
diff --git a/NOTICE.txt b/NOTICE.txt
index 5c9ce77c9..e88972d09 100644
--- a/NOTICE.txt
+++ b/NOTICE.txt
@@ -10,16 +10,16 @@
Copyright 1999-2012 The Apache Software Foundation
This product includes software developed at
- The Apache Software Foundation (http://www.apache.org/).
+ The Apache Software Foundation (http://www.apache.org/)
=========================================================================
Portions of this software was originally based on the following:
- - software copyright (c) 1999-2002, Lotus Development Corporation.,
- http://www.lotus.com.
- - software copyright (c) 2001-2002, Sun Microsystems.,
- http://www.sun.com.
- - software copyright (c) 2003, IBM Corporation.,
- http://www.ibm.com.
+ - software copyright (c) 1999-2002, Lotus Development Corporation,
+ http://www.lotus.com
+ - software copyright (c) 2001-2002, Sun Microsystems,
+ http://www.sun.com
+ - software copyright (c) 2003, IBM Corporation,
+ http://www.ibm.com
=========================================================================
The binary distribution package (ie. jars, samples and documentation) of
@@ -59,27 +59,27 @@
Copyright 1999-2022 The Apache Software Foundation
This product includes software developed at
- The Apache Software Foundation (http://www.apache.org/).
+ The Apache Software Foundation (http://www.apache.org/)
Portions of Apache Xerces Java in xercesImpl.jar and xml-apis.jar
were originally based on the following:
- - software copyright (c) 1999, IBM Corporation., http://www.ibm.com.
- - software copyright (c) 1999, Sun Microsystems., http://www.sun.com.
+ - software copyright (c) 1999, IBM Corporation, http://www.ibm.com
+ - software copyright (c) 1999, Sun Microsystems, http://www.sun.com
- voluntary contributions made by Paul Eng on behalf of the
Apache Software Foundation that were originally developed at iClick, Inc.,
- software copyright (c) 1999.
+ software copyright (c) 1999
=========================================================================
Apache xml-commons xml-apis (redistribution of xml-apis.jar)
Apache XML Commons
- Copyright 2001-2003,2006 The Apache Software Foundation.
+ Copyright 2001-2003, 2006 The Apache Software Foundation
This product includes software developed at
- The Apache Software Foundation (http://www.apache.org/).
+ The Apache Software Foundation (http://www.apache.org/)
Portions of this software were originally based on the following:
- - software copyright (c) 1999, IBM Corporation., http://www.ibm.com.
- - software copyright (c) 1999, Sun Microsystems., http://www.sun.com.
- - software copyright (c) 2000 World Wide Web Consortium, http://www.w3.org
+ - software copyright (c) 1999, IBM Corporation, http://www.ibm.com
+ - software copyright (c) 1999, Sun Microsystems, http://www.sun.com
+ - software copyright (c) 2000, World Wide Web Consortium, http://www.w3.org
diff --git a/README b/README
index 0fd73e9dd..59b949aee 100644
--- a/README
+++ b/README
@@ -14,110 +14,201 @@
* See the License for the specific language governing permissions and
* limitations under the License.
-->
-
+Apache Xalan-Java Build, Test, and Release Notes
Copyright 1999-2023 The Apache Software Foundation
Authors:
Gary Gregory
- Joe Kesselman
+ Joe Kesselman
Mukul Gandhi
-This file primarily, contains instructions to the person(s) who shall be making an Apache XalanJ
-release for distribution, along with the instructions about how to test XalanJ release before
-recommending the release for distribution.
+This document's primarily focused on building artifacts for production
+releases of the Apache Xalan-J XSLT processor, but may be helpful for
+others working with Xalan's source.
+
+(0) Prerequisites
+
+Official Xalan builds are currently being performed using Maven
+version 6.3.6 and a Java 1.8 Development Kit. We recommend Eclipse
+Temurun for the latter; it is available from
+https://adoptium.net/temurin/releases/?version=8. Be sure to install
+the JDK, not just the JRE.
+
+The xalan tests, however, are still relying on Apache Ant. You can
+obtain this from https://ant.apache.org/bindownload.cgi. I have been
+testing with Ant 1.10.12, but have successfully built with 1.9.16 as
+well.
-The details mentioned within this file, may also be used, by XalanJ source distribution users to
-build and test XalanJ from the source distribution (except that, "git clone" steps as mentioned
-within this file, might not be required to be run by XalanJ source distribution users).
(1) Steps to build the XalanJ release
-1) Do a git clone, of the relevant XalanJ branches:
+1.1) Obtain the source for XalanJ and its test package.
+
+"Source Distribution" jarfiles are available which contain a snapshot
+of a particular release of the source code; extracting them with "jar
+-xf" will yield the xalan-java and xalan-test directories.
+
+Or (usually preferred) you can use "git clone" to obtain these from
+either github.com. or gitbox.apache.org. New development takes place
+on the branch currently called "master", which git will fetch by default:
+
+ git clone https://github.com/apache/xalan-java.git
+ git clone https://github.com/apache/xalan-test.git
+
+(In the past this code was hosted at gitbox.apache.org, but that now
+redirects to the github copy.)
+
+If you want to build a specific release rather than the development
+version, you can obtain that by adding the release's branch name to
+the git clone operation. For example, to get the code released as
+version 2.7.1, you would issue the command
+
+ git clone https://github.com/apache/xalan-java.git --single-branch --branch xalan-j_2_7_1
+
+There will also usually be a _maint branch, which is used for development and testing of "hot fixes" that will be made available as new point releases (for example, 2.7.1.1). You would access this as
+
+ git clone https://github.com/apache/xalan-java.git --single-branch --branch xalan-j_2_7_1_maint
-git clone --single-branch https://gitbox.apache.org/repos/asf/xalan-java.git -b xalan-j_2_7_1_maint
+Whether you perform the git clone operations or unpack the source
+distribution jarfiles, each produces its own folder: xalan-java and
+xalan-test. Since xalan-test looks for code to be tested via the path
+../xalan-java, these will need to be children of the same parent
+directory for the tests to run.
-git clone https://gitbox.apache.org/repos/asf/xalan-test.git
-This creates two folders: xalan-java and xalan-test. These folders need to be parallel to
-each other, to be able to follow the XalanJ build and tests steps as described in this document,
-for making a XalanJ release for distribution.
+1.2) Set JAVA_HOME and ANT_HOME environment variable. On Linux, assuming
+a standard installation of the JDK with the "alternatives" tooling,
+the easiest way to be sure you have the right JDK may be to use the
+command
-2) Set JAVA_HOME and ANT_HOME environment variables, for example on Windows:
+ export ANT_HOME=/usr/share/ant
+ export JAVA_HOME=$(readlink -f /etc/alternatives/java_sdk_1.8.0)
-set JAVA_HOME=C:\Program Files\Eclipse Adoptium\jdk-8.0.352.8-hotspot\
+On Windows, you will probably need to set these more explicitly, and add them to your PATH:
-set ANT_HOME=C:\java\apache-ant-1.10.12
+ set ANT_HOME=C:\path\to\your\installed\apache-ant-
+ set JAVA_HOME=C:\Program Files\Eclipse Adoptium\jdk-8.0.352.8-hotspot\
+ set PATH=%JAVA_HOME%;%ANT_HOME%;%PATH%
-3) Run the command, "build clean fulldist" from folder xalan-java.
-For XalanJ source distribution users, this command needs to be run from, the root
-of the XalanJ source distribution folder (i.e, from the source distribution folder,
-which contains folders "src", "tools" etc).
+1.3) Go to the xalan-java source directory (i.e, from the source
+distribution folder, which contains folders "src", "tools" etc), and
+from there run the clean-and-distribution-build command:
-(2) Steps to run the XalanJ tests, on XalanJ implementation
+ On Linux, run ./mvnbuild.sh
+ On Windows, run ./mvnbuild.bat
-Note that, for XalanJ source distribution users, XalanJ implementation shall be
-produced (that XalanJ source distribution users, might want to test) by running
-the build command "build clean fulldist" from the root of the XalanJ source
-distribution folder.
+This will build:
+ ./target/site/apidocs: Javadoc for the Xalan code base
-1) Go to the XalanJ tests repos's, local git clone folder:
-cd ..\xalan-test
+ ./target/site/design: Architecture documentation for Xalan
+ (probably outdated)
-For XalanJ source distribution users, xalan-test folder is located at the root of the XalanJ
-source distribution folder (i.e, parallel to folders "src", "tools" etc within the main XalanJ
-codebase folder location), from where XalanJ source distribution users may run XalanJ
-tests, by using the "build" script located at this folder location.
+ ./target/site/xsltc: Architecture documentation for the Xalan bytecode
+ compilation operations (probably outdated)
-2) Set JAVA_HOME and ANT_HOME environment variables, for example:
+ ./build/*.jar: Executable jarfiles for the XML Serializer, the Xalan
+ XSLT Processor, some old xsltc samples and the @xsl.usage taglet
+ we used in producing the Javadoc/apidocs (see above).
-set JAVA_HOME=C:\Program Files\Eclipse Adoptium\jdk-8.0.352.8-hotspot\
+1.4) IMPORTANT: Until we get xalan-test updated, you will need to go to the
+xalan-java/build directory and manually copy or rename the jarfiles to
+remove the version number:
-set ANT_HOME=C:\java\apache-ant-1.10.12
+ Linux:
+ mv xalan-*.jar xalan.jar
+ mv serializer-*.jar serializer.jar
+ Windows:
+ ren xalan-*.jar xalan.jar
+ ren serializer-*.jar serializer.jar
-3) Run the command "build clean jar" from folder xalan-test. This produces
-the file testxsl.jar that acts as main XalanJ test driver, within folder xalan-test/java/build.
-4) Run the necessary XalanJ tests as follows,
+(2) Steps to run the XalanJ tests, assuming you have already build
+xalan-java as discussed above:
-The tests described below within points 4.1, 4.2, 4.3 need to be run from folder xalan-test.
+2.1) Go to the xalan-tests local folder. If you have cloned xalan-java
+and xalan-test from Git, it will be a sibling of xalan-java.
-4.1 Run the ant target "smoketest", using following two commands in sequence shown below
+BUT: For XalanJ source distribution users, the xalan-test folder is
+shipped as a child of the xalan-java source folder (i.e, parallel to
+folders "src", "tools" etc within the main XalanJ codebase folder
+location). In theory you *should* be able to run the tests directly
+from here, but if you run into trouble try moving xalan-test up to be
+a sibling of xalan-java.
-build extensions.classes
+2.2) Ensure the JAVA_HOME, ANT_HOME, and (on Windows) PATH environment
+variables have been set as discussed above.
-build smoketest
+2.3) Go to the xalan-test folder, and from there run a clean source
+build. Unfortunately we don't currently have a single target for this,
+so you need to spell out some of the supporting packages:
-The final result of the command "build smoketest" should be following,
+ Linux: ./build.sh clean jar extensions.classes bugzilla.classes jira.classes
+ Windows: build clean jar extensions.classes bugzilla.classes jira.classes
+
+The jar target builds the main XalanJ test driver, testxsl.jar, which
+acts as main XalanJ test driver. The .classes targets build supporting
+code specific to testing XSLT Extensions or some old issues reported
+via Bugzilla or (more recently) Jira.
+
+
+2.4) From the xalan-test directory, you can run the necessary XalanJ
+tests as follows:
+
+2.4.1) The most important test set is smoketest. This exercises all
+the testcases known to work in Apache Xalan-J, while avoiding some
+which have open issues against them.
+
+Make sure you have built the jar and extensions.classes, as
+above. Then, from the xalan-test directory:
+
+ Linux: ./build.sh smoketest
+ Windows: build smoketest
+
+At the end of the test run, smoketest should report:
smoketest-pass:
[echo] [minitest] CONGRATULATIONS! The Smoketest passed!
-
-4.2 Run the ant target "apitest", using following command
-build apitest
-The final result of the command "build apitest" should be following,
+2.4.2) Run the ant target "apitest", using following command
+
+ Linux: ./build.sh apitest
+ Windows: build apitest
+
+At the end of the test run, apitest should report:
apitest-pass-file-check:
[echo] [minitest] CONGRATULATIONS! The api tests passed!
-4.3 Run the ant target "conf.xsltc", using the following command
-build conf.xsltc
+2.4.3) Run the ant target "conf.xsltc", using the following command
-The final result of the command "build conf.xsltc" should be following,
+ Linux: ./build.sh conf.xsltc
+ Windows: build conf.xsltc
-[echo] [minitest] CONGRATULATIONS! The conf.xsltc tests passed!
-
-The XalanJ XSLTC processor, producing compiled translets, is known to have certain issues
-as summarized by the following jira tickets, for the respective mentioned XalanJ conf.xsltc
-test cases as mentioned below (users shall currently see, these xalanj test cases as failing,
-within the test build conf.xsltc's output).
+At the end of the test run, conf.xsltc should report:
-1) output63 https://issues.apache.org/jira/browse/XALANJ-2642
-2) idkey49 https://issues.apache.org/jira/browse/XALANJ-2640
-3) math111 https://issues.apache.org/jira/browse/XALANJ-2641
-4) whitespace35 https://issues.apache.org/jira/browse/XALANJ-2643
+[echo] [minitest] CONGRATULATIONS! The conf.xsltc tests passed!
-These XSLT transformation issues, do not exist with the XalanJ interpretive processor.
+PLEASE NOTE that XSLTC has some known issues, which will cause FAIL
+reports during this test. These are not considered regressions, and
+are specialcased so conf.xsltc reports "passed" despite them. There
+are Jira tickets open to address these bugs, and when fixes become
+available we will again insist that these tests pass.
+
+ output63 https://issues.apache.org/jira/browse/XALANJ-2642
+ idkey49 https://issues.apache.org/jira/browse/XALANJ-2640
+ math111 https://issues.apache.org/jira/browse/XALANJ-2641
+ whitespace35 https://issues.apache.org/jira/browse/XALANJ-2643
+
+2.4.4) Other test targets exist, which are either subsets of the above
+or are considered less essential for regression testing. You may want
+to read through the build.xml file to find them. NOTE that one target,
+"api", is currently missing, which causes the "all" target to fail; we
+need to clean that up at some point.
+
+2.5) When bugs are reported, tests should be added (at least to the
+jira test set) to demonstrate the problem. When bugs are fixed, those
+tests should be migrated either to the appropriate category or to the
+"contrib" bucket if they don't fit nicely anywhere else. If the bug report was in error, the test demonstrating the (correct but unexpected) behavior may be either discarded, or moved as above if we think it's a useful illustration.
\ No newline at end of file
diff --git a/commits.xml b/ancient_history.commits.xml
similarity index 100%
rename from commits.xml
rename to ancient_history.commits.xml
diff --git a/build.bat b/build.bat
deleted file mode 100644
index 25c89b866..000000000
--- a/build.bat
+++ /dev/null
@@ -1,70 +0,0 @@
-@echo off
-rem
-rem ==========================================================================
-rem = Licensed to the Apache Software Foundation (ASF) under one or more
-rem = contributor license agreements. See the NOTICE file distributed with
-rem = this work for additional information regarding copyright ownership.
-rem = The ASF licenses this file to You under the Apache License, Version 2.0
-rem = (the "License"); you may not use this file except in compliance with
-rem = the License. You may obtain a copy of the License at
-rem =
-rem = http://www.apache.org/licenses/LICENSE-2.0
-rem =
-rem = Unless required by applicable law or agreed to in writing, software
-rem = distributed under the License is distributed on an "AS IS" BASIS,
-rem = WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-rem = See the License for the specific language governing permissions and
-rem = limitations under the License.
-rem ==========================================================================
-rem
-rem build.bat: Build Xalan-J 2.x using Ant
-rem Author: XalanJ team
-rem
-rem Usage: build [ant-options] [targets]
-rem
-rem Setup:
-rem 1) You must set JAVA_HOME
-rem
-rem 2) You can set ANT_HOME if you use your own Ant install
-
-echo.
-echo Xalan-J 2.x Build
-echo -----------------
-
-if "%JAVA_HOME%"=="" goto noJavaHome
-
-if exist "%JAVA_HOME%\lib\tools.jar" (
- set _CLASSPATH=%JAVA_HOME%\lib\tools.jar
-)
-
-set _JAVACMD=%JAVA_HOME%\bin\java
-
-rem Default ANT_HOME to the one what user has set
-if not "%ANT_HOME%"=="" set _ANT_HOME=%ANT_HOME%
-if "%ANT_HOME%"=="" set _ANT_HOME=.
-
-if exist "%_ANT_HOME%\tools\ant.jar" (
- set _ANT_JARS=%_ANT_HOME%\tools\ant.jar
-) else (
- set _ANT_JARS=%_ANT_HOME%\lib\ant.jar;%_ANT_HOME%\lib\ant-launcher.jar
-)
-
-set _CLASSPATH=%_CLASSPATH%;%_ANT_JARS%
-
-set XERCES_ENDORSED_DIR_PATH=lib\endorsed
-
-@echo on
-"%_JAVACMD%" -mx1024m -Djava.endorsed.dirs=%XERCES_ENDORSED_DIR_PATH% -classpath "%_CLASSPATH%" org.apache.tools.ant.Main %1 %2 %3 %4 %5 %6 %7 %8 %9
-@echo off
-
-goto end
-
-:noJavaHome
-echo Warning: JAVA_HOME environment variable is not set
-
-:end
-rem Cleanup environment variables
-set _JAVACMD=
-set _CLASSPATH=
-set _ANT_HOME=
-set _ANT_JARS=
diff --git a/build.sh b/build.sh
deleted file mode 100644
index 4f7ac97c1..000000000
--- a/build.sh
+++ /dev/null
@@ -1,90 +0,0 @@
-#!/bin/sh
-#
-#=========================================================================
-# Copyright 2001-2023 The Apache Software Foundation.
-#
-# Licensed 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.
-#=========================================================================
-#
-# Name: build.sh
-# Author: Joe Kesselman
-# Fresh port from Mukul Gandhi's revised build.bat.
-# WARNING: This currently does not include the hooks needed
-# to make the script compatable with cygwin (unix/Linux shell
-# and commands ported to run under Windows). See
-# deprecated_build.sh to see how we handled the cygwin
-# syntax differences back in 2001. These days, Windows users
-# are more likely to use WSL, which simplifies matters.
-
-# See: build.xml
-
-# Setup:
-# 1) You must set JAVA_HOME, for example,
-# $ export JAVA_HOME=/etc/alternatives/java_sdk
-
-# 2) You can set ANT_HOME if you use your own Ant install, for example,
-# $ export ANT_HOME=/usr/share/ant
-
-echo
-echo Xalan-J test automation build
-echo -----------------------------
-
-if [ "$1" = "-h" ]; then
- echo build.sh - executes Xalan Java-based test automation
- echo Usage: build [target] [-D options]
- echo Example: build api -DtestClass=TransformerAPITest -Dqetest.loggingLevel=30
- echo
- echo You MUST export the JAVA_HOME environment variable to point to the JDK
- echo You CAN export ANT_HOME environment variable if you use your own Ant install
-
- exit 1
-fi
-
-if [ "$JAVA_HOME" = "" ]; then
- echo Warning: JAVA_HOME environment variable is not exported
- echo You may have meant to set it to /etc/alternatives/java_sdk
- exit 1
-fi
-
-if [ -f "$JAVA_HOME/lib/tools.jar" ]; then
- CLASSPATH=$CLASSPATH:$JAVA_HOME/lib/tools.jar
-fi
-
-JAVACMD=$JAVA_HOME/bin/java
-
-CLASSPATH=$CLASSPATH:$JAVA_HOME/lib/tools.jar
-
-# Since Linux has scoped environments, we don't need explicit temporary vars.
-# Default is to use a copy of ant bundled with xalan-java.
-if [ "$ANT_HOME" = "" ]; then
- ANT_HOME=.
-fi
-
-# Check user's ANT_HOME to make sure it actually has what we need
-if [ -f "$ANT_HOME/tools/ant.jar" ]; then
- ANT_JARS=$ANT_HOME/tools/ant.jar
-else
- ANT_JARS=$ANT_HOME/lib/ant.jar:$ANT_HOME/lib/ant-launcher.jar
-fi
-
-CLASSPATH=$CLASSPATH:$ANT_JARS
-
-XERCES_ENDORSED_DIR_PATH=lib/endorsed
-
-XALAN_BUILD_DIR_PATH=../xalan-java/build:../build
-
-# Reminder: Note $* versus $@ distinction
-echo Running:$JAVACMD -mx1024m -Djava.endorsed.dirs=$XERCES_ENDORSED_DIR_PATH -classpath "$CLASSPATH" org.apache.tools.ant.Main "$@"
-$JAVACMD -mx1024m -Djava.endorsed.dirs=$XERCES_ENDORSED_DIR_PATH -classpath "$CLASSPATH" org.apache.tools.ant.Main "$@"
-
-echo "build.sh complete!"
diff --git a/build.xml b/build.xml
deleted file mode 100644
index 55c7d38e5..000000000
--- a/build.xml
+++ /dev/null
@@ -1,1936 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/build_srcdist_xalan.xml b/build_srcdist_xalan.xml
deleted file mode 100644
index 4b2d9d5d9..000000000
--- a/build_srcdist_xalan.xml
+++ /dev/null
@@ -1,1944 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/build_srcdist_xalan_tests.xml b/build_srcdist_xalan_tests.xml
deleted file mode 100644
index 2416aeb7f..000000000
--- a/build_srcdist_xalan_tests.xml
+++ /dev/null
@@ -1,1783 +0,0 @@
-
-
-
-
-build.xml:$Revision$
-Ant 1.4.1+ build script for compiling and running Xalan-J tests.
-
-Note that this is a slightly unusual Ant build.xml file, since we
-support both compiling/packaging the Xalan-J tests themselves, as
-well as a number of targets designed to execute the tests once
-they're built.
-
-In general the compilation targets (i.e. ones that compile the
-test classes themselves) do list their dependencies explicitly.
-Targets that serve to execute tests do not normally list any
-dependencies - users must manually 'build jar' first.
-
-@author shane_curcuru@lotus.com
-@see build.bat
-
-This file has been written, to enable running XalanJ tests from
-XalanJ source distribution. This file is largely, a copy of the
-file build.xml provided by XalanJ xalan-test git repos.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/deprecated_build.sh b/deprecated_build.sh
deleted file mode 100644
index e21d6e133..000000000
--- a/deprecated_build.sh
+++ /dev/null
@@ -1,73 +0,0 @@
-#!/bin/sh
-#
-#=========================================================================
-# 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.
-#=========================================================================
-#
-# Name: build.sh Build Xalan-J 2.x using Ant
-# Author: Shane Curcuru
-
-# Alternatively, you can just call "ant"
-
-echo "Xalan-J 2.x Build"
-echo "-------------"
-
-_JAVACMD=$JAVA_HOME/bin/java
-if [ "$JAVA_HOME" = "" ] ; then
- echo "Warning: JAVA_HOME environment variable is not set."
- _JAVACMD=java
-fi
-
-# Default locations of jars we depend on to run Ant on our build.xml file
-if [ "$ANT_HOME" = "" ] ; then
- ANT_HOME=.
-fi
-if [ "$ANT_JAR" = "" ] ; then
- ANT_JAR=./tools/ant.jar
-fi
-if [ "$PARSER_JAR" = "" ] ; then
- PARSER_JAR=./lib/endorsed/xercesImpl.jar
-fi
-
-if [ "$XML_APIS_JAR" = "" ] ; then
- XML_APIS_JAR=./lib/endorsed/xml-apis.jar
-fi
-
-# Use _underscore prefix to not conflict with user's settings
-# Default to UNIX-style pathing
-CLPATHSEP=:
-# if we're on a Windows box make it ;
-uname | grep WIN && CLPATHSEP=\;
-_CLASSPATH="$ANT_JAR${CLPATHSEP}$XML_APIS_JAR${CLPATHSEP}$PARSER_JAR${CLPATHSEP}$CLASSPATH"
-
-# Attempt to automatically add system classes to _CLASSPATH
-if [ -f $JAVA_HOME/lib/tools.jar ] ; then
- _CLASSPATH=${_CLASSPATH}${CLPATHSEP}${JAVA_HOME}/lib/tools.jar
-fi
-
-if [ -f $JAVA_HOME/lib/classes.zip ] ; then
- _CLASSPATH=${_CLASSPATH}${CLPATHSEP}${JAVA_HOME}/lib/classes.zip
-fi
-
-
-echo "Starting Ant with targets: $@"
-echo " ...with classpath: $_CLASSPATH"
-
-"$_JAVACMD" $JAVA_OPTS -Dant.home=$ANT_HOME -classpath "$_CLASSPATH" org.apache.tools.ant.Main $@
-
-
-
-
diff --git a/distribution/pom.xml b/distribution/pom.xml
new file mode 100644
index 000000000..76b19fe47
--- /dev/null
+++ b/distribution/pom.xml
@@ -0,0 +1,112 @@
+
+ 4.0.0
+
+ xalan
+ xalan-j
+ 2.7.3
+
+
+ distribution
+ distribution
+ pom
+
+
+
+
+ xalan
+ serializer
+
+
+ xalan
+ xalan
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ create-distros
+
+
+ [1,)
+
+
+
+
+ maven-assembly-plugin
+ 3.6.0
+
+
+ distro-assembly
+ package
+
+ single
+
+
+ ${project.parent.build.finalName}
+ ../build
+
+ src/assembly/bin.xml
+
+
+
+
+ source-release-assembly
+ package
+
+ single
+
+
+ ${project.parent.build.finalName}
+ ../build
+
+ src/assembly/src.xml
+
+ gnu
+
+
+
+
+
+
+
+
+
+
diff --git a/distribution/src/assembly/bin.xml b/distribution/src/assembly/bin.xml
new file mode 100644
index 000000000..0d84acd71
--- /dev/null
+++ b/distribution/src/assembly/bin.xml
@@ -0,0 +1,105 @@
+
+
+ bin
+
+ zip
+ tar.gz
+
+ false
+
+
+ true
+
+ xalan:serializer
+ xalan:xalan
+
+
+ ${project.parent.name}_${project.parent.version}
+ false
+
+
+
+ org.jboss.spec.javax.rmi:jboss-rmi-api_1.0_spec
+
+
+
+
+
+
+ true
+
+ xalan:xalansamples
+ xalan:xalanservlet
+ xalan:xsltcapplet
+ xalan:xsltcbrazil
+ xalan:xsltcejb
+ xalan:xsltcservlet
+
+
+ ${project.parent.name}_${project.parent.version}/samples
+ false
+
+
+
+ bcel-*
+ commons-lang3-*
+ java-cup-runtime**
+ regexp-*
+ serializer-*
+ xalan-*
+
+
+
+
+
+
+
+
+
+ ${rootlocation}/lib
+ ${project.parent.name}_${project.parent.version}
+
+ xercesImpl*.jar
+ xml-apis*.jar
+
+
+
+
+ ..
+ META-INF
+
+ LICENSE.txt
+ NOTICE.txt
+
+
+
+
+ ../target/site
+ ${project.parent.name}_${project.parent.version}/docs
+
+
+
+ ../samples
+ ${project.parent.name}_${project.parent.version}/samples
+
+ target/**
+ src/site/**
+
+
+
+
+ ../samples/target/site/
+ ${project.parent.name}_${project.parent.version}/samples
+
+ **/*.html
+
+
+
+
diff --git a/distribution/src/assembly/src.xml b/distribution/src/assembly/src.xml
new file mode 100644
index 000000000..76bbf9003
--- /dev/null
+++ b/distribution/src/assembly/src.xml
@@ -0,0 +1,119 @@
+
+
+
+
+
+
+ src
+
+ zip
+ tar.gz
+
+
+
+
+
+ ..
+ /
+
+ false
+
+
+ **/target/**
+ lib/**
+ build/**
+
+ %regex[(?!((?!${project.basedir}/)[^/]+/)*src/).*${project.basedir}.*]
+
+
+
+
+ %regex[\~$]
+ %regex[/\#.*\#$]
+
+
+ %regex[(?!((?!${project.basedir}/)[^/]+/)*src/)(.*/)?maven-eclipse\.xml]
+ %regex[(?!((?!${project.basedir}/)[^/]+/)*src/)(.*/)?\.project]
+ %regex[(?!((?!${project.basedir}/)[^/]+/)*src/)(.*/)?\.classpath]
+ %regex[(?!((?!${project.basedir}/)[^/]+/)*src/)(.*/)?\.idea]
+ %regex[(?!((?!${project.basedir}/)[^/]+/)*src/)(.*/)?[^/]*\.iws]
+ %regex[(?!((?!${project.basedir}/)[^/]+/)*src/)(.*/)?[^/]*\.ipr]
+ %regex[(?!((?!${project.basedir}/)[^/]+/)*src/)(.*/)?[^/]*\.iml]
+ %regex[(?!((?!${project.basedir}/)[^/]+/)*src/)(.*/)?\.settings(/.*)?]
+ %regex[(?!((?!${project.basedir}/)[^/]+/)*src/)(.*/)?\.externalToolBuilders(/.*)?]
+ %regex[(?!((?!${project.basedir}/)[^/]+/)*src/)(.*/)?\.deployables(/.*)?]
+ %regex[(?!((?!${project.basedir}/)[^/]+/)*src/)(.*/)?\.wtpmodules(/.*)?]
+
+
+ %regex[(?!((?!${project.basedir}/)[^/]+/)*src/)(.*/)?cobertura\.ser]
+
+
+ %regex[(?!((?!${project.basedir}/)[^/]+/)*src/)(.*/)?pom\.xml\.releaseBackup]
+ %regex[(?!((?!${project.basedir}/)[^/]+/)*src/)(.*/)?release\.properties]
+
+
+
+
+
+ ../maven-shared-archive-resources/META-INF
+ /
+
+
+
+ ..
+ /
+
+
+ KEYS
+ README
+ LICENSE.txt
+ NOTICE.txt
+ *.bat
+ *.sh
+
+ **/pom.xml
+ **/stylebook/**
+
+
+
+
+
diff --git a/integration-tests/pom.xml b/integration-tests/pom.xml
new file mode 100644
index 000000000..b440dfe9e
--- /dev/null
+++ b/integration-tests/pom.xml
@@ -0,0 +1,66 @@
+
+
+ 4.0.0
+
+
+ xalan
+ xalan-j
+ 2.7.3
+
+
+ integration-tests
+ pom
+
+
+
+
+ xalan
+ serializer
+
+
+ xalan
+ xalan
+
+
+ xalan
+ xalansamples
+
+
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-invoker-plugin
+
+
+ integration-test
+
+ install
+ run
+
+
+
+
+ src/it
+ ${project.build.directory}/it
+ verify
+ ${project.build.directory}/local-repo
+
+ clean
+ test
+
+ src/it/settings.xml
+
+ ${project.version}
+
+ true
+
+
+
+
+
+
+
diff --git a/integration-tests/src/it/VersionCheck_JarsOnBootClasspath/invoker.properties b/integration-tests/src/it/VersionCheck_JarsOnBootClasspath/invoker.properties
new file mode 100644
index 000000000..3fe5fc416
--- /dev/null
+++ b/integration-tests/src/it/VersionCheck_JarsOnBootClasspath/invoker.properties
@@ -0,0 +1,4 @@
+# These are default values set in the Maven Invoker plugin configuration
+#invoker.goals = clean test
+#invoker.buildResult = success
+#invoker.debug = false
diff --git a/integration-tests/src/it/VersionCheck_JarsOnBootClasspath/pom.xml b/integration-tests/src/it/VersionCheck_JarsOnBootClasspath/pom.xml
new file mode 100644
index 000000000..0cc458029
--- /dev/null
+++ b/integration-tests/src/it/VersionCheck_JarsOnBootClasspath/pom.xml
@@ -0,0 +1,64 @@
+
+ 4.0.0
+
+ org.apache.xalan.it
+ versions
+ 0.0.1-SNAPSHOT
+
+
+ UTF-8
+ UTF-8
+
+
+
+
+ xalan
+ serializer
+ @project.version@
+
+
+ xalan
+ xalan
+ @project.version@
+
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+ @maven-compiler-plugin.version@
+
+ 1.8
+ 1.8
+
+
+
+ org.codehaus.mojo
+ exec-maven-plugin
+ @exec-maven-plugin.version@
+
+
+ display-versions
+ test
+
+ exec
+
+
+ Versions
+ java
+
+ -Xbootclasspath/a:${settings.localRepository}/xalan/serializer/@project.version@/serializer-@project.version@.jar${path.separator}${settings.localRepository}/xalan/xalan/@project.version@/xalan-@project.version@.jar
+ -classpath
+ ${project.build.outputDirectory}
+ Versions
+
+
+
+
+
+
+
+
diff --git a/integration-tests/src/it/VersionCheck_JarsOnBootClasspath/src/main/java/Versions.java b/integration-tests/src/it/VersionCheck_JarsOnBootClasspath/src/main/java/Versions.java
new file mode 100644
index 000000000..31c4666eb
--- /dev/null
+++ b/integration-tests/src/it/VersionCheck_JarsOnBootClasspath/src/main/java/Versions.java
@@ -0,0 +1,38 @@
+/*
+ * 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.
+ */
+
+import org.apache.xalan.Version;
+import org.apache.xalan.processor.XSLProcessorVersion;
+
+public class Versions {
+ private static Class>[] versionClasses = {
+ Version.class,
+ XSLProcessorVersion.class,
+ org.apache.xml.serializer.Version.class
+ };
+
+ public static void main(String[] args) throws ReflectiveOperationException {
+ for (Class> versionClass : versionClasses)
+ System.out.printf("Class %s is %s boot classpath%n",
+ versionClass.getName(),
+ versionClass.getClassLoader() == null ? "on" : "not on"
+ );
+ for (Class> versionClass : versionClasses)
+ System.out.println(versionClass.getMethod("getVersion").invoke(null));
+ }
+}
diff --git a/integration-tests/src/it/VersionCheck_JarsOnBootClasspath/verify.groovy b/integration-tests/src/it/VersionCheck_JarsOnBootClasspath/verify.groovy
new file mode 100644
index 000000000..588068a08
--- /dev/null
+++ b/integration-tests/src/it/VersionCheck_JarsOnBootClasspath/verify.groovy
@@ -0,0 +1,37 @@
+/*
+ * 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.
+ */
+
+// Replace leading zeroes in dev drop version number, e.g. 'D07' to 'D7',
+// because this is what the version classes do, too
+projectVersion = projectVersion.replaceAll("\\.D0*", ".D")
+
+def buildLogLines = new File(basedir, "build.log").readLines()
+def expectedLogLines = [
+ 'Class org.apache.xalan.Version is on boot classpath',
+ 'Class org.apache.xalan.processor.XSLProcessorVersion is on boot classpath',
+ 'Class org.apache.xml.serializer.Version is on boot classpath',
+ "Xalan Java $projectVersion",
+ "Xalan Processor Java $projectVersion",
+ "Xalan Serializer Java $projectVersion"
+]
+
+// Find first expected log output line
+def index = buildLogLines.indexOf(expectedLogLines[0])
+assert index > 0 : "First expected log line not found"
+// Verify that all expected log lines exist in the expected order
+assert buildLogLines[index..index + 5] == expectedLogLines : "Expected log lines not found"
diff --git a/integration-tests/src/it/VersionCheck_JarsOnClasspath/invoker.properties b/integration-tests/src/it/VersionCheck_JarsOnClasspath/invoker.properties
new file mode 100644
index 000000000..3fe5fc416
--- /dev/null
+++ b/integration-tests/src/it/VersionCheck_JarsOnClasspath/invoker.properties
@@ -0,0 +1,4 @@
+# These are default values set in the Maven Invoker plugin configuration
+#invoker.goals = clean test
+#invoker.buildResult = success
+#invoker.debug = false
diff --git a/integration-tests/src/it/VersionCheck_JarsOnClasspath/pom.xml b/integration-tests/src/it/VersionCheck_JarsOnClasspath/pom.xml
new file mode 100644
index 000000000..3461449ed
--- /dev/null
+++ b/integration-tests/src/it/VersionCheck_JarsOnClasspath/pom.xml
@@ -0,0 +1,57 @@
+
+ 4.0.0
+
+ org.apache.xalan.it
+ versions
+ 0.0.1-SNAPSHOT
+
+
+ UTF-8
+ UTF-8
+
+
+
+
+ xalan
+ serializer
+ @project.version@
+
+
+ xalan
+ xalan
+ @project.version@
+
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+ @maven-compiler-plugin.version@
+
+ 1.8
+ 1.8
+
+
+
+ org.codehaus.mojo
+ exec-maven-plugin
+ @exec-maven-plugin.version@
+
+
+ display-versions
+ test
+
+ java
+
+
+ Versions
+
+
+
+
+
+
+
diff --git a/integration-tests/src/it/VersionCheck_JarsOnClasspath/src/main/java/Versions.java b/integration-tests/src/it/VersionCheck_JarsOnClasspath/src/main/java/Versions.java
new file mode 100644
index 000000000..31c4666eb
--- /dev/null
+++ b/integration-tests/src/it/VersionCheck_JarsOnClasspath/src/main/java/Versions.java
@@ -0,0 +1,38 @@
+/*
+ * 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.
+ */
+
+import org.apache.xalan.Version;
+import org.apache.xalan.processor.XSLProcessorVersion;
+
+public class Versions {
+ private static Class>[] versionClasses = {
+ Version.class,
+ XSLProcessorVersion.class,
+ org.apache.xml.serializer.Version.class
+ };
+
+ public static void main(String[] args) throws ReflectiveOperationException {
+ for (Class> versionClass : versionClasses)
+ System.out.printf("Class %s is %s boot classpath%n",
+ versionClass.getName(),
+ versionClass.getClassLoader() == null ? "on" : "not on"
+ );
+ for (Class> versionClass : versionClasses)
+ System.out.println(versionClass.getMethod("getVersion").invoke(null));
+ }
+}
diff --git a/integration-tests/src/it/VersionCheck_JarsOnClasspath/verify.groovy b/integration-tests/src/it/VersionCheck_JarsOnClasspath/verify.groovy
new file mode 100644
index 000000000..2c9cc23d5
--- /dev/null
+++ b/integration-tests/src/it/VersionCheck_JarsOnClasspath/verify.groovy
@@ -0,0 +1,37 @@
+/*
+ * 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.
+ */
+
+// Replace leading zeroes in dev drop version number, e.g. 'D07' to 'D7',
+// because this is what the version classes do, too
+projectVersion = projectVersion.replaceAll("\\.D0*", ".D")
+
+def buildLogLines = new File(basedir, "build.log").readLines()
+def expectedLogLines = [
+ 'Class org.apache.xalan.Version is not on boot classpath',
+ 'Class org.apache.xalan.processor.XSLProcessorVersion is not on boot classpath',
+ 'Class org.apache.xml.serializer.Version is not on boot classpath',
+ "Xalan Java $projectVersion",
+ "Xalan Processor Java $projectVersion",
+ "Xalan Serializer Java $projectVersion"
+]
+
+// Find first expected log output line
+def index = buildLogLines.indexOf(expectedLogLines[0])
+assert index > 0 : "First expected log line not found"
+// Verify that all expected log lines exist in the expected order
+assert buildLogLines[index..index + 5] == expectedLogLines : "Expected log lines not found"
diff --git a/integration-tests/src/it/VersionCheck_ShadedJarOnBootClasspath/invoker.properties b/integration-tests/src/it/VersionCheck_ShadedJarOnBootClasspath/invoker.properties
new file mode 100644
index 000000000..2333c022b
--- /dev/null
+++ b/integration-tests/src/it/VersionCheck_ShadedJarOnBootClasspath/invoker.properties
@@ -0,0 +1,4 @@
+invoker.goals = clean verify
+# These are default values set in the Maven Invoker plugin configuration
+#invoker.buildResult = success
+#invoker.debug = false
diff --git a/integration-tests/src/it/VersionCheck_ShadedJarOnBootClasspath/pom.xml b/integration-tests/src/it/VersionCheck_ShadedJarOnBootClasspath/pom.xml
new file mode 100644
index 000000000..f0be644d4
--- /dev/null
+++ b/integration-tests/src/it/VersionCheck_ShadedJarOnBootClasspath/pom.xml
@@ -0,0 +1,87 @@
+
+ 4.0.0
+
+ org.apache.xalan.it
+ versions
+ 0.0.1-SNAPSHOT
+
+
+ UTF-8
+ UTF-8
+
+
+
+
+ xalan
+ serializer
+ @project.version@
+
+
+ xalan
+ xalan
+ @project.version@
+
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+ @maven-compiler-plugin.version@
+
+ 1.8
+ 1.8
+
+
+
+ org.apache.maven.plugins
+ maven-shade-plugin
+ @maven-shade-plugin.version@
+
+
+ package
+
+ shade
+
+
+
+
+ org.apache.xalan
+ shaded.org.apache.xalan
+
+
+ org.apache.xml.serializer
+ shaded.org.apache.xml.serializer
+
+
+
+
+
+
+
+ org.codehaus.mojo
+ exec-maven-plugin
+ @exec-maven-plugin.version@
+
+
+ display-versions
+ verify
+
+ exec
+
+
+ Versions
+ java
+
+ -Xbootclasspath/a:${build.directory}/${build.finalName}.jar
+ Versions
+
+
+
+
+
+
+
+
diff --git a/integration-tests/src/it/VersionCheck_ShadedJarOnBootClasspath/src/main/java/Versions.java b/integration-tests/src/it/VersionCheck_ShadedJarOnBootClasspath/src/main/java/Versions.java
new file mode 100644
index 000000000..31c4666eb
--- /dev/null
+++ b/integration-tests/src/it/VersionCheck_ShadedJarOnBootClasspath/src/main/java/Versions.java
@@ -0,0 +1,38 @@
+/*
+ * 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.
+ */
+
+import org.apache.xalan.Version;
+import org.apache.xalan.processor.XSLProcessorVersion;
+
+public class Versions {
+ private static Class>[] versionClasses = {
+ Version.class,
+ XSLProcessorVersion.class,
+ org.apache.xml.serializer.Version.class
+ };
+
+ public static void main(String[] args) throws ReflectiveOperationException {
+ for (Class> versionClass : versionClasses)
+ System.out.printf("Class %s is %s boot classpath%n",
+ versionClass.getName(),
+ versionClass.getClassLoader() == null ? "on" : "not on"
+ );
+ for (Class> versionClass : versionClasses)
+ System.out.println(versionClass.getMethod("getVersion").invoke(null));
+ }
+}
diff --git a/integration-tests/src/it/VersionCheck_ShadedJarOnBootClasspath/verify.groovy b/integration-tests/src/it/VersionCheck_ShadedJarOnBootClasspath/verify.groovy
new file mode 100644
index 000000000..6d12efc2d
--- /dev/null
+++ b/integration-tests/src/it/VersionCheck_ShadedJarOnBootClasspath/verify.groovy
@@ -0,0 +1,37 @@
+/*
+ * 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.
+ */
+
+// Replace leading zeroes in dev drop version number, e.g. 'D07' to 'D7',
+// because this is what the version classes do, too
+projectVersion = projectVersion.replaceAll("\\.D0*", ".D")
+
+def buildLogLines = new File(basedir, "build.log").readLines()
+def expectedLogLines = [
+ 'Class shaded.org.apache.xalan.Version is on boot classpath',
+ 'Class shaded.org.apache.xalan.processor.XSLProcessorVersion is on boot classpath',
+ 'Class shaded.org.apache.xml.serializer.Version is on boot classpath',
+ "Xalan Java $projectVersion",
+ "Xalan Processor Java $projectVersion",
+ "Xalan Serializer Java $projectVersion"
+]
+
+// Find first expected log output line
+def index = buildLogLines.indexOf(expectedLogLines[0])
+assert index > 0 : "First expected log line not found"
+// Verify that all expected log lines exist in the expected order
+assert buildLogLines[index..index + 5] == expectedLogLines : "Expected log lines not found"
diff --git a/integration-tests/src/it/settings.xml b/integration-tests/src/it/settings.xml
new file mode 100644
index 000000000..68f4b2ddd
--- /dev/null
+++ b/integration-tests/src/it/settings.xml
@@ -0,0 +1,54 @@
+
+
+
+
+
+
+
+ it-repo
+
+ true
+
+
+
+ local.central
+ @localRepositoryUrl@
+
+ true
+
+
+ true
+
+
+
+
+
+ local.central
+ @localRepositoryUrl@
+
+ true
+
+
+ true
+
+
+
+
+
+
diff --git a/lib/bcel-6.7.0.jar b/lib/bcel-6.7.0.jar
deleted file mode 100644
index fb36e1d38..000000000
Binary files a/lib/bcel-6.7.0.jar and /dev/null differ
diff --git a/lib/brazil-2.1.jar b/lib/brazil-2.1.jar
deleted file mode 100644
index 78a1e784f..000000000
Binary files a/lib/brazil-2.1.jar and /dev/null differ
diff --git a/lib/bsf.jar b/lib/bsf.jar
deleted file mode 100644
index 302896730..000000000
Binary files a/lib/bsf.jar and /dev/null differ
diff --git a/lib/commons-logging-1.2.jar b/lib/commons-logging-1.2.jar
deleted file mode 100644
index 93a3b9f6d..000000000
Binary files a/lib/commons-logging-1.2.jar and /dev/null differ
diff --git a/lib/endorsed/xercesImpl.jar b/lib/endorsed/xercesImpl.jar
deleted file mode 100644
index ccbae9f45..000000000
Binary files a/lib/endorsed/xercesImpl.jar and /dev/null differ
diff --git a/lib/endorsed/xml-apis.jar b/lib/endorsed/xml-apis.jar
deleted file mode 100644
index 4f677fc86..000000000
Binary files a/lib/endorsed/xml-apis.jar and /dev/null differ
diff --git a/lib/javaee-api-5.0-2.jar b/lib/javaee-api-5.0-2.jar
deleted file mode 100644
index 65acd770a..000000000
Binary files a/lib/javaee-api-5.0-2.jar and /dev/null differ
diff --git a/lib/regexp.jar b/lib/regexp.jar
deleted file mode 100644
index 713441c52..000000000
Binary files a/lib/regexp.jar and /dev/null differ
diff --git a/lib/rhino-1.7.14.jar b/lib/rhino-1.7.14.jar
deleted file mode 100644
index ad47a2015..000000000
Binary files a/lib/rhino-1.7.14.jar and /dev/null differ
diff --git a/lib/runtime.jar b/lib/runtime.jar
deleted file mode 100644
index c74baf197..000000000
Binary files a/lib/runtime.jar and /dev/null differ
diff --git a/lib/servlet-api-2.5.jar b/lib/servlet-api-2.5.jar
deleted file mode 100644
index b0537c4db..000000000
Binary files a/lib/servlet-api-2.5.jar and /dev/null differ
diff --git a/mvnbuild.bat b/mvnbuild.bat
new file mode 100644
index 000000000..7fe831aad
--- /dev/null
+++ b/mvnbuild.bat
@@ -0,0 +1 @@
+mvn clean package site
diff --git a/mvnbuild.sh b/mvnbuild.sh
new file mode 100755
index 000000000..7fe831aad
--- /dev/null
+++ b/mvnbuild.sh
@@ -0,0 +1 @@
+mvn clean package site
diff --git a/pom.xml b/pom.xml
new file mode 100644
index 000000000..c5d459543
--- /dev/null
+++ b/pom.xml
@@ -0,0 +1,593 @@
+
+
+
+ pom
+
+ 4.0.0
+ xalan
+ xalan-j
+ 2.7.3
+
+
+ UTF-8
+
+ "stylebook/stylebook-1.0-b3_xalan-2.jar${path.separator}serializer/target/classes${path.separator}xalan/target/classes${path.separator}"
+
+ 3.11.0
+ 3.1.0
+ 3.5.1
+ 5.10.1
+
+ 4.11.0
+ 3.6.0
+ 3.3.0
+
+
+
+ serializer
+ xalan
+ xalansamples
+ xalanservlet
+ xsltcapplet
+ xsltcbrazil
+ xsltcejb
+ xsltcservlet
+
+ distribution
+
+
+
+
+ jdk8
+
+ [,9)
+
+
+ xalan2jtaglet
+
+
+ xalan2jtaglet
+
+
+
+ jdk9+
+
+ [9,)
+
+
+ xalan2jtaglet_jdk9
+
+ -XX:+EnableDynamicAgentLoading
+
+
+ xalan2jtaglet_jdk9
+
+
+
+ create-docs
+
+
+ [1,)
+
+
+
+
+
+ org.codehaus.mojo
+ exec-maven-plugin
+ ${exec-maven-plugin.version}
+ false
+
+
+ Xalan2 design documentation
+ package
+
+ exec
+
+
+ java
+ -cp ${stylebook.classpath} org.apache.stylebook.StyleBook
+ loaderConfig=sbk:/style/loaderdesign.xml targetDirectory=./target/site/design/
+ ./stylebook/sources/xalandesign.xml ./stylebook/style
+
+
+
+
+ Xalan2 compiled (xsltc) documentation
+ package
+
+ exec
+
+
+ java
+ -cp ${stylebook.classpath} org.apache.stylebook.StyleBook
+ loaderConfig=sbk:/style/loaderdesign.xml targetDirectory=./target/site/xsltc/
+ ./stylebook/sources/xsltc.xml ./stylebook/style
+
+
+
+ Xalan2 interpretive documentation
+ package
+
+ exec
+
+
+ java
+ -cp ${stylebook.classpath} org.apache.stylebook.StyleBook
+ loaderConfig=sbk:/style/loaderdesign.xml targetDirectory=./target/site/xalan
+ ./stylebook/sources/xalan-jsite.xml ./stylebook/style
+
+
+
+
+
+ Xalan2 interpretive documentation, local
+ package
+
+ exec
+
+
+ java
+ -cp ${stylebook.classpath} org.apache.stylebook.StyleBook
+ loaderConfig=sbk:/style/loaderdesign.xml targetDirectory=./target/site/xalan/local
+ ./stylebook/sources/xalan-jlocal.xml ./stylebook/style
+
+
+
+
+
+
+
+
+ integration-tests
+
+
+ [1,)
+
+
+ integration-tests
+
+
+
+
+
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-dependency-plugin
+ 3.6.1
+
+
+ copy-artifact
+ package
+
+ copy
+
+
+
+
+
+ ${project.groupId}
+ ${project.artifactId}
+ ${project.version}
+ ${project.packaging}
+
+
+
+ ${project.groupId}
+ ${project.artifactId}
+ ${project.version}
+ ${project.packaging}
+
+ ${project.artifactId}.${project.packaging}
+
+
+ ${rootlocation}/build
+
+
+
+ copy-dependencies
+ package
+
+ copy-dependencies
+
+
+ ${rootlocation}/lib
+ false
+ false
+ true
+
+ xalan
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+ ${maven-compiler-plugin.version}
+
+ 1.8
+ 1.8
+
+
+
+
+ org.apache.maven.plugins
+ maven-surefire-plugin
+ 3.2.2
+
+ ${maven-surefire-plugin.argLine}
+
+
+
+
+ org.apache.maven.plugins
+ maven-invoker-plugin
+ 3.6.0
+
+
+ org.codehaus.mojo
+ build-helper-maven-plugin
+ 3.5.0
+
+
+ root-location
+
+ rootlocation
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-shade-plugin
+ ${maven-shade-plugin.version}
+
+
+ org.apache.maven.plugins
+ maven-javadoc-plugin
+ ${maven-javadoc-plugin.version}
+
+
+
+ none
+
+
+
+ 8
+ 1.8
+
+
+
+
+ xalan2jtaglet.XSLUsageTag
+
+
+
+ xalan
+ ${xalan.taglet.artifactId}
+ ${project.version}
+
+
+
+
+
+ XPath
+ org.apache.xpath*
+
+
+ Document Table Model (DTM)
+ org.apache.xml.dtm*
+
+
+ Utilities
+ org.apache.xml.utils*
+
+
+ Xalan Other
+ org.apache.xalan.client:org:org.apache.xalan.extensions:org.apache.xalan.res:org.apache.xalan.stree:org.apache.xalan.trace:org.apache.xalan.xslt
+
+
+ Xalan Extensions
+ org.apache.xalan.lib*
+
+
+ Serializers
+ org.apache.xml.serialize*:org.apache.xalan.serialize
+
+
+ SAX 2
+ org.xml.sax*
+
+
+ DOM 2
+ org.w3c.dom*
+
+
+ XSLTC Core
+ org.apache.xalan.xsltc*
+
+
+ Samples
+ samples*
+
+
+
+
+
+
+ javadoc-jar
+ package
+
+ jar
+
+
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-source-plugin
+ ${maven-source-plugin.version}
+
+
+ source-jar
+ package
+
+ jar-no-fork
+
+
+
+
+
+
+
+
+ src/main/java
+
+
+ META-INF
+
+ LICENSE.txt
+ NOTICE.txt
+
+
+
+ resources
+
+ **/*.properties
+
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-site-plugin
+ 3.7.1
+
+
+
+
+ org.apache.maven.plugins
+ maven-project-info-reports-plugin
+ 3.4.5
+
+
+
+
+ org.apache.maven.plugins
+ maven-clean-plugin
+ 3.3.2
+
+
+
+ ./build
+ false
+
+
+ ./lib
+ false
+
+
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-resources-plugin
+ 3.0.2
+
+
+ copy-resources
+ package
+
+ copy-resources
+
+
+ ${basedir}/target/site/xsltc
+
+
+ stylebook/sources/xsltc
+
+ README.x*
+
+
+
+
+
+
+
+
+
+ org.codehaus.mojo
+ build-helper-maven-plugin
+
+
+
+
+
+
+
+
+
+
+ xalan
+ serializer
+ ${project.version}
+
+
+ xalan
+ xalan
+ ${project.version}
+
+
+ xalan
+ xalansamples
+ ${project.version}
+
+
+
+
+ xalan
+ xalan2jtaglet
+ ${project.version}
+
+
+ xalan
+ xalan2jtaglet_jdk9
+ ${project.version}
+
+
+
+
+ org.junit.jupiter
+ junit-jupiter-engine
+ ${junit-jupiter.version}
+ test
+
+
+ org.junit.jupiter
+ junit-jupiter-params
+ ${junit-jupiter.version}
+ test
+
+
+ org.mockito
+ mockito-inline
+ ${mockito.version}
+ test
+
+
+ org.mockito
+ mockito-junit-jupiter
+ ${mockito.version}
+ test
+
+
+
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-javadoc-plugin
+
+
+ xalan2jtaglet
+
+
+
+
+ aggregate
+ false
+
+ aggregate
+
+
+
+ default
+
+ javadoc
+
+
+
+
+
+
+
+
diff --git a/samples/CompiledBrazil/README.brazil b/samples/CompiledBrazil/README.brazil
deleted file mode 100644
index ee5fe58f8..000000000
--- a/samples/CompiledBrazil/README.brazil
+++ /dev/null
@@ -1,55 +0,0 @@
-============================================================
-CONTENTS OF THIS DOCUMENT:
-
- o) HOW TO PROVIDE XSL TRANSFORMATIONS AS A WEB SERVICE
- o) HOW TO INVOKE TRANSLETS FROM A BRAZIL HANDLER
-
-------------------------------------------------------------
-HOW TO PROVIDE XSL TRANSFORMATIONS AS A WEB SERVICE
-
-This sample code illustrates how Xalan/XSLTC can be used to
-offer XSL transformations as a web service without using a
-full web server. We have chosen to use the Brazil prototype
-for the web interface, available from Sunlabs:
- http://www.sun.com/research/brazil/
-but we could easily have used some other web interface such
-as Tomcat. The supplied Java code implements a Brazil
-"handler", which very much resembles a servlet.
-
-The CompiledEJB and CompiledServlet sample code
-demonstrate other approaches to providing XSL transformations
-as a web service.
-
-------------------------------------------------------------
-HOW TO INVOKE TRANSLETS FROM A BRAZIL HANDLER
-
-The CompiledBrazil directory contains the example source code:
-
- TransformHandler.java
-
-This file contains a minimal implementation of an XSL
-transformation handler. You can find a precompiled version
-in xsltcbrazil.jar.
-
-Compile any stylesheets you're interested in into translets.
-Set your CLASSPATH to include xalan.jar, xercesImpl.jar,
-xml-apis.jar, your translet classes and the Brazil server
-jar file.
-
-You can now set up the Brazil server to service requests by
-using the following command:
-
-$ java -Djavax.xml.transform.TransformerFactory=org.apache.xalan.xsltc.trax.TransformerFactoryImpl \
- sunlabs.brazil.server.Main -port 8080 \
- -handler TransformHandler
-
-In a browser, you can enter a URI similar to the following:
-
- http://localhost:8080/?translet=myTrans&document=myDoc
-
-where "myTrans" is the URI of a stylesheet that you've
-compiled into a translet and "myDoc" is URI of an XML document
-you'd like to process using that stylesheet. The result of
-the transformation will be displayed in your browser.
-------------------------------------------------------------
-END OF README
diff --git a/samples/extensions/sql/ext-connection/ExternalConnection.java b/samples/extensions/sql/ext-connection/ExternalConnection.java
deleted file mode 100644
index 753e474f9..000000000
--- a/samples/extensions/sql/ext-connection/ExternalConnection.java
+++ /dev/null
@@ -1,105 +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.
- */
-/*
- * $Id$
- */
-// Imported TraX classes
-import javax.xml.transform.TransformerFactory;
-import javax.xml.transform.Transformer;
-import javax.xml.transform.stream.StreamSource;
-import javax.xml.transform.stream.StreamResult;
-import javax.xml.transform.TransformerException;
-import javax.xml.transform.TransformerConfigurationException;
-
-import org.apache.xalan.lib.sql.DefaultConnectionPool;
-import org.apache.xalan.lib.sql.ConnectionPoolManager;
-
-
-// Imported java classes
-import java.io.StringReader;
-import java.io.FileOutputStream;
-import java.io.FileNotFoundException;
-import java.io.IOException;
-
-/**
- * Use the TraX interface to perform a transformation in the simplest manner possible
- * (3 statements).
- */
-public class ExternalConnection
-{
- public static void main(String[] args)
- throws TransformerException, TransformerConfigurationException,
- FileNotFoundException, IOException
- {
-
- // Create a connection to the database server
- // Up the connection pool count for testing
- DefaultConnectionPool cp = new DefaultConnectionPool();
- cp.setDriver("org.apache.derby.jdbc.EmbeddedDriver");
- cp.setURL("jdbc:derby:sampleDB");
- //cp.setUser("sa");
- //cp.setPassword("");
- cp.setMinConnections(10);
- cp.setPoolEnabled(true);
-
- // Now let's register our connection pool so we can use
- // in a stylesheet
- ConnectionPoolManager pm = new ConnectionPoolManager();
- pm.registerPool("extpool", cp);
-
-
- // Use the static TransformerFactory.newInstance() method to instantiate
- // a TransformerFactory. The javax.xml.transform.TransformerFactory
- // system property setting determines the actual class to instantiate --
- // org.apache.xalan.transformer.TransformerImpl.
- TransformerFactory tFactory = TransformerFactory.newInstance();
-
- // Grab the Name of the Stylesheet from the command line
- if (args.length == 0)
- {
- System.out.println("You must provide the path and name to a stylesheet to process");
- System.exit(0);
- }
-
- String stylesheet = args[0];
- System.out.println("Transforming Stylesheet " + stylesheet);
-
- // Use the TransformerFactory to instantiate a Transformer that will work with
- // the stylesheet you specify. This method call also processes the stylesheet
- // into a compiled Templates object.
- Transformer transformer = tFactory.newTransformer(
- new StreamSource(stylesheet));
-
- // For this transformation, all the required information is in the stylesheet, so generate
- // a minimal XML source document for the input.
- // Note: the command-line processor (org.apache.xalan.xslt.Process) uses this strategy when
- // the user does not provide an -IN parameter.
- StringReader reader =
- new StringReader(" ");
-
- // Use the Transformer to apply the associated Templates object to an XML document
- // and write the output to a file.
- transformer.transform(
- new StreamSource(reader),
- new StreamResult(new FileOutputStream("dbtest-out.html")));
-
- System.out.println("************* The result is in dbtest-out.html *************");
-
- cp.setPoolEnabled(false);
- }
-}
diff --git a/samples/servlet/media.properties b/samples/servlet/media.properties
deleted file mode 100644
index 45db095f4..000000000
--- a/samples/servlet/media.properties
+++ /dev/null
@@ -1,60 +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.
-##
-#
-# $Id$
-#
-# This property file is used by com.lotus.xsl.server.DefaultApplyXSL.
-#
-# Each line below specifies a mapping rule between a value contained in the HTTP request's user-Agent
-# field and a value to be scanned for in XSL stylesheet(s) associated with the XML data. This mapping
-# enables relationships to be defined between client capabilities and stylesheets capable of acting
-# on these capabilities.
-#
-# The rules defined below are order-significant. In other words, if the first rule is unsuccessful,
-# the second rule will be tried, etc. The media value "unknown" will be used when no rules are
-# satisfied.
-#
-# Example:
-#
-# Mapping rules of...
-#
-# MSIE=explorer
-# MSPIE=pocketexplorer
-#
-# ...and XML data that contains XSL stylesheet associations of...
-#
-#
-#
-#
-# ...and an HTTP request that contains a user-Agent value of...
-#
-# foo MSPIE bar
-#
-# ...will apply the XSL stylesheet somedata.xsl.
-#
-MSIE=explorer
-MSPIE=pocketexplorer
-HandHTTP=handweb
-Mozilla=netscape
-Lynx=lynx
-Opera=opera
-Java=java
-AvantGo=avantgo
-Nokia=nokia
-UP.Browser=up
-DoCoMo=imode
diff --git a/serializer/pom.xml b/serializer/pom.xml
new file mode 100644
index 000000000..13d420f44
--- /dev/null
+++ b/serializer/pom.xml
@@ -0,0 +1,153 @@
+
+ 4.0.0
+
+ xalan
+ xalan-j
+ 2.7.3
+
+
+ serializer
+ Apache XML Serializer
+ Apache's XML serialization layer, as used in the Xalan XSLT processor
+
+
+
+
+ xalan
+ ${xalan.taglet.artifactId}
+ provided
+
+
+
+
+ org.apache.bcel
+ bcel
+ 6.7.0
+
+
+
+ commons-logging
+ commons-logging
+ 1.2
+ provided
+
+
+
+ javax
+ javaee-api
+ 6.0
+ provided
+
+
+
+ javax.servlet
+ servlet-api
+ 2.5
+ provided
+
+
+
+ xerces
+ xercesImpl
+ 2.12.2
+ provided
+
+
+
+ xml-apis
+ xml-apis
+ 1.4.01
+
+ provided
+
+
+
+
+ org.junit.jupiter
+ junit-jupiter-engine
+ test
+
+
+ org.junit.jupiter
+ junit-jupiter-params
+ test
+
+
+ org.mockito
+ mockito-inline
+ test
+
+
+ org.mockito
+ mockito-junit-jupiter
+ test
+
+
+
+
+
+
+
+
+ src/main/resources
+ true
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-surefire-plugin
+
+
+
+ org.apache.maven.plugins
+ maven-dependency-plugin
+
+
+
+
+
+
+
+ create-javadocs
+
+
+ [1,)
+
+
+
+
+ org.apache.maven.plugins
+ maven-javadoc-plugin
+
+
+
+
+
+ create-sources
+
+
+ [1,)
+
+
+
+
+ org.apache.maven.plugins
+ maven-source-plugin
+
+
+
+
+
+
+
diff --git a/src/MANIFEST.SERIALIZER b/serializer/src/main/java/MANIFEST.SERIALIZER
similarity index 100%
rename from src/MANIFEST.SERIALIZER
rename to serializer/src/main/java/MANIFEST.SERIALIZER
diff --git a/src/org/apache/xml/serializer/AttributesImplSerializer.java b/serializer/src/main/java/org/apache/xml/serializer/AttributesImplSerializer.java
similarity index 100%
rename from src/org/apache/xml/serializer/AttributesImplSerializer.java
rename to serializer/src/main/java/org/apache/xml/serializer/AttributesImplSerializer.java
diff --git a/src/org/apache/xml/serializer/CharInfo.java b/serializer/src/main/java/org/apache/xml/serializer/CharInfo.java
similarity index 100%
rename from src/org/apache/xml/serializer/CharInfo.java
rename to serializer/src/main/java/org/apache/xml/serializer/CharInfo.java
diff --git a/src/org/apache/xml/serializer/DOM3Serializer.java b/serializer/src/main/java/org/apache/xml/serializer/DOM3Serializer.java
similarity index 98%
rename from src/org/apache/xml/serializer/DOM3Serializer.java
rename to serializer/src/main/java/org/apache/xml/serializer/DOM3Serializer.java
index 82e6470da..d05c37743 100644
--- a/src/org/apache/xml/serializer/DOM3Serializer.java
+++ b/serializer/src/main/java/org/apache/xml/serializer/DOM3Serializer.java
@@ -45,7 +45,7 @@
*
* Example:
*
- * public class TestDOM3 {
+ * public class TestDOM3 {
*
* public static void main(String args[]) throws Exception {
* // Get document to serialize
@@ -55,7 +55,8 @@
* System.out.println(test.testDOM3LS());
* }
*
- * public org.w3c.dom.Document getDocument() throws Exception {
+ * // Javadoc needs an @code hint or it complains about angle brackets
+ * public org.w3c.dom.Document getDocument() throws Exception {@code
* // Create a simple DOM Document.
* javax.xml.parsers.DocumentBuilderFactory factory =
* javax.xml.parsers.DocumentBuilderFactory.newInstance();
diff --git a/src/org/apache/xml/serializer/DOMSerializer.java b/serializer/src/main/java/org/apache/xml/serializer/DOMSerializer.java
similarity index 100%
rename from src/org/apache/xml/serializer/DOMSerializer.java
rename to serializer/src/main/java/org/apache/xml/serializer/DOMSerializer.java
diff --git a/src/org/apache/xml/serializer/ElemContext.java b/serializer/src/main/java/org/apache/xml/serializer/ElemContext.java
similarity index 100%
rename from src/org/apache/xml/serializer/ElemContext.java
rename to serializer/src/main/java/org/apache/xml/serializer/ElemContext.java
diff --git a/src/org/apache/xml/serializer/ElemDesc.java b/serializer/src/main/java/org/apache/xml/serializer/ElemDesc.java
similarity index 100%
rename from src/org/apache/xml/serializer/ElemDesc.java
rename to serializer/src/main/java/org/apache/xml/serializer/ElemDesc.java
diff --git a/src/org/apache/xml/serializer/EmptySerializer.java b/serializer/src/main/java/org/apache/xml/serializer/EmptySerializer.java
similarity index 91%
rename from src/org/apache/xml/serializer/EmptySerializer.java
rename to serializer/src/main/java/org/apache/xml/serializer/EmptySerializer.java
index fba7de2cc..3bcd49ddd 100644
--- a/src/org/apache/xml/serializer/EmptySerializer.java
+++ b/serializer/src/main/java/org/apache/xml/serializer/EmptySerializer.java
@@ -50,43 +50,66 @@ public class EmptySerializer implements SerializationHandler
{
protected static final String ERR = "EmptySerializer method not over-ridden";
/**
- * @see SerializationHandler#asContentHandler()
+ * Architectural placeholder, overridden in derived classes
+ * @throws IOException if one arises in override implementation.
*/
-
protected void couldThrowIOException() throws IOException
{
return; // don't do anything.
}
+ /**
+ * Architectural placeholder, overridden in derived classes
+ * @throws SAXException if one arises in override implementation.
+ */
protected void couldThrowSAXException() throws SAXException
{
return; // don't do anything.
}
+ /**
+ * Architectural placeholder, overridden in derived classes
+ * @param chars char[] containing content being serialized
+ * @param off integer offset into chars, start of content under consideration
+ * @param len integer character count, length of content under consideration
+ * @throws SAXException if one arises in override implementation.
+ */
protected void couldThrowSAXException(char[] chars, int off, int len) throws SAXException
{
return; // don't do anything.
}
+ /**
+ * Architectural placeholder, overridden in derived classes
+ * @param elemQName qualified name of element being serialized
+ * @throws SAXException if one arises in override implementation.
+ */
protected void couldThrowSAXException(String elemQName) throws SAXException
{
return; // don't do anything.
}
+ /**
+ * Architectural placeholder, overridden in derived classes
+ * @throws Exception (unknown which type) if one arises in override implementation.
+ */
protected void couldThrowException() throws Exception
{
return; // don't do anything.
}
+ /**
+ * Architectural placeholder, overridden in derived implementation.
+ * A handler method might be invoked, or inlined, from this location.
+ */
void aMethodIsCalled()
{
// throw new RuntimeException(err);
return;
}
-
- /**
+ /**
* @see SerializationHandler#asContentHandler()
*/
public ContentHandler asContentHandler() throws IOException
@@ -94,14 +117,14 @@ public ContentHandler asContentHandler() throws IOException
couldThrowIOException();
return null;
}
- /**
+ /**
* @see SerializationHandler#setContentHandler(org.xml.sax.ContentHandler)
*/
public void setContentHandler(ContentHandler ch)
{
aMethodIsCalled();
}
- /**
+ /**
* @see SerializationHandler#close()
*/
public void close()
@@ -109,6 +132,7 @@ public void close()
aMethodIsCalled();
}
/**
+ * @return Properties object describing the serializer's configuration
* @see SerializationHandler#getOutputFormat()
*/
public Properties getOutputFormat()
@@ -117,6 +141,7 @@ public Properties getOutputFormat()
return null;
}
/**
+ * @return the OutputStream that this serializer would write to
* @see SerializationHandler#getOutputStream()
*/
public OutputStream getOutputStream()
@@ -125,6 +150,7 @@ public OutputStream getOutputStream()
return null;
}
/**
+ * @return the Writer this serializer uses to write to the OutputStream
* @see SerializationHandler#getWriter()
*/
public Writer getWriter()
@@ -133,6 +159,7 @@ public Writer getWriter()
return null;
}
/**
+ * return
* @see SerializationHandler#reset()
*/
public boolean reset()
@@ -155,6 +182,7 @@ public void setCdataSectionElements(Vector URI_and_localNames)
aMethodIsCalled();
}
/**
+ * @return previous state of this flag, so it can be restored if desired.
* @see SerializationHandler#setEscaping(boolean)
*/
public boolean setEscaping(boolean escape) throws SAXException
@@ -217,7 +245,7 @@ public void setTransformer(Transformer transformer)
public Transformer getTransformer()
{
aMethodIsCalled();
- return null;
+ return null;
}
/**
* @see SerializationHandler#flushPending()
@@ -559,7 +587,14 @@ public String getVersion()
return null;
}
/**
- * @see XSLOutputAttributes#setCdataSectionElements
+ /**
+ * I believe this is intended to be a convenience front-end for the
+ * version which takes a Vector.
+ * @see #setCdataSectionElements(java.util.Vector)
+ * @param h Hashtable listing the element types (as opposed to datatypes)
+ * to be handled as CData.
+ * @throws Exception if the request can't be fulfilled (details
+ * depend on implementation)
*/
public void setCdataSectionElements(Hashtable h) throws Exception
{
diff --git a/src/org/apache/xml/serializer/EncodingInfo.java b/serializer/src/main/java/org/apache/xml/serializer/EncodingInfo.java
similarity index 96%
rename from src/org/apache/xml/serializer/EncodingInfo.java
rename to serializer/src/main/java/org/apache/xml/serializer/EncodingInfo.java
index 840405b2f..e3fc76705 100644
--- a/src/org/apache/xml/serializer/EncodingInfo.java
+++ b/serializer/src/main/java/org/apache/xml/serializer/EncodingInfo.java
@@ -42,9 +42,9 @@
* m_last). It will handle a certain range of values
* explicitly (m_explFirst to m_explLast).
* If the unicode point is before that explicit range, that is it
- * is in the range m_first <= value < m_explFirst, then it will delegate to another EncodingInfo object for The root
+ * is in the range m_first <= value < m_explFirst, then it will delegate to another EncodingInfo object for The root
* of such a tree, m_before. Likewise for values in the range
- * m_explLast < value <= m_last, but delgating to m_after
+ * m_explLast < value <= m_last, but delgating to m_after
*
* Actually figuring out if a code point is in the encoding is expensive. So the
* purpose of this tree is to cache such determinations, and not to build the
@@ -97,6 +97,7 @@ public final class EncodingInfo extends Object
* This is not a public API. It returns true if the
* char in question is in the encoding.
* @param ch the char in question.
+ * @return true if the character is a member of the encoding's charset
*
* This method is not a public API.
* @xsl.usage internal
@@ -118,6 +119,7 @@ public boolean isInEncoding(char ch) {
* character formed by the high/low pair is in the encoding.
* @param high a char that the a high char of a high/low surrogate pair.
* @param low a char that is the low char of a high/low surrogate pair.
+ * @return true if the character is a member of the encoding's charset
*
* This method is not a public API.
* @xsl.usage internal
@@ -167,23 +169,24 @@ public EncodingInfo(String name, String javaName, char highChar)
*/
private interface InEncoding {
/**
- * Returns true if the char is in the encoding
+ * @return true if the char is in the encoding
*/
public boolean isInEncoding(char ch);
/**
- * Returns true if the high/low surrogate pair forms
+ * @return true if the high/low surrogate pair forms
* a character that is in the encoding.
*/
public boolean isInEncoding(char high, char low);
}
/**
- * This class implements the
+ * This class implements the InEncoding interface
*/
private class EncodingImpl implements InEncoding {
-
-
+ /**
+ * @return true if the char is in the encoding
+ */
public boolean isInEncoding(char ch1) {
final boolean ret;
int codePoint = Encodings.toCodePoint(ch1);
@@ -231,6 +234,10 @@ public boolean isInEncoding(char ch1) {
return ret;
}
+ /**
+ * @return true if the high/low surrogate pair forms
+ * a character that is in the encoding.
+ */
public boolean isInEncoding(char high, char low) {
final boolean ret;
int codePoint = Encodings.toCodePoint(high,low);
@@ -551,6 +558,7 @@ else if (data[0] == '?' && ch != '?')
* If the value returned is '\u0000' it means that every character must be tested
* with an isInEncoding method {@link #isInEncoding(char)} or {@link #isInEncoding(char, char)}
* for surrogate pairs.
+ * @return highest character in lowest group of characters handled by this encoding
*
* This method is not a public API.
* @xsl.usage internal
diff --git a/src/org/apache/xml/serializer/Encodings.java b/serializer/src/main/java/org/apache/xml/serializer/Encodings.java
similarity index 100%
rename from src/org/apache/xml/serializer/Encodings.java
rename to serializer/src/main/java/org/apache/xml/serializer/Encodings.java
diff --git a/src/org/apache/xml/serializer/ExtendedContentHandler.java b/serializer/src/main/java/org/apache/xml/serializer/ExtendedContentHandler.java
similarity index 90%
rename from src/org/apache/xml/serializer/ExtendedContentHandler.java
rename to serializer/src/main/java/org/apache/xml/serializer/ExtendedContentHandler.java
index 8cf35d3ff..df3358eb0 100644
--- a/src/org/apache/xml/serializer/ExtendedContentHandler.java
+++ b/serializer/src/main/java/org/apache/xml/serializer/ExtendedContentHandler.java
@@ -54,7 +54,7 @@ public interface ExtendedContentHandler extends org.xml.sax.ContentHandler
* @param type the attribute type typically character data (CDATA)
* @param value the value of the attribute
* @param XSLAttribute true if the added attribute is coming from an xsl:attribute element
- * @throws SAXException
+ * @throws SAXException if attribute could not be written to output
*/
public void addAttribute(
String uri,
@@ -67,7 +67,7 @@ public void addAttribute(
/**
* Add attributes to the current element
* @param atts the attributes to add.
- * @throws SAXException
+ * @throws SAXException if attributes could not be written to output
*/
public void addAttributes(org.xml.sax.Attributes atts)
throws org.xml.sax.SAXException;
@@ -75,8 +75,8 @@ public void addAttributes(org.xml.sax.Attributes atts)
* Add an attribute to the current element. The namespace URI of the
* attribute will be calculated from the prefix of qName. The local name
* will be derived from qName and the type will be assumed to be "CDATA".
- * @param qName
- * @param value
+ * @param qName Qualified Name of the attribute to be added
+ * @param value String value of the attribute to be added
*/
public void addAttribute(String qName, String value);
@@ -84,7 +84,7 @@ public void addAttributes(org.xml.sax.Attributes atts)
* This method is used to notify of a character event, but passing the data
* as a character String rather than the standard character array.
* @param chars the character data
- * @throws SAXException
+ * @throws SAXException if characters could not be written to output
*/
public void characters(String chars) throws SAXException;
@@ -92,7 +92,7 @@ public void addAttributes(org.xml.sax.Attributes atts)
* This method is used to notify of a character event, but passing the data
* as a DOM Node rather than the standard character array.
* @param node a DOM Node containing text.
- * @throws SAXException
+ * @throws SAXException if characters could not be written to output
*/
public void characters(org.w3c.dom.Node node) throws org.xml.sax.SAXException;
/**
@@ -105,7 +105,7 @@ public void addAttributes(org.xml.sax.Attributes atts)
* the localName from the qualified name and derive the namespaceURI from
* its implementation.
* @param elemName the fully qualified element name.
- * @throws SAXException
+ * @throws SAXException if end tag could not be written to output
*/
public void endElement(String elemName) throws SAXException;
@@ -119,8 +119,7 @@ public void addAttributes(org.xml.sax.Attributes atts)
* @param uri the namespace URI of the element
* @param localName the local name (without prefix) of the element
* @param qName the qualified name of the element
- *
- * @throws SAXException
+ * @throws SAXException if start tag could not be written to output
*/
public void startElement(String uri, String localName, String qName)
throws org.xml.sax.SAXException;
@@ -128,9 +127,10 @@ public void startElement(String uri, String localName, String qName)
/**
* This method is used to notify of the start of an element
* @param qName the fully qualified name of the element
- * @throws SAXException
+ * @throws SAXException if start tag could not be written to output
*/
public void startElement(String qName) throws SAXException;
+
/**
* This method is used to notify that a prefix mapping is to start, but
* after an element is started. The SAX method call
@@ -147,7 +147,7 @@ public void startElement(String uri, String localName, String qName)
*
* @param uri the namespace URI being declared
* @param prefix the prefix that maps to the given namespace
- * @throws SAXException
+ * @throws SAXException if namespace declaration could not be processed
*/
public void namespaceAfterStartElement(String uri, String prefix)
throws SAXException;
@@ -163,7 +163,7 @@ public void namespaceAfterStartElement(String uri, String prefix)
* @return boolean false if the prefix mapping was already in effect (in
* other words we are just re-declaring), true if this is a new, never
* before seen mapping for the element.
- * @throws SAXException
+ * @throws SAXException if namespace declaration could not be processed
*/
public boolean startPrefixMapping(
String prefix,
@@ -173,7 +173,7 @@ public boolean startPrefixMapping(
/**
* Notify of an entity reference.
* @param entityName the name of the entity
- * @throws SAXException
+ * @throws SAXException if entity reference could not be written to output
*/
public void entityReference(String entityName) throws SAXException;
@@ -239,6 +239,7 @@ public boolean startPrefixMapping(
* @param qName the fully qualified attribute name.
* @param value the attribute value
* @param flags a bitwise flag
+ * @throws SAXException if attribute could not be added to output
*/
public void addUniqueAttribute(String qName, String value, int flags)
throws SAXException;
@@ -259,7 +260,7 @@ public void addUniqueAttribute(String qName, String value, int flags)
* @param rawName the qualified name of the attribute
* @param type the attribute type typically character data (CDATA)
* @param value the value of the attribute
- * @throws SAXException
+ * @throws SAXException if attribute could not be added to output
*/
public void addAttribute(
String uri,
diff --git a/src/org/apache/xml/serializer/ExtendedLexicalHandler.java b/serializer/src/main/java/org/apache/xml/serializer/ExtendedLexicalHandler.java
similarity index 95%
rename from src/org/apache/xml/serializer/ExtendedLexicalHandler.java
rename to serializer/src/main/java/org/apache/xml/serializer/ExtendedLexicalHandler.java
index bb7f90f53..837e32485 100644
--- a/src/org/apache/xml/serializer/ExtendedLexicalHandler.java
+++ b/serializer/src/main/java/org/apache/xml/serializer/ExtendedLexicalHandler.java
@@ -33,7 +33,7 @@ public interface ExtendedLexicalHandler extends org.xml.sax.ext.LexicalHandler
* This method is used to notify of a comment
* @param comment the comment, but unlike the SAX comment() method this
* method takes a String rather than a character array.
- * @throws SAXException
+ * @throws SAXException if comment could not be processed
*/
public void comment(String comment) throws SAXException;
}
diff --git a/src/org/apache/xml/serializer/Method.java b/serializer/src/main/java/org/apache/xml/serializer/Method.java
similarity index 100%
rename from src/org/apache/xml/serializer/Method.java
rename to serializer/src/main/java/org/apache/xml/serializer/Method.java
diff --git a/src/org/apache/xml/serializer/NamespaceMappings.java b/serializer/src/main/java/org/apache/xml/serializer/NamespaceMappings.java
similarity index 96%
rename from src/org/apache/xml/serializer/NamespaceMappings.java
rename to serializer/src/main/java/org/apache/xml/serializer/NamespaceMappings.java
index 91d25d342..0497c8656 100644
--- a/src/org/apache/xml/serializer/NamespaceMappings.java
+++ b/serializer/src/main/java/org/apache/xml/serializer/NamespaceMappings.java
@@ -33,22 +33,22 @@
*
*
*
- * When the element is encounted the prefix "p1" associated with uri
+ * When the <chapter> element is encounted the prefix "p1" associated with uri
* "def" is pushed on the stack with depth 1.
- * When the first is encountered "p2" and "ghi" are pushed with
+ * When the first <paragraph> is encountered "p2" and "ghi" are pushed with
* depth 2.
- * When the is encountered "p3" and "jkl" are pushed with depth 3.
- * When occurs the popNamespaces(3) will pop "p3"/"jkl" off the
+ * When the <sentence> is encountered "p3" and "jkl" are pushed with depth 3.
+ * When </sentence> occurs the popNamespaces(3) will pop "p3"/"jkl" off the
* stack. Of course popNamespaces(2) would pop anything with depth 2 or
* greater.
*
@@ -221,6 +221,7 @@ boolean popNamespace(String prefix)
* @param prefix a String with the prefix for a qualified name
* @param uri a String with the uri to which the prefix is to map
* @param elemDepth the depth of current declaration
+ * @return true if binding succeeded, false otherwise
*/
public boolean pushNamespace(String prefix, String uri, int elemDepth)
{
diff --git a/src/org/apache/xml/serializer/ObjectFactory.java b/serializer/src/main/java/org/apache/xml/serializer/ObjectFactory.java
similarity index 100%
rename from src/org/apache/xml/serializer/ObjectFactory.java
rename to serializer/src/main/java/org/apache/xml/serializer/ObjectFactory.java
diff --git a/src/org/apache/xml/serializer/OutputPropertiesFactory.java b/serializer/src/main/java/org/apache/xml/serializer/OutputPropertiesFactory.java
similarity index 100%
rename from src/org/apache/xml/serializer/OutputPropertiesFactory.java
rename to serializer/src/main/java/org/apache/xml/serializer/OutputPropertiesFactory.java
diff --git a/src/org/apache/xml/serializer/OutputPropertyUtils.java b/serializer/src/main/java/org/apache/xml/serializer/OutputPropertyUtils.java
similarity index 100%
rename from src/org/apache/xml/serializer/OutputPropertyUtils.java
rename to serializer/src/main/java/org/apache/xml/serializer/OutputPropertyUtils.java
diff --git a/src/org/apache/xml/serializer/SecuritySupport.java b/serializer/src/main/java/org/apache/xml/serializer/SecuritySupport.java
similarity index 100%
rename from src/org/apache/xml/serializer/SecuritySupport.java
rename to serializer/src/main/java/org/apache/xml/serializer/SecuritySupport.java
diff --git a/src/org/apache/xml/serializer/SerializationHandler.java b/serializer/src/main/java/org/apache/xml/serializer/SerializationHandler.java
similarity index 87%
rename from src/org/apache/xml/serializer/SerializationHandler.java
rename to serializer/src/main/java/org/apache/xml/serializer/SerializationHandler.java
index fca975f3c..6e0c8fd09 100644
--- a/src/org/apache/xml/serializer/SerializationHandler.java
+++ b/serializer/src/main/java/org/apache/xml/serializer/SerializationHandler.java
@@ -54,7 +54,7 @@ public interface SerializationHandler
/**
* Set the SAX Content handler that the serializer sends its output to. This
* method only applies to a ToSAXHandler, not to a ToStream serializer.
- *
+ * @param ch the ContentHandler to recieve serializer's output
* @see Serializer#asContentHandler()
* @see ToSAXHandler
*/
@@ -67,7 +67,7 @@ public interface SerializationHandler
* serialized.
*
* @param node the DOM node to be serialized.
- * @throws IOException
+ * @throws IOException if the serializer encounters IO problems.
*/
public void serialize(Node node) throws IOException;
/**
@@ -75,9 +75,14 @@ public interface SerializationHandler
*
* Note that characters will
* never, even if this option is set to 'true', be escaped within
- * CDATA sections in output XML documents.
+ * CDATA sections in output XML documents. The only kind of escaping
+ * which takes place in that mode is when we are forced to end a
+ * CDATA section and begin a new one in order to split content that
+ * would otherwise include the CDATA end sequence.
*
* @param escape true if escaping is to be set on.
+ * @return prior state of this flag, to permit restoring it later.
+ * @throws SAXException if the request cannot be handled correctly
*/
public boolean setEscaping(boolean escape) throws SAXException;
@@ -131,6 +136,8 @@ public interface SerializationHandler
*
* For performance reasons this method should not be called
* very often.
+ * @throws SAXException if one was produced in the course of
+ * flushing the buffers (eg disk full or connection lost).
*/
public void flushPending() throws SAXException;
diff --git a/src/org/apache/xml/serializer/Serializer.java b/serializer/src/main/java/org/apache/xml/serializer/Serializer.java
similarity index 98%
rename from src/org/apache/xml/serializer/Serializer.java
rename to serializer/src/main/java/org/apache/xml/serializer/Serializer.java
index 933d1c6ef..19b249158 100644
--- a/src/org/apache/xml/serializer/Serializer.java
+++ b/serializer/src/main/java/org/apache/xml/serializer/Serializer.java
@@ -146,7 +146,7 @@ public interface Serializer {
* "omit-xml-declaration", "standalone", doctype-public",
* "doctype-system", "cdata-section-elements", "indent", "media-type".
* These property keys and their values are described in the XSLT recommendation,
- * see {@link XSLT 1.0 recommendation}
+ * <a href="http://www.w3.org/TR/1999/REC-xslt-19991116"> XSLT 1.0 recommendation</a>
*
* The non-standard property keys supported are defined in {@link OutputPropertiesFactory}.
*
diff --git a/src/org/apache/xml/serializer/SerializerBase.java b/serializer/src/main/java/org/apache/xml/serializer/SerializerBase.java
similarity index 96%
rename from src/org/apache/xml/serializer/SerializerBase.java
rename to serializer/src/main/java/org/apache/xml/serializer/SerializerBase.java
index 1df30014e..c0c3585c0 100644
--- a/src/org/apache/xml/serializer/SerializerBase.java
+++ b/serializer/src/main/java/org/apache/xml/serializer/SerializerBase.java
@@ -91,6 +91,7 @@ public abstract class SerializerBase
/**
* To fire off the end element trace event
* @param name Name of element
+ * @throws SAXException if the trace handler produces one
*/
protected void fireEndElem(String name)
throws org.xml.sax.SAXException
@@ -107,6 +108,7 @@ protected void fireEndElem(String name)
* @param chars content of characters
* @param start starting index of characters to output
* @param length number of characters to output
+ * @throws SAXException if the trace handler produces one
*/
protected void fireCharEvent(char[] chars, int start, int length)
throws org.xml.sax.SAXException
@@ -123,7 +125,7 @@ protected void fireCharEvent(char[] chars, int start, int length)
*/
protected boolean m_needToCallStartDocument = true;
- /** True if a trailing "]]>" still needs to be written to be
+ /** True if a trailing "]]>" still needs to be written to be
* written out. Used to merge adjacent CDATA sections
*/
protected boolean m_cdataTagOpen = false;
@@ -273,6 +275,8 @@ public void comment(String data) throws SAXException
* TODO: This method is a HACK! We do not have access to the
* XML file, it sometimes generates a NS prefix of the form "ns?" for
* an attribute.
+ * @param qname Qualified name to be patched.
+ * @return Replacement qname
*/
protected String patchName(String qname)
{
@@ -563,7 +567,7 @@ public String getEncoding()
/**
* Sets the character encoding coming from the xsl:output encoding stylesheet attribute.
- * @param m_encoding the character encoding
+ * @param encoding the character encoding
*/
public void setEncoding(String encoding)
{
@@ -895,8 +899,7 @@ public String getNamespaceURIFromPrefix(String prefix)
* Entity reference event.
*
* @param name Name of entity
- *
- * @throws org.xml.sax.SAXException
+ * @throws org.xml.sax.SAXException if the serializer or tracer encounters an error.
*/
public void entityReference(String name) throws org.xml.sax.SAXException
{
@@ -943,7 +946,7 @@ public Transformer getTransformer()
* This method gets the nodes value as a String and uses that String as if
* it were an input character notification.
* @param node the Node to serialize
- * @throws org.xml.sax.SAXException
+ * @throws org.xml.sax.SAXException if the serializer or tracer encounters an error.
*/
public void characters(org.w3c.dom.Node node)
throws org.xml.sax.SAXException
@@ -988,6 +991,7 @@ public void warning(SAXParseException exc) throws SAXException
/**
* To fire off start entity trace event
* @param name Name of entity
+ * @throws org.xml.sax.SAXException if the tracer encounters an error.
*/
protected void fireStartEntity(String name)
throws org.xml.sax.SAXException
@@ -1041,6 +1045,7 @@ private void flushMyWriter()
* @param chars content of CDATA
* @param start starting index of characters to output
* @param length number of characters to output
+ * @throws org.xml.sax.SAXException if the serializer or tracer encounters an error.
*/
protected void fireCDATAEvent(char[] chars, int start, int length)
throws org.xml.sax.SAXException
@@ -1057,6 +1062,7 @@ protected void fireCDATAEvent(char[] chars, int start, int length)
* @param chars content of comment
* @param start starting index of comment to output
* @param length number of characters to output
+ * @throws org.xml.sax.SAXException if the serializer or tracer encounters an error.
*/
protected void fireCommentEvent(char[] chars, int start, int length)
throws org.xml.sax.SAXException
@@ -1072,6 +1078,7 @@ protected void fireCommentEvent(char[] chars, int start, int length)
/**
* To fire off end entity trace event
* @param name Name of entity
+ * @throws org.xml.sax.SAXException if the serializer or tracer encounters an error.
*/
public void fireEndEntity(String name)
throws org.xml.sax.SAXException
@@ -1083,6 +1090,7 @@ public void fireEndEntity(String name)
/**
* To fire off start document trace event
+ * @throws org.xml.sax.SAXException if the serializer or tracer encounters an error.
*/
protected void fireStartDoc()
throws org.xml.sax.SAXException
@@ -1097,6 +1105,7 @@ protected void fireStartDoc()
/**
* To fire off end document trace event
+ * @throws org.xml.sax.SAXException if the serializer or tracer encounters an error.
*/
protected void fireEndDoc()
throws org.xml.sax.SAXException
@@ -1113,6 +1122,7 @@ protected void fireEndDoc()
* called just before the attributes are cleared.
*
* @param elemName the qualified name of the element
+ * @throws org.xml.sax.SAXException if the serializer or tracer encounters an error.
*
*/
protected void fireStartElem(String elemName)
@@ -1127,21 +1137,11 @@ protected void fireStartElem(String elemName)
}
- /**
- * To fire off the end element event
- * @param name Name of element
- */
-// protected void fireEndElem(String name)
-// throws org.xml.sax.SAXException
-// {
-// if (m_tracer != null)
-// m_tracer.fireGenerateEvent(SerializerTrace.EVENTTYPE_ENDELEMENT,name, (Attributes)null);
-// }
-
-
/**
* To fire off the PI trace event
* @param name Name of PI
+ * @param data PI parameters (typically pseudoattributes)
+ * @throws org.xml.sax.SAXException if the serializer or tracer encounters an error.
*/
protected void fireEscapingEvent(String name, String data)
throws org.xml.sax.SAXException
@@ -1158,6 +1158,7 @@ protected void fireEscapingEvent(String name, String data)
/**
* To fire off the entity reference trace event
* @param name Name of entity reference
+ * @throws org.xml.sax.SAXException if the serializer or tracer encounters an error.
*/
protected void fireEntityReference(String name)
throws org.xml.sax.SAXException
@@ -1180,8 +1181,6 @@ protected void fireEntityReference(String name)
*
* @throws org.xml.sax.SAXException Any SAX exception, possibly
* wrapping another exception.
- *
- * @throws org.xml.sax.SAXException
*/
public void startDocument() throws org.xml.sax.SAXException
{
@@ -1206,7 +1205,8 @@ public void startDocument() throws org.xml.sax.SAXException
* called from an external caller, which in principle is just a matter of
* style.
*
- * @throws SAXException
+ * @throws org.xml.sax.SAXException Any SAX exception, possibly
+ * wrapping another exception.
*/
protected void startDocumentInternal() throws org.xml.sax.SAXException
{
@@ -1443,10 +1443,9 @@ private void addCDATAElement(String uri, String localName)
/**
- * Return true if nothing has been sent to this result tree yet.
+ * @return true if nothing has been sent to this result tree yet.
*
* This is not a public API.
- *
* @xsl.usage internal
*/
public boolean documentIsEmpty() {
@@ -1455,9 +1454,9 @@ public boolean documentIsEmpty() {
}
/**
- * Return true if the current element in m_elemContext
+ * @return true if the current element in m_elemContext
* is a CDATA section.
- * CDATA sections are specified in the attribute
+ * CDATA sections are specified in the <xsl:output> attribute
* cdata-section-names or in the JAXP equivalent property.
* In any case the format of the value of such a property is:
*
@@ -1561,8 +1560,8 @@ public String getOutputProperty(String name) {
* not the default value. If there is a default
* value, but no non-default value this method
* will return null.
- *
- *
+ * @param name Property name to be queried
+ * @return default value, or null if no default is defined
*/
public String getOutputPropertyNonDefault(String name )
{
diff --git a/src/org/apache/xml/serializer/SerializerConstants.java b/serializer/src/main/java/org/apache/xml/serializer/SerializerConstants.java
similarity index 91%
rename from src/org/apache/xml/serializer/SerializerConstants.java
rename to serializer/src/main/java/org/apache/xml/serializer/SerializerConstants.java
index 41cb45605..49a06dbd5 100644
--- a/src/org/apache/xml/serializer/SerializerConstants.java
+++ b/serializer/src/main/java/org/apache/xml/serializer/SerializerConstants.java
@@ -27,13 +27,11 @@
interface SerializerConstants
{
- /** To insert ]]> in a CDATA section by ending the last CDATA section with
- * ]] and starting the next CDATA section with >
+ /** Use to insert ]]< in a CDATA section context by ending the
+ * last CDATA section with ]] and starting the next CDATA section
+ * with <
*/
static final String CDATA_CONTINUE = "]]]]>";
- /**
- * The constant "]]>"
- */
static final String CDATA_DELIMITER_CLOSE = "]]>";
static final String CDATA_DELIMITER_OPEN = "
- * The standard property keys supported are: "method", "version", "encoding",
- * "omit-xml-declaration", "standalone", doctype-public",
- * "doctype-system", "cdata-section-elements", "indent", "media-type".
- * These property keys and their values are described in the XSLT recommendation,
- * see {@link XSLT 1.0 recommendation}
+ *
The standard property keys supported are: "method",
+ * "version", "encoding", "omit-xml-declaration", "standalone",
+ * doctype-public", "doctype-system", "cdata-section-elements",
+ * "indent", "media-type". These property keys and their values are
+ * described in the XSLT 1.0
+ * recommendation
*
*
* The value of the "cdata-section-elements" property key is a whitespace
@@ -79,13 +81,13 @@ private SerializerFactory() {
* an exception of some type will be thrown.
* For a list of the output "method" key values see {@link Method}.
*
+ * May thrown an Exception if the class for the serializer is not
+ * found, or is found but does not implement ContentHandler.
+ *
* @param format The output format, minimally the "method" property must be set.
* @return A suitable serializer.
* @throws IllegalArgumentException if method is
* null or an appropriate serializer can't be found
- * @throws Exception if the class for the serializer is found but does not
- * implement ContentHandler.
- * @throws WrappedRuntimeException if an exception is thrown while trying to find serializer
*/
public static Serializer getSerializer(Properties format)
{
diff --git a/src/org/apache/xml/serializer/SerializerTrace.java b/serializer/src/main/java/org/apache/xml/serializer/SerializerTrace.java
similarity index 100%
rename from src/org/apache/xml/serializer/SerializerTrace.java
rename to serializer/src/main/java/org/apache/xml/serializer/SerializerTrace.java
diff --git a/src/org/apache/xml/serializer/SerializerTraceWriter.java b/serializer/src/main/java/org/apache/xml/serializer/SerializerTraceWriter.java
similarity index 100%
rename from src/org/apache/xml/serializer/SerializerTraceWriter.java
rename to serializer/src/main/java/org/apache/xml/serializer/SerializerTraceWriter.java
diff --git a/src/org/apache/xml/serializer/ToHTMLSAXHandler.java b/serializer/src/main/java/org/apache/xml/serializer/ToHTMLSAXHandler.java
similarity index 97%
rename from src/org/apache/xml/serializer/ToHTMLSAXHandler.java
rename to serializer/src/main/java/org/apache/xml/serializer/ToHTMLSAXHandler.java
index 12f8b6384..46017c97c 100644
--- a/src/org/apache/xml/serializer/ToHTMLSAXHandler.java
+++ b/serializer/src/main/java/org/apache/xml/serializer/ToHTMLSAXHandler.java
@@ -79,7 +79,6 @@ public OutputStream getOutputStream()
}
/**
- * Returns null
* @return null
* @see Serializer#getWriter()
*/
@@ -90,14 +89,19 @@ public Writer getWriter()
/**
* Does nothing.
- *
+ * @throws SAXException never
+ * @param n would normally be the number of columns to indent by
*/
public void indent(int n) throws SAXException
{
}
/**
- * Does nothing.
+ * Does nothing. NOTE: we *COULD* have functionality here that
+ * Did Something Appropriate, if we could agree on what that is.
+ * Convert to text?
+ * @throws IOException never
+ * @param node DOM node to be ignored
* @see DOMSerializer#serialize(Node)
*/
public void serialize(Node node) throws IOException
@@ -108,10 +112,9 @@ public void serialize(Node node) throws IOException
/**
* Turns special character escaping on/off.
*
- *
* @param escape true if escaping is to be set on.
- *
* @see SerializationHandler#setEscaping(boolean)
+ * @throws SAXException never (I think), but signature requires it.
*/
public boolean setEscaping(boolean escape) throws SAXException
{
@@ -283,8 +286,6 @@ public void ignorableWhitespace(char[] ch, int start, int length)
* none was supplied.
* @throws org.xml.sax.SAXException Any SAX exception, possibly
* wrapping another exception.
- *
- * @throws org.xml.sax.SAXException
* @see org.xml.sax.ContentHandler#processingInstruction(String, String)
*/
public void processingInstruction(String target, String data)
@@ -335,9 +336,6 @@ public void skippedEntity(String arg0) throws SAXException
* @see org.xml.sax.ContentHandler#startElement
* @see org.xml.sax.ContentHandler#endElement
* @see org.xml.sax.AttributeList
- *
- * @throws org.xml.sax.SAXException
- *
* @see org.xml.sax.ContentHandler#startElement(String, String, String, Attributes)
*/
public void startElement(
@@ -419,10 +417,6 @@ public void startEntity(String arg0) throws SAXException
*
* @throws org.xml.sax.SAXException Any SAX exception, possibly
* wrapping another exception.
- *
- * @throws org.xml.sax.SAXException
- *
- *
*/
public void endDocument() throws SAXException
{
@@ -467,9 +461,7 @@ public void close()
* Receive notification of character data.
*
* @param chars The string of characters to process.
- *
- * @throws org.xml.sax.SAXException
- *
+ * @throws org.xml.sax.SAXException if buffering fails
* @see ExtendedContentHandler#characters(String)
*/
public void characters(final String chars) throws SAXException
@@ -599,7 +591,7 @@ public void endElement(String elementName) throws SAXException
* @see #ignorableWhitespace
* @see org.xml.sax.Locator
*
- * @throws org.xml.sax.SAXException
+ * @throws org.xml.sax.SAXException if the underlying saxHandler objects
*
* @see org.xml.sax.ContentHandler#characters(char[], int, int)
*/
diff --git a/src/org/apache/xml/serializer/ToHTMLStream.java b/serializer/src/main/java/org/apache/xml/serializer/ToHTMLStream.java
similarity index 98%
rename from src/org/apache/xml/serializer/ToHTMLStream.java
rename to serializer/src/main/java/org/apache/xml/serializer/ToHTMLStream.java
index 453fac601..38e4632fd 100644
--- a/src/org/apache/xml/serializer/ToHTMLStream.java
+++ b/serializer/src/main/java/org/apache/xml/serializer/ToHTMLStream.java
@@ -676,10 +676,7 @@ public ToHTMLStream()
/**
* Receive notification of the beginning of a document.
*
- * @throws org.xml.sax.SAXException Any SAX exception, possibly
- * wrapping another exception.
- *
- * @throws org.xml.sax.SAXException
+ * @throws SAXException if underlying handler reports an error
*/
protected void startDocumentInternal() throws org.xml.sax.SAXException
{
@@ -744,10 +741,7 @@ private void outputDocTypeDecl(String name) throws SAXException {
/**
* Receive notification of the end of a document.
*
- * @throws org.xml.sax.SAXException Any SAX exception, possibly
- * wrapping another exception.
- *
- * @throws org.xml.sax.SAXException
+ * @throws SAXException if underlying handler reports an error
*/
public final void endDocument() throws org.xml.sax.SAXException
{
@@ -773,9 +767,8 @@ public final void endDocument() throws org.xml.sax.SAXException
/**
* Receive notification of the beginning of an element.
*
- *
- * @param namespaceURI
- * @param localName
+ * @param namespaceURI Element namespace binding from qname
+ * @param localName Element's local name from qname
* @param name The element type name.
* @param atts The attributes attached to the element, if any.
* @throws org.xml.sax.SAXException Any SAX exception, possibly
@@ -917,10 +910,8 @@ else if (
/**
* Receive notification of the end of an element.
- *
- *
- * @param namespaceURI
- * @param localName
+ * @param namespaceURI Element namespace binding from qname
+ * @param localName Element's local name from qname
* @param name The element type name
* @throws org.xml.sax.SAXException Any SAX exception, possibly
* wrapping another exception.
@@ -1054,7 +1045,7 @@ else if (m_doIndent && (!m_inBlockElem || isBlockElement))
* @param elemDesc The description of the HTML element
* that has this attribute.
*
- * @throws org.xml.sax.SAXException
+ * @throws IOException if output fails
*/
protected void processAttribute(
java.io.Writer writer,
@@ -1139,11 +1130,12 @@ private boolean isHHSign(String str)
* Write the specified string after substituting non ASCII characters,
* with %HH, where HH is the hex of the byte value.
*
+ * @param writer The writer to write the processed output to.
* @param string String to convert to XML format.
* @param doURLEscaping True if we should try to encode as
* per http://www.ietf.org/rfc/rfc2396.txt.
*
- * @throws org.xml.sax.SAXException if a bad surrogate pair is detected.
+ * @throws IOException (SAXException) if a bad surrogate pair is detected.
*/
public void writeAttrURI(
final java.io.Writer writer, String string, boolean doURLEscaping)
@@ -1381,7 +1373,7 @@ else if (cleanLength == 1)
* @param string String to convert to XML format.
* @param encoding CURRENTLY NOT IMPLEMENTED.
*
- * @throws org.xml.sax.SAXException
+ * @throws IOException (org.xml.sax.SAXException)
*/
public void writeAttrString(
final java.io.Writer writer, String string, String encoding)
@@ -1523,8 +1515,6 @@ else if (cleanLength == 1)
* wrapping another exception.
* @see #ignorableWhitespace
* @see org.xml.sax.Locator
- *
- * @throws org.xml.sax.SAXException
*/
public final void characters(char chars[], int start, int length)
throws org.xml.sax.SAXException
@@ -1587,8 +1577,6 @@ public final void characters(char chars[], int start, int length)
* wrapping another exception.
* @see #ignorableWhitespace
* @see org.xml.sax.Locator
- *
- * @throws org.xml.sax.SAXException
*/
public final void cdata(char ch[], int start, int length)
throws org.xml.sax.SAXException
@@ -1638,8 +1626,6 @@ public final void cdata(char ch[], int start, int length)
* none was supplied.
* @throws org.xml.sax.SAXException Any SAX exception, possibly
* wrapping another exception.
- *
- * @throws org.xml.sax.SAXException
*/
public void processingInstruction(String target, String data)
throws org.xml.sax.SAXException
@@ -1727,7 +1713,7 @@ else if (m_needToCallStartDocument)
*
* @param name non-null reference to entity name string.
*
- * @throws org.xml.sax.SAXException
+ * @throws SAXException if underlying handler reports an error
*/
public final void entityReference(String name)
throws org.xml.sax.SAXException
@@ -1762,7 +1748,7 @@ public final void endElement(String elemName) throws SAXException
* @param nAttrs the number of attributes in m_attributes
* to be processed
*
- * @throws org.xml.sax.SAXException
+ * @throws SAXException if underlying handler reports an error
*/
public void processAttributes(java.io.Writer writer, int nAttrs)
throws IOException,SAXException
@@ -1781,11 +1767,11 @@ public void processAttributes(java.io.Writer writer, int nAttrs)
}
/**
- * For the enclosing elements starting tag write out out any attributes
- * followed by ">". At this point we also mark if this element is
- * a cdata-section-element.
+ * For the enclosing elements starting tag write out out any
+ * attributes followed by the > character. At this point we
+ * also mark if this element is a cdata-section-element.
*
- *@throws org.xml.sax.SAXException
+ *@throws SAXException if underlying handler reports an error
*/
protected void closeStartTag() throws SAXException
{
@@ -1866,7 +1852,7 @@ public void startDTD(String name, String publicId, String systemId)
/**
* Report the end of DTD declarations.
- * @throws org.xml.sax.SAXException The application may raise an exception.
+ * @throws SAXException if underlying handler reports an error
* @see #startDTD
*/
public void endDTD() throws org.xml.sax.SAXException
diff --git a/src/org/apache/xml/serializer/ToSAXHandler.java b/serializer/src/main/java/org/apache/xml/serializer/ToSAXHandler.java
similarity index 98%
rename from src/org/apache/xml/serializer/ToSAXHandler.java
rename to serializer/src/main/java/org/apache/xml/serializer/ToSAXHandler.java
index 0373f1dd4..75d423de7 100644
--- a/src/org/apache/xml/serializer/ToSAXHandler.java
+++ b/serializer/src/main/java/org/apache/xml/serializer/ToSAXHandler.java
@@ -113,7 +113,7 @@ public void startDTD(String arg0, String arg1, String arg2)
*
* @param characters The string of characters to process.
*
- * @throws org.xml.sax.SAXException
+ * @throws SAXException if underlying handler reports an error
*
* @see ExtendedContentHandler#characters(String)
*/
@@ -179,13 +179,11 @@ protected void closeCDATA() throws SAXException
* SAX method additional namespace or attribute information can occur before
* or after this call, that is associated with this element.
*
- * @throws org.xml.sax.SAXException Any SAX exception, possibly
- * wrapping another exception.
* @see org.xml.sax.ContentHandler#startElement
* @see org.xml.sax.ContentHandler#endElement
* @see org.xml.sax.AttributeList
*
- * @throws org.xml.sax.SAXException
+ * @throws SAXException if underlying handler reports an error
*
* @see org.xml.sax.ContentHandler#startElement(String,String,String,Attributes)
*/
@@ -342,7 +340,7 @@ public void startElement(String qName) throws SAXException {
* This method gets the node's value as a String and uses that String as if
* it were an input character notification.
* @param node the Node to serialize
- * @throws org.xml.sax.SAXException
+ * @throws SAXException if underlying handler reports an error
*/
public void characters(org.w3c.dom.Node node)
throws org.xml.sax.SAXException
diff --git a/src/org/apache/xml/serializer/ToStream.java b/serializer/src/main/java/org/apache/xml/serializer/ToStream.java
similarity index 98%
rename from src/org/apache/xml/serializer/ToStream.java
rename to serializer/src/main/java/org/apache/xml/serializer/ToStream.java
index 1134eb7ee..6340f2416 100644
--- a/src/org/apache/xml/serializer/ToStream.java
+++ b/serializer/src/main/java/org/apache/xml/serializer/ToStream.java
@@ -141,7 +141,7 @@ abstract public class ToStream extends SerializerBase
boolean m_shouldFlush = true;
/**
- * Add space before '/>' for XHTML.
+ * Add space before self-closing '/>' syntax for XHTML.
*/
protected boolean m_spaceBeforeClose = false;
@@ -184,9 +184,9 @@ public ToStream()
}
/**
- * This helper method to writes out "]]>" when closing a CDATA section.
+ * This helper method writes the syntax for closing a CDATA section.
*
- * @throws org.xml.sax.SAXException
+ * @throws org.xml.sax.SAXException if write fails
*/
protected void closeCDATA() throws org.xml.sax.SAXException
{
@@ -233,7 +233,7 @@ public void serialize(Node node) throws IOException
/**
* Flush the formatter's result stream.
*
- * @throws org.xml.sax.SAXException
+ * @throws org.xml.sax.SAXException if write fails
*/
protected final void flushWriter() throws org.xml.sax.SAXException
{
@@ -357,7 +357,7 @@ public void internalEntityDecl(String name, String value)
* @param name non-null reference to document type name.
* NEEDSDOC @param value
*
- * @throws org.xml.sax.SAXException
+ * @throws IOException if an error occurs during writing.
*/
void outputEntityDecl(String name, String value) throws IOException
{
@@ -373,11 +373,11 @@ void outputEntityDecl(String name, String value) throws IOException
/**
* Output a system-dependent line break.
*
- * @throws org.xml.sax.SAXException
+ * @throws IOException if an error occurs during writing.
+
*/
protected final void outputLineSep() throws IOException
{
-
m_writer.write(m_lineSep, 0, m_lineSepLen);
}
@@ -780,7 +780,7 @@ public boolean setEscaping(boolean escape)
*
* @param depth the indentation depth (element nesting depth)
*
- * @throws org.xml.sax.SAXException if an error occurs during writing.
+ * @throws IOException if an error occurs during writing.
*/
protected void indent(int depth) throws IOException
{
@@ -798,7 +798,7 @@ protected void indent(int depth) throws IOException
/**
* Indent at the current element nesting depth.
- * @throws IOException
+ * @throws IOException if an error occurs while writing
*/
protected void indent() throws IOException
{
@@ -808,7 +808,7 @@ protected void indent() throws IOException
* Prints n spaces.
* @param n Number of spaces to print.
*
- * @throws org.xml.sax.SAXException if an error occurs when writing.
+ * @throws IOException if an error occurs while writing
*/
private void printSpace(int n) throws IOException
{
@@ -934,7 +934,8 @@ public void externalEntityDecl(
}
/**
- * Tell if this character can be written without escaping.
+ * @return true iff this character can be written without escaping.
+ * @param ch character to be tested
*/
protected boolean escapingNotNeeded(char ch)
{
@@ -976,8 +977,7 @@ protected boolean escapingNotNeeded(char ch)
* the surrogate pair if an entity reference with that value
* was written out.
*
- * @throws IOException
- * @throws org.xml.sax.SAXException if invalid UTF-16 surrogate detected.
+ * @throws IOException if invalid UTF-16 surrogate detected.
*/
protected int writeUTF16Surrogate(char c, char ch[], int i, int end)
throws IOException
@@ -1051,7 +1051,7 @@ protected int writeUTF16Surrogate(char c, char ch[], int i, int end)
*
* @return i+1 if the character was written, else i.
*
- * @throws java.io.IOException
+ * @throws java.io.IOException if error arose while writing
*/
int accumDefaultEntity(
java.io.Writer writer,
@@ -1100,8 +1100,8 @@ int accumDefaultEntity(
* @param useSystemLineSeparator true if the operating systems
* end-of-line separator should be output rather than a new-line character.
*
- * @throws IOException
- * @throws org.xml.sax.SAXException
+ * @throws IOException if unable to write
+ * @throws org.xml.sax.SAXException never (I think), but signature expects it
*/
void writeNormalizedChars(
char ch[],
@@ -1203,7 +1203,7 @@ else if (Encodings.isHighUTF16Surrogate(c))
*
* @see #startNonEscaping
*
- * @throws org.xml.sax.SAXException
+ * @throws org.xml.sax.SAXException never, but signature expects it
*/
public void endNonEscaping() throws org.xml.sax.SAXException
{
@@ -1218,7 +1218,7 @@ public void endNonEscaping() throws org.xml.sax.SAXException
*
The contents of the un-escaping section will be delivered through the
* regular characters event.
*
- * @throws org.xml.sax.SAXException
+ * @throws org.xml.sax.SAXException never, but signature expects it
*/
public void startNonEscaping() throws org.xml.sax.SAXException
{
@@ -1249,8 +1249,6 @@ public void startNonEscaping() throws org.xml.sax.SAXException
* wrapping another exception.
* @see #ignorableWhitespace
* @see org.xml.sax.Locator
- *
- * @throws org.xml.sax.SAXException
*/
protected void cdata(char ch[], int start, final int length)
throws org.xml.sax.SAXException
@@ -1338,7 +1336,7 @@ private boolean isEscapingDisabled()
* @param start The start position in the array.
* @param length The number of characters to read from the array.
*
- * @throws org.xml.sax.SAXException
+ * @throws org.xml.sax.SAXException containing IOException, if one arises
*/
protected void charactersRaw(char ch[], int start, int length)
throws org.xml.sax.SAXException
@@ -1389,8 +1387,6 @@ protected void charactersRaw(char ch[], int start, int length)
* wrapping another exception.
* @see #ignorableWhitespace
* @see org.xml.sax.Locator
- *
- * @throws org.xml.sax.SAXException
*/
public void characters(final char chars[], final int start, final int length)
throws org.xml.sax.SAXException
@@ -1701,6 +1697,7 @@ private static boolean isNELorLSEPCharacter(char ch)
* @param fromTextNode true if the characters being processed are
* from a text node, false if they are from an attribute value.
* @return the index of the last character processed
+ * @throws IOException if an error occurs while writing
*/
private int processDirty(
char[] chars,
@@ -1747,7 +1744,7 @@ private int processDirty(
*
* @param s The string of characters to process.
*
- * @throws org.xml.sax.SAXException
+ * @throws org.xml.sax.SAXException if characters could not be handled
*/
public void characters(String s) throws org.xml.sax.SAXException
{
@@ -1777,7 +1774,7 @@ public void characters(String s) throws org.xml.sax.SAXException
* @return i+1 if a character was written, i+2 if two characters
* were written out, else return i.
*
- * @throws org.xml.sax.SAXException
+ * @throws IOException if an error occurs while writing
*/
private int accumDefaultEscape(
Writer writer,
@@ -1888,8 +1885,6 @@ else if ((!escapingNotNeeded(ch) ||
* @see org.xml.sax.ContentHandler#startElement
* @see org.xml.sax.ContentHandler#endElement
* @see org.xml.sax.AttributeList
- *
- * @throws org.xml.sax.SAXException
*/
public void startElement(
String namespaceURI,
@@ -1978,7 +1973,7 @@ else if (m_cdataTagOpen)
* @see org.xml.sax.ContentHandler#endElement
* @see org.xml.sax.AttributeList
*
- * @throws org.xml.sax.SAXException
+ * @throws org.xml.sax.SAXException if characters could not be handled
*/
public void startElement(
String elementNamespaceURI,
@@ -2055,8 +2050,8 @@ void outputDocTypeDecl(String name, boolean closeDecl) throws SAXException
* @param nAttrs the number of attributes in m_attributes
* to be processed
*
- * @throws java.io.IOException
- * @throws org.xml.sax.SAXException
+ * @throws IOException if an error occurs while writing
+ * @throws org.xml.sax.SAXException never (I think)
*/
public void processAttributes(java.io.Writer writer, int nAttrs) throws IOException, SAXException
{
@@ -2081,13 +2076,14 @@ public void processAttributes(java.io.Writer writer, int nAttrs) throws IOExcept
}
/**
- * Returns the specified string after substituting specials,
+ * Writes the specified string after substituting specials,
* and UTF-16 surrogates for chracter references &#xnn.
*
+ * @param writer to recieve processed string
* @param string String to convert to XML format.
* @param encoding CURRENTLY NOT IMPLEMENTED.
*
- * @throws java.io.IOException
+ * @throws IOException if an error occurs while writing
*/
public void writeAttrString(
Writer writer,
@@ -2197,8 +2193,6 @@ else if (m_encodingInfo.isInEncoding(ch)) {
* @param name The element type name
* @throws org.xml.sax.SAXException Any SAX exception, possibly
* wrapping another exception.
- *
- * @throws org.xml.sax.SAXException
*/
public void endElement(String namespaceURI, String localName, String name)
throws org.xml.sax.SAXException
@@ -2529,8 +2523,6 @@ public void endPrefixMapping(String prefix) throws org.xml.sax.SAXException
* @throws org.xml.sax.SAXException Any SAX exception, possibly
* wrapping another exception.
* @see #characters
- *
- * @throws org.xml.sax.SAXException
*/
public void ignorableWhitespace(char ch[], int start, int length)
throws org.xml.sax.SAXException
@@ -2602,9 +2594,9 @@ public void startEntity(String name) throws org.xml.sax.SAXException
/**
* For the enclosing elements starting tag write out
- * out any attributes followed by ">"
+ * out any attributes followed by the > character.
*
- * @throws org.xml.sax.SAXException
+ * @throws org.xml.sax.SAXException if underlying writer encounters error
*/
protected void closeStartTag() throws SAXException
{
@@ -2841,10 +2833,11 @@ public void setCdataSectionElements(Vector URI_and_localNames)
* Makes sure that the namespace URI for the given qualified attribute name
* is declared.
* @param ns the namespace URI
+ * @param localName the local name
* @param rawName the qualified name
* @return returns null if no action is taken, otherwise it returns the
* prefix used in declaring the namespace.
- * @throws SAXException
+ * @throws SAXException if attempt to write declaration failed
*/
protected String ensureAttributesNamespaceIsDeclared(
String ns,
@@ -3542,9 +3535,9 @@ public void unparsedEntityDecl(String name, String pubID, String sysID, String n
}
/**
- * A private helper method to output the
- * @throws SAXException
- * @throws IOException
+ * A private helper method to output the DTD
+ * @throws SAXException never (I think)
+ * @throws IOException if an error occurs while writing
*/
private void DTDprolog() throws SAXException, IOException {
final java.io.Writer writer = m_writer;
diff --git a/src/org/apache/xml/serializer/ToTextSAXHandler.java b/serializer/src/main/java/org/apache/xml/serializer/ToTextSAXHandler.java
similarity index 97%
rename from src/org/apache/xml/serializer/ToTextSAXHandler.java
rename to serializer/src/main/java/org/apache/xml/serializer/ToTextSAXHandler.java
index 78c6ab08b..c203eb8ad 100644
--- a/src/org/apache/xml/serializer/ToTextSAXHandler.java
+++ b/serializer/src/main/java/org/apache/xml/serializer/ToTextSAXHandler.java
@@ -69,9 +69,7 @@ public ToTextSAXHandler(ContentHandler hdlr, LexicalHandler lex, String encoding
super(hdlr, lex, encoding);
}
- /**
- * From XSLTC
- */
+ // This constructor supports XSLTC
public ToTextSAXHandler(ContentHandler handler, String encoding)
{
super(handler,encoding);
@@ -120,9 +118,9 @@ public Writer getWriter()
}
/**
- * Does nothing because
- * the indent attribute is ignored for text output.
- *
+ * Does nothing
+ * @param n the indent attribute, ignored for text output.
+ * @throws SAXException never, but the method signature requires it.
*/
public void indent(int n) throws SAXException
{
diff --git a/src/org/apache/xml/serializer/ToTextStream.java b/serializer/src/main/java/org/apache/xml/serializer/ToTextStream.java
similarity index 98%
rename from src/org/apache/xml/serializer/ToTextStream.java
rename to serializer/src/main/java/org/apache/xml/serializer/ToTextStream.java
index 312bc8b87..cf22d68a1 100644
--- a/src/org/apache/xml/serializer/ToTextStream.java
+++ b/serializer/src/main/java/org/apache/xml/serializer/ToTextStream.java
@@ -57,8 +57,6 @@ public ToTextStream()
*
* @throws org.xml.sax.SAXException Any SAX exception, possibly
* wrapping another exception.
- *
- * @throws org.xml.sax.SAXException
*/
protected void startDocumentInternal() throws org.xml.sax.SAXException
{
@@ -80,8 +78,6 @@ protected void startDocumentInternal() throws org.xml.sax.SAXException
*
* @throws org.xml.sax.SAXException Any SAX exception, possibly
* wrapping another exception.
- *
- * @throws org.xml.sax.SAXException
*/
public void endDocument() throws org.xml.sax.SAXException
{
@@ -120,8 +116,6 @@ public void endDocument() throws org.xml.sax.SAXException
* wrapping another exception.
* @see #endElement
* @see org.xml.sax.AttributeList
- *
- * @throws org.xml.sax.SAXException
*/
public void startElement(
String namespaceURI, String localName, String name, Attributes atts)
@@ -157,8 +151,6 @@ public void startElement(
* empty string if qualified names are not available.
* @throws org.xml.sax.SAXException Any SAX exception, possibly
* wrapping another exception.
- *
- * @throws org.xml.sax.SAXException
*/
public void endElement(String namespaceURI, String localName, String name)
throws org.xml.sax.SAXException
@@ -264,8 +256,8 @@ public void charactersRaw(char ch[], int start, int length)
* @param useLineSep true if the operating systems
* end-of-line separator should be output rather than a new-line character.
*
- * @throws IOException
- * @throws org.xml.sax.SAXException
+ * @throws IOException if the write fails
+ * @throws org.xml.sax.SAXException if processing fails in the handler layer
*/
void writeNormalizedChars(
final char ch[],
@@ -412,8 +404,6 @@ public void cdata(char ch[], int start, int length)
* @throws org.xml.sax.SAXException Any SAX exception, possibly
* wrapping another exception.
* @see #characters
- *
- * @throws org.xml.sax.SAXException
*/
public void ignorableWhitespace(char ch[], int start, int length)
throws org.xml.sax.SAXException
@@ -445,8 +435,6 @@ public void ignorableWhitespace(char ch[], int start, int length)
* none was supplied.
* @throws org.xml.sax.SAXException Any SAX exception, possibly
* wrapping another exception.
- *
- * @throws org.xml.sax.SAXException
*/
public void processingInstruction(String target, String data)
throws org.xml.sax.SAXException
@@ -504,7 +492,7 @@ public void comment(char ch[], int start, int length)
*
* @param name non-null reference to the name of the entity.
*
- * @throws org.xml.sax.SAXException
+ * @throws org.xml.sax.SAXException if processing fails in the handler layer
*/
public void entityReference(String name) throws org.xml.sax.SAXException
{
diff --git a/src/org/apache/xml/serializer/ToUnknownStream.java b/serializer/src/main/java/org/apache/xml/serializer/ToUnknownStream.java
similarity index 99%
rename from src/org/apache/xml/serializer/ToUnknownStream.java
rename to serializer/src/main/java/org/apache/xml/serializer/ToUnknownStream.java
index e7ed0e010..b4777772a 100644
--- a/src/org/apache/xml/serializer/ToUnknownStream.java
+++ b/serializer/src/main/java/org/apache/xml/serializer/ToUnknownStream.java
@@ -37,9 +37,9 @@
/**
- *This class wraps another SerializationHandler. The wrapped object will either
+ * This class wraps another SerializationHandler. The wrapped object will either
* handler XML or HTML, which is not known until a little later when the first XML
- * tag is seen. If the first tag is then the wrapped object is an HTML
+ * tag is seen. If the first tag is <html> then the wrapped object is an HTML
* handler, otherwise it is an XML handler.
*
* This class effectively caches the first few calls to it then passes them
diff --git a/src/org/apache/xml/serializer/ToXMLSAXHandler.java b/serializer/src/main/java/org/apache/xml/serializer/ToXMLSAXHandler.java
similarity index 97%
rename from src/org/apache/xml/serializer/ToXMLSAXHandler.java
rename to serializer/src/main/java/org/apache/xml/serializer/ToXMLSAXHandler.java
index eb18c8a2f..a9b9cc4f5 100644
--- a/src/org/apache/xml/serializer/ToXMLSAXHandler.java
+++ b/serializer/src/main/java/org/apache/xml/serializer/ToXMLSAXHandler.java
@@ -83,14 +83,17 @@ public Writer getWriter()
/**
* Do nothing for SAX.
+ * @param n Indentation in character-columns, ignored here
+ * @throws SAXException never, but inheritance requires it.
*/
public void indent(int n) throws SAXException
{
}
- /**
+ /** @param node A DOM node (which this implementation will ignore)
* @see DOMSerializer#serialize(Node)
+ * @throws IOException never, but inheritance requires it.
*/
public void serialize(Node node) throws IOException
{
@@ -217,12 +220,11 @@ protected void closeStartTag() throws SAXException
* unlike the this.endCDATA() method (from the LexicalHandler) interface,
* this "internal" method will send the endCDATA() call to the wrapped
* handler.
- *
*/
public void closeCDATA() throws SAXException
{
- // Output closing bracket - "]]>"
+ // Output CDATA closing bracket - "]]>"
if (m_lexHandler != null && m_cdataTagOpen) {
m_lexHandler.endCDATA();
}
@@ -491,7 +493,7 @@ public ToXMLSAXHandler(
/**
* Start an element in the output document. This might be an XML element
- * (data type) or a CDATA section.
+ * (<elem>data</elem> type) or a CDATA section.
*/
public void startElement(
String elementNamespaceURI,
@@ -570,9 +572,11 @@ public void namespaceAfterStartElement(
}
/**
- *
- * @see org.xml.sax.ContentHandler#processingInstruction(String, String)
* Send a processing instruction to the output document
+ * @param target "name" of processing instruction
+ * @param data "value" of processing instruction
+ * @throws SAXException if underlying handler throws one
+ * @see org.xml.sax.ContentHandler#processingInstruction(String, String)
*/
public void processingInstruction(String target, String data)
throws SAXException
@@ -591,6 +595,8 @@ public void processingInstruction(String target, String data)
/**
* Undeclare the namespace that is currently pointed to by a given
* prefix. Inform SAX handler if prefix was previously mapped.
+ * @param prefix Namespace prefix mapping to be removed
+ * @return true iff a mapping was present to be removed
*/
protected boolean popNamespace(String prefix)
{
diff --git a/src/org/apache/xml/serializer/ToXMLStream.java b/serializer/src/main/java/org/apache/xml/serializer/ToXMLStream.java
similarity index 97%
rename from src/org/apache/xml/serializer/ToXMLStream.java
rename to serializer/src/main/java/org/apache/xml/serializer/ToXMLStream.java
index e1ca8447b..da444c348 100644
--- a/src/org/apache/xml/serializer/ToXMLStream.java
+++ b/serializer/src/main/java/org/apache/xml/serializer/ToXMLStream.java
@@ -102,8 +102,6 @@ public void CopyFrom(ToXMLStream xmlListener)
*
* @throws org.xml.sax.SAXException Any SAX exception, possibly
* wrapping another exception.
- *
- * @throws org.xml.sax.SAXException
*/
public void startDocumentInternal() throws org.xml.sax.SAXException
{
@@ -178,8 +176,6 @@ public void startDocumentInternal() throws org.xml.sax.SAXException
*
* @throws org.xml.sax.SAXException Any SAX exception, possibly
* wrapping another exception.
- *
- * @throws org.xml.sax.SAXException
*/
public void endDocument() throws org.xml.sax.SAXException
{
@@ -212,7 +208,7 @@ public void endDocument() throws org.xml.sax.SAXException
* The contents of the whitespace preserving section will be delivered
* through the regular characters event.
*
- * @throws org.xml.sax.SAXException
+ * @throws org.xml.sax.SAXException never (I think) but required by signature
*/
public void startPreserving() throws org.xml.sax.SAXException
{
@@ -228,7 +224,7 @@ public void startPreserving() throws org.xml.sax.SAXException
*
* @see #startPreserving
*
- * @throws org.xml.sax.SAXException
+ * @throws org.xml.sax.SAXException never (I think), but required by signature.
*/
public void endPreserving() throws org.xml.sax.SAXException
{
@@ -245,8 +241,6 @@ public void endPreserving() throws org.xml.sax.SAXException
* none was supplied.
* @throws org.xml.sax.SAXException Any SAX exception, possibly
* wrapping another exception.
- *
- * @throws org.xml.sax.SAXException
*/
public void processingInstruction(String target, String data)
throws org.xml.sax.SAXException
@@ -339,7 +333,7 @@ else if (m_needToCallStartDocument)
*
* @param name The name of the entity.
*
- * @throws org.xml.sax.SAXException
+ * @throws org.xml.sax.SAXException never (I think), but required by signature.
*/
public void entityReference(String name) throws org.xml.sax.SAXException
{
@@ -418,14 +412,14 @@ public void addUniqueAttribute(String name, String value, int flags)
/**
* Add an attribute to the current element.
- * @param uri the URI associated with the element name
+ * @param uri the URI associated with the attribute's namespace prefix
* @param localName local part of the attribute name
* @param rawName prefix:localName
- * @param type
+ * @param type the attribute type typically character data (CDATA)
* @param value the value of the attribute
* @param xslAttribute true if this attribute is from an xsl:attribute,
* false if declared within the elements opening tag.
- * @throws SAXException
+ * @throws org.xml.sax.SAXException never (I think), but required by signature.
*/
public void addAttribute(
String uri,
@@ -553,6 +547,9 @@ public void namespaceAfterStartElement(
* From XSLTC
* Declare a prefix to point to a namespace URI. Inform SAX handler
* if this is a new prefix mapping.
+ * @param prefix to be bound to namespace URI
+ * @param uri namespace identifier string
+ * @return true if prefix successfully bound, false otherwise.
*/
protected boolean pushNamespace(String prefix, String uri)
{
diff --git a/src/org/apache/xml/serializer/TransformStateSetter.java b/serializer/src/main/java/org/apache/xml/serializer/TransformStateSetter.java
similarity index 91%
rename from src/org/apache/xml/serializer/TransformStateSetter.java
rename to serializer/src/main/java/org/apache/xml/serializer/TransformStateSetter.java
index 0375773be..2f8dc9491 100644
--- a/src/org/apache/xml/serializer/TransformStateSetter.java
+++ b/serializer/src/main/java/org/apache/xml/serializer/TransformStateSetter.java
@@ -25,7 +25,7 @@
import org.w3c.dom.Node;
/**
* This interface is meant to be used by a base interface to
- * TransformState, but which as only the setters which have non Xalan
+ * TransformState, but which has only the setters which have non Xalan
* specific types in their signature, so that there are no dependancies
* of the serializer on Xalan.
*
@@ -49,7 +49,7 @@ public interface TransformStateSetter
/**
* Reset the state on the given transformer object.
*
- * @param transformer
+ * @param transformer The transformer to have its state reset
*/
void resetState(Transformer transformer);
diff --git a/src/org/apache/xml/serializer/TreeWalker.java b/serializer/src/main/java/org/apache/xml/serializer/TreeWalker.java
similarity index 96%
rename from src/org/apache/xml/serializer/TreeWalker.java
rename to serializer/src/main/java/org/apache/xml/serializer/TreeWalker.java
index 756a5da4f..fd3e225f1 100644
--- a/src/org/apache/xml/serializer/TreeWalker.java
+++ b/serializer/src/main/java/org/apache/xml/serializer/TreeWalker.java
@@ -24,6 +24,7 @@
import org.apache.xml.serializer.utils.AttList;
import org.apache.xml.serializer.utils.DOM2Helper;
+import org.apache.xml.serializer.utils.WrappedRuntimeException;
import org.w3c.dom.Comment;
import org.w3c.dom.Element;
import org.w3c.dom.EntityReference;
@@ -33,6 +34,7 @@
import org.w3c.dom.Text;
import org.xml.sax.ContentHandler;
import org.xml.sax.Locator;
+import org.xml.sax.SAXException;
import org.xml.sax.ext.LexicalHandler;
import org.xml.sax.helpers.LocatorImpl;
@@ -84,6 +86,8 @@ public TreeWalker(ContentHandler ch) {
* Constructor.
* @param contentHandler The implemention of the
* contentHandler operation (toXMLString, digest, ...)
+ * @param systemId to be set into the output document. If null we
+ * use a default (currently dummy.xsl)
*/
public TreeWalker(ContentHandler contentHandler, String systemId)
{
@@ -131,7 +135,7 @@ public TreeWalker(ContentHandler contentHandler, String systemId)
*
* @param pos Node in the tree where to start traversal
*
- * @throws TransformerException
+ * @throws SAXException if the ContentHandler objects to the request.
*/
public void traverse(Node pos) throws org.xml.sax.SAXException
{
@@ -187,7 +191,7 @@ public void traverse(Node pos) throws org.xml.sax.SAXException
* @param pos Node in the tree where to start traversal
* @param top Node in the tree where to end traversal
*
- * @throws TransformerException
+ * @throws SAXException if the ContentHandler objects to the request.
*/
public void traverse(Node pos, Node top) throws org.xml.sax.SAXException
{
@@ -232,6 +236,7 @@ public void traverse(Node pos, Node top) throws org.xml.sax.SAXException
/**
* Optimized dispatch of characters.
+ * @throws SAXException if the ContentHandler objects to the request.
*/
private final void dispatachChars(Node node)
throws org.xml.sax.SAXException
@@ -252,8 +257,7 @@ private final void dispatachChars(Node node)
*
*
* @param node Node to process
- *
- * @throws org.xml.sax.SAXException
+ * @throws SAXException if the ContentHandler objects to the request.
*/
protected void startNode(Node node) throws org.xml.sax.SAXException
{
@@ -428,7 +432,6 @@ else if (colon > 0) {
}
else
{
-
// warning("Can not output entity to a pure SAX ContentHandler");
}
}
@@ -443,7 +446,7 @@ else if (colon > 0) {
*
* @param node Node we just finished processing
*
- * @throws org.xml.sax.SAXException
+ * @throws SAXException if the ContentHandler objects to the request.
*/
protected void endNode(Node node) throws org.xml.sax.SAXException
{
diff --git a/serializer/src/main/java/org/apache/xml/serializer/Version.java b/serializer/src/main/java/org/apache/xml/serializer/Version.java
new file mode 100644
index 000000000..a57bbd8d7
--- /dev/null
+++ b/serializer/src/main/java/org/apache/xml/serializer/Version.java
@@ -0,0 +1,217 @@
+/*
+ * 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.
+ */
+/*
+ * $Id$
+ */
+package org.apache.xml.serializer;
+
+import java.io.InputStream;
+import java.util.Properties;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
+
+/**
+ * Administrative class to keep track of the version number of
+ * the Serializer release.
+ *
This class implements the upcoming standard of having
+ * org.apache.project-name.Version.getVersion() be a standard way
+ * to get version information.
+ * @xsl.usage general
+ */
+public class Version {
+ private static final String VERSION_NUMBER_PATTERN = "^(\\d+)[.](\\d+)[.](D)?(\\d+)(-SNAPSHOT)?$";
+ private static final String NO_VERSION = "0.0.0";
+
+ private static int majorVersionNum;
+ private static int releaseVersionNum;
+ private static int maintenanceVersionNum;
+ private static int developmentVersionNum;
+
+ private static boolean snapshot;
+
+ static {
+ parseVersionNumber(readVersionNumber());
+ }
+
+ static String readVersionNumber() {
+ try (InputStream fromResource = getPropertiesStream()) {
+ Properties properties = new Properties();
+ if (fromResource != null) {
+ properties.load(fromResource);
+ return properties.getProperty("version", NO_VERSION);
+ }
+ } catch (Exception e) {
+ new RuntimeException("Cannot read properties file to extract Xalan version number information: ", e)
+ .printStackTrace();
+ }
+ return NO_VERSION;
+ }
+
+ static InputStream getPropertiesStream() {
+ // IMPLEMENTATION NOTE: Class.getResourceAsStream uses a *relative* path by
+ // default, in contrast to Classloader.getResourceAsStream, which uses an
+ // *absolute* one. This is not clearly documented in the JDK, only
+ // noticeable by the absence of the word "absolute" in
+ // Class.getResourceAsStream javadocs. For more details, see
+ // https://www.baeldung.com/java-class-vs-classloader-getresource.
+ //
+ // Because we expect the properties file to be in the same directory/package
+ // as this class, the relative path comes in handy and as a bonus is also
+ // relocation-friendly (think Maven Shade).
+ return Version.class.getResourceAsStream("version.properties");
+ }
+
+ static void parseVersionNumber(String version) {
+ resetVersionNumber();
+ if (version == null)
+ version = NO_VERSION;
+ Matcher matcher = Pattern.compile(VERSION_NUMBER_PATTERN).matcher(version);
+ if (matcher.find()) {
+ majorVersionNum = Integer.parseInt(matcher.group(1));
+ releaseVersionNum = Integer.parseInt(matcher.group(2));
+ if (matcher.group(3) == null) {
+ maintenanceVersionNum = Integer.parseInt(matcher.group(4));
+ } else {
+ developmentVersionNum = Integer.parseInt(matcher.group(4));
+ }
+ snapshot = matcher.group(5) != null && !matcher.group(5).isEmpty();
+ } else {
+ System.err.println(
+ "Cannot match Xalan version \"" + version + "\" " +
+ "against expected pattern \"" + VERSION_NUMBER_PATTERN + "\", " +
+ "resetting version number to "+ NO_VERSION
+ );
+ resetVersionNumber();
+ }
+ }
+
+ private static void resetVersionNumber() {
+ majorVersionNum = releaseVersionNum = maintenanceVersionNum = developmentVersionNum = 0;
+ snapshot = false;
+ }
+
+ /**
+ * Get the basic version string for the current Serializer release.
+ * Version String formatted like
+ * "Xalan SerializerJava v.r[.dd| Dnn]".
+ *
+ * @return String denoting our current version
+ */
+ public static String getVersion() {
+ return getProduct()+" "+getImplementationLanguage()+" "
+ +getMajorVersionNum()+"."+getReleaseVersionNum()+"."
+ +( (getDevelopmentVersionNum() > 0) ?
+ ("D"+getDevelopmentVersionNum()) : (""+getMaintenanceVersionNum()))
+ +(isSnapshot() ? "-SNAPSHOT" :"");
+ }
+
+ /**
+ * Print the processor version to the command line.
+ *
+ * @param argv command line arguments, unused.
+ */
+ public static void main(String argv[]) {
+ System.out.println(getVersion());
+ }
+
+ /**
+ * Name of product: Xalan Serializer.
+ */
+ public static String getProduct() {
+ return "Xalan Serializer";
+ }
+
+ /**
+ * Implementation Language: Java.
+ */
+ public static String getImplementationLanguage() {
+ return "Java";
+ }
+
+
+ /**
+ * Major version number.
+ * Version number. This changes only when there is a
+ * significant, externally apparent enhancement from
+ * the previous release. 'n' represents the n'th
+ * version.
+ *
+ * Clients should carefully consider the implications
+ * of new versions as external interfaces and behaviour
+ * may have changed.
+ */
+ public static int getMajorVersionNum() {
+ return majorVersionNum;
+ }
+
+ /**
+ * Release Number.
+ * Release number. This changes when:
+ * - a new set of functionality is to be added, eg,
+ * implementation of a new W3C specification.
+ * - API or behaviour change.
+ * - its designated as a reference release.
+ */
+ public static int getReleaseVersionNum() {
+ return releaseVersionNum;
+ }
+
+ /**
+ * Maintenance Drop Number.
+ * Optional identifier used to designate maintenance
+ * drop applied to a specific release and contains
+ * fixes for defects reported. It maintains compatibility
+ * with the release and contains no API changes.
+ * When missing, it designates the final and complete
+ * development drop for a release.
+ */
+ public static int getMaintenanceVersionNum() {
+ return maintenanceVersionNum;
+ }
+
+ /**
+ * Development Drop Number.
+ * Optional identifier designates development drop of
+ * a specific release. D01 is the first development drop
+ * of a new release.
+ *
+ * Development drops are works in progress towards a
+ * compeleted, final release. A specific development drop
+ * may not completely implement all aspects of a new
+ * feature, which may take several development drops to
+ * complete. At the point of the final drop for the
+ * release, the D suffix will be omitted.
+ *
+ * Each 'D' drops can contain functional enhancements as
+ * well as defect fixes. 'D' drops may not be as stable as
+ * the final releases.
+ */
+ public static int getDevelopmentVersionNum() {
+ return developmentVersionNum;
+ }
+
+ /**
+ * Snapshot flag.
+ * Specifies whether the version number has a "-SNAPSHOT" suffix,
+ * which by Maven/Gradle conventions designates a
+ * development version.
+ */
+ public static boolean isSnapshot() {
+ return snapshot;
+ }
+}
diff --git a/src/org/apache/xml/serializer/WriterChain.java b/serializer/src/main/java/org/apache/xml/serializer/WriterChain.java
similarity index 100%
rename from src/org/apache/xml/serializer/WriterChain.java
rename to serializer/src/main/java/org/apache/xml/serializer/WriterChain.java
diff --git a/src/org/apache/xml/serializer/WriterToASCI.java b/serializer/src/main/java/org/apache/xml/serializer/WriterToASCI.java
similarity index 100%
rename from src/org/apache/xml/serializer/WriterToASCI.java
rename to serializer/src/main/java/org/apache/xml/serializer/WriterToASCI.java
diff --git a/src/org/apache/xml/serializer/WriterToUTF8Buffered.java b/serializer/src/main/java/org/apache/xml/serializer/WriterToUTF8Buffered.java
similarity index 100%
rename from src/org/apache/xml/serializer/WriterToUTF8Buffered.java
rename to serializer/src/main/java/org/apache/xml/serializer/WriterToUTF8Buffered.java
diff --git a/src/org/apache/xml/serializer/XSLOutputAttributes.java b/serializer/src/main/java/org/apache/xml/serializer/XSLOutputAttributes.java
similarity index 97%
rename from src/org/apache/xml/serializer/XSLOutputAttributes.java
rename to serializer/src/main/java/org/apache/xml/serializer/XSLOutputAttributes.java
index f5676f783..a285b154e 100644
--- a/src/org/apache/xml/serializer/XSLOutputAttributes.java
+++ b/serializer/src/main/java/org/apache/xml/serializer/XSLOutputAttributes.java
@@ -28,7 +28,7 @@
*
* In an XSLT stylesheet these attributes appear for example as:
*
"{http://xml.apache.org/xalan}line-separator"
*
- * @val The non-default value of the parameter
+ * @param val The non-default value of the parameter
*/
public void setOutputProperty(String name, String val);
@@ -230,7 +230,7 @@ interface XSLOutputAttributes
*
"{http://xml.apache.org/xalan}indent-amount"
*
"{http://xml.apache.org/xalan}line-separator"
*
- * @val The default value of the parameter
+ * @param val The default value of the parameter
*/
public void setOutputPropertyDefault(String name, String val);
}
diff --git a/src/org/apache/xml/serializer/dom3/DOM3SerializerImpl.java b/serializer/src/main/java/org/apache/xml/serializer/dom3/DOM3SerializerImpl.java
similarity index 97%
rename from src/org/apache/xml/serializer/dom3/DOM3SerializerImpl.java
rename to serializer/src/main/java/org/apache/xml/serializer/dom3/DOM3SerializerImpl.java
index 3f765d9e6..e382ba5d7 100644
--- a/src/org/apache/xml/serializer/dom3/DOM3SerializerImpl.java
+++ b/serializer/src/main/java/org/apache/xml/serializer/dom3/DOM3SerializerImpl.java
@@ -87,7 +87,7 @@ public LSSerializerFilter getNodeFilter() {
}
/**
- * Gets the end-of-line sequence of characters to be used during serialization.
+ * @return char[] containing the end-of-line sequence of characters to be used during serialization.
*/
public char[] getNewLine() {
return (fNewLine != null) ? fNewLine.toCharArray() : null;
diff --git a/src/org/apache/xml/serializer/dom3/DOM3TreeWalker.java b/serializer/src/main/java/org/apache/xml/serializer/dom3/DOM3TreeWalker.java
similarity index 100%
rename from src/org/apache/xml/serializer/dom3/DOM3TreeWalker.java
rename to serializer/src/main/java/org/apache/xml/serializer/dom3/DOM3TreeWalker.java
diff --git a/src/org/apache/xml/serializer/dom3/DOMConstants.java b/serializer/src/main/java/org/apache/xml/serializer/dom3/DOMConstants.java
similarity index 100%
rename from src/org/apache/xml/serializer/dom3/DOMConstants.java
rename to serializer/src/main/java/org/apache/xml/serializer/dom3/DOMConstants.java
diff --git a/src/org/apache/xml/serializer/dom3/DOMErrorHandlerImpl.java b/serializer/src/main/java/org/apache/xml/serializer/dom3/DOMErrorHandlerImpl.java
similarity index 100%
rename from src/org/apache/xml/serializer/dom3/DOMErrorHandlerImpl.java
rename to serializer/src/main/java/org/apache/xml/serializer/dom3/DOMErrorHandlerImpl.java
diff --git a/src/org/apache/xml/serializer/dom3/DOMErrorImpl.java b/serializer/src/main/java/org/apache/xml/serializer/dom3/DOMErrorImpl.java
similarity index 100%
rename from src/org/apache/xml/serializer/dom3/DOMErrorImpl.java
rename to serializer/src/main/java/org/apache/xml/serializer/dom3/DOMErrorImpl.java
diff --git a/src/org/apache/xml/serializer/dom3/DOMLocatorImpl.java b/serializer/src/main/java/org/apache/xml/serializer/dom3/DOMLocatorImpl.java
similarity index 100%
rename from src/org/apache/xml/serializer/dom3/DOMLocatorImpl.java
rename to serializer/src/main/java/org/apache/xml/serializer/dom3/DOMLocatorImpl.java
diff --git a/src/org/apache/xml/serializer/dom3/DOMOutputImpl.java b/serializer/src/main/java/org/apache/xml/serializer/dom3/DOMOutputImpl.java
similarity index 100%
rename from src/org/apache/xml/serializer/dom3/DOMOutputImpl.java
rename to serializer/src/main/java/org/apache/xml/serializer/dom3/DOMOutputImpl.java
diff --git a/src/org/apache/xml/serializer/dom3/DOMStringListImpl.java b/serializer/src/main/java/org/apache/xml/serializer/dom3/DOMStringListImpl.java
similarity index 100%
rename from src/org/apache/xml/serializer/dom3/DOMStringListImpl.java
rename to serializer/src/main/java/org/apache/xml/serializer/dom3/DOMStringListImpl.java
diff --git a/src/org/apache/xml/serializer/dom3/LSSerializerImpl.java b/serializer/src/main/java/org/apache/xml/serializer/dom3/LSSerializerImpl.java
similarity index 99%
rename from src/org/apache/xml/serializer/dom3/LSSerializerImpl.java
rename to serializer/src/main/java/org/apache/xml/serializer/dom3/LSSerializerImpl.java
index c2ce783e6..7ce20c3b6 100644
--- a/src/org/apache/xml/serializer/dom3/LSSerializerImpl.java
+++ b/serializer/src/main/java/org/apache/xml/serializer/dom3/LSSerializerImpl.java
@@ -1363,9 +1363,7 @@ public boolean writeToURI(Node nodeArg, String uri) throws LSException {
*
* @param nodeArg The Node to serialize
* @return A String containing the version pseudo-attribute of the XMLDecl.
- * @throws Throwable if the DOM implementation does not implement Document.getXmlVersion()
*/
- //protected String getXMLVersion(Node nodeArg) throws Throwable {
protected String getXMLVersion(Node nodeArg) {
Document doc = null;
@@ -1393,10 +1391,10 @@ protected String getXMLVersion(Node nodeArg) {
/**
* Determines the XML Encoding of the Document Node to serialize. If the Document Node
* is not a DOM Level 3 Node, then the default encoding "UTF-8" is returned.
+ * NOTE: May throw an unspecified Throwable if the DOM implementation does not implement Document.getXmlEncoding()
*
* @param nodeArg The Node to serialize
* @return A String containing the encoding pseudo-attribute of the XMLDecl.
- * @throws Throwable if the DOM implementation does not implement Document.getXmlEncoding()
*/
protected String getXMLEncoding(Node nodeArg) {
Document doc = null;
diff --git a/src/org/apache/xml/serializer/dom3/NamespaceSupport.java b/serializer/src/main/java/org/apache/xml/serializer/dom3/NamespaceSupport.java
similarity index 79%
rename from src/org/apache/xml/serializer/dom3/NamespaceSupport.java
rename to serializer/src/main/java/org/apache/xml/serializer/dom3/NamespaceSupport.java
index 445f3eb9d..a7eb6bffa 100644
--- a/src/org/apache/xml/serializer/dom3/NamespaceSupport.java
+++ b/serializer/src/main/java/org/apache/xml/serializer/dom3/NamespaceSupport.java
@@ -150,6 +150,9 @@ public void popContext() {
} // popContext()
/**
+ * @param prefix String containing the QName prefix to be bound
+ * @param uri String containing the namespace URI to bind to prefix
+ * @return false if binding the prefix is forbidden(xml: and xmlns:), otherwise true
* @see org.apache.xerces.xni.NamespaceContext#declarePrefix(String, String)
*/
public boolean declarePrefix(String prefix, String uri) {
@@ -189,6 +192,9 @@ public boolean declarePrefix(String prefix, String uri) {
} // declarePrefix(String,String):boolean
/**
+ * @param prefix String prefix to be looked up in this context
+ * @return String containing the Namespace URI bound to that prefix,
+ * or null if unbound
* @see org.apache.xerces.xni.NamespaceContext#getURI(String)
*/
public String getURI(String prefix) {
@@ -207,9 +213,13 @@ public String getURI(String prefix) {
} // getURI(String):String
- /**
- * @see org.apache.xerces.xni.NamespaceContext#getPrefix(String)
- */
+ /**
+ * @param uri String containing the Namespace URI to be looked up
+ * @return String containing a prefix bound to that namespace
+ * or null if unbound. CAVEAT: There may be multiple prefixes bound
+ * to the same namespace; this returns the first found.
+ * @see org.apache.xerces.xni.NamespaceContext#getPrefix(String)
+ */
public String getPrefix(String uri) {
// find uri in current context
@@ -228,24 +238,28 @@ public String getPrefix(String uri) {
} // getPrefix(String):String
- /**
- * @see org.apache.xerces.xni.NamespaceContext#getDeclaredPrefixCount()
- */
+ /** @return number of prefixes currently bound
+ * @see org.apache.xerces.xni.NamespaceContext#getDeclaredPrefixCount()
+ */
public int getDeclaredPrefixCount() {
return (fNamespaceSize - fContext[fCurrentContext]) / 2;
} // getDeclaredPrefixCount():int
- /**
- * @see org.apache.xerces.xni.NamespaceContext#getDeclaredPrefixAt(int)
- */
+ /**
+ * @param index Select prefix from all currently bound
+ * @return The prefix in that slot of our table. Equivalent to
+ * indexing into enumerator returned by #getAllPrefixes()
+ * @see org.apache.xerces.xni.NamespaceContext#getDeclaredPrefixAt(int)
+ */
public String getDeclaredPrefixAt(int index) {
return fNamespace[fContext[fCurrentContext] + index * 2];
} // getDeclaredPrefixAt(int):String
-
- /**
- * @see org.apache.xerces.xni.NamespaceContext#getAllPrefixes()
- */
- public Enumeration getAllPrefixes() {
+
+ /**
+ * @return an Enumeration of the namespace prefixes currently bound
+ * @see org.apache.xerces.xni.NamespaceContext#getAllPrefixes()
+ */
+ public Enumeration getAllPrefixes() {
int count = 0;
if (fPrefixes.length < (fNamespace.length/2)) {
// resize prefix array
@@ -269,36 +283,43 @@ public Enumeration getAllPrefixes() {
}
return new Prefixes(fPrefixes, count);
}
-
+
+ // I'm a bit confused by Prefixes.prefixes vs. NamespaceSupper.fPrefixes.
+ // Need to review the logic and document that. -- jkesselm GONK
protected final class Prefixes implements Enumeration {
private String[] prefixes;
private int counter = 0;
private int size = 0;
- /**
- * Constructor for Prefixes.
- */
- public Prefixes(String [] prefixes, int size) {
- this.prefixes = prefixes;
+ /**
+ * Constructor for Prefixes enumerator
+ * @param prefixes String[] Set of prefixes.
+ * @param size integer Number of preloaded prefixes
+ */
+ public Prefixes(String [] prefixes, int size) {
+ this.prefixes = prefixes;
this.size = size;
- }
-
+ }
+
/**
- * @see java.util.Enumeration#hasMoreElements()
- */
- public boolean hasMoreElements() {
- return (counter< size);
- }
-
- /**
- * @see java.util.Enumeration#nextElement()
- */
- public Object nextElement() {
+ * @return true if this object, as an Enumeration, can return
+ * more bindings
+ * @see java.util.Enumeration#hasMoreElements()
+ */
+ public boolean hasMoreElements() {
+ return (counter< size);
+ }
+
+ /**
+ * @return the next binding's prefix, as an Enumeration result
+ * @see java.util.Enumeration#nextElement()
+ */
+ public Object nextElement() {
if (counter< size){
return fPrefixes[counter++];
}
- throw new NoSuchElementException("Illegal access to Namespace prefixes enumeration.");
- }
+ throw new NoSuchElementException("Illegal access to Namespace prefixes enumeration.");
+ }
public String toString(){
StringBuffer buf = new StringBuffer();
@@ -310,6 +331,6 @@ public String toString(){
return buf.toString();
}
-}
-
+ }
+
} // class NamespaceSupport
diff --git a/src/org/apache/xml/serializer/package.html b/serializer/src/main/java/org/apache/xml/serializer/package.html
similarity index 100%
rename from src/org/apache/xml/serializer/package.html
rename to serializer/src/main/java/org/apache/xml/serializer/package.html
diff --git a/src/org/apache/xml/serializer/utils/AttList.java b/serializer/src/main/java/org/apache/xml/serializer/utils/AttList.java
similarity index 100%
rename from src/org/apache/xml/serializer/utils/AttList.java
rename to serializer/src/main/java/org/apache/xml/serializer/utils/AttList.java
diff --git a/src/org/apache/xml/serializer/utils/BoolStack.java b/serializer/src/main/java/org/apache/xml/serializer/utils/BoolStack.java
similarity index 99%
rename from src/org/apache/xml/serializer/utils/BoolStack.java
rename to serializer/src/main/java/org/apache/xml/serializer/utils/BoolStack.java
index 68cea4229..e1f49d6bc 100644
--- a/src/org/apache/xml/serializer/utils/BoolStack.java
+++ b/serializer/src/main/java/org/apache/xml/serializer/utils/BoolStack.java
@@ -19,7 +19,7 @@
* $Id$
*/
package org.apache.xml.serializer.utils;
-
+import java.util.EmptyStackException;
/**
* Simple stack for boolean values.
diff --git a/src/org/apache/xml/serializer/utils/DOM2Helper.java b/serializer/src/main/java/org/apache/xml/serializer/utils/DOM2Helper.java
similarity index 100%
rename from src/org/apache/xml/serializer/utils/DOM2Helper.java
rename to serializer/src/main/java/org/apache/xml/serializer/utils/DOM2Helper.java
diff --git a/src/org/apache/xml/serializer/utils/Messages.java b/serializer/src/main/java/org/apache/xml/serializer/utils/Messages.java
similarity index 100%
rename from src/org/apache/xml/serializer/utils/Messages.java
rename to serializer/src/main/java/org/apache/xml/serializer/utils/Messages.java
diff --git a/src/org/apache/xml/serializer/utils/MsgKey.java b/serializer/src/main/java/org/apache/xml/serializer/utils/MsgKey.java
similarity index 100%
rename from src/org/apache/xml/serializer/utils/MsgKey.java
rename to serializer/src/main/java/org/apache/xml/serializer/utils/MsgKey.java
diff --git a/src/org/apache/xml/serializer/utils/SerializerMessages.java b/serializer/src/main/java/org/apache/xml/serializer/utils/SerializerMessages.java
similarity index 100%
rename from src/org/apache/xml/serializer/utils/SerializerMessages.java
rename to serializer/src/main/java/org/apache/xml/serializer/utils/SerializerMessages.java
diff --git a/src/org/apache/xml/serializer/utils/SerializerMessages_ca.java b/serializer/src/main/java/org/apache/xml/serializer/utils/SerializerMessages_ca.java
similarity index 100%
rename from src/org/apache/xml/serializer/utils/SerializerMessages_ca.java
rename to serializer/src/main/java/org/apache/xml/serializer/utils/SerializerMessages_ca.java
diff --git a/src/org/apache/xml/serializer/utils/SerializerMessages_cs.java b/serializer/src/main/java/org/apache/xml/serializer/utils/SerializerMessages_cs.java
similarity index 100%
rename from src/org/apache/xml/serializer/utils/SerializerMessages_cs.java
rename to serializer/src/main/java/org/apache/xml/serializer/utils/SerializerMessages_cs.java
diff --git a/src/org/apache/xml/serializer/utils/SerializerMessages_de.java b/serializer/src/main/java/org/apache/xml/serializer/utils/SerializerMessages_de.java
similarity index 100%
rename from src/org/apache/xml/serializer/utils/SerializerMessages_de.java
rename to serializer/src/main/java/org/apache/xml/serializer/utils/SerializerMessages_de.java
diff --git a/src/org/apache/xml/serializer/utils/SerializerMessages_en.java b/serializer/src/main/java/org/apache/xml/serializer/utils/SerializerMessages_en.java
similarity index 100%
rename from src/org/apache/xml/serializer/utils/SerializerMessages_en.java
rename to serializer/src/main/java/org/apache/xml/serializer/utils/SerializerMessages_en.java
diff --git a/src/org/apache/xml/serializer/utils/SerializerMessages_es.java b/serializer/src/main/java/org/apache/xml/serializer/utils/SerializerMessages_es.java
similarity index 100%
rename from src/org/apache/xml/serializer/utils/SerializerMessages_es.java
rename to serializer/src/main/java/org/apache/xml/serializer/utils/SerializerMessages_es.java
diff --git a/src/org/apache/xml/serializer/utils/SerializerMessages_fr.java b/serializer/src/main/java/org/apache/xml/serializer/utils/SerializerMessages_fr.java
similarity index 100%
rename from src/org/apache/xml/serializer/utils/SerializerMessages_fr.java
rename to serializer/src/main/java/org/apache/xml/serializer/utils/SerializerMessages_fr.java
diff --git a/src/org/apache/xml/serializer/utils/SerializerMessages_hu.java b/serializer/src/main/java/org/apache/xml/serializer/utils/SerializerMessages_hu.java
similarity index 100%
rename from src/org/apache/xml/serializer/utils/SerializerMessages_hu.java
rename to serializer/src/main/java/org/apache/xml/serializer/utils/SerializerMessages_hu.java
diff --git a/src/org/apache/xml/serializer/utils/SerializerMessages_it.java b/serializer/src/main/java/org/apache/xml/serializer/utils/SerializerMessages_it.java
similarity index 100%
rename from src/org/apache/xml/serializer/utils/SerializerMessages_it.java
rename to serializer/src/main/java/org/apache/xml/serializer/utils/SerializerMessages_it.java
diff --git a/src/org/apache/xml/serializer/utils/SerializerMessages_ja.java b/serializer/src/main/java/org/apache/xml/serializer/utils/SerializerMessages_ja.java
similarity index 100%
rename from src/org/apache/xml/serializer/utils/SerializerMessages_ja.java
rename to serializer/src/main/java/org/apache/xml/serializer/utils/SerializerMessages_ja.java
diff --git a/src/org/apache/xml/serializer/utils/SerializerMessages_ko.java b/serializer/src/main/java/org/apache/xml/serializer/utils/SerializerMessages_ko.java
similarity index 100%
rename from src/org/apache/xml/serializer/utils/SerializerMessages_ko.java
rename to serializer/src/main/java/org/apache/xml/serializer/utils/SerializerMessages_ko.java
diff --git a/src/org/apache/xml/serializer/utils/SerializerMessages_pl.java b/serializer/src/main/java/org/apache/xml/serializer/utils/SerializerMessages_pl.java
similarity index 100%
rename from src/org/apache/xml/serializer/utils/SerializerMessages_pl.java
rename to serializer/src/main/java/org/apache/xml/serializer/utils/SerializerMessages_pl.java
diff --git a/src/org/apache/xml/serializer/utils/SerializerMessages_pt_BR.java b/serializer/src/main/java/org/apache/xml/serializer/utils/SerializerMessages_pt_BR.java
similarity index 100%
rename from src/org/apache/xml/serializer/utils/SerializerMessages_pt_BR.java
rename to serializer/src/main/java/org/apache/xml/serializer/utils/SerializerMessages_pt_BR.java
diff --git a/src/org/apache/xml/serializer/utils/SerializerMessages_ru.java b/serializer/src/main/java/org/apache/xml/serializer/utils/SerializerMessages_ru.java
similarity index 100%
rename from src/org/apache/xml/serializer/utils/SerializerMessages_ru.java
rename to serializer/src/main/java/org/apache/xml/serializer/utils/SerializerMessages_ru.java
diff --git a/src/org/apache/xml/serializer/utils/SerializerMessages_sk.java b/serializer/src/main/java/org/apache/xml/serializer/utils/SerializerMessages_sk.java
similarity index 100%
rename from src/org/apache/xml/serializer/utils/SerializerMessages_sk.java
rename to serializer/src/main/java/org/apache/xml/serializer/utils/SerializerMessages_sk.java
diff --git a/src/org/apache/xml/serializer/utils/SerializerMessages_sl.java b/serializer/src/main/java/org/apache/xml/serializer/utils/SerializerMessages_sl.java
similarity index 100%
rename from src/org/apache/xml/serializer/utils/SerializerMessages_sl.java
rename to serializer/src/main/java/org/apache/xml/serializer/utils/SerializerMessages_sl.java
diff --git a/src/org/apache/xml/serializer/utils/SerializerMessages_sv.java b/serializer/src/main/java/org/apache/xml/serializer/utils/SerializerMessages_sv.java
similarity index 100%
rename from src/org/apache/xml/serializer/utils/SerializerMessages_sv.java
rename to serializer/src/main/java/org/apache/xml/serializer/utils/SerializerMessages_sv.java
diff --git a/src/org/apache/xml/serializer/utils/SerializerMessages_tr.java b/serializer/src/main/java/org/apache/xml/serializer/utils/SerializerMessages_tr.java
similarity index 100%
rename from src/org/apache/xml/serializer/utils/SerializerMessages_tr.java
rename to serializer/src/main/java/org/apache/xml/serializer/utils/SerializerMessages_tr.java
diff --git a/src/org/apache/xml/serializer/utils/SerializerMessages_zh.java b/serializer/src/main/java/org/apache/xml/serializer/utils/SerializerMessages_zh.java
similarity index 100%
rename from src/org/apache/xml/serializer/utils/SerializerMessages_zh.java
rename to serializer/src/main/java/org/apache/xml/serializer/utils/SerializerMessages_zh.java
diff --git a/src/org/apache/xml/serializer/utils/SerializerMessages_zh_CN.java b/serializer/src/main/java/org/apache/xml/serializer/utils/SerializerMessages_zh_CN.java
similarity index 100%
rename from src/org/apache/xml/serializer/utils/SerializerMessages_zh_CN.java
rename to serializer/src/main/java/org/apache/xml/serializer/utils/SerializerMessages_zh_CN.java
diff --git a/src/org/apache/xml/serializer/utils/SerializerMessages_zh_TW.java b/serializer/src/main/java/org/apache/xml/serializer/utils/SerializerMessages_zh_TW.java
similarity index 100%
rename from src/org/apache/xml/serializer/utils/SerializerMessages_zh_TW.java
rename to serializer/src/main/java/org/apache/xml/serializer/utils/SerializerMessages_zh_TW.java
diff --git a/src/org/apache/xml/serializer/utils/StringToIntTable.java b/serializer/src/main/java/org/apache/xml/serializer/utils/StringToIntTable.java
similarity index 100%
rename from src/org/apache/xml/serializer/utils/StringToIntTable.java
rename to serializer/src/main/java/org/apache/xml/serializer/utils/StringToIntTable.java
diff --git a/src/org/apache/xml/serializer/utils/SystemIDResolver.java b/serializer/src/main/java/org/apache/xml/serializer/utils/SystemIDResolver.java
similarity index 100%
rename from src/org/apache/xml/serializer/utils/SystemIDResolver.java
rename to serializer/src/main/java/org/apache/xml/serializer/utils/SystemIDResolver.java
diff --git a/src/org/apache/xml/serializer/utils/URI.java b/serializer/src/main/java/org/apache/xml/serializer/utils/URI.java
similarity index 100%
rename from src/org/apache/xml/serializer/utils/URI.java
rename to serializer/src/main/java/org/apache/xml/serializer/utils/URI.java
diff --git a/src/org/apache/xml/serializer/utils/Utils.java b/serializer/src/main/java/org/apache/xml/serializer/utils/Utils.java
similarity index 100%
rename from src/org/apache/xml/serializer/utils/Utils.java
rename to serializer/src/main/java/org/apache/xml/serializer/utils/Utils.java
diff --git a/src/org/apache/xml/serializer/utils/WrappedRuntimeException.java b/serializer/src/main/java/org/apache/xml/serializer/utils/WrappedRuntimeException.java
similarity index 100%
rename from src/org/apache/xml/serializer/utils/WrappedRuntimeException.java
rename to serializer/src/main/java/org/apache/xml/serializer/utils/WrappedRuntimeException.java
diff --git a/src/org/apache/xml/serializer/utils/XML11Char.java b/serializer/src/main/java/org/apache/xml/serializer/utils/XML11Char.java
similarity index 95%
rename from src/org/apache/xml/serializer/utils/XML11Char.java
rename to serializer/src/main/java/org/apache/xml/serializer/utils/XML11Char.java
index b32249ed5..f6756cc15 100644
--- a/src/org/apache/xml/serializer/utils/XML11Char.java
+++ b/serializer/src/main/java/org/apache/xml/serializer/utils/XML11Char.java
@@ -152,7 +152,7 @@ public class XML11Char {
//
/**
- * Returns true if the specified character is a space character
+ * @return true if the specified character is a space character
* as amdended in the XML 1.1 specification.
*
* @param c The character to check.
@@ -162,7 +162,7 @@ public static boolean isXML11Space(int c) {
} // isXML11Space(int):boolean
/**
- * Returns true if the specified character is valid. This method
+ * @return true if the specified character is valid. This method
* also checks the surrogate character range from 0x10000 to 0x10FFFF.
*
* If the program chooses to apply the mask directly to the
@@ -177,7 +177,7 @@ public static boolean isXML11Valid(int c) {
} // isXML11Valid(int):boolean
/**
- * Returns true if the specified character is invalid.
+ * @return true if the specified character is invalid.
*
* @param c The character to check.
*/
@@ -186,7 +186,7 @@ public static boolean isXML11Invalid(int c) {
} // isXML11Invalid(int):boolean
/**
- * Returns true if the specified character is valid and permitted outside
+ * @return true if the specified character is valid and permitted outside
* of a character reference.
* That is, this method will return false for the same set as
* isXML11Valid, except it also reports false for "control characters".
@@ -199,7 +199,7 @@ public static boolean isXML11ValidLiteral(int c) {
} // isXML11ValidLiteral(int):boolean
/**
- * Returns true if the specified character can be considered
+ * @return true if the specified character can be considered
* content in an external parsed entity.
*
* @param c The character to check.
@@ -210,7 +210,7 @@ public static boolean isXML11Content(int c) {
} // isXML11Content(int):boolean
/**
- * Returns true if the specified character can be considered
+ * @return true if the specified character can be considered
* content in an internal parsed entity.
*
* @param c The character to check.
@@ -221,7 +221,7 @@ public static boolean isXML11InternalEntityContent(int c) {
} // isXML11InternalEntityContent(int):boolean
/**
- * Returns true if the specified character is a valid name start
+ * @return true if the specified character is a valid name start
* character as defined by production [4] in the XML 1.1
* specification.
*
@@ -233,7 +233,7 @@ public static boolean isXML11NameStart(int c) {
} // isXML11NameStart(int):boolean
/**
- * Returns true if the specified character is a valid name
+ * @return true if the specified character is a valid name
* character as defined by production [4a] in the XML 1.1
* specification.
*
@@ -245,7 +245,7 @@ public static boolean isXML11Name(int c) {
} // isXML11Name(int):boolean
/**
- * Returns true if the specified character is a valid NCName start
+ * @return true if the specified character is a valid NCName start
* character as defined by production [4] in Namespaces in XML
* 1.1 recommendation.
*
@@ -257,7 +257,7 @@ public static boolean isXML11NCNameStart(int c) {
} // isXML11NCNameStart(int):boolean
/**
- * Returns true if the specified character is a valid NCName
+ * @return true if the specified character is a valid NCName
* character as defined by production [5] in Namespaces in XML
* 1.1 recommendation.
*
@@ -269,7 +269,7 @@ public static boolean isXML11NCName(int c) {
} // isXML11NCName(int):boolean
/**
- * Returns whether the given character is a valid
+ * @return true if the given character is a valid
* high surrogate for a name character. This includes
* all high surrogates for characters [0x10000-0xEFFFF].
* In other words everything excluding planes 15 and 16.
diff --git a/src/org/apache/xml/serializer/utils/XMLChar.java b/serializer/src/main/java/org/apache/xml/serializer/utils/XMLChar.java
similarity index 97%
rename from src/org/apache/xml/serializer/utils/XMLChar.java
rename to serializer/src/main/java/org/apache/xml/serializer/utils/XMLChar.java
index a0d8c8523..f38e8f096 100644
--- a/src/org/apache/xml/serializer/utils/XMLChar.java
+++ b/serializer/src/main/java/org/apache/xml/serializer/utils/XMLChar.java
@@ -722,7 +722,7 @@ public class XMLChar {
//
/**
- * Returns true if the specified character is a supplemental character.
+ * @return true if the specified character is a supplemental character.
*
* @param c The character to check.
*/
@@ -731,7 +731,7 @@ public static boolean isSupplemental(int c) {
}
/**
- * Returns true the supplemental character corresponding to the given
+ * @return true the supplemental character corresponding to the given
* surrogates.
*
* @param h The high surrogate.
@@ -742,7 +742,7 @@ public static int supplemental(char h, char l) {
}
/**
- * Returns the high surrogate of a supplemental character
+ * @return the high surrogate of a supplemental character
*
* @param c The supplemental character to "split".
*/
@@ -751,7 +751,7 @@ public static char highSurrogate(int c) {
}
/**
- * Returns the low surrogate of a supplemental character
+ * @return the low surrogate of a supplemental character
*
* @param c The supplemental character to "split".
*/
@@ -760,7 +760,7 @@ public static char lowSurrogate(int c) {
}
/**
- * Returns whether the given character is a high surrogate
+ * @return whether the given character is a high surrogate
*
* @param c The character to check.
*/
@@ -769,7 +769,7 @@ public static boolean isHighSurrogate(int c) {
}
/**
- * Returns whether the given character is a low surrogate
+ * @return whether the given character is a low surrogate
*
* @param c The character to check.
*/
@@ -779,7 +779,7 @@ public static boolean isLowSurrogate(int c) {
/**
- * Returns true if the specified character is valid. This method
+ * @return true if the specified character is valid. This method
* also checks the surrogate character range from 0x10000 to 0x10FFFF.
*
* If the program chooses to apply the mask directly to the
@@ -794,7 +794,7 @@ public static boolean isValid(int c) {
} // isValid(int):boolean
/**
- * Returns true if the specified character is invalid.
+ * @return true if the specified character is invalid.
*
* @param c The character to check.
*/
@@ -803,7 +803,7 @@ public static boolean isInvalid(int c) {
} // isInvalid(int):boolean
/**
- * Returns true if the specified character can be considered content.
+ * @return true if the specified character can be considered content.
*
* @param c The character to check.
*/
@@ -813,7 +813,7 @@ public static boolean isContent(int c) {
} // isContent(int):boolean
/**
- * Returns true if the specified character can be considered markup.
+ * @return true if the specified character can be considered markup.
* Markup characters include '<', '&', and '%'.
*
* @param c The character to check.
@@ -823,7 +823,7 @@ public static boolean isMarkup(int c) {
} // isMarkup(int):boolean
/**
- * Returns true if the specified character is a space character
+ * @return true if the specified character is a space character
* as defined by production [3] in the XML 1.0 specification.
*
* @param c The character to check.
@@ -833,7 +833,7 @@ public static boolean isSpace(int c) {
} // isSpace(int):boolean
/**
- * Returns true if the specified character is a valid name start
+ * @return true if the specified character is a valid name start
* character as defined by production [5] in the XML 1.0
* specification.
*
@@ -844,7 +844,7 @@ public static boolean isNameStart(int c) {
} // isNameStart(int):boolean
/**
- * Returns true if the specified character is a valid name
+ * @return true if the specified character is a valid name
* character as defined by production [4] in the XML 1.0
* specification.
*
@@ -855,7 +855,7 @@ public static boolean isName(int c) {
} // isName(int):boolean
/**
- * Returns true if the specified character is a valid NCName start
+ * @return true if the specified character is a valid NCName start
* character as defined by production [4] in Namespaces in XML
* recommendation.
*
@@ -866,7 +866,7 @@ public static boolean isNCNameStart(int c) {
} // isNCNameStart(int):boolean
/**
- * Returns true if the specified character is a valid NCName
+ * @return true if the specified character is a valid NCName
* character as defined by production [5] in Namespaces in XML
* recommendation.
*
@@ -877,7 +877,7 @@ public static boolean isNCName(int c) {
} // isNCName(int):boolean
/**
- * Returns true if the specified character is a valid Pubid
+ * @return true if the specified character is a valid Pubid
* character as defined by production [13] in the XML 1.0
* specification.
*
@@ -968,7 +968,7 @@ public static boolean isValidNmtoken(String nmtoken) {
// encodings
/**
- * Returns true if the encoding name is a valid IANA encoding.
+ * @return true if the encoding name is a valid IANA encoding.
* This method does not verify that there is a decoder available
* for this encoding, only that the characters are valid for an
* IANA encoding name.
@@ -997,7 +997,7 @@ public static boolean isValidIANAEncoding(String ianaEncoding) {
} // isValidIANAEncoding(String):boolean
/**
- * Returns true if the encoding name is a valid Java encoding.
+ * @return true if the encoding name is a valid Java encoding.
* This method does not verify that there is a decoder available
* for this encoding, only that the characters are valid for an
* Java encoding name.
diff --git a/src/org/apache/xml/serializer/Encodings.properties b/serializer/src/main/resources/org/apache/xml/serializer/Encodings.properties
similarity index 100%
rename from src/org/apache/xml/serializer/Encodings.properties
rename to serializer/src/main/resources/org/apache/xml/serializer/Encodings.properties
diff --git a/src/org/apache/xml/serializer/HTMLEntities.properties b/serializer/src/main/resources/org/apache/xml/serializer/HTMLEntities.properties
similarity index 100%
rename from src/org/apache/xml/serializer/HTMLEntities.properties
rename to serializer/src/main/resources/org/apache/xml/serializer/HTMLEntities.properties
diff --git a/src/org/apache/xml/serializer/XMLEntities.properties b/serializer/src/main/resources/org/apache/xml/serializer/XMLEntities.properties
similarity index 100%
rename from src/org/apache/xml/serializer/XMLEntities.properties
rename to serializer/src/main/resources/org/apache/xml/serializer/XMLEntities.properties
diff --git a/src/org/apache/xml/serializer/output_html.properties b/serializer/src/main/resources/org/apache/xml/serializer/output_html.properties
similarity index 100%
rename from src/org/apache/xml/serializer/output_html.properties
rename to serializer/src/main/resources/org/apache/xml/serializer/output_html.properties
diff --git a/src/org/apache/xml/serializer/output_text.properties b/serializer/src/main/resources/org/apache/xml/serializer/output_text.properties
similarity index 100%
rename from src/org/apache/xml/serializer/output_text.properties
rename to serializer/src/main/resources/org/apache/xml/serializer/output_text.properties
diff --git a/src/org/apache/xml/serializer/output_unknown.properties b/serializer/src/main/resources/org/apache/xml/serializer/output_unknown.properties
similarity index 100%
rename from src/org/apache/xml/serializer/output_unknown.properties
rename to serializer/src/main/resources/org/apache/xml/serializer/output_unknown.properties
diff --git a/src/org/apache/xml/serializer/output_xml.properties b/serializer/src/main/resources/org/apache/xml/serializer/output_xml.properties
similarity index 100%
rename from src/org/apache/xml/serializer/output_xml.properties
rename to serializer/src/main/resources/org/apache/xml/serializer/output_xml.properties
diff --git a/serializer/src/main/resources/org/apache/xml/serializer/package.html b/serializer/src/main/resources/org/apache/xml/serializer/package.html
new file mode 100644
index 000000000..d4dffd139
--- /dev/null
+++ b/serializer/src/main/resources/org/apache/xml/serializer/package.html
@@ -0,0 +1,43 @@
+
+
+
+
Xalan Serializer Package.
+
+
Processes SAX events into streams.
+
+
The {@link org.apache.xml.serializer.SerializerFactory} is used to
+ create a {@link org.apache.xml.serializer.Serializer} from a set of
+ output properties (see {@link javax.xml.transform.OutputKeys}).
+
{@link org.apache.xml.serializer.ToStream} acts as the main
+ baseclass for the Xalan serializer implementations.
+ {@link org.apache.xml.serializer.ToHTMLStream} derives from this
+ to implement HTML serialization.
+ {@link org.apache.xml.serializer.ToTextStream}
+ implements plain text serialization.
+ {@link org.apache.xml.serializer.ToXMLStream}
+ implements XML serialization.
+
+
XML mapping from characters to entity references is defined in
+ XMLEntities.res. HTML entity reference mapping is defined in HTMLEntities.res.
+
+
Encoding information is defined in {@link org.apache.xml.serializer.Encodings}.
+
+
+
+
diff --git a/serializer/src/main/resources/org/apache/xml/serializer/version.properties b/serializer/src/main/resources/org/apache/xml/serializer/version.properties
new file mode 100644
index 000000000..defbd4820
--- /dev/null
+++ b/serializer/src/main/resources/org/apache/xml/serializer/version.properties
@@ -0,0 +1 @@
+version=${project.version}
diff --git a/serializer/src/test/java/org/apache/xml/serializer/VersionTest.java b/serializer/src/test/java/org/apache/xml/serializer/VersionTest.java
new file mode 100644
index 000000000..486af2b60
--- /dev/null
+++ b/serializer/src/test/java/org/apache/xml/serializer/VersionTest.java
@@ -0,0 +1,132 @@
+/*
+ * 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.xml.serializer;
+
+import org.junit.jupiter.api.AfterAll;
+import org.junit.jupiter.api.BeforeAll;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.parallel.Isolated;
+import org.junit.jupiter.params.ParameterizedTest;
+import org.junit.jupiter.params.provider.Arguments;
+import org.junit.jupiter.params.provider.MethodSource;
+import org.mockito.MockedStatic;
+import org.mockito.Mockito;
+
+import java.io.ByteArrayInputStream;
+import java.io.ByteArrayOutputStream;
+import java.io.PrintStream;
+import java.util.stream.Stream;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertTrue;
+
+@Isolated("redirecting System.err is not thread-safe")
+public class VersionTest {
+ private static final PrintStream originalPrintStream = System.err;
+ private static final ByteArrayOutputStream buffer = new ByteArrayOutputStream();
+ private static final PrintStream mockPrintStream = new PrintStream(buffer, true);
+
+ @BeforeAll
+ public static void beforeAll() {
+ System.setErr(mockPrintStream);
+ }
+
+ @AfterAll
+ public static void afterAll() {
+ System.setErr(originalPrintStream);
+ }
+
+ @BeforeEach
+ public void beforeEach() {
+ buffer.reset();
+ }
+
+ @ParameterizedTest(name = "{0} -> {2}")
+ @MethodSource("testReadPropertiesArgs")
+ public void testReadProperties(String ignoredName, String properties, String version) {
+ try (MockedStatic versionMock = Mockito.mockStatic(Version.class, Mockito.CALLS_REAL_METHODS)) {
+ versionMock
+ .when(Version::getPropertiesStream)
+ .thenReturn(new ByteArrayInputStream(properties.getBytes()));
+ assertEquals(version, Version.readVersionNumber());
+ }
+ }
+
+ private static Stream testReadPropertiesArgs() {
+ return Stream.of(
+ Arguments.of("single line without line feed", "version=1.2.3", "1.2.3"),
+ Arguments.of("single line with line feed", "version=4.5.D6-SNAPSHOT\n", "4.5.D6-SNAPSHOT"),
+ Arguments.of("multiple lines with version number", "foo=bar\nversion=7.8.9\nbaz=zot\n", "7.8.9"),
+ Arguments.of("single line without version number", "verXion=7.8.9\n", "0.0.0"),
+ Arguments.of("multiple lines without version number", "foo=bar\nverXion=7.8.9\nbaz=zot\n", "0.0.0")
+ );
+ }
+
+ @Test
+ public void testCannotReadProperties() {
+ try (MockedStatic versionMock = Mockito.mockStatic(Version.class, Mockito.CALLS_REAL_METHODS)) {
+ versionMock
+ .when(Version::getPropertiesStream)
+ .thenThrow(NullPointerException.class);
+ assertEquals("0.0.0", Version.readVersionNumber());
+ assertTrue(buffer.toString().contains("RuntimeException: Cannot read properties file"));
+ }
+ }
+
+ @ParameterizedTest(name = "{0} -> {1}")
+ @MethodSource("testParseVersionNumberArgs")
+ public void testParseVersionNumber(
+ String inputVersion, boolean matchSuccessful, String parsedVersion,
+ int major, int release, int maintenance, int development, boolean snapshot
+ ) {
+ Version.parseVersionNumber(inputVersion);
+ assertEquals(parsedVersion, Version.getVersion());
+ assertEquals(major, Version.getMajorVersionNum());
+ assertEquals(release, Version.getReleaseVersionNum());
+ assertEquals(maintenance, Version.getMaintenanceVersionNum());
+ assertEquals(development, Version.getDevelopmentVersionNum());
+ assertEquals(snapshot, Version.isSnapshot());
+ boolean cannotMatchWarningFound = buffer.toString().contains("Cannot match Xalan version");
+ assertEquals(matchSuccessful, !cannotMatchWarningFound);
+ }
+
+ private static Stream testParseVersionNumberArgs() {
+ return Stream.of(
+ // Pattern match
+ Arguments.of("1.2.3", true, "Xalan Serializer Java 1.2.3", 1, 2, 3, 0, false),
+ Arguments.of("1.2.D3", true, "Xalan Serializer Java 1.2.D3", 1, 2, 0, 3, false),
+ Arguments.of("1.2.3-SNAPSHOT", true, "Xalan Serializer Java 1.2.3-SNAPSHOT", 1, 2, 3, 0, true),
+ Arguments.of("1.2.D03-SNAPSHOT", true, "Xalan Serializer Java 1.2.D3-SNAPSHOT", 1, 2, 0, 3, true),
+ Arguments.of("0.0.0", true, "Xalan Serializer Java 0.0.0", 0, 0, 0, 0, false),
+ // No pattern match
+ Arguments.of("", false, "Xalan Serializer Java 0.0.0", 0, 0, 0, 0, false),
+ Arguments.of("-1.2.3", false, "Xalan Serializer Java 0.0.0", 0, 0, 0, 0, false),
+ Arguments.of("-1.2.3", false, "Xalan Serializer Java 0.0.0", 0, 0, 0, 0, false),
+ Arguments.of("1. 2.3", false, "Xalan Serializer Java 0.0.0", 0, 0, 0, 0, false),
+ Arguments.of("1.2.D3x", false, "Xalan Serializer Java 0.0.0", 0, 0, 0, 0, false),
+ Arguments.of("1.2.3-XSNAPSHOT", false, "Xalan Serializer Java 0.0.0", 0, 0, 0, 0, false),
+ Arguments.of("1.2.D3-snapshot", false, "Xalan Serializer Java 0.0.0", 0, 0, 0, 0, false),
+ Arguments.of("1.2.D3-SNAPSHOT-1", false, "Xalan Serializer Java 0.0.0", 0, 0, 0, 0, false),
+ // Input version null -> cannot happen in class under test, but we know
+ // what would happen if it did
+ Arguments.of(null, true, "Xalan Serializer Java 0.0.0", 0, 0, 0, 0, false)
+ );
+ }
+
+}
diff --git a/src/org/apache/xalan/Version.src b/src/org/apache/xalan/Version.src
deleted file mode 100644
index ae942c784..000000000
--- a/src/org/apache/xalan/Version.src
+++ /dev/null
@@ -1,153 +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.
- */
-/*
- * $Id$
- */
-package org.apache.xalan;
-
-/**
- * Administrative class to keep track of the version number of
- * the Xalan release.
- *
This class implements the upcoming standard of having
- * org.apache.project-name.Version.getVersion() be a standard way
- * to get version information. This class will replace the older
- * org.apache.xalan.processor.Version class.
- *
See also: org/apache/xalan/res/XSLTInfo.properties for
- * information about the version of the XSLT spec we support.
- * @xsl.usage general
- */
-public class Version
-{
-
- /**
- * Get the basic version string for the current Xalan release.
- * Version String formatted like
- * "XalanJava v.r[.dd| Dnn]".
- *
- * Futurework: have this read version info from jar manifest.
- *
- * @return String denoting our current version
- */
- public static String getVersion()
- {
- return getProduct()+" "+getImplementationLanguage()+" "
- +getMajorVersionNum()+"."+getReleaseVersionNum()+"."
- +( (getDevelopmentVersionNum() > 0) ?
- ("D"+getDevelopmentVersionNum()) : (""+getMaintenanceVersionNum()));
- }
-
- /**
- * Print the processor version to the command line.
- *
- * @param argv command line arguments, unused.
- */
- public static void main(String argv[])
- {
- System.out.println(getVersion());
- }
-
- /**
- * Name of product: Xalan.
- */
- public static String getProduct()
- {
- return "Xalan";
- }
-
- /**
- * Implementation Language: Java.
- */
- public static String getImplementationLanguage()
- {
- return "Java";
- }
-
-
- /**
- * Major version number.
- * Version number. This changes only when there is a
- * significant, externally apparent enhancement from
- * the previous release. 'n' represents the n'th
- * version.
- *
- * Clients should carefully consider the implications
- * of new versions as external interfaces and behaviour
- * may have changed.
- */
- public static int getMajorVersionNum()
- {
- return @version.VERSION@;
-
- }
-
- /**
- * Release Number.
- * Release number. This changes when:
- * - a new set of functionality is to be added, eg,
- * implementation of a new W3C specification.
- * - API or behaviour change.
- * - its designated as a reference release.
- */
- public static int getReleaseVersionNum()
- {
- return @version.RELEASE@;
- }
-
- /**
- * Maintenance Drop Number.
- * Optional identifier used to designate maintenance
- * drop applied to a specific release and contains
- * fixes for defects reported. It maintains compatibility
- * with the release and contains no API changes.
- * When missing, it designates the final and complete
- * development drop for a release.
- */
- public static int getMaintenanceVersionNum()
- {
- return @version.MINOR@;
- }
-
- /**
- * Development Drop Number.
- * Optional identifier designates development drop of
- * a specific release. D01 is the first development drop
- * of a new release.
- *
- * Development drops are works in progress towards a
- * compeleted, final release. A specific development drop
- * may not completely implement all aspects of a new
- * feature, which may take several development drops to
- * complete. At the point of the final drop for the
- * release, the D suffix will be omitted.
- *
- * Each 'D' drops can contain functional enhancements as
- * well as defect fixes. 'D' drops may not be as stable as
- * the final releases.
- */
- public static int getDevelopmentVersionNum()
- {
- try {
- if ((new String("@version.DEVELOPER@")).length() == 0)
- return 0;
- else
- return Integer.parseInt("@version.DEVELOPER@");
- } catch (NumberFormatException nfe) {
- return 0;
- }
- }
-}
diff --git a/src/org/apache/xalan/processor/XSLProcessorVersion.src b/src/org/apache/xalan/processor/XSLProcessorVersion.src
deleted file mode 100644
index 7c44d46cb..000000000
--- a/src/org/apache/xalan/processor/XSLProcessorVersion.src
+++ /dev/null
@@ -1,116 +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.
- */
-/*
- * $Id$
- */
-package org.apache.xalan.processor;
-
-/**
- * Administrative class to keep track of the version number of
- * the Xalan release.
- *
See also: org/apache/xalan/res/XSLTInfo.properties
- * @deprecated To be replaced by org.apache.xalan.Version.getVersion()
- * @xsl.usage general
- */
-public class XSLProcessorVersion
-{
-
- /**
- * Print the processor version to the command line.
- *
- * @param argv command line arguments, unused.
- */
- public static void main(String argv[])
- {
- System.out.println(S_VERSION);
- }
-
- /**
- * Constant name of product.
- */
- public static final String PRODUCT = "Xalan";
-
- /**
- * Implementation Language.
- */
- public static final String LANGUAGE = "Java";
-
- /**
- * Major version number.
- * Version number. This changes only when there is a
- * significant, externally apparent enhancement from
- * the previous release. 'n' represents the n'th
- * version.
- *
- * Clients should carefully consider the implications
- * of new versions as external interfaces and behaviour
- * may have changed.
- */
- public static final int VERSION = @version.VERSION@;
-
- /**
- * Release Number.
- * Release number. This changes when:
- * - a new set of functionality is to be added, eg,
- * implementation of a new W3C specification.
- * - API or behaviour change.
- * - its designated as a reference release.
- */
- public static final int RELEASE = @version.RELEASE@;
-
- /**
- * Maintenance Drop Number.
- * Optional identifier used to designate maintenance
- * drop applied to a specific release and contains
- * fixes for defects reported. It maintains compatibility
- * with the release and contains no API changes.
- * When missing, it designates the final and complete
- * development drop for a release.
- */
- public static final int MAINTENANCE = @version.MINOR@;
-
- /**
- * Development Drop Number.
- * Optional identifier designates development drop of
- * a specific release. D01 is the first development drop
- * of a new release.
- *
- * Development drops are works in progress towards a
- * compeleted, final release. A specific development drop
- * may not completely implement all aspects of a new
- * feature, which may take several development drops to
- * complete. At the point of the final drop for the
- * release, the D suffix will be omitted.
- *
- * Each 'D' drops can contain functional enhancements as
- * well as defect fixes. 'D' drops may not be as stable as
- * the final releases.
- */
- public static final int DEVELOPMENT = 0;
-
- /**
- * Version String like "XalanLanguage
- * v.r[.dd| Dnn]".
- *
Semantics of the version string are identical to the Xerces project.
- */
- public static final String S_VERSION = PRODUCT+" "+LANGUAGE+" "
- +VERSION+"."+RELEASE+"."
- +(DEVELOPMENT > 0 ? ("D"+DEVELOPMENT)
- : (""+MAINTENANCE));
-
-}
diff --git a/src/org/apache/xalan/xsltc/util/JavaCupRedirect.java b/src/org/apache/xalan/xsltc/util/JavaCupRedirect.java
deleted file mode 100644
index 6ca533d35..000000000
--- a/src/org/apache/xalan/xsltc/util/JavaCupRedirect.java
+++ /dev/null
@@ -1,97 +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.
- */
-/*
- * $Id$
- */
-
-package org.apache.xalan.xsltc.util;
-
-import java.io.FileInputStream;
-import java.io.FileNotFoundException;
-import java.io.InputStream;
-
-/**
- * Utility class to redirect input to JavaCup program.
- *
- * Usage-command line:
- * java org.apache.xalan.xsltc.utils.JavaCupRedirect [args] -stdin filename.ext
- *
- * @author Morten Jorgensen
- * @version $Id$
- */
-public class JavaCupRedirect {
-
- private final static String ERRMSG =
- "You must supply a filename with the -stdin option.";
-
- public static void main (String args[]) {
-
- // If we should call System.exit or not
- //@todo make this settable for use inside other java progs
- boolean systemExitOK = true;
-
- // This is the stream we'll set as our System.in
- InputStream input = null;
-
- // The number of arguments
- final int argc = args.length;
-
- // The arguments we'll pass to the real 'main()'
- String[] new_args = new String[argc - 2];
- int new_argc = 0;
-
- // Parse all parameters passed to this class
- for (int i = 0; i < argc; i++) {
- // Parse option '-stdin '
- if (args[i].equals("-stdin")) {
- // This option must have an argument
- if ((++i >= argc) || (args[i].startsWith("-"))) {
- System.err.println(ERRMSG);
- throw new RuntimeException(ERRMSG);
- }
- try {
- input = new FileInputStream(args[i]);
- }
- catch (FileNotFoundException e) {
- System.err.println("Could not open file "+args[i]);
- throw new RuntimeException(e.getMessage());
- }
- catch (SecurityException e) {
- System.err.println("No permission to file "+args[i]);
- throw new RuntimeException(e.getMessage());
- }
- }
- else {
- if (new_argc == new_args.length) {
- System.err.println("Missing -stdin option!");
- throw new RuntimeException();
- }
- new_args[new_argc++] = args[i];
- }
- }
-
- System.setIn(input);
- try {
- java_cup.Main.main(new_args);
- }
- catch (Exception e) {
- System.err.println("Error running JavaCUP:");
- e.printStackTrace();
- }
- }
-}
diff --git a/src/org/apache/xml/serializer/Version.src b/src/org/apache/xml/serializer/Version.src
deleted file mode 100644
index deb26637f..000000000
--- a/src/org/apache/xml/serializer/Version.src
+++ /dev/null
@@ -1,150 +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.
- */
-/*
- * $Id$
- */
-package org.apache.xml.serializer;
-
-/**
- * Administrative class to keep track of the version number of
- * the Serializer release.
- *
This class implements the upcoming standard of having
- * org.apache.project-name.Version.getVersion() be a standard way
- * to get version information.
- * @xsl.usage general
- */
-public final class Version
-{
-
- /**
- * Get the basic version string for the current Serializer.
- * Version String formatted like
- * "SerializerJava v.r[.dd| Dnn]".
- *
- * Futurework: have this read version info from jar manifest.
- *
- * @return String denoting our current version
- */
- public static String getVersion()
- {
- return getProduct()+" "+getImplementationLanguage()+" "
- +getMajorVersionNum()+"."+getReleaseVersionNum()+"."
- +( (getDevelopmentVersionNum() > 0) ?
- ("D"+getDevelopmentVersionNum()) : (""+getMaintenanceVersionNum()));
- }
-
- /**
- * Print the processor version to the command line.
- *
- * @param argv command line arguments, unused.
- */
- public static void main(String argv[])
- {
- System.out.println(getVersion());
- }
-
- /**
- * Name of product: Serializer.
- */
- public static String getProduct()
- {
- return "Serializer";
- }
-
- /**
- * Implementation Language: Java.
- */
- public static String getImplementationLanguage()
- {
- return "Java";
- }
-
-
- /**
- * Major version number.
- * Version number. This changes only when there is a
- * significant, externally apparent enhancement from
- * the previous release. 'n' represents the n'th
- * version.
- *
- * Clients should carefully consider the implications
- * of new versions as external interfaces and behaviour
- * may have changed.
- */
- public static int getMajorVersionNum()
- {
- return @version.VERSION@;
-
- }
-
- /**
- * Release Number.
- * Release number. This changes when:
- * - a new set of functionality is to be added, eg,
- * implementation of a new W3C specification.
- * - API or behaviour change.
- * - its designated as a reference release.
- */
- public static int getReleaseVersionNum()
- {
- return @version.RELEASE@;
- }
-
- /**
- * Maintenance Drop Number.
- * Optional identifier used to designate maintenance
- * drop applied to a specific release and contains
- * fixes for defects reported. It maintains compatibility
- * with the release and contains no API changes.
- * When missing, it designates the final and complete
- * development drop for a release.
- */
- public static int getMaintenanceVersionNum()
- {
- return @version.MINOR@;
- }
-
- /**
- * Development Drop Number.
- * Optional identifier designates development drop of
- * a specific release. D01 is the first development drop
- * of a new release.
- *
- * Development drops are works in progress towards a
- * compeleted, final release. A specific development drop
- * may not completely implement all aspects of a new
- * feature, which may take several development drops to
- * complete. At the point of the final drop for the
- * release, the D suffix will be omitted.
- *
- * Each 'D' drops can contain functional enhancements as
- * well as defect fixes. 'D' drops may not be as stable as
- * the final releases.
- */
- public static int getDevelopmentVersionNum()
- {
- try {
- if ((new String("@version.DEVELOPER@")).length() == 0)
- return 0;
- else
- return Integer.parseInt("@version.DEVELOPER@");
- } catch (NumberFormatException nfe) {
- return 0;
- }
- }
-}
diff --git a/src/xml-commons-external-1.3.02-src.tar.gz b/src/xml-commons-external-1.3.02-src.tar.gz
deleted file mode 100644
index 469b3bd7c..000000000
Binary files a/src/xml-commons-external-1.3.02-src.tar.gz and /dev/null differ
diff --git a/stylebook/dtd/blocks.ent b/stylebook/dtd/blocks.ent
new file mode 100644
index 000000000..5f352d1bf
--- /dev/null
+++ b/stylebook/dtd/blocks.ent
@@ -0,0 +1,40 @@
+
+
+
+
+
+
+
+%markupEntity;
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/stylebook/dtd/book.dtd b/stylebook/dtd/book.dtd
new file mode 100644
index 000000000..2f49ce990
--- /dev/null
+++ b/stylebook/dtd/book.dtd
@@ -0,0 +1,49 @@
+
+
+
+
+
+
+%externalEntity;
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/stylebook/dtd/changes.dtd b/stylebook/dtd/changes.dtd
new file mode 100644
index 000000000..661affa86
--- /dev/null
+++ b/stylebook/dtd/changes.dtd
@@ -0,0 +1,24 @@
+
+
+
+
+
+
+%markupEntity;
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/stylebook/dtd/characters.ent b/stylebook/dtd/characters.ent
new file mode 100644
index 000000000..036c06d5e
--- /dev/null
+++ b/stylebook/dtd/characters.ent
@@ -0,0 +1,297 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/stylebook/dtd/document.dtd b/stylebook/dtd/document.dtd
new file mode 100644
index 000000000..f7cf5b121
--- /dev/null
+++ b/stylebook/dtd/document.dtd
@@ -0,0 +1,19 @@
+
+
+
+
+
+
+%blocksEntity;
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/stylebook/dtd/faqs.dtd b/stylebook/dtd/faqs.dtd
new file mode 100644
index 000000000..565d99f4b
--- /dev/null
+++ b/stylebook/dtd/faqs.dtd
@@ -0,0 +1,19 @@
+
+
+
+
+
+
+%blocksEntity;
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/stylebook/dtd/links.ent b/stylebook/dtd/links.ent
new file mode 100644
index 000000000..63b002fff
--- /dev/null
+++ b/stylebook/dtd/links.ent
@@ -0,0 +1,24 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/stylebook/dtd/markup.ent b/stylebook/dtd/markup.ent
new file mode 100644
index 000000000..66319e5f7
--- /dev/null
+++ b/stylebook/dtd/markup.ent
@@ -0,0 +1,21 @@
+
+
+
+
+
+
+
+%externalEntity;
+
+
+%charEntity;
+
+
+%linksEntity;
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/xdocs/style/dtd/spec.dtd b/stylebook/dtd/spec.dtd
similarity index 100%
rename from xdocs/style/dtd/spec.dtd
rename to stylebook/dtd/spec.dtd
diff --git a/xdocs/style/dtd/xsl-html40s.dtd b/stylebook/dtd/xsl-html40s.dtd
similarity index 100%
rename from xdocs/style/dtd/xsl-html40s.dtd
rename to stylebook/dtd/xsl-html40s.dtd
diff --git a/stylebook/graphics/button-a.gif b/stylebook/graphics/button-a.gif
new file mode 100644
index 000000000..5d0b8c242
Binary files /dev/null and b/stylebook/graphics/button-a.gif differ
diff --git a/stylebook/graphics/button-b.gif b/stylebook/graphics/button-b.gif
new file mode 100644
index 000000000..06e03811a
Binary files /dev/null and b/stylebook/graphics/button-b.gif differ
diff --git a/stylebook/loader.xml b/stylebook/loader.xml
new file mode 100644
index 000000000..a416d8426
--- /dev/null
+++ b/stylebook/loader.xml
@@ -0,0 +1,9 @@
+
+
+
+
+
+
+
+
+
diff --git a/xdocs/style/loaderdesign.xml b/stylebook/loaderdesign.xml
similarity index 100%
rename from xdocs/style/loaderdesign.xml
rename to stylebook/loaderdesign.xml
diff --git a/stylebook/resources/bottom.gif b/stylebook/resources/bottom.gif
new file mode 100644
index 000000000..f39031efa
Binary files /dev/null and b/stylebook/resources/bottom.gif differ
diff --git a/stylebook/resources/button-asf-hi.gif b/stylebook/resources/button-asf-hi.gif
new file mode 100644
index 000000000..08b880a74
Binary files /dev/null and b/stylebook/resources/button-asf-hi.gif differ
diff --git a/stylebook/resources/button-asf-lo.gif b/stylebook/resources/button-asf-lo.gif
new file mode 100644
index 000000000..134580f37
Binary files /dev/null and b/stylebook/resources/button-asf-lo.gif differ
diff --git a/stylebook/resources/button-w3c-hi.gif b/stylebook/resources/button-w3c-hi.gif
new file mode 100644
index 000000000..3bf0be395
Binary files /dev/null and b/stylebook/resources/button-w3c-hi.gif differ
diff --git a/stylebook/resources/button-w3c-lo.gif b/stylebook/resources/button-w3c-lo.gif
new file mode 100644
index 000000000..d383d3dd9
Binary files /dev/null and b/stylebook/resources/button-w3c-lo.gif differ
diff --git a/stylebook/resources/button-xml-hi.gif b/stylebook/resources/button-xml-hi.gif
new file mode 100644
index 000000000..01d095ce4
Binary files /dev/null and b/stylebook/resources/button-xml-hi.gif differ
diff --git a/stylebook/resources/button-xml-lo.gif b/stylebook/resources/button-xml-lo.gif
new file mode 100644
index 000000000..5719c7ef0
Binary files /dev/null and b/stylebook/resources/button-xml-lo.gif differ
diff --git a/stylebook/resources/close.gif b/stylebook/resources/close.gif
new file mode 100644
index 000000000..48a9782ce
Binary files /dev/null and b/stylebook/resources/close.gif differ
diff --git a/stylebook/resources/dot.gif b/stylebook/resources/dot.gif
new file mode 100644
index 000000000..6227d1d86
Binary files /dev/null and b/stylebook/resources/dot.gif differ
diff --git a/stylebook/resources/join.gif b/stylebook/resources/join.gif
new file mode 100644
index 000000000..02e7611bb
Binary files /dev/null and b/stylebook/resources/join.gif differ
diff --git a/stylebook/resources/line.gif b/stylebook/resources/line.gif
new file mode 100644
index 000000000..fd25c3943
Binary files /dev/null and b/stylebook/resources/line.gif differ
diff --git a/stylebook/resources/logo.gif b/stylebook/resources/logo.gif
new file mode 100644
index 000000000..53538c3f6
Binary files /dev/null and b/stylebook/resources/logo.gif differ
diff --git a/stylebook/resources/note.gif b/stylebook/resources/note.gif
new file mode 100644
index 000000000..339422266
Binary files /dev/null and b/stylebook/resources/note.gif differ
diff --git a/stylebook/resources/right.gif b/stylebook/resources/right.gif
new file mode 100644
index 000000000..bcb50e386
Binary files /dev/null and b/stylebook/resources/right.gif differ
diff --git a/stylebook/resources/script.js b/stylebook/resources/script.js
new file mode 100644
index 000000000..ebadeb2b8
--- /dev/null
+++ b/stylebook/resources/script.js
@@ -0,0 +1,21 @@
+rolloverImagesOn=new Array();
+rolloverImagesOff=new Array();
+
+function rolloverOn(name) {
+ if(rolloverImagesOn[name]){
+ document.images[name].src=rolloverImagesOn[name].src;
+ }
+}
+
+function rolloverOff(name) {
+ if(rolloverImagesOff[name]){
+ document.images[name].src=rolloverImagesOff[name].src;
+ }
+}
+
+function rolloverLoad(name,on,off) {
+ rolloverImagesOn[name]=new Image();
+ rolloverImagesOn[name].src=on;
+ rolloverImagesOff[name]=new Image();
+ rolloverImagesOff[name].src=off;
+}
diff --git a/stylebook/resources/separator.gif b/stylebook/resources/separator.gif
new file mode 100644
index 000000000..e7749432f
Binary files /dev/null and b/stylebook/resources/separator.gif differ
diff --git a/stylebook/resources/void.gif b/stylebook/resources/void.gif
new file mode 100644
index 000000000..75b945d25
Binary files /dev/null and b/stylebook/resources/void.gif differ
diff --git a/xdocs/sources/design/compilation.gif b/stylebook/sources/design/compilation.gif
similarity index 100%
rename from xdocs/sources/design/compilation.gif
rename to stylebook/sources/design/compilation.gif
diff --git a/xdocs/sources/design/conceptual.gif b/stylebook/sources/design/conceptual.gif
similarity index 100%
rename from xdocs/sources/design/conceptual.gif
rename to stylebook/sources/design/conceptual.gif
diff --git a/xdocs/sources/design/data.gif b/stylebook/sources/design/data.gif
similarity index 100%
rename from xdocs/sources/design/data.gif
rename to stylebook/sources/design/data.gif
diff --git a/xdocs/sources/design/design2_0_0.xml b/stylebook/sources/design/design2_0_0.xml
similarity index 100%
rename from xdocs/sources/design/design2_0_0.xml
rename to stylebook/sources/design/design2_0_0.xml
diff --git a/xdocs/sources/design/org_apache.gif b/stylebook/sources/design/org_apache.gif
similarity index 100%
rename from xdocs/sources/design/org_apache.gif
rename to stylebook/sources/design/org_apache.gif
diff --git a/xdocs/sources/design/process.gif b/stylebook/sources/design/process.gif
similarity index 100%
rename from xdocs/sources/design/process.gif
rename to stylebook/sources/design/process.gif
diff --git a/xdocs/sources/design/trax.gif b/stylebook/sources/design/trax.gif
similarity index 100%
rename from xdocs/sources/design/trax.gif
rename to stylebook/sources/design/trax.gif
diff --git a/xdocs/sources/design/xalan.gif b/stylebook/sources/design/xalan.gif
similarity index 100%
rename from xdocs/sources/design/xalan.gif
rename to stylebook/sources/design/xalan.gif
diff --git a/xdocs/sources/design/xalan1_1x1.gif b/stylebook/sources/design/xalan1_1x1.gif
similarity index 100%
rename from xdocs/sources/design/xalan1_1x1.gif
rename to stylebook/sources/design/xalan1_1x1.gif
diff --git a/xdocs/sources/design/xmllogo.gif b/stylebook/sources/design/xmllogo.gif
similarity index 100%
rename from xdocs/sources/design/xmllogo.gif
rename to stylebook/sources/design/xmllogo.gif
diff --git a/xdocs/sources/design/xpath.gif b/stylebook/sources/design/xpath.gif
similarity index 100%
rename from xdocs/sources/design/xpath.gif
rename to stylebook/sources/design/xpath.gif
diff --git a/xdocs/sources/design/xslt_abstract.gif b/stylebook/sources/design/xslt_abstract.gif
similarity index 100%
rename from xdocs/sources/design/xslt_abstract.gif
rename to stylebook/sources/design/xslt_abstract.gif
diff --git a/xdocs/sources/entities.src b/stylebook/sources/entities.ent
similarity index 100%
rename from xdocs/sources/entities.src
rename to stylebook/sources/entities.ent
diff --git a/stylebook/sources/entities.src b/stylebook/sources/entities.src
new file mode 100644
index 000000000..b58c39218
--- /dev/null
+++ b/stylebook/sources/entities.src
@@ -0,0 +1,117 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+&xslt4jc-short;
'>
+
+
+
In April 2001, Sun donated &xslt4jc-short; to the Xalan project. &xslt4jc-short; compiles stylesheets into translets and
+ provides a runtime environment for using translets to transform XML documents. Initially, &xslt4jc-short; is
+ available in a separate JAR. Over time, we plan to integrate the two codebases. For more information,
+ see Getting Started with &xslt4jc-short;,
+ &xslt4jc-short;
+ Release Notes, and &xslt4jc-short; Design.
+ '>
+
+For &xslt4jc-short; changes since &xslt4jc-short; was incorporated into &xslt4j;, see
+ &xslt4jc-short; software changes.'>
+
+If you are using &xslt4jc-short;, see
+ Setting the system classpath for &xslt4jc-short;.
'>
+
+translets'>
+
+
+
+
JAXPTransletOneTransformation
+
JAXPTransletMultipleTransformations
+
Other &xslt4jc-short; samples
+
+
You can use the JAXP interfaces to compile and run translets.
+ For an overview of the usage patterns these samples illustrate, see
+ Calling &xslt4jc-short; with the JAXP API.
+
+
+
What it does: Uses the &xslt4jc-short; TransformerFactory to compile a translet and use
+ the translet to transform the &xslt4jc-short; to-do list from XML into HTML.
+
Run this sample from the translets subdirectory with
+
java JAXPTransletOneTransformation
+
View the result in todo.html.
+
+
+
What it does: Uses the &xslt4jc-short; TransformerFactory to compile a translet and use
+ the Templates object associated with the translet to transform the &xslt4jc-short; and Xalan to-do lists from XML
+ into HTML.
+
Run this sample from the translets subdirectory with
+
java JAXPTransletMultipleTransformations
+
View the results in todo.html and todotoo.html.
+
+
+
Other &xslt4jc-short; samples are located in the following samples subdirectories:
+
+
CompiledServlet
+
CompiledBrazil
+
CompiledJAXP
+
CompiledApplet
+
CompiledEJB
+
+
For information about each of these samples, consult the README file in the subdirectory.
+
&xslt4jc-short; provides demos for using &xslt4jc-short; as a servlet and as a handler for
+ Brazil (a new and powerful Web techology from Sun labs).
+
To run the Brazil-handler demo, download Brazil from sunlabs:
+
+ '>
diff --git a/xdocs/sources/xalan-apache-org-site.xml b/stylebook/sources/xalan-apache-org-site.xml
similarity index 100%
rename from xdocs/sources/xalan-apache-org-site.xml
rename to stylebook/sources/xalan-apache-org-site.xml
diff --git a/xdocs/sources/xalan-apache-org/index.xml b/stylebook/sources/xalan-apache-org/index.xml
similarity index 100%
rename from xdocs/sources/xalan-apache-org/index.xml
rename to stylebook/sources/xalan-apache-org/index.xml
diff --git a/xdocs/sources/xalan-collate.xsl b/stylebook/sources/xalan-collate.xsl
similarity index 100%
rename from xdocs/sources/xalan-collate.xsl
rename to stylebook/sources/xalan-collate.xsl
diff --git a/xdocs/sources/xalan-jlocal.xml b/stylebook/sources/xalan-jlocal.xml
similarity index 100%
rename from xdocs/sources/xalan-jlocal.xml
rename to stylebook/sources/xalan-jlocal.xml
diff --git a/xdocs/sources/xalan-jsite.xml b/stylebook/sources/xalan-jsite.xml
similarity index 100%
rename from xdocs/sources/xalan-jsite.xml
rename to stylebook/sources/xalan-jsite.xml
diff --git a/stylebook/sources/xalan/DONE b/stylebook/sources/xalan/DONE
new file mode 100644
index 000000000..e69de29bb
diff --git a/xdocs/sources/xalan/bugreporting.xml b/stylebook/sources/xalan/bugreporting.xml
similarity index 100%
rename from xdocs/sources/xalan/bugreporting.xml
rename to stylebook/sources/xalan/bugreporting.xml
diff --git a/xdocs/sources/xalan/builds.xml b/stylebook/sources/xalan/builds.xml
similarity index 100%
rename from xdocs/sources/xalan/builds.xml
rename to stylebook/sources/xalan/builds.xml
diff --git a/xdocs/sources/xalan/charter.xml b/stylebook/sources/xalan/charter.xml
similarity index 100%
rename from xdocs/sources/xalan/charter.xml
rename to stylebook/sources/xalan/charter.xml
diff --git a/xdocs/sources/xalan/commandline.xml b/stylebook/sources/xalan/commandline.xml
similarity index 100%
rename from xdocs/sources/xalan/commandline.xml
rename to stylebook/sources/xalan/commandline.xml
diff --git a/xdocs/sources/xalan/commandline_xsltc.xml b/stylebook/sources/xalan/commandline_xsltc.xml
similarity index 100%
rename from xdocs/sources/xalan/commandline_xsltc.xml
rename to stylebook/sources/xalan/commandline_xsltc.xml
diff --git a/xdocs/sources/xalan/contact_us.xml b/stylebook/sources/xalan/contact_us.xml
similarity index 89%
rename from xdocs/sources/xalan/contact_us.xml
rename to stylebook/sources/xalan/contact_us.xml
index 92e948bef..43a93046c 100644
--- a/xdocs/sources/xalan/contact_us.xml
+++ b/stylebook/sources/xalan/contact_us.xml
@@ -89,14 +89,21 @@
To subscribe an email account to the Xalan user mailing list send a note to
- xalan-j-users-subscribe@xml.apache.org from that account. To unsubscribe
- do the same, except replace subscribe with unsubscribe.
+ j-users-subscribe@xalan.apache.org from that account.
To subscribe to the Xalan developer mailing list send a note to
- xalan-dev-subscribe@xml.apache.org. To unsubscribe
- do the same, except replace subscribe with unsubscribe.
-
+ dev-subscribe@xalan.apache.org.
+
+
+ For either of these mailing lists, doing the same but replacing
+ subscribe with help will return a message
+ telling you more about configuring your subscription's behavior.
+
+
+ To stop receiving mail from one of these lists, do the same but replace
+ subscribe with unsubscribe.
+
For more information on XML related Apache mailing lists go to
Apache mailing lists.
diff --git a/xdocs/sources/xalan/downloads.xml b/stylebook/sources/xalan/downloads.xml
similarity index 94%
rename from xdocs/sources/xalan/downloads.xml
rename to stylebook/sources/xalan/downloads.xml
index 8d4d9ac8d..d02af5418 100644
--- a/xdocs/sources/xalan/downloads.xml
+++ b/stylebook/sources/xalan/downloads.xml
@@ -84,13 +84,12 @@
If you have downloaded a binary distribution, you already have a build
(you have the jars). This is also true for a source distribution, however
if you downloaded a source distribution,
- you have the option to use Ant to build &xslt4j;,
- including xalan.jar, xsltc.jar, serializer.jar
+ you have the option to use Maven to build &xslt4j;,
+ including xalan.jar, serializer.jar
and other things, see Using Ant for more
details.
-
@@ -207,27 +206,35 @@
the test harness provided with Xalan then it is easiest if you keep the
local directory names
as suggested. With your paths set up to compile Java code, go into the local java
- directory and issue these two commands:
+ directory and issue the command:
+
+ mvnbuild.sh
+
+ or, on windows,
+
+ mvnbuild.bat
+
+ This is equivalent to
- build clean
- build
-
+ mvn clean package site
+
- The build.bat batch file, or build.sh shell script (depending on
- your operating system use ant and the buildfile build.xml. See
+ The mvnbuild.bat batch file, or mvnbuild.sh shell script (depending on
+ your operating system) use maven and the buildfiles pom.xml. See
the section Using ant for more information.
- Other useful targets may be xsltc.jar or serializer.jar.
If you want to test the jars you just built in the directory java/build, change to
- directory test and issue this command:
+ directory xalan-test and issue this command:
- build jar
- build smoketest
+ build jar extensions.classes
+ build smoketest
The first target, jar builds the test harness and only needs to be done
- once after the test repository is checked out. The second target, smoketest,
+ once after the test repository is checked out.
+ The second target builds plug-in extensions used to test that capability.
+ The third target, smoketest,
runs the Xalan-J intepretive smoketest.
Running the build smoketest or other targets in the test directory
automatically looks for the jars in the directory ../java/build
@@ -267,6 +274,10 @@ build completed!
+
+ WARNING: THIS SECTION REFERS TO THE OLD ANT-BASED BUILD OF XALAN.
+ IT NEEDS TO BE REWRITTEN FOR MAVEN-BASED BUILD
+
If you have downloaded a source distribution, or obtained source code
using subversion, this section may be of interest to you.
diff --git a/xdocs/sources/xalan/dtm.xml b/stylebook/sources/xalan/dtm.xml
similarity index 100%
rename from xdocs/sources/xalan/dtm.xml
rename to stylebook/sources/xalan/dtm.xml
diff --git a/xdocs/sources/xalan/extensions.xml b/stylebook/sources/xalan/extensions.xml
similarity index 100%
rename from xdocs/sources/xalan/extensions.xml
rename to stylebook/sources/xalan/extensions.xml
diff --git a/xdocs/sources/xalan/extensions_xsltc.xml b/stylebook/sources/xalan/extensions_xsltc.xml
similarity index 100%
rename from xdocs/sources/xalan/extensions_xsltc.xml
rename to stylebook/sources/xalan/extensions_xsltc.xml
diff --git a/xdocs/sources/xalan/extensionslib.xml b/stylebook/sources/xalan/extensionslib.xml
similarity index 100%
rename from xdocs/sources/xalan/extensionslib.xml
rename to stylebook/sources/xalan/extensionslib.xml
diff --git a/xdocs/sources/xalan/faq.xml b/stylebook/sources/xalan/faq.xml
similarity index 100%
rename from xdocs/sources/xalan/faq.xml
rename to stylebook/sources/xalan/faq.xml
diff --git a/xdocs/sources/xalan/features.xml b/stylebook/sources/xalan/features.xml
similarity index 100%
rename from xdocs/sources/xalan/features.xml
rename to stylebook/sources/xalan/features.xml
diff --git a/xdocs/sources/xalan/getstarted.xml b/stylebook/sources/xalan/getstarted.xml
similarity index 100%
rename from xdocs/sources/xalan/getstarted.xml
rename to stylebook/sources/xalan/getstarted.xml
diff --git a/xdocs/sources/xalan/history.xml b/stylebook/sources/xalan/history.xml
similarity index 99%
rename from xdocs/sources/xalan/history.xml
rename to stylebook/sources/xalan/history.xml
index d39e0cbdc..cdcfa2beb 100644
--- a/xdocs/sources/xalan/history.xml
+++ b/stylebook/sources/xalan/history.xml
@@ -4798,7 +4798,7 @@ alternatives.
Committed by jkesselm@apache.org
transforms so that when the transformer is reused, we were using nodesets from
the previous transform which were using a different DTM. Note that we want keep
any variables that have been set externally by the user (using
-Transformer.setParameter()).
Committed by mmidy@apache.org on 01/28/2002 Modified: java/src/org/apache/xpath/res XPATHErrorResources.java Committer's log entry: bug 4762: Fixed the duplicate error message in XPATH.
Committed by jkesselm@apache.org on 01/28/2002 Modified: java/src/org/apache/xalan/transformer TransformerImpl.java Committer's log entry: Bugzilla 4054: Retain previously set output properties when adding new ones.
Committed by mmidy@apache.org on 01/28/2002 Modified: java/src/org/apache/xalan/transformer TransformerImpl.java Committer's log entry: Bug 5872. We were using a constructor of TransformerException without the
+Transformer.setParameter()).
Committed by mmidy@apache.org on 01/28/2002 Modified: java/src/org/apache/xpath/res XPATHErrorResources.java Committer's log entry: bug 4762: Fixed the duplicate error message in XPATH.
Committed by jkesselm@apache.org on 01/28/2002 Modified: java/src/org/apache/xalan/transformer TransformerImpl.java Committer's log entry: Bugzilla 4054: Retain previously set output properties when adding new ones.
Committed by mmidy@apache.org on 01/28/2002 Modified: java/src/org/apache/xalan/transformer TransformerImpl.java Committer's log entry: Bug 5872. We were using a constructor of TransformerException without the
locator information. Changed to code to use a locator if info is available.
Committed by dleslie@apache.org on 01/30/2002 Modified: java/src/org/apache/xalan/lib NodeInfo.java Committer's log entry: Changed "system id" to "public identifier" in javadoc
comments for publicId() methods.
Committed by jkesselm@apache.org on 01/30/2002 Modified: java/src/org/apache/xml/dtm/ref/sax2dtm SAX2DTM.java Committer's log entry: Bugzilla 2617, part 1: Construct the data structures and access them
correctly.
diff --git a/xdocs/sources/xalan/index.xml b/stylebook/sources/xalan/index.xml
similarity index 100%
rename from xdocs/sources/xalan/index.xml
rename to stylebook/sources/xalan/index.xml
diff --git a/xdocs/sources/xalan/overview.xml b/stylebook/sources/xalan/overview.xml
similarity index 100%
rename from xdocs/sources/xalan/overview.xml
rename to stylebook/sources/xalan/overview.xml
diff --git a/xdocs/sources/xalan/public_apis.xml b/stylebook/sources/xalan/public_apis.xml
similarity index 100%
rename from xdocs/sources/xalan/public_apis.xml
rename to stylebook/sources/xalan/public_apis.xml
diff --git a/xdocs/sources/xalan/readme.xml b/stylebook/sources/xalan/readme.xml
similarity index 100%
rename from xdocs/sources/xalan/readme.xml
rename to stylebook/sources/xalan/readme.xml
diff --git a/xdocs/sources/xalan/resources.xml b/stylebook/sources/xalan/resources.xml
similarity index 100%
rename from xdocs/sources/xalan/resources.xml
rename to stylebook/sources/xalan/resources.xml
diff --git a/xdocs/sources/xalan/samples.xml b/stylebook/sources/xalan/samples.xml
similarity index 100%
rename from xdocs/sources/xalan/samples.xml
rename to stylebook/sources/xalan/samples.xml
diff --git a/xdocs/sources/xalan/trax.xml b/stylebook/sources/xalan/trax.xml
similarity index 100%
rename from xdocs/sources/xalan/trax.xml
rename to stylebook/sources/xalan/trax.xml
diff --git a/xdocs/sources/xalan/usagepatterns.xml b/stylebook/sources/xalan/usagepatterns.xml
similarity index 100%
rename from xdocs/sources/xalan/usagepatterns.xml
rename to stylebook/sources/xalan/usagepatterns.xml
diff --git a/xdocs/sources/xalan/whatsnew.xml b/stylebook/sources/xalan/whatsnew.xml
similarity index 100%
rename from xdocs/sources/xalan/whatsnew.xml
rename to stylebook/sources/xalan/whatsnew.xml
diff --git a/stylebook/sources/xalan/xalan-collate.xml b/stylebook/sources/xalan/xalan-collate.xml
new file mode 100644
index 000000000..947ac93d7
--- /dev/null
+++ b/stylebook/sources/xalan/xalan-collate.xml
@@ -0,0 +1,107 @@
+
+
+
Introduction
+
Performance settings
+
+
+
The Document Table Model (DTM) is an interface to a Document Model designed specifically for
+ the needs of our XPath and XSLT implementations. The motivation behind this model is to optimize
+ performance and minimize storage.
+
Specifically, DTM avoids the overhead of instantiating the objects the standard DOM requires to
+ represent a tree of nodes. DTM uses unique integer "handles" to identify nodes, integer ID values
+ to represent URLs, local names, and expanded names, and integer index and length references to a
+ string buffer to represent the text value of each node.
+
In general, the "read" APIs to DTM resemble those of the W3C Document Object Model
+ () interface. However, in place of the DOM object tree of nodes, DTM
+ uses integer arrays and string pools to represent the structure and content of the XML document to
+ be transformed. DTM also structures the document's contents slightly differently, to better match
+ the XPath data model; some details and constraints present in a standard DOM are suppressed, and a
+ few XPath-specific features are added.
+
DTM is intended to be a read-only model, and so does not attempt to replicate the DOM's write or
+ create-node operations.
+
The details of constructing a DTM vary depending on which implementation of this API you are
+ using. Two reference implementations are currently available:
+
+
SAX2DTM (built via a SAX stream)
+
DOM2DTM (which provides DTM access to an existing DOM)
+
+
Both DTMs can be built incrementally (see incremental transforms).
+ When operating incrementally, the DTM allows the Xalan-Java processor to begin reading the DTM and
+ performing the transformation while the DTM is still being assembled (for example, while the parser
+ is still parsing the XML source), and attempts to do only as much work as is needed to support the
+ read requests actually made by the XPath or XSLT processor.
+
For the convenience of user-written extensions, a proxy mechanism presents the contents of the
+ DTM as a read-only subset of the DOM.
+
+
+
+
+
Xalan-Java implements two DTM performance features that you can control with the TransformerFactory
+ setAttribute(String name, Object value) method.
Set this feature to true to enable incremental transformations. If set to false (the default),
+ the transform and the parse are performed on the same thread.
+ When set to true: If the parser is Xerces, we perform an incremental transform on a single
+ thread using the Xerces "parse on demand" feature. If the parser is not Xerces, we run the
+ transform in one thread and the parse in another. Exception: if the parser is not Xerces
+ and the XML source is a DOMSource, setting this feature to true has no effect.
+ The incremental feature is not currently supported by the XSLT Compiling processor, XSLTC.
+
Example: setting incremental transforms to true (for the XSLT Interpretive processor):
+ javax.xml.transform.TransformerFactory tFactory =
+ javax.xml.transform.TransformerFactory.newInstance();
+ // setAttribute() takes a String and an Object.
+ tFactory.setAttribute
+ ("http://xml.apache.org/xalan/features/incremental",
+ java.lang.Boolean.TRUE);
+ ...
+
+
+
+
+
When set to true (the default), this feature enables optimizations that may involve structural
+ rewrites of the stylesheet. Any tool that requires direct access to the stylesheet structure
+ should set this feature to false.
+
+
+
+
+
The DTM also provides a setting that you can use to track location information for each node in
+ the source document. See "http://apache.org/xalan/features/source_location"
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {@link
+
+ }
+
+
+
+
+
+
+
+
+
+
+ Found specialized-packages
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/stylebook/stylesheets/xml2fo.xsl b/stylebook/stylesheets/xml2fo.xsl
new file mode 100644
index 000000000..6ead675c4
--- /dev/null
+++ b/stylebook/stylesheets/xml2fo.xsl
@@ -0,0 +1,507 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ documentation - p.
+
+
+
+
+
+
+ - an XSL Transformer
+
+
+
+
+
+
+ Content
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ page
+
+
+
+
+
+
+
+ .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Note:
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ·
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ )
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/tools/JLex.jar b/tools/JLex.jar
deleted file mode 100644
index 1c977f32a..000000000
Binary files a/tools/JLex.jar and /dev/null differ
diff --git a/tools/ant.jar b/tools/ant.jar
deleted file mode 100644
index 7cf87e838..000000000
Binary files a/tools/ant.jar and /dev/null differ
diff --git a/tools/antRun b/tools/antRun
deleted file mode 100644
index f0a18f165..000000000
--- a/tools/antRun
+++ /dev/null
@@ -1,9 +0,0 @@
-#! /bin/sh
-
-# Args: DIR command
-cd "$1"
-CMD="$2"
-shift
-shift
-
-exec $CMD "$@"
diff --git a/tools/antRun.bat b/tools/antRun.bat
deleted file mode 100644
index a989b67d4..000000000
--- a/tools/antRun.bat
+++ /dev/null
@@ -1,36 +0,0 @@
-@echo off
-rem
-rem ==========================================================================
-rem = Copyright 2004 The Apache Software Foundation.
-rem =
-rem = Licensed under the Apache License, Version 2.0 (the "License");
-rem = you may not use this file except in compliance with the License.
-rem = You may obtain a copy of the License at
-rem =
-rem = http://www.apache.org/licenses/LICENSE-2.0
-rem =
-rem = Unless required by applicable law or agreed to in writing, software
-rem = distributed under the License is distributed on an "AS IS" BASIS,
-rem = WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-rem = See the License for the specific language governing permissions and
-rem = limitations under the License.
-rem ==========================================================================
-rem
-rem Change drive and directory to %1 (Win9X only for NT/2K use "cd /d")
-cd %1
-%1\
-set ANT_RUN_CMD=%2
-shift
-shift
-
-set PARAMS=
-:loop
-if ""%1 == "" goto runCommand
-set PARAMS=%PARAMS% %1
-shift
-goto loop
-
-:runCommand
-rem echo %ANT_RUN_CMD% %PARAMS%
-%ANT_RUN_CMD% %PARAMS%
-
diff --git a/tools/java_cup.jar b/tools/java_cup.jar
deleted file mode 100644
index 3e12262fb..000000000
Binary files a/tools/java_cup.jar and /dev/null differ
diff --git a/tools/xalan2jdoc.jar b/tools/xalan2jdoc.jar
deleted file mode 100644
index dcc37db88..000000000
Binary files a/tools/xalan2jdoc.jar and /dev/null differ
diff --git a/tools/xalan2jtaglet.jar b/tools/xalan2jtaglet.jar
deleted file mode 100644
index 37049cbfe..000000000
Binary files a/tools/xalan2jtaglet.jar and /dev/null differ
diff --git a/xalan/pom.xml b/xalan/pom.xml
new file mode 100644
index 000000000..280f2a9bb
--- /dev/null
+++ b/xalan/pom.xml
@@ -0,0 +1,299 @@
+
+ 4.0.0
+
+ xalan
+ xalan-j
+ 2.7.3
+
+
+ xalan
+ Apache Xalan-Java
+ Apache's XSLT processor
+
+ UTF-8
+
+
+ src/main/java
+
+
+
+ META-INF
+
+ LICENSE.txt
+ NOTICE.txt
+
+
+
+ src/main/resources
+ true
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-surefire-plugin
+
+
+
+ com.github.vbmacher
+ cup-maven-plugin
+ 11b-20160615-2
+
+
+
+ generate
+
+
+
+
+ XPathParser
+ sym
+ ${project.basedir}/src/main/java/org/apache/xalan/xsltc/compiler/xpath.cup
+ ${project.basedir}/src/main/java
+
+
+
+
+
+ de.jflex
+ jflex-maven-plugin
+ 1.9.1
+
+
+
+ generate
+
+
+ true
+ src/main/java
+
+ src/main/java/org/apache/xalan/xsltc/compiler/xpath.lex
+
+
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-shade-plugin
+
+
+ package
+
+ shade
+
+
+
+
+ com.github.vbmacher:java-cup
+ commons-logging:commons-logging
+ org.apache.commons:commons-lang3
+ org.apache.ant:ant
+ org.apache.ant:ant-launcher
+ xalan:serializer
+ de.jflex:jflex
+
+
+
+
+
+ java_cup.runtime
+ org.apache.xalan.shaded.java_cup.runtime
+
+
+
+
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-dependency-plugin
+
+
+
+ org.apache.maven.plugins
+ maven-resources-plugin
+
+
+
+
+
+
+
+
+ xalan
+ serializer
+
+
+
+ xalan
+ ${xalan.taglet.artifactId}
+ provided
+
+
+
+
+ org.apache.bcel
+ bcel
+ 6.7.0
+
+
+
+ commons-logging
+ commons-logging
+ 1.2
+ provided
+
+
+
+ org.mozilla
+ rhino
+ 1.7.14
+ provided
+
+
+
+ org.apache.bsf
+ bsf-api
+ 3.1
+ provided
+
+
+
+ javax
+ javaee-api
+ 6.0
+ provided
+
+
+
+ javax.servlet
+ servlet-api
+ 2.5
+ provided
+
+
+
+ xerces
+ xercesImpl
+ 2.12.2
+ provided
+
+
+
+ xml-apis
+ xml-apis
+ 1.4.01
+ provided
+
+
+
+
+ com.github.vbmacher
+ java-cup
+ 11b-20160615-2
+ provided
+
+
+ com.github.vbmacher
+ java-cup-runtime
+ 11b-20160615-2
+
+
+
+ de.jflex
+ jflex
+ 1.9.1
+ provided
+
+
+
+ regexp
+ regexp
+ 1.3
+
+
+
+
+ org.junit.jupiter
+ junit-jupiter-engine
+ test
+
+
+ org.junit.jupiter
+ junit-jupiter-params
+ test
+
+
+ org.mockito
+ mockito-inline
+ test
+
+
+ org.mockito
+ mockito-junit-jupiter
+ test
+
+
+
+
+
+
+ create-javadocs
+
+
+ [1,)
+
+
+
+
+ org.apache.maven.plugins
+ maven-javadoc-plugin
+
+
+
+
+
+ create-sources
+
+
+ [1,)
+
+
+
+
+ org.apache.maven.plugins
+ maven-source-plugin
+
+
+
+
+
+
+
diff --git a/src/MANIFEST.MF b/xalan/src/main/java/MANIFEST.MF
similarity index 100%
rename from src/MANIFEST.MF
rename to xalan/src/main/java/MANIFEST.MF
diff --git a/src/META-INF/services/javax.xml.transform.TransformerFactory b/xalan/src/main/java/META-INF/services/javax.xml.transform.TransformerFactory
similarity index 100%
rename from src/META-INF/services/javax.xml.transform.TransformerFactory
rename to xalan/src/main/java/META-INF/services/javax.xml.transform.TransformerFactory
diff --git a/src/META-INF/services/javax.xml.xpath.XPathFactory b/xalan/src/main/java/META-INF/services/javax.xml.xpath.XPathFactory
similarity index 100%
rename from src/META-INF/services/javax.xml.xpath.XPathFactory
rename to xalan/src/main/java/META-INF/services/javax.xml.xpath.XPathFactory
diff --git a/src/META-INF/services/org.apache.xalan.extensions.bsf.BSFManager b/xalan/src/main/java/META-INF/services/org.apache.xalan.extensions.bsf.BSFManager
similarity index 100%
rename from src/META-INF/services/org.apache.xalan.extensions.bsf.BSFManager
rename to xalan/src/main/java/META-INF/services/org.apache.xalan.extensions.bsf.BSFManager
diff --git a/src/META-INF/services/org.apache.xml.dtm.DTMManager b/xalan/src/main/java/META-INF/services/org.apache.xml.dtm.DTMManager
similarity index 100%
rename from src/META-INF/services/org.apache.xml.dtm.DTMManager
rename to xalan/src/main/java/META-INF/services/org.apache.xml.dtm.DTMManager
diff --git a/src/manifest.xalan-interpretive b/xalan/src/main/java/manifest.xalan-interpretive
similarity index 100%
rename from src/manifest.xalan-interpretive
rename to xalan/src/main/java/manifest.xalan-interpretive
diff --git a/src/manifest.xsltc b/xalan/src/main/java/manifest.xsltc
similarity index 100%
rename from src/manifest.xsltc
rename to xalan/src/main/java/manifest.xsltc
diff --git a/xalan/src/main/java/org/apache/xalan/Version.java b/xalan/src/main/java/org/apache/xalan/Version.java
new file mode 100644
index 000000000..4ca166919
--- /dev/null
+++ b/xalan/src/main/java/org/apache/xalan/Version.java
@@ -0,0 +1,221 @@
+/*
+ * 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.
+ */
+/*
+ * $Id$
+ */
+package org.apache.xalan;
+
+import java.io.InputStream;
+import java.util.Properties;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
+
+/**
+ * Administrative class to keep track of the version number of
+ * the Xalan release.
+ *
This class implements the upcoming standard of having
+ * org.apache.project-name.Version.getVersion() be a standard way
+ * to get version information. This class will replace the older
+ * org.apache.xalan.processor.Version class.
+ *
See also: org/apache/xalan/res/XSLTInfo.properties for
+ * information about the version of the XSLT spec we support.
+ *
+ * @xsl.usage general
+ */
+public class Version {
+ private static final String VERSION_NUMBER_PATTERN = "^(\\d+)[.](\\d+)[.](D)?(\\d+)(-SNAPSHOT)?$";
+ private static final String NO_VERSION = "0.0.0";
+
+ private static int majorVersionNum;
+ private static int releaseVersionNum;
+ private static int maintenanceVersionNum;
+ private static int developmentVersionNum;
+
+ private static boolean snapshot;
+
+ static {
+ parseVersionNumber(readVersionNumber());
+ }
+
+ static String readVersionNumber() {
+ try (InputStream fromResource = getPropertiesStream()) {
+ Properties properties = new Properties();
+ if (fromResource != null) {
+ properties.load(fromResource);
+ return properties.getProperty("version", NO_VERSION);
+ }
+ } catch (Exception e) {
+ new RuntimeException("Cannot read properties file to extract Xalan version number information: ", e)
+ .printStackTrace();
+ }
+ return NO_VERSION;
+ }
+
+ static InputStream getPropertiesStream() {
+ // IMPLEMENTATION NOTE: Class.getResourceAsStream uses a *relative* path by
+ // default, in contrast to Classloader.getResourceAsStream, which uses an
+ // *absolute* one. This is not clearly documented in the JDK, only
+ // noticeable by the absence of the word "absolute" in
+ // Class.getResourceAsStream javadocs. For more details, see
+ // https://www.baeldung.com/java-class-vs-classloader-getresource.
+ //
+ // Because we expect the properties file to be in the same directory/package
+ // as this class, the relative path comes in handy and as a bonus is also
+ // relocation-friendly (think Maven Shade).
+ return Version.class.getResourceAsStream("version.properties");
+ }
+
+ static void parseVersionNumber(String version) {
+ resetVersionNumber();
+ if (version == null)
+ version = NO_VERSION;
+ Matcher matcher = Pattern.compile(VERSION_NUMBER_PATTERN).matcher(version);
+ if (matcher.find()) {
+ majorVersionNum = Integer.parseInt(matcher.group(1));
+ releaseVersionNum = Integer.parseInt(matcher.group(2));
+ if (matcher.group(3) == null) {
+ maintenanceVersionNum = Integer.parseInt(matcher.group(4));
+ } else {
+ developmentVersionNum = Integer.parseInt(matcher.group(4));
+ }
+ snapshot = matcher.group(5) != null && !matcher.group(5).isEmpty();
+ } else {
+ System.err.println(
+ "Cannot match Xalan version \"" + version + "\" " +
+ "against expected pattern \"" + VERSION_NUMBER_PATTERN + "\", " +
+ "resetting version number to "+ NO_VERSION
+ );
+ resetVersionNumber();
+ }
+ }
+
+ private static void resetVersionNumber() {
+ majorVersionNum = releaseVersionNum = maintenanceVersionNum = developmentVersionNum = 0;
+ snapshot = false;
+ }
+
+ /**
+ * Get the basic version string for the current Xalan release.
+ * Version String formatted like
+ * "XalanJava v.r[.dd| Dnn]".
+ *
+ * @return String denoting our current version
+ */
+ public static String getVersion() {
+ return getProduct() + " " + getImplementationLanguage() + " "
+ + getMajorVersionNum() + "." + getReleaseVersionNum() + "."
+ + ((getDevelopmentVersionNum() > 0) ?
+ ("D" + getDevelopmentVersionNum()) : ("" + getMaintenanceVersionNum()))
+ + (isSnapshot() ? "-SNAPSHOT" : "");
+ }
+
+ /**
+ * Print the processor version to the command line.
+ *
+ * @param argv command line arguments, unused.
+ */
+ public static void main(String argv[]) {
+ System.out.println(getVersion());
+ }
+
+ /**
+ * Name of product: Xalan.
+ */
+ public static String getProduct() {
+ return "Xalan";
+ }
+
+ /**
+ * Implementation Language: Java.
+ */
+ public static String getImplementationLanguage() {
+ return "Java";
+ }
+
+
+ /**
+ * Major version number.
+ * Version number. This changes only when there is a
+ * significant, externally apparent enhancement from
+ * the previous release. 'n' represents the n'th
+ * version.
+ *
+ * Clients should carefully consider the implications
+ * of new versions as external interfaces and behaviour
+ * may have changed.
+ */
+ public static int getMajorVersionNum() {
+ return majorVersionNum;
+ }
+
+ /**
+ * Release Number.
+ * Release number. This changes when:
+ * - a new set of functionality is to be added, eg,
+ * implementation of a new W3C specification.
+ * - API or behaviour change.
+ * - its designated as a reference release.
+ */
+ public static int getReleaseVersionNum() {
+ return releaseVersionNum;
+ }
+
+ /**
+ * Maintenance Drop Number.
+ * Optional identifier used to designate maintenance
+ * drop applied to a specific release and contains
+ * fixes for defects reported. It maintains compatibility
+ * with the release and contains no API changes.
+ * When missing, it designates the final and complete
+ * development drop for a release.
+ */
+ public static int getMaintenanceVersionNum() {
+ return maintenanceVersionNum;
+ }
+
+ /**
+ * Development Drop Number.
+ * Optional identifier designates development drop of
+ * a specific release. D01 is the first development drop
+ * of a new release.
+ *
+ * Development drops are works in progress towards a
+ * compeleted, final release. A specific development drop
+ * may not completely implement all aspects of a new
+ * feature, which may take several development drops to
+ * complete. At the point of the final drop for the
+ * release, the D suffix will be omitted.
+ *
+ * Each 'D' drops can contain functional enhancements as
+ * well as defect fixes. 'D' drops may not be as stable as
+ * the final releases.
+ */
+ public static int getDevelopmentVersionNum() {
+ return developmentVersionNum;
+ }
+
+ /**
+ * Snapshot flag.
+ * Specifies whether the version number has a "-SNAPSHOT" suffix,
+ * which by Maven/Gradle conventions designates a
+ * development version.
+ */
+ public static boolean isSnapshot() {
+ return snapshot;
+ }
+}
diff --git a/src/org/apache/xalan/client/XSLTProcessorApplet.java b/xalan/src/main/java/org/apache/xalan/client/XSLTProcessorApplet.java
similarity index 100%
rename from src/org/apache/xalan/client/XSLTProcessorApplet.java
rename to xalan/src/main/java/org/apache/xalan/client/XSLTProcessorApplet.java
diff --git a/src/org/apache/xalan/client/package.html b/xalan/src/main/java/org/apache/xalan/client/package.html
similarity index 100%
rename from src/org/apache/xalan/client/package.html
rename to xalan/src/main/java/org/apache/xalan/client/package.html
diff --git a/src/org/apache/xalan/extensions/ExpressionContext.java b/xalan/src/main/java/org/apache/xalan/extensions/ExpressionContext.java
similarity index 100%
rename from src/org/apache/xalan/extensions/ExpressionContext.java
rename to xalan/src/main/java/org/apache/xalan/extensions/ExpressionContext.java
diff --git a/src/org/apache/xalan/extensions/ExpressionVisitor.java b/xalan/src/main/java/org/apache/xalan/extensions/ExpressionVisitor.java
similarity index 100%
rename from src/org/apache/xalan/extensions/ExpressionVisitor.java
rename to xalan/src/main/java/org/apache/xalan/extensions/ExpressionVisitor.java
diff --git a/src/org/apache/xalan/extensions/ExtensionHandler.java b/xalan/src/main/java/org/apache/xalan/extensions/ExtensionHandler.java
similarity index 100%
rename from src/org/apache/xalan/extensions/ExtensionHandler.java
rename to xalan/src/main/java/org/apache/xalan/extensions/ExtensionHandler.java
diff --git a/src/org/apache/xalan/extensions/ExtensionHandlerExsltFunction.java b/xalan/src/main/java/org/apache/xalan/extensions/ExtensionHandlerExsltFunction.java
similarity index 100%
rename from src/org/apache/xalan/extensions/ExtensionHandlerExsltFunction.java
rename to xalan/src/main/java/org/apache/xalan/extensions/ExtensionHandlerExsltFunction.java
diff --git a/src/org/apache/xalan/extensions/ExtensionHandlerGeneral.java b/xalan/src/main/java/org/apache/xalan/extensions/ExtensionHandlerGeneral.java
similarity index 100%
rename from src/org/apache/xalan/extensions/ExtensionHandlerGeneral.java
rename to xalan/src/main/java/org/apache/xalan/extensions/ExtensionHandlerGeneral.java
diff --git a/src/org/apache/xalan/extensions/ExtensionHandlerJava.java b/xalan/src/main/java/org/apache/xalan/extensions/ExtensionHandlerJava.java
similarity index 100%
rename from src/org/apache/xalan/extensions/ExtensionHandlerJava.java
rename to xalan/src/main/java/org/apache/xalan/extensions/ExtensionHandlerJava.java
diff --git a/src/org/apache/xalan/extensions/ExtensionHandlerJavaClass.java b/xalan/src/main/java/org/apache/xalan/extensions/ExtensionHandlerJavaClass.java
similarity index 100%
rename from src/org/apache/xalan/extensions/ExtensionHandlerJavaClass.java
rename to xalan/src/main/java/org/apache/xalan/extensions/ExtensionHandlerJavaClass.java
diff --git a/src/org/apache/xalan/extensions/ExtensionHandlerJavaPackage.java b/xalan/src/main/java/org/apache/xalan/extensions/ExtensionHandlerJavaPackage.java
similarity index 100%
rename from src/org/apache/xalan/extensions/ExtensionHandlerJavaPackage.java
rename to xalan/src/main/java/org/apache/xalan/extensions/ExtensionHandlerJavaPackage.java
diff --git a/src/org/apache/xalan/extensions/ExtensionNamespaceContext.java b/xalan/src/main/java/org/apache/xalan/extensions/ExtensionNamespaceContext.java
similarity index 100%
rename from src/org/apache/xalan/extensions/ExtensionNamespaceContext.java
rename to xalan/src/main/java/org/apache/xalan/extensions/ExtensionNamespaceContext.java
diff --git a/src/org/apache/xalan/extensions/ExtensionNamespaceSupport.java b/xalan/src/main/java/org/apache/xalan/extensions/ExtensionNamespaceSupport.java
similarity index 100%
rename from src/org/apache/xalan/extensions/ExtensionNamespaceSupport.java
rename to xalan/src/main/java/org/apache/xalan/extensions/ExtensionNamespaceSupport.java
diff --git a/src/org/apache/xalan/extensions/ExtensionNamespacesManager.java b/xalan/src/main/java/org/apache/xalan/extensions/ExtensionNamespacesManager.java
similarity index 100%
rename from src/org/apache/xalan/extensions/ExtensionNamespacesManager.java
rename to xalan/src/main/java/org/apache/xalan/extensions/ExtensionNamespacesManager.java
diff --git a/src/org/apache/xalan/extensions/ExtensionsTable.java b/xalan/src/main/java/org/apache/xalan/extensions/ExtensionsTable.java
similarity index 100%
rename from src/org/apache/xalan/extensions/ExtensionsTable.java
rename to xalan/src/main/java/org/apache/xalan/extensions/ExtensionsTable.java
diff --git a/src/org/apache/xalan/extensions/MethodResolver.java b/xalan/src/main/java/org/apache/xalan/extensions/MethodResolver.java
similarity index 100%
rename from src/org/apache/xalan/extensions/MethodResolver.java
rename to xalan/src/main/java/org/apache/xalan/extensions/MethodResolver.java
diff --git a/src/org/apache/xalan/extensions/ObjectFactory.java b/xalan/src/main/java/org/apache/xalan/extensions/ObjectFactory.java
similarity index 100%
rename from src/org/apache/xalan/extensions/ObjectFactory.java
rename to xalan/src/main/java/org/apache/xalan/extensions/ObjectFactory.java
diff --git a/src/org/apache/xalan/extensions/SecuritySupport.java b/xalan/src/main/java/org/apache/xalan/extensions/SecuritySupport.java
similarity index 100%
rename from src/org/apache/xalan/extensions/SecuritySupport.java
rename to xalan/src/main/java/org/apache/xalan/extensions/SecuritySupport.java
diff --git a/src/org/apache/xalan/extensions/XPathFunctionImpl.java b/xalan/src/main/java/org/apache/xalan/extensions/XPathFunctionImpl.java
similarity index 100%
rename from src/org/apache/xalan/extensions/XPathFunctionImpl.java
rename to xalan/src/main/java/org/apache/xalan/extensions/XPathFunctionImpl.java
diff --git a/src/org/apache/xalan/extensions/XPathFunctionResolverImpl.java b/xalan/src/main/java/org/apache/xalan/extensions/XPathFunctionResolverImpl.java
similarity index 100%
rename from src/org/apache/xalan/extensions/XPathFunctionResolverImpl.java
rename to xalan/src/main/java/org/apache/xalan/extensions/XPathFunctionResolverImpl.java
diff --git a/src/org/apache/xalan/extensions/XSLProcessorContext.java b/xalan/src/main/java/org/apache/xalan/extensions/XSLProcessorContext.java
similarity index 100%
rename from src/org/apache/xalan/extensions/XSLProcessorContext.java
rename to xalan/src/main/java/org/apache/xalan/extensions/XSLProcessorContext.java
diff --git a/src/org/apache/xalan/extensions/package.html b/xalan/src/main/java/org/apache/xalan/extensions/package.html
similarity index 100%
rename from src/org/apache/xalan/extensions/package.html
rename to xalan/src/main/java/org/apache/xalan/extensions/package.html
diff --git a/src/org/apache/xalan/lib/ExsltBase.java b/xalan/src/main/java/org/apache/xalan/lib/ExsltBase.java
similarity index 100%
rename from src/org/apache/xalan/lib/ExsltBase.java
rename to xalan/src/main/java/org/apache/xalan/lib/ExsltBase.java
diff --git a/src/org/apache/xalan/lib/ExsltCommon.java b/xalan/src/main/java/org/apache/xalan/lib/ExsltCommon.java
similarity index 100%
rename from src/org/apache/xalan/lib/ExsltCommon.java
rename to xalan/src/main/java/org/apache/xalan/lib/ExsltCommon.java
diff --git a/src/org/apache/xalan/lib/ExsltDatetime.java b/xalan/src/main/java/org/apache/xalan/lib/ExsltDatetime.java
similarity index 100%
rename from src/org/apache/xalan/lib/ExsltDatetime.java
rename to xalan/src/main/java/org/apache/xalan/lib/ExsltDatetime.java
diff --git a/src/org/apache/xalan/lib/ExsltDynamic.java b/xalan/src/main/java/org/apache/xalan/lib/ExsltDynamic.java
similarity index 100%
rename from src/org/apache/xalan/lib/ExsltDynamic.java
rename to xalan/src/main/java/org/apache/xalan/lib/ExsltDynamic.java
diff --git a/src/org/apache/xalan/lib/ExsltMath.java b/xalan/src/main/java/org/apache/xalan/lib/ExsltMath.java
similarity index 100%
rename from src/org/apache/xalan/lib/ExsltMath.java
rename to xalan/src/main/java/org/apache/xalan/lib/ExsltMath.java
diff --git a/src/org/apache/xalan/lib/ExsltSets.java b/xalan/src/main/java/org/apache/xalan/lib/ExsltSets.java
similarity index 100%
rename from src/org/apache/xalan/lib/ExsltSets.java
rename to xalan/src/main/java/org/apache/xalan/lib/ExsltSets.java
diff --git a/src/org/apache/xalan/lib/ExsltStrings.java b/xalan/src/main/java/org/apache/xalan/lib/ExsltStrings.java
similarity index 96%
rename from src/org/apache/xalan/lib/ExsltStrings.java
rename to xalan/src/main/java/org/apache/xalan/lib/ExsltStrings.java
index e5cad5697..5285837d5 100644
--- a/src/org/apache/xalan/lib/ExsltStrings.java
+++ b/xalan/src/main/java/org/apache/xalan/lib/ExsltStrings.java
@@ -184,9 +184,9 @@ public static String padding(double length)
*
* str:split('a, simple, list', ', ') gives the node set consisting of:
*
- * a
- * simple
- * list
+ * <tokent>a</token>
+ * <tokent>simple</token>
+ * <tokent>list</token>
*
* If the second argument is omitted, the default is the string ' ' (i.e. a space).
*
@@ -253,14 +253,14 @@ public static NodeList split(String str)
*
- * If the second argument is omitted, the default is the string '
'
+ * If the second argument is omitted, the default is the string '
'
* (i.e. whitespace characters).
*
* If the second argument is an empty string, the function returns a set of token
diff --git a/src/org/apache/xalan/lib/Extensions.java b/xalan/src/main/java/org/apache/xalan/lib/Extensions.java
similarity index 99%
rename from src/org/apache/xalan/lib/Extensions.java
rename to xalan/src/main/java/org/apache/xalan/lib/Extensions.java
index 261f66ff1..62b5c0d03 100644
--- a/src/org/apache/xalan/lib/Extensions.java
+++ b/xalan/src/main/java/org/apache/xalan/lib/Extensions.java
@@ -265,8 +265,8 @@ public static NodeList tokenize(String toTokenize, String delims)
/**
* Returns a NodeSet containing one text node for each token in the first argument.
- * Delimiters are whitespace. That is, the delimiters that are used are tab ( ),
- * linefeed (
), return (
), and space ( ).
+ * Delimiters are whitespace. That is, the delimiters that are used are tab (	),
+ * linefeed (
), return (
), and space ( ).
* Tokens are determined by a call to StringTokenizer.
* If the first argument is an empty string or contains only delimiters, the result
* will be an empty NodeSet.
diff --git a/src/org/apache/xalan/lib/NodeInfo.java b/xalan/src/main/java/org/apache/xalan/lib/NodeInfo.java
similarity index 100%
rename from src/org/apache/xalan/lib/NodeInfo.java
rename to xalan/src/main/java/org/apache/xalan/lib/NodeInfo.java
diff --git a/src/org/apache/xalan/lib/ObjectFactory.java b/xalan/src/main/java/org/apache/xalan/lib/ObjectFactory.java
similarity index 100%
rename from src/org/apache/xalan/lib/ObjectFactory.java
rename to xalan/src/main/java/org/apache/xalan/lib/ObjectFactory.java
diff --git a/src/org/apache/xalan/lib/PipeDocument.java b/xalan/src/main/java/org/apache/xalan/lib/PipeDocument.java
similarity index 99%
rename from src/org/apache/xalan/lib/PipeDocument.java
rename to xalan/src/main/java/org/apache/xalan/lib/PipeDocument.java
index c8b898ff4..974ae17c3 100644
--- a/src/org/apache/xalan/lib/PipeDocument.java
+++ b/xalan/src/main/java/org/apache/xalan/lib/PipeDocument.java
@@ -100,9 +100,9 @@ public class PipeDocument
* Notes:
*
*
The base URI for the source attribute is the XML "listing" document.
- *
The target attribute is taken as is (base is the current user directory).
+ *
The target attribute is taken as is (base is the current user directory).
*
The stylsheet containg the extension element is the base URI for the
- * stylesheet hrefs.
+ * stylesheet hrefs.
*
*/
public void pipeDocument(XSLProcessorContext context, ElemExtensionCall elem)
diff --git a/src/org/apache/xalan/lib/Redirect.java b/xalan/src/main/java/org/apache/xalan/lib/Redirect.java
similarity index 94%
rename from src/org/apache/xalan/lib/Redirect.java
rename to xalan/src/main/java/org/apache/xalan/lib/Redirect.java
index 090df7dce..6208ea46d 100644
--- a/src/org/apache/xalan/lib/Redirect.java
+++ b/xalan/src/main/java/org/apache/xalan/lib/Redirect.java
@@ -77,44 +77,44 @@
*
*
*
* @author Scott Boag
diff --git a/src/org/apache/xalan/lib/SecuritySupport.java b/xalan/src/main/java/org/apache/xalan/lib/SecuritySupport.java
similarity index 100%
rename from src/org/apache/xalan/lib/SecuritySupport.java
rename to xalan/src/main/java/org/apache/xalan/lib/SecuritySupport.java
diff --git a/src/org/apache/xalan/lib/package.html b/xalan/src/main/java/org/apache/xalan/lib/package.html
similarity index 100%
rename from src/org/apache/xalan/lib/package.html
rename to xalan/src/main/java/org/apache/xalan/lib/package.html
diff --git a/src/org/apache/xalan/lib/sql/ConnectionPool.java b/xalan/src/main/java/org/apache/xalan/lib/sql/ConnectionPool.java
similarity index 100%
rename from src/org/apache/xalan/lib/sql/ConnectionPool.java
rename to xalan/src/main/java/org/apache/xalan/lib/sql/ConnectionPool.java
diff --git a/src/org/apache/xalan/lib/sql/ConnectionPoolManager.java b/xalan/src/main/java/org/apache/xalan/lib/sql/ConnectionPoolManager.java
similarity index 100%
rename from src/org/apache/xalan/lib/sql/ConnectionPoolManager.java
rename to xalan/src/main/java/org/apache/xalan/lib/sql/ConnectionPoolManager.java
diff --git a/src/org/apache/xalan/lib/sql/DTMDocument.java b/xalan/src/main/java/org/apache/xalan/lib/sql/DTMDocument.java
similarity index 100%
rename from src/org/apache/xalan/lib/sql/DTMDocument.java
rename to xalan/src/main/java/org/apache/xalan/lib/sql/DTMDocument.java
diff --git a/src/org/apache/xalan/lib/sql/DefaultConnectionPool.java b/xalan/src/main/java/org/apache/xalan/lib/sql/DefaultConnectionPool.java
similarity index 100%
rename from src/org/apache/xalan/lib/sql/DefaultConnectionPool.java
rename to xalan/src/main/java/org/apache/xalan/lib/sql/DefaultConnectionPool.java
diff --git a/src/org/apache/xalan/lib/sql/JNDIConnectionPool.java b/xalan/src/main/java/org/apache/xalan/lib/sql/JNDIConnectionPool.java
similarity index 100%
rename from src/org/apache/xalan/lib/sql/JNDIConnectionPool.java
rename to xalan/src/main/java/org/apache/xalan/lib/sql/JNDIConnectionPool.java
diff --git a/src/org/apache/xalan/lib/sql/ObjectArray.java b/xalan/src/main/java/org/apache/xalan/lib/sql/ObjectArray.java
similarity index 100%
rename from src/org/apache/xalan/lib/sql/ObjectArray.java
rename to xalan/src/main/java/org/apache/xalan/lib/sql/ObjectArray.java
diff --git a/src/org/apache/xalan/lib/sql/ObjectFactory.java b/xalan/src/main/java/org/apache/xalan/lib/sql/ObjectFactory.java
similarity index 100%
rename from src/org/apache/xalan/lib/sql/ObjectFactory.java
rename to xalan/src/main/java/org/apache/xalan/lib/sql/ObjectFactory.java
diff --git a/src/org/apache/xalan/lib/sql/PooledConnection.java b/xalan/src/main/java/org/apache/xalan/lib/sql/PooledConnection.java
similarity index 100%
rename from src/org/apache/xalan/lib/sql/PooledConnection.java
rename to xalan/src/main/java/org/apache/xalan/lib/sql/PooledConnection.java
diff --git a/src/org/apache/xalan/lib/sql/QueryParameter.java b/xalan/src/main/java/org/apache/xalan/lib/sql/QueryParameter.java
similarity index 100%
rename from src/org/apache/xalan/lib/sql/QueryParameter.java
rename to xalan/src/main/java/org/apache/xalan/lib/sql/QueryParameter.java
diff --git a/src/org/apache/xalan/lib/sql/SQLDocument.java b/xalan/src/main/java/org/apache/xalan/lib/sql/SQLDocument.java
similarity index 100%
rename from src/org/apache/xalan/lib/sql/SQLDocument.java
rename to xalan/src/main/java/org/apache/xalan/lib/sql/SQLDocument.java
diff --git a/src/org/apache/xalan/lib/sql/SQLErrorDocument.java b/xalan/src/main/java/org/apache/xalan/lib/sql/SQLErrorDocument.java
similarity index 100%
rename from src/org/apache/xalan/lib/sql/SQLErrorDocument.java
rename to xalan/src/main/java/org/apache/xalan/lib/sql/SQLErrorDocument.java
diff --git a/src/org/apache/xalan/lib/sql/SQLQueryParser.java b/xalan/src/main/java/org/apache/xalan/lib/sql/SQLQueryParser.java
similarity index 100%
rename from src/org/apache/xalan/lib/sql/SQLQueryParser.java
rename to xalan/src/main/java/org/apache/xalan/lib/sql/SQLQueryParser.java
diff --git a/src/org/apache/xalan/lib/sql/SecuritySupport.java b/xalan/src/main/java/org/apache/xalan/lib/sql/SecuritySupport.java
similarity index 100%
rename from src/org/apache/xalan/lib/sql/SecuritySupport.java
rename to xalan/src/main/java/org/apache/xalan/lib/sql/SecuritySupport.java
diff --git a/src/org/apache/xalan/lib/sql/XConnection.java b/xalan/src/main/java/org/apache/xalan/lib/sql/XConnection.java
similarity index 100%
rename from src/org/apache/xalan/lib/sql/XConnection.java
rename to xalan/src/main/java/org/apache/xalan/lib/sql/XConnection.java
diff --git a/src/org/apache/xalan/lib/sql/package.html b/xalan/src/main/java/org/apache/xalan/lib/sql/package.html
similarity index 100%
rename from src/org/apache/xalan/lib/sql/package.html
rename to xalan/src/main/java/org/apache/xalan/lib/sql/package.html
diff --git a/src/org/apache/xalan/processor/ProcessorAttributeSet.java b/xalan/src/main/java/org/apache/xalan/processor/ProcessorAttributeSet.java
similarity index 100%
rename from src/org/apache/xalan/processor/ProcessorAttributeSet.java
rename to xalan/src/main/java/org/apache/xalan/processor/ProcessorAttributeSet.java
diff --git a/src/org/apache/xalan/processor/ProcessorCharacters.java b/xalan/src/main/java/org/apache/xalan/processor/ProcessorCharacters.java
similarity index 100%
rename from src/org/apache/xalan/processor/ProcessorCharacters.java
rename to xalan/src/main/java/org/apache/xalan/processor/ProcessorCharacters.java
diff --git a/src/org/apache/xalan/processor/ProcessorDecimalFormat.java b/xalan/src/main/java/org/apache/xalan/processor/ProcessorDecimalFormat.java
similarity index 100%
rename from src/org/apache/xalan/processor/ProcessorDecimalFormat.java
rename to xalan/src/main/java/org/apache/xalan/processor/ProcessorDecimalFormat.java
diff --git a/src/org/apache/xalan/processor/ProcessorExsltFuncResult.java b/xalan/src/main/java/org/apache/xalan/processor/ProcessorExsltFuncResult.java
similarity index 100%
rename from src/org/apache/xalan/processor/ProcessorExsltFuncResult.java
rename to xalan/src/main/java/org/apache/xalan/processor/ProcessorExsltFuncResult.java
diff --git a/src/org/apache/xalan/processor/ProcessorExsltFunction.java b/xalan/src/main/java/org/apache/xalan/processor/ProcessorExsltFunction.java
similarity index 93%
rename from src/org/apache/xalan/processor/ProcessorExsltFunction.java
rename to xalan/src/main/java/org/apache/xalan/processor/ProcessorExsltFunction.java
index b40abcccb..00ee976d9 100644
--- a/src/org/apache/xalan/processor/ProcessorExsltFunction.java
+++ b/xalan/src/main/java/org/apache/xalan/processor/ProcessorExsltFunction.java
@@ -115,9 +115,14 @@ public void endElement(
}
/**
- * Non-recursive traversal of FunctionElement tree based on TreeWalker to verify that
- * there are no literal result elements except within a func:result element and that
- * the func:result element does not contain any following siblings except xsl:fallback.
+ * Non-recursive traversal of FunctionElement tree based on
+ * TreeWalker to verify that there are no literal result elements
+ * except within a func:result element and that the func:result
+ * element does not contain any following siblings except
+ * xsl:fallback.
+ * @param elem FunctionElement node to be examined
+ * @param handler StylesheetHandler to be called against each node in turn
+ * @throws SAXException if handler throws one
*/
public void validate(ElemTemplateElement elem, StylesheetHandler handler)
throws SAXException
diff --git a/src/org/apache/xalan/processor/ProcessorGlobalParamDecl.java b/xalan/src/main/java/org/apache/xalan/processor/ProcessorGlobalParamDecl.java
similarity index 100%
rename from src/org/apache/xalan/processor/ProcessorGlobalParamDecl.java
rename to xalan/src/main/java/org/apache/xalan/processor/ProcessorGlobalParamDecl.java
diff --git a/src/org/apache/xalan/processor/ProcessorGlobalVariableDecl.java b/xalan/src/main/java/org/apache/xalan/processor/ProcessorGlobalVariableDecl.java
similarity index 100%
rename from src/org/apache/xalan/processor/ProcessorGlobalVariableDecl.java
rename to xalan/src/main/java/org/apache/xalan/processor/ProcessorGlobalVariableDecl.java
diff --git a/src/org/apache/xalan/processor/ProcessorImport.java b/xalan/src/main/java/org/apache/xalan/processor/ProcessorImport.java
similarity index 100%
rename from src/org/apache/xalan/processor/ProcessorImport.java
rename to xalan/src/main/java/org/apache/xalan/processor/ProcessorImport.java
diff --git a/src/org/apache/xalan/processor/ProcessorInclude.java b/xalan/src/main/java/org/apache/xalan/processor/ProcessorInclude.java
similarity index 100%
rename from src/org/apache/xalan/processor/ProcessorInclude.java
rename to xalan/src/main/java/org/apache/xalan/processor/ProcessorInclude.java
diff --git a/src/org/apache/xalan/processor/ProcessorKey.java b/xalan/src/main/java/org/apache/xalan/processor/ProcessorKey.java
similarity index 98%
rename from src/org/apache/xalan/processor/ProcessorKey.java
rename to xalan/src/main/java/org/apache/xalan/processor/ProcessorKey.java
index 602649c77..e58087ea3 100644
--- a/src/org/apache/xalan/processor/ProcessorKey.java
+++ b/xalan/src/main/java/org/apache/xalan/processor/ProcessorKey.java
@@ -31,12 +31,12 @@
/**
* TransformerFactory for xsl:key markup.
*
- *
- *
+ * >
*
* @see XSLT DTD
* @see key in XSLT Specification
diff --git a/src/org/apache/xalan/processor/ProcessorLRE.java b/xalan/src/main/java/org/apache/xalan/processor/ProcessorLRE.java
similarity index 99%
rename from src/org/apache/xalan/processor/ProcessorLRE.java
rename to xalan/src/main/java/org/apache/xalan/processor/ProcessorLRE.java
index 464a6b893..14669826e 100644
--- a/src/org/apache/xalan/processor/ProcessorLRE.java
+++ b/xalan/src/main/java/org/apache/xalan/processor/ProcessorLRE.java
@@ -315,6 +315,7 @@ else if (isUnknownTopLevel)
* This method could be over-ridden by a class that extends this class.
* @param handler non-null reference to current StylesheetHandler that is constructing the Templates.
* @return an object that represents the stylesheet element.
+ * @throws TransformerConfigurationException if the handler throws one
*/
protected Stylesheet getStylesheetRoot(StylesheetHandler handler) throws TransformerConfigurationException
{
diff --git a/src/org/apache/xalan/processor/ProcessorNamespaceAlias.java b/xalan/src/main/java/org/apache/xalan/processor/ProcessorNamespaceAlias.java
similarity index 97%
rename from src/org/apache/xalan/processor/ProcessorNamespaceAlias.java
rename to xalan/src/main/java/org/apache/xalan/processor/ProcessorNamespaceAlias.java
index 336e1e099..74bacdb65 100644
--- a/src/org/apache/xalan/processor/ProcessorNamespaceAlias.java
+++ b/xalan/src/main/java/org/apache/xalan/processor/ProcessorNamespaceAlias.java
@@ -29,11 +29,11 @@
* A stylesheet can use the xsl:namespace-alias element to
* declare that one namespace URI is an alias for another namespace URI.
*
- *
- *
+ * >
*
* @see XSLT DTD
* @see literal-result-element in XSLT Specification
diff --git a/src/org/apache/xalan/processor/ProcessorOutputElem.java b/xalan/src/main/java/org/apache/xalan/processor/ProcessorOutputElem.java
similarity index 100%
rename from src/org/apache/xalan/processor/ProcessorOutputElem.java
rename to xalan/src/main/java/org/apache/xalan/processor/ProcessorOutputElem.java
diff --git a/src/org/apache/xalan/processor/ProcessorPreserveSpace.java b/xalan/src/main/java/org/apache/xalan/processor/ProcessorPreserveSpace.java
similarity index 96%
rename from src/org/apache/xalan/processor/ProcessorPreserveSpace.java
rename to xalan/src/main/java/org/apache/xalan/processor/ProcessorPreserveSpace.java
index 9154cf82e..5823c8581 100644
--- a/src/org/apache/xalan/processor/ProcessorPreserveSpace.java
+++ b/xalan/src/main/java/org/apache/xalan/processor/ProcessorPreserveSpace.java
@@ -31,8 +31,8 @@
/**
* TransformerFactory for xsl:preserve-space markup.
*
*/
class ProcessorStripSpace extends ProcessorPreserveSpace
diff --git a/src/org/apache/xalan/processor/ProcessorStylesheetDoc.java b/xalan/src/main/java/org/apache/xalan/processor/ProcessorStylesheetDoc.java
similarity index 100%
rename from src/org/apache/xalan/processor/ProcessorStylesheetDoc.java
rename to xalan/src/main/java/org/apache/xalan/processor/ProcessorStylesheetDoc.java
diff --git a/src/org/apache/xalan/processor/ProcessorStylesheetElement.java b/xalan/src/main/java/org/apache/xalan/processor/ProcessorStylesheetElement.java
similarity index 98%
rename from src/org/apache/xalan/processor/ProcessorStylesheetElement.java
rename to xalan/src/main/java/org/apache/xalan/processor/ProcessorStylesheetElement.java
index 8d5159d9e..f647bfa98 100644
--- a/src/org/apache/xalan/processor/ProcessorStylesheetElement.java
+++ b/xalan/src/main/java/org/apache/xalan/processor/ProcessorStylesheetElement.java
@@ -116,6 +116,7 @@ public void startElement(
/**
* This method can be over-ridden by a class that extends this one.
* @param handler The calling StylesheetHandler/TemplatesBuilder.
+ * @return the root element of the new stylesheet
*/
protected Stylesheet getStylesheetRoot(StylesheetHandler handler) throws TransformerConfigurationException
{
diff --git a/src/org/apache/xalan/processor/ProcessorTemplate.java b/xalan/src/main/java/org/apache/xalan/processor/ProcessorTemplate.java
similarity index 100%
rename from src/org/apache/xalan/processor/ProcessorTemplate.java
rename to xalan/src/main/java/org/apache/xalan/processor/ProcessorTemplate.java
diff --git a/src/org/apache/xalan/processor/ProcessorTemplateElem.java b/xalan/src/main/java/org/apache/xalan/processor/ProcessorTemplateElem.java
similarity index 100%
rename from src/org/apache/xalan/processor/ProcessorTemplateElem.java
rename to xalan/src/main/java/org/apache/xalan/processor/ProcessorTemplateElem.java
diff --git a/src/org/apache/xalan/processor/ProcessorText.java b/xalan/src/main/java/org/apache/xalan/processor/ProcessorText.java
similarity index 100%
rename from src/org/apache/xalan/processor/ProcessorText.java
rename to xalan/src/main/java/org/apache/xalan/processor/ProcessorText.java
diff --git a/src/org/apache/xalan/processor/ProcessorUnknown.java b/xalan/src/main/java/org/apache/xalan/processor/ProcessorUnknown.java
similarity index 100%
rename from src/org/apache/xalan/processor/ProcessorUnknown.java
rename to xalan/src/main/java/org/apache/xalan/processor/ProcessorUnknown.java
diff --git a/src/org/apache/xalan/processor/StylesheetHandler.java b/xalan/src/main/java/org/apache/xalan/processor/StylesheetHandler.java
similarity index 99%
rename from src/org/apache/xalan/processor/StylesheetHandler.java
rename to xalan/src/main/java/org/apache/xalan/processor/StylesheetHandler.java
index e8b04382a..421ecbaf6 100644
--- a/src/org/apache/xalan/processor/StylesheetHandler.java
+++ b/xalan/src/main/java/org/apache/xalan/processor/StylesheetHandler.java
@@ -139,6 +139,7 @@ void init(TransformerFactoryImpl processor)
* Must be public for access by the AVT class.
*
* @param str A non-null reference to a valid or invalid XPath expression string.
+ * @param owningTemplate Template element from which this is applied
*
* @return A non-null reference to an XPath object that represents the string argument.
*
@@ -563,7 +564,7 @@ private void flushCharacters() throws org.xml.sax.SAXException
* @param rawName The qualified name (with prefix).
* @param attributes The specified or defaulted attributes.
*
- * @throws org.xml.sax.SAXException
+ * @throws org.xml.sax.SAXException if the event could not be processed
*/
public void startElement(
String uri, String localName, String rawName, Attributes attributes)
diff --git a/src/org/apache/xalan/processor/TransformerFactoryImpl.java b/xalan/src/main/java/org/apache/xalan/processor/TransformerFactoryImpl.java
similarity index 98%
rename from src/org/apache/xalan/processor/TransformerFactoryImpl.java
rename to xalan/src/main/java/org/apache/xalan/processor/TransformerFactoryImpl.java
index 3a7c78cdc..022197be0 100644
--- a/src/org/apache/xalan/processor/TransformerFactoryImpl.java
+++ b/xalan/src/main/java/org/apache/xalan/processor/TransformerFactoryImpl.java
@@ -241,7 +241,7 @@ javax.xml.transform.Templates processFromNode(Node node, String systemID)
*
* @return A Source object capable of being used to create a Templates object.
*
- * @throws TransformerConfigurationException
+ * @throws TransformerConfigurationException wrapper if there is an underlying exception.
*/
public Source getAssociatedStylesheet(
Source source, String media, String title, String charset)
@@ -608,7 +608,7 @@ else if (name.equals(FEATURE_SOURCE_LOCATION))
*
* @return An XMLFilter object, or null if this feature is not supported.
*
- * @throws TransformerConfigurationException
+ * @throws TransformerConfigurationException wrapper if one is thrown by underlying code
*/
public XMLFilter newXMLFilter(Source src)
throws TransformerConfigurationException
@@ -628,7 +628,7 @@ public XMLFilter newXMLFilter(Source src)
*
* @return An XMLFilter object, or null if this feature is not supported.
*
- * @throws TransformerConfigurationException
+ * @throws TransformerConfigurationException wrapper if TrAXFilter construction failed
*/
public XMLFilter newXMLFilter(Templates templates)
throws TransformerConfigurationException
@@ -668,7 +668,7 @@ public XMLFilter newXMLFilter(Templates templates)
*
* @return TransformerHandler ready to transform SAX events.
*
- * @throws TransformerConfigurationException
+ * @throws TransformerConfigurationException if handler could not be created.
*/
public TransformerHandler newTransformerHandler(Source src)
throws TransformerConfigurationException
@@ -742,7 +742,7 @@ public TransformerHandler newTransformerHandler(Templates templates)
*
* @return TransformerHandler ready to transform SAX events.
*
- * @throws TransformerConfigurationException
+ * @throws TransformerConfigurationException if handler could not be created
*/
public TransformerHandler newTransformerHandler()
throws TransformerConfigurationException
diff --git a/src/org/apache/xalan/processor/WhitespaceInfoPaths.java b/xalan/src/main/java/org/apache/xalan/processor/WhitespaceInfoPaths.java
similarity index 100%
rename from src/org/apache/xalan/processor/WhitespaceInfoPaths.java
rename to xalan/src/main/java/org/apache/xalan/processor/WhitespaceInfoPaths.java
diff --git a/xalan/src/main/java/org/apache/xalan/processor/XSLProcessorVersion.java b/xalan/src/main/java/org/apache/xalan/processor/XSLProcessorVersion.java
new file mode 100644
index 000000000..7f060cd48
--- /dev/null
+++ b/xalan/src/main/java/org/apache/xalan/processor/XSLProcessorVersion.java
@@ -0,0 +1,64 @@
+/*
+ * 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.
+ */
+/*
+ * $Id$
+ */
+package org.apache.xalan.processor;
+
+import org.apache.xalan.Version;
+
+/**
+ * Administrative class to keep track of the version number of
+ * the Xalan Processor release.
+ *
See also: org/apache/xalan/res/XSLTInfo.properties
+ * @deprecated To be replaced by org.apache.xalan.Version.getVersion()
+ * @xsl.usage general
+ */
+public class XSLProcessorVersion extends Version {
+
+ /**
+ * Get the basic version string for the current Xalan release.
+ * Version String formatted like
+ * "Xalan ProcessorJava v.r[.dd| Dnn]".
+ *
+ * @return String denoting our current version
+ */
+ public static String getVersion() {
+ return getProduct()+" "+getImplementationLanguage()+" "
+ +getMajorVersionNum()+"."+getReleaseVersionNum()+"."
+ +( (getDevelopmentVersionNum() > 0) ?
+ ("D"+getDevelopmentVersionNum()) : (""+getMaintenanceVersionNum()))
+ +(isSnapshot() ? "-SNAPSHOT" :"");
+ }
+
+ /**
+ * Print the processor version to the command line.
+ *
+ * @param argv command line arguments, unused.
+ */
+ public static void main(String argv[]) {
+ System.out.println(getVersion());
+ }
+
+ /**
+ * Name of product: Xalan Processor.
+ */
+ public static String getProduct() {
+ return "Xalan Processor";
+ }
+}
diff --git a/src/org/apache/xalan/processor/XSLTAttributeDef.java b/xalan/src/main/java/org/apache/xalan/processor/XSLTAttributeDef.java
similarity index 100%
rename from src/org/apache/xalan/processor/XSLTAttributeDef.java
rename to xalan/src/main/java/org/apache/xalan/processor/XSLTAttributeDef.java
diff --git a/src/org/apache/xalan/processor/XSLTElementDef.java b/xalan/src/main/java/org/apache/xalan/processor/XSLTElementDef.java
similarity index 100%
rename from src/org/apache/xalan/processor/XSLTElementDef.java
rename to xalan/src/main/java/org/apache/xalan/processor/XSLTElementDef.java
diff --git a/src/org/apache/xalan/processor/XSLTElementProcessor.java b/xalan/src/main/java/org/apache/xalan/processor/XSLTElementProcessor.java
similarity index 94%
rename from src/org/apache/xalan/processor/XSLTElementProcessor.java
rename to xalan/src/main/java/org/apache/xalan/processor/XSLTElementProcessor.java
index 553832d11..367dbcb4e 100644
--- a/src/org/apache/xalan/processor/XSLTElementProcessor.java
+++ b/xalan/src/main/java/org/apache/xalan/processor/XSLTElementProcessor.java
@@ -86,6 +86,7 @@ void setElemDef(XSLTElementDef def)
* document.
* @return The new input source, or null to require the
* default behaviour.
+ * @throws org.xml.sax.SAXException if StylesheetHandler throws an error.
*/
public InputSource resolveEntity(
StylesheetHandler handler, String publicId, String systemId)
@@ -137,6 +138,7 @@ public void unparsedEntityDecl(StylesheetHandler handler, String name,
* is sent to the current processor when any non-text event occurs.
*
* @param handler non-null reference to current StylesheetHandler that is constructing the Templates.
+ * @throws org.xml.sax.SAXException if StylesheetHandler throws an error.
*/
public void startNonText(StylesheetHandler handler) throws org.xml.sax.SAXException
{
@@ -152,6 +154,7 @@ public void startNonText(StylesheetHandler handler) throws org.xml.sax.SAXExcept
* @param localName The local name (without prefix), or empty string if not namespace processing.
* @param rawName The qualified name (with prefix).
* @param attributes The specified or defaulted attributes.
+ * @throws org.xml.sax.SAXException if StylesheetHandler throws an error.
*/
public void startElement(
StylesheetHandler handler, String uri, String localName, String rawName, Attributes attributes)
@@ -171,6 +174,7 @@ public void startElement(
* @param uri The Namespace URI, or an empty string.
* @param localName The local name (without prefix), or empty string if not namespace processing.
* @param rawName The qualified name (with prefix).
+ * @throws org.xml.sax.SAXException if StylesheetHandler throws an error.
*/
public void endElement(
StylesheetHandler handler, String uri, String localName, String rawName)
@@ -192,6 +196,7 @@ public void endElement(
* @param start The start position in the character array.
* @param length The number of characters to use from the
* character array.
+ * @throws org.xml.sax.SAXException if StylesheetHandler throws an error.
*/
public void characters(
StylesheetHandler handler, char ch[], int start, int length)
@@ -210,6 +215,7 @@ public void characters(
* @param start The start position in the character array.
* @param length The number of characters to use from the
* character array.
+ * @throws org.xml.sax.SAXException if StylesheetHandler throws an error.
*/
public void ignorableWhitespace(
StylesheetHandler handler, char ch[], int start, int length)
@@ -227,12 +233,12 @@ public void ignorableWhitespace(
* @param target The processing instruction target.
* @param data The processing instruction data, or null if
* none is supplied.
+ * @throws org.xml.sax.SAXException if StylesheetHandler throws an error.
*/
public void processingInstruction(
StylesheetHandler handler, String target, String data)
throws org.xml.sax.SAXException
{
-
// no op
}
@@ -242,11 +248,11 @@ public void processingInstruction(
*
* @param handler non-null reference to current StylesheetHandler that is constructing the Templates.
* @param name The name of the skipped entity.
+ * @throws org.xml.sax.SAXException never
*/
public void skippedEntity(StylesheetHandler handler, String name)
throws org.xml.sax.SAXException
{
-
// no op
}
@@ -258,6 +264,7 @@ public void skippedEntity(StylesheetHandler handler, String name)
* error reporting.
* @param attributes The list of attributes.
* @param target The target element where the properties will be set.
+ * @throws org.xml.sax.SAXException if StylesheetHandler throws an error.
*/
void setPropertiesFromAttributes(
StylesheetHandler handler, String rawName, Attributes attributes,
@@ -279,7 +286,7 @@ void setPropertiesFromAttributes(
* attribute is not defined.
* @return the attributes not allowed on this element.
*
- * @throws TransformerException
+ * @throws org.xml.sax.SAXException if StylesheetHandler throws an error.
*/
Attributes setPropertiesFromAttributes(
StylesheetHandler handler, String rawName, Attributes attributes,
diff --git a/src/org/apache/xalan/processor/XSLTSchema.java b/xalan/src/main/java/org/apache/xalan/processor/XSLTSchema.java
similarity index 100%
rename from src/org/apache/xalan/processor/XSLTSchema.java
rename to xalan/src/main/java/org/apache/xalan/processor/XSLTSchema.java
diff --git a/src/org/apache/xalan/processor/package.html b/xalan/src/main/java/org/apache/xalan/processor/package.html
similarity index 100%
rename from src/org/apache/xalan/processor/package.html
rename to xalan/src/main/java/org/apache/xalan/processor/package.html
diff --git a/src/org/apache/xalan/res/XSLMessages.java b/xalan/src/main/java/org/apache/xalan/res/XSLMessages.java
similarity index 100%
rename from src/org/apache/xalan/res/XSLMessages.java
rename to xalan/src/main/java/org/apache/xalan/res/XSLMessages.java
diff --git a/src/org/apache/xalan/res/XSLTErrorResources.java b/xalan/src/main/java/org/apache/xalan/res/XSLTErrorResources.java
similarity index 99%
rename from src/org/apache/xalan/res/XSLTErrorResources.java
rename to xalan/src/main/java/org/apache/xalan/res/XSLTErrorResources.java
index e71f2b1ad..84dfc1672 100644
--- a/src/org/apache/xalan/res/XSLTErrorResources.java
+++ b/xalan/src/main/java/org/apache/xalan/res/XSLTErrorResources.java
@@ -1450,7 +1450,7 @@ public Object[][] getContents()
*
* @param className the name of the class that implements the resource bundle.
* @return the ResourceBundle
- * @throws MissingResourceException
+ * @throws MissingResourceException if the requested resources can not be loaded
*/
public static final XSLTErrorResources loadResourceBundle(String className)
throws MissingResourceException
diff --git a/src/org/apache/xalan/res/XSLTErrorResources_ca.java b/xalan/src/main/java/org/apache/xalan/res/XSLTErrorResources_ca.java
similarity index 99%
rename from src/org/apache/xalan/res/XSLTErrorResources_ca.java
rename to xalan/src/main/java/org/apache/xalan/res/XSLTErrorResources_ca.java
index 6cf2211f5..eff09ad93 100644
--- a/src/org/apache/xalan/res/XSLTErrorResources_ca.java
+++ b/xalan/src/main/java/org/apache/xalan/res/XSLTErrorResources_ca.java
@@ -1468,7 +1468,7 @@ public Object[][] getContents()
*
* @param className the name of the class that implements the resource bundle.
* @return the ResourceBundle
- * @throws MissingResourceException
+ * @throws MissingResourceException if the requested resources can not be loaded
*/
public static final XSLTErrorResources loadResourceBundle(String className)
throws MissingResourceException
diff --git a/src/org/apache/xalan/res/XSLTErrorResources_cs.java b/xalan/src/main/java/org/apache/xalan/res/XSLTErrorResources_cs.java
similarity index 99%
rename from src/org/apache/xalan/res/XSLTErrorResources_cs.java
rename to xalan/src/main/java/org/apache/xalan/res/XSLTErrorResources_cs.java
index 98c77a658..f0d240e75 100644
--- a/src/org/apache/xalan/res/XSLTErrorResources_cs.java
+++ b/xalan/src/main/java/org/apache/xalan/res/XSLTErrorResources_cs.java
@@ -1469,7 +1469,7 @@ public Object[][] getContents()
*
* @param className the name of the class that implements the resource bundle.
* @return the ResourceBundle
- * @throws MissingResourceException
+ * @throws MissingResourceException if the requested resources can not be loaded
*/
public static final XSLTErrorResources loadResourceBundle(String className)
throws MissingResourceException
diff --git a/src/org/apache/xalan/res/XSLTErrorResources_de.java b/xalan/src/main/java/org/apache/xalan/res/XSLTErrorResources_de.java
similarity index 99%
rename from src/org/apache/xalan/res/XSLTErrorResources_de.java
rename to xalan/src/main/java/org/apache/xalan/res/XSLTErrorResources_de.java
index 6d25e79df..c8d6c9cbf 100644
--- a/src/org/apache/xalan/res/XSLTErrorResources_de.java
+++ b/xalan/src/main/java/org/apache/xalan/res/XSLTErrorResources_de.java
@@ -1469,7 +1469,7 @@ public Object[][] getContents()
*
* @param className the name of the class that implements the resource bundle.
* @return the ResourceBundle
- * @throws MissingResourceException
+ * @throws MissingResourceException if the requested resources can not be loaded
*/
public static final XSLTErrorResources loadResourceBundle(String className)
throws MissingResourceException
diff --git a/src/org/apache/xalan/res/XSLTErrorResources_en.java b/xalan/src/main/java/org/apache/xalan/res/XSLTErrorResources_en.java
similarity index 100%
rename from src/org/apache/xalan/res/XSLTErrorResources_en.java
rename to xalan/src/main/java/org/apache/xalan/res/XSLTErrorResources_en.java
diff --git a/src/org/apache/xalan/res/XSLTErrorResources_es.java b/xalan/src/main/java/org/apache/xalan/res/XSLTErrorResources_es.java
similarity index 99%
rename from src/org/apache/xalan/res/XSLTErrorResources_es.java
rename to xalan/src/main/java/org/apache/xalan/res/XSLTErrorResources_es.java
index 77b58728f..b44f920a6 100644
--- a/src/org/apache/xalan/res/XSLTErrorResources_es.java
+++ b/xalan/src/main/java/org/apache/xalan/res/XSLTErrorResources_es.java
@@ -1469,7 +1469,7 @@ public Object[][] getContents()
*
* @param className the name of the class that implements the resource bundle.
* @return the ResourceBundle
- * @throws MissingResourceException
+ * @throws MissingResourceException if the requested resources can not be loaded
*/
public static final XSLTErrorResources loadResourceBundle(String className)
throws MissingResourceException
diff --git a/src/org/apache/xalan/res/XSLTErrorResources_fr.java b/xalan/src/main/java/org/apache/xalan/res/XSLTErrorResources_fr.java
similarity index 99%
rename from src/org/apache/xalan/res/XSLTErrorResources_fr.java
rename to xalan/src/main/java/org/apache/xalan/res/XSLTErrorResources_fr.java
index 1ab47a9be..5beb9f182 100644
--- a/src/org/apache/xalan/res/XSLTErrorResources_fr.java
+++ b/xalan/src/main/java/org/apache/xalan/res/XSLTErrorResources_fr.java
@@ -1469,7 +1469,7 @@ public Object[][] getContents()
*
* @param className the name of the class that implements the resource bundle.
* @return the ResourceBundle
- * @throws MissingResourceException
+ * @throws MissingResourceException if the requested resources can not be loaded
*/
public static final XSLTErrorResources loadResourceBundle(String className)
throws MissingResourceException
diff --git a/src/org/apache/xalan/res/XSLTErrorResources_hu.java b/xalan/src/main/java/org/apache/xalan/res/XSLTErrorResources_hu.java
similarity index 99%
rename from src/org/apache/xalan/res/XSLTErrorResources_hu.java
rename to xalan/src/main/java/org/apache/xalan/res/XSLTErrorResources_hu.java
index 628bd07b0..3ff9e1b9b 100644
--- a/src/org/apache/xalan/res/XSLTErrorResources_hu.java
+++ b/xalan/src/main/java/org/apache/xalan/res/XSLTErrorResources_hu.java
@@ -1469,7 +1469,7 @@ public Object[][] getContents()
*
* @param className the name of the class that implements the resource bundle.
* @return the ResourceBundle
- * @throws MissingResourceException
+ * @throws MissingResourceException if the requested resources can not be loaded
*/
public static final XSLTErrorResources loadResourceBundle(String className)
throws MissingResourceException
diff --git a/src/org/apache/xalan/res/XSLTErrorResources_it.java b/xalan/src/main/java/org/apache/xalan/res/XSLTErrorResources_it.java
similarity index 99%
rename from src/org/apache/xalan/res/XSLTErrorResources_it.java
rename to xalan/src/main/java/org/apache/xalan/res/XSLTErrorResources_it.java
index 8a9048c27..6c71248f5 100644
--- a/src/org/apache/xalan/res/XSLTErrorResources_it.java
+++ b/xalan/src/main/java/org/apache/xalan/res/XSLTErrorResources_it.java
@@ -1469,7 +1469,7 @@ public Object[][] getContents()
*
* @param className the name of the class that implements the resource bundle.
* @return the ResourceBundle
- * @throws MissingResourceException
+ * @throws MissingResourceException if the requested resources can not be loaded
*/
public static final XSLTErrorResources loadResourceBundle(String className)
throws MissingResourceException
diff --git a/src/org/apache/xalan/res/XSLTErrorResources_ja.java b/xalan/src/main/java/org/apache/xalan/res/XSLTErrorResources_ja.java
similarity index 99%
rename from src/org/apache/xalan/res/XSLTErrorResources_ja.java
rename to xalan/src/main/java/org/apache/xalan/res/XSLTErrorResources_ja.java
index 3b5575844..95b8f8247 100644
--- a/src/org/apache/xalan/res/XSLTErrorResources_ja.java
+++ b/xalan/src/main/java/org/apache/xalan/res/XSLTErrorResources_ja.java
@@ -1469,7 +1469,7 @@ public Object[][] getContents()
*
* @param className the name of the class that implements the resource bundle.
* @return the ResourceBundle
- * @throws MissingResourceException
+ * @throws MissingResourceException if the requested resources can not be loaded
*/
public static final XSLTErrorResources loadResourceBundle(String className)
throws MissingResourceException
diff --git a/src/org/apache/xalan/res/XSLTErrorResources_ko.java b/xalan/src/main/java/org/apache/xalan/res/XSLTErrorResources_ko.java
similarity index 99%
rename from src/org/apache/xalan/res/XSLTErrorResources_ko.java
rename to xalan/src/main/java/org/apache/xalan/res/XSLTErrorResources_ko.java
index d31922c98..887f03156 100644
--- a/src/org/apache/xalan/res/XSLTErrorResources_ko.java
+++ b/xalan/src/main/java/org/apache/xalan/res/XSLTErrorResources_ko.java
@@ -1469,7 +1469,7 @@ public Object[][] getContents()
*
* @param className the name of the class that implements the resource bundle.
* @return the ResourceBundle
- * @throws MissingResourceException
+ * @throws MissingResourceException if the requested resources can not be loaded
*/
public static final XSLTErrorResources loadResourceBundle(String className)
throws MissingResourceException
diff --git a/src/org/apache/xalan/res/XSLTErrorResources_pl.java b/xalan/src/main/java/org/apache/xalan/res/XSLTErrorResources_pl.java
similarity index 99%
rename from src/org/apache/xalan/res/XSLTErrorResources_pl.java
rename to xalan/src/main/java/org/apache/xalan/res/XSLTErrorResources_pl.java
index 3161b7236..779a92718 100644
--- a/src/org/apache/xalan/res/XSLTErrorResources_pl.java
+++ b/xalan/src/main/java/org/apache/xalan/res/XSLTErrorResources_pl.java
@@ -1469,7 +1469,7 @@ public Object[][] getContents()
*
* @param className the name of the class that implements the resource bundle.
* @return the ResourceBundle
- * @throws MissingResourceException
+ * @throws MissingResourceException if the requested resources can not be loaded
*/
public static final XSLTErrorResources loadResourceBundle(String className)
throws MissingResourceException
diff --git a/src/org/apache/xalan/res/XSLTErrorResources_pt_BR.java b/xalan/src/main/java/org/apache/xalan/res/XSLTErrorResources_pt_BR.java
similarity index 99%
rename from src/org/apache/xalan/res/XSLTErrorResources_pt_BR.java
rename to xalan/src/main/java/org/apache/xalan/res/XSLTErrorResources_pt_BR.java
index e6a371882..1f591794d 100644
--- a/src/org/apache/xalan/res/XSLTErrorResources_pt_BR.java
+++ b/xalan/src/main/java/org/apache/xalan/res/XSLTErrorResources_pt_BR.java
@@ -1469,7 +1469,7 @@ public Object[][] getContents()
*
* @param className the name of the class that implements the resource bundle.
* @return the ResourceBundle
- * @throws MissingResourceException
+ * @throws MissingResourceException if the requested resources can not be loaded
*/
public static final XSLTErrorResources loadResourceBundle(String className)
throws MissingResourceException
diff --git a/src/org/apache/xalan/res/XSLTErrorResources_ru.java b/xalan/src/main/java/org/apache/xalan/res/XSLTErrorResources_ru.java
similarity index 99%
rename from src/org/apache/xalan/res/XSLTErrorResources_ru.java
rename to xalan/src/main/java/org/apache/xalan/res/XSLTErrorResources_ru.java
index de027de2c..195201330 100644
--- a/src/org/apache/xalan/res/XSLTErrorResources_ru.java
+++ b/xalan/src/main/java/org/apache/xalan/res/XSLTErrorResources_ru.java
@@ -1469,7 +1469,7 @@ public Object[][] getContents()
*
* @param className the name of the class that implements the resource bundle.
* @return the ResourceBundle
- * @throws MissingResourceException
+ * @throws MissingResourceException if the requested resources can not be loaded
*/
public static final XSLTErrorResources loadResourceBundle(String className)
throws MissingResourceException
diff --git a/src/org/apache/xalan/res/XSLTErrorResources_sk.java b/xalan/src/main/java/org/apache/xalan/res/XSLTErrorResources_sk.java
similarity index 99%
rename from src/org/apache/xalan/res/XSLTErrorResources_sk.java
rename to xalan/src/main/java/org/apache/xalan/res/XSLTErrorResources_sk.java
index 6133f3a4c..44760889d 100644
--- a/src/org/apache/xalan/res/XSLTErrorResources_sk.java
+++ b/xalan/src/main/java/org/apache/xalan/res/XSLTErrorResources_sk.java
@@ -1469,7 +1469,7 @@ public Object[][] getContents()
*
* @param className the name of the class that implements the resource bundle.
* @return the ResourceBundle
- * @throws MissingResourceException
+ * @throws MissingResourceException if the requested resources can not be loaded
*/
public static final XSLTErrorResources loadResourceBundle(String className)
throws MissingResourceException
diff --git a/src/org/apache/xalan/res/XSLTErrorResources_sl.java b/xalan/src/main/java/org/apache/xalan/res/XSLTErrorResources_sl.java
similarity index 99%
rename from src/org/apache/xalan/res/XSLTErrorResources_sl.java
rename to xalan/src/main/java/org/apache/xalan/res/XSLTErrorResources_sl.java
index 74fac0241..0c03fda0d 100644
--- a/src/org/apache/xalan/res/XSLTErrorResources_sl.java
+++ b/xalan/src/main/java/org/apache/xalan/res/XSLTErrorResources_sl.java
@@ -1456,7 +1456,7 @@ public Object[][] getContents()
*
* @param className the name of the class that implements the resource bundle.
* @return the ResourceBundle
- * @throws MissingResourceException
+ * @throws MissingResourceException if the requested resources can not be loaded
*/
public static final XSLTErrorResources loadResourceBundle(String className)
throws MissingResourceException
diff --git a/src/org/apache/xalan/res/XSLTErrorResources_sv.java b/xalan/src/main/java/org/apache/xalan/res/XSLTErrorResources_sv.java
similarity index 100%
rename from src/org/apache/xalan/res/XSLTErrorResources_sv.java
rename to xalan/src/main/java/org/apache/xalan/res/XSLTErrorResources_sv.java
diff --git a/src/org/apache/xalan/res/XSLTErrorResources_tr.java b/xalan/src/main/java/org/apache/xalan/res/XSLTErrorResources_tr.java
similarity index 99%
rename from src/org/apache/xalan/res/XSLTErrorResources_tr.java
rename to xalan/src/main/java/org/apache/xalan/res/XSLTErrorResources_tr.java
index 6cd831fe1..25b581994 100644
--- a/src/org/apache/xalan/res/XSLTErrorResources_tr.java
+++ b/xalan/src/main/java/org/apache/xalan/res/XSLTErrorResources_tr.java
@@ -1469,7 +1469,7 @@ public Object[][] getContents()
*
* @param className the name of the class that implements the resource bundle.
* @return the ResourceBundle
- * @throws MissingResourceException
+ * @throws MissingResourceException if the requested resources can not be loaded
*/
public static final XSLTErrorResources loadResourceBundle(String className)
throws MissingResourceException
diff --git a/src/org/apache/xalan/res/XSLTErrorResources_zh.java b/xalan/src/main/java/org/apache/xalan/res/XSLTErrorResources_zh.java
similarity index 99%
rename from src/org/apache/xalan/res/XSLTErrorResources_zh.java
rename to xalan/src/main/java/org/apache/xalan/res/XSLTErrorResources_zh.java
index 0d2c80bcb..eec15708d 100644
--- a/src/org/apache/xalan/res/XSLTErrorResources_zh.java
+++ b/xalan/src/main/java/org/apache/xalan/res/XSLTErrorResources_zh.java
@@ -1469,7 +1469,7 @@ public Object[][] getContents()
*
* @param className the name of the class that implements the resource bundle.
* @return the ResourceBundle
- * @throws MissingResourceException
+ * @throws MissingResourceException if the requested resources can not be loaded
*/
public static final XSLTErrorResources loadResourceBundle(String className)
throws MissingResourceException
diff --git a/src/org/apache/xalan/res/XSLTErrorResources_zh_CN.java b/xalan/src/main/java/org/apache/xalan/res/XSLTErrorResources_zh_CN.java
similarity index 100%
rename from src/org/apache/xalan/res/XSLTErrorResources_zh_CN.java
rename to xalan/src/main/java/org/apache/xalan/res/XSLTErrorResources_zh_CN.java
diff --git a/src/org/apache/xalan/res/XSLTErrorResources_zh_TW.java b/xalan/src/main/java/org/apache/xalan/res/XSLTErrorResources_zh_TW.java
similarity index 99%
rename from src/org/apache/xalan/res/XSLTErrorResources_zh_TW.java
rename to xalan/src/main/java/org/apache/xalan/res/XSLTErrorResources_zh_TW.java
index 71aff268f..0e3ad7da2 100644
--- a/src/org/apache/xalan/res/XSLTErrorResources_zh_TW.java
+++ b/xalan/src/main/java/org/apache/xalan/res/XSLTErrorResources_zh_TW.java
@@ -1469,7 +1469,7 @@ public Object[][] getContents()
*
* @param className the name of the class that implements the resource bundle.
* @return the ResourceBundle
- * @throws MissingResourceException
+ * @throws MissingResourceException if the requested resources can not be loaded
*/
public static final XSLTErrorResources loadResourceBundle(String className)
throws MissingResourceException
diff --git a/src/org/apache/xalan/res/package.html b/xalan/src/main/java/org/apache/xalan/res/package.html
similarity index 100%
rename from src/org/apache/xalan/res/package.html
rename to xalan/src/main/java/org/apache/xalan/res/package.html
diff --git a/src/org/apache/xalan/serialize/DOMSerializer.java b/xalan/src/main/java/org/apache/xalan/serialize/DOMSerializer.java
similarity index 100%
rename from src/org/apache/xalan/serialize/DOMSerializer.java
rename to xalan/src/main/java/org/apache/xalan/serialize/DOMSerializer.java
diff --git a/src/org/apache/xalan/serialize/Serializer.java b/xalan/src/main/java/org/apache/xalan/serialize/Serializer.java
similarity index 100%
rename from src/org/apache/xalan/serialize/Serializer.java
rename to xalan/src/main/java/org/apache/xalan/serialize/Serializer.java
diff --git a/src/org/apache/xalan/serialize/SerializerFactory.java b/xalan/src/main/java/org/apache/xalan/serialize/SerializerFactory.java
similarity index 98%
rename from src/org/apache/xalan/serialize/SerializerFactory.java
rename to xalan/src/main/java/org/apache/xalan/serialize/SerializerFactory.java
index 0c7741c7b..b2d22d1c6 100644
--- a/src/org/apache/xalan/serialize/SerializerFactory.java
+++ b/xalan/src/main/java/org/apache/xalan/serialize/SerializerFactory.java
@@ -49,7 +49,7 @@ private SerializerFactory()
* @return A suitable serializer, or null
* @throws IllegalArgumentException (apparently -sc) if method is
* null or an appropriate serializer can't be found
- * @throws WrappedRuntimeException (apparently -sc) if an
+ * @throws org.apache.xml.utils.WrappedRuntimeException (apparently -sc) if an
* exception is thrown while trying to find serializer
* @deprecated Use org.apache.xml.serializer.SerializerFactory
*/
diff --git a/src/org/apache/xalan/serialize/SerializerUtils.java b/xalan/src/main/java/org/apache/xalan/serialize/SerializerUtils.java
similarity index 88%
rename from src/org/apache/xalan/serialize/SerializerUtils.java
rename to xalan/src/main/java/org/apache/xalan/serialize/SerializerUtils.java
index 487f6241e..fdb9a7887 100644
--- a/src/org/apache/xalan/serialize/SerializerUtils.java
+++ b/xalan/src/main/java/org/apache/xalan/serialize/SerializerUtils.java
@@ -46,10 +46,10 @@ public class SerializerUtils
* attribute templates as need be, and processing the xsl:use
* attribute.
*
- * @param handler SerializationHandler to which the attributes are added.
+ * @param handler SerializationHandler to which the attributes are written
* @param attr Attribute node to add to SerializationHandler.
*
- * @throws TransformerException
+ * @throws TransformerException if handler objects
*/
public static void addAttribute(SerializationHandler handler, int attr)
throws TransformerException
@@ -86,9 +86,10 @@ public static void addAttribute(SerializationHandler handler, int attr)
/**
* Copy DOM attributes to the result element.
*
+ * @param handler SerializationHandler to which the attributes are written
* @param src Source node with the attributes
*
- * @throws TransformerException
+ * @throws TransformerException if handler objects
*/
public static void addAttributes(SerializationHandler handler, int src)
throws TransformerException
@@ -110,10 +111,11 @@ public static void addAttributes(SerializationHandler handler, int src)
* Given a result tree fragment, walk the tree and
* output it to the SerializationHandler.
*
+ * @param handler SerializationHandler to which the attributes are written
* @param obj Result tree fragment object
* @param support XPath context for the result tree fragment
*
- * @throws org.xml.sax.SAXException
+ * @throws org.xml.sax.SAXException if handler objects
*/
public static void outputResultTreeFragment(
SerializationHandler handler,
@@ -144,16 +146,17 @@ public static void outputResultTreeFragment(
}
/**
- * Copy xmlns: attributes in if not already in scope.
+ * Copy xmlns: attributes in if not already in scope.
*
* As a quick hack to support ClonerToResultTree, this can also be used
* to copy an individual namespace node.
*
- * @param src Source Node
- * NEEDSDOC @param type
- * NEEDSDOC @param dtm
+ * @param handler SerializationHandler to which the attributes are written
+ * @param src int Source Node index in DTM
+ * @param type int Source Node type in DTM
+ * @param dtm Document Table Model containing the source node
*
- * @throws TransformerException
+ * @throws TransformerException if handler objects
*/
public static void processNSDecls(
SerializationHandler handler,
@@ -206,7 +209,7 @@ else if (type == DTM.NAMESPACE_NODE)
/**
* Returns whether a namespace is defined
*
- *
+ * @param serializer SerializationHandler to which the attributes are written
* @param attr Namespace attribute node
* @param dtm The DTM that owns attr.
*
@@ -240,10 +243,11 @@ public static boolean isDefinedNSDecl(
* If it's not, it still needs to be declared at this point.
* TODO: This needs to be done at an earlier stage in the game... -sb
*
- * NEEDSDOC @param dtm
- * NEEDSDOC @param namespace
+ * @param handler SerializationHandler to which the attributes are written
+ * @param dtm Document Table Model containing the source node
+ * @param namespace DTM index number representing namespace of this node
*
- * @throws org.xml.sax.SAXException
+ * @throws org.xml.sax.SAXException if handler objects
*/
public static void ensureNamespaceDeclDeclared(
SerializationHandler handler,
diff --git a/src/org/apache/xalan/templates/AVT.java b/xalan/src/main/java/org/apache/xalan/templates/AVT.java
similarity index 100%
rename from src/org/apache/xalan/templates/AVT.java
rename to xalan/src/main/java/org/apache/xalan/templates/AVT.java
diff --git a/src/org/apache/xalan/templates/AVTPart.java b/xalan/src/main/java/org/apache/xalan/templates/AVTPart.java
similarity index 100%
rename from src/org/apache/xalan/templates/AVTPart.java
rename to xalan/src/main/java/org/apache/xalan/templates/AVTPart.java
diff --git a/src/org/apache/xalan/templates/AVTPartSimple.java b/xalan/src/main/java/org/apache/xalan/templates/AVTPartSimple.java
similarity index 100%
rename from src/org/apache/xalan/templates/AVTPartSimple.java
rename to xalan/src/main/java/org/apache/xalan/templates/AVTPartSimple.java
diff --git a/src/org/apache/xalan/templates/AVTPartXPath.java b/xalan/src/main/java/org/apache/xalan/templates/AVTPartXPath.java
similarity index 100%
rename from src/org/apache/xalan/templates/AVTPartXPath.java
rename to xalan/src/main/java/org/apache/xalan/templates/AVTPartXPath.java
diff --git a/src/org/apache/xalan/templates/AbsPathChecker.java b/xalan/src/main/java/org/apache/xalan/templates/AbsPathChecker.java
similarity index 100%
rename from src/org/apache/xalan/templates/AbsPathChecker.java
rename to xalan/src/main/java/org/apache/xalan/templates/AbsPathChecker.java
diff --git a/src/org/apache/xalan/templates/Constants.java b/xalan/src/main/java/org/apache/xalan/templates/Constants.java
similarity index 100%
rename from src/org/apache/xalan/templates/Constants.java
rename to xalan/src/main/java/org/apache/xalan/templates/Constants.java
diff --git a/src/org/apache/xalan/templates/DecimalFormatProperties.java b/xalan/src/main/java/org/apache/xalan/templates/DecimalFormatProperties.java
similarity index 98%
rename from src/org/apache/xalan/templates/DecimalFormatProperties.java
rename to xalan/src/main/java/org/apache/xalan/templates/DecimalFormatProperties.java
index 4b4a6d51e..db2592808 100644
--- a/src/org/apache/xalan/templates/DecimalFormatProperties.java
+++ b/xalan/src/main/java/org/apache/xalan/templates/DecimalFormatProperties.java
@@ -27,8 +27,8 @@
/**
* Implement xsl:decimal-format.
*
- *
- *
+ * >
*
* @see format-number in XSLT Specification
* @xsl.usage advanced
diff --git a/src/org/apache/xalan/templates/ElemApplyImport.java b/xalan/src/main/java/org/apache/xalan/templates/ElemApplyImport.java
similarity index 97%
rename from src/org/apache/xalan/templates/ElemApplyImport.java
rename to xalan/src/main/java/org/apache/xalan/templates/ElemApplyImport.java
index c6f25b075..67437f22c 100644
--- a/src/org/apache/xalan/templates/ElemApplyImport.java
+++ b/xalan/src/main/java/org/apache/xalan/templates/ElemApplyImport.java
@@ -29,7 +29,7 @@
/**
* Implement xsl:apply-imports.
*
- *
+ * <!ELEMENT xsl:apply-imports EMPTY>
*
* @see apply-imports in XSLT Specification
* @xsl.usage advanced
@@ -98,7 +98,7 @@ public void execute(
/**
* Add a child to the child list.
- *
+ * <!ELEMENT xsl:apply-imports EMPTY>
*
* @param newChild New element to append to this element's children list
*
diff --git a/src/org/apache/xalan/templates/ElemApplyTemplates.java b/xalan/src/main/java/org/apache/xalan/templates/ElemApplyTemplates.java
similarity index 100%
rename from src/org/apache/xalan/templates/ElemApplyTemplates.java
rename to xalan/src/main/java/org/apache/xalan/templates/ElemApplyTemplates.java
diff --git a/src/org/apache/xalan/templates/ElemAttribute.java b/xalan/src/main/java/org/apache/xalan/templates/ElemAttribute.java
similarity index 98%
rename from src/org/apache/xalan/templates/ElemAttribute.java
rename to xalan/src/main/java/org/apache/xalan/templates/ElemAttribute.java
index 924f4406d..62ce571cd 100644
--- a/src/org/apache/xalan/templates/ElemAttribute.java
+++ b/xalan/src/main/java/org/apache/xalan/templates/ElemAttribute.java
@@ -206,12 +206,12 @@ void constructNode(
/**
* Add a child to the child list.
- *
- *
+ * >
*
* @param newChild Child to append to the list of this node's children
*
diff --git a/src/org/apache/xalan/templates/ElemAttributeSet.java b/xalan/src/main/java/org/apache/xalan/templates/ElemAttributeSet.java
similarity index 97%
rename from src/org/apache/xalan/templates/ElemAttributeSet.java
rename to xalan/src/main/java/org/apache/xalan/templates/ElemAttributeSet.java
index a27f1edd4..4cb3edb79 100644
--- a/src/org/apache/xalan/templates/ElemAttributeSet.java
+++ b/xalan/src/main/java/org/apache/xalan/templates/ElemAttributeSet.java
@@ -136,11 +136,11 @@ public void execute(
/**
* Add a child to the child list.
- *
- *
+ * >
*
* @param newChild Child to be added to this node's list of children
*
diff --git a/src/org/apache/xalan/templates/ElemCallTemplate.java b/xalan/src/main/java/org/apache/xalan/templates/ElemCallTemplate.java
similarity index 98%
rename from src/org/apache/xalan/templates/ElemCallTemplate.java
rename to xalan/src/main/java/org/apache/xalan/templates/ElemCallTemplate.java
index 8c06b6b42..be7f7ea9a 100644
--- a/src/org/apache/xalan/templates/ElemCallTemplate.java
+++ b/xalan/src/main/java/org/apache/xalan/templates/ElemCallTemplate.java
@@ -325,11 +325,11 @@ public void setParamElem(ElemWithParam ParamElem)
/**
* Add a child to the child list.
- *
- *
+ * >
*
* @param newChild Child to add to this node's children list
*
diff --git a/src/org/apache/xalan/templates/ElemChoose.java b/xalan/src/main/java/org/apache/xalan/templates/ElemChoose.java
similarity index 98%
rename from src/org/apache/xalan/templates/ElemChoose.java
rename to xalan/src/main/java/org/apache/xalan/templates/ElemChoose.java
index d243c94b7..8a803fb0b 100644
--- a/src/org/apache/xalan/templates/ElemChoose.java
+++ b/xalan/src/main/java/org/apache/xalan/templates/ElemChoose.java
@@ -30,8 +30,8 @@
/**
* Implement xsl:choose.
*
* @see XXX in XSLT Specification
* @xsl.usage advanced
diff --git a/src/org/apache/xalan/templates/ElemPI.java b/xalan/src/main/java/org/apache/xalan/templates/ElemPI.java
similarity index 98%
rename from src/org/apache/xalan/templates/ElemPI.java
rename to xalan/src/main/java/org/apache/xalan/templates/ElemPI.java
index 56f95c63c..bd8bc4660 100644
--- a/src/org/apache/xalan/templates/ElemPI.java
+++ b/xalan/src/main/java/org/apache/xalan/templates/ElemPI.java
@@ -30,11 +30,11 @@
/**
* Implement xsl:processing-instruction.
*
- *
- *
+ * >
*
* @see section-Creating-Processing-Instructions in XSLT Specification
* @xsl.usage advanced
diff --git a/src/org/apache/xalan/templates/ElemParam.java b/xalan/src/main/java/org/apache/xalan/templates/ElemParam.java
similarity index 98%
rename from src/org/apache/xalan/templates/ElemParam.java
rename to xalan/src/main/java/org/apache/xalan/templates/ElemParam.java
index c0a4038e8..9a2713756 100644
--- a/src/org/apache/xalan/templates/ElemParam.java
+++ b/xalan/src/main/java/org/apache/xalan/templates/ElemParam.java
@@ -29,11 +29,11 @@
/**
* Implement xsl:param.
*
- *
- *
+ * >
*
* @see variables in XSLT Specification
* @xsl.usage advanced
diff --git a/src/org/apache/xalan/templates/ElemSort.java b/xalan/src/main/java/org/apache/xalan/templates/ElemSort.java
similarity index 98%
rename from src/org/apache/xalan/templates/ElemSort.java
rename to xalan/src/main/java/org/apache/xalan/templates/ElemSort.java
index 93da544ee..1cc91a9c9 100644
--- a/src/org/apache/xalan/templates/ElemSort.java
+++ b/xalan/src/main/java/org/apache/xalan/templates/ElemSort.java
@@ -29,16 +29,16 @@
/**
* Implement xsl:sort.
*
- *
- *
- *
+ * >
+ * <!-- xsl:sort cannot occur after any other elements or
+ * any non-whitespace character -->
*
* @see sorting in XSLT Specification
* @xsl.usage advanced
diff --git a/src/org/apache/xalan/templates/ElemTemplate.java b/xalan/src/main/java/org/apache/xalan/templates/ElemTemplate.java
similarity index 99%
rename from src/org/apache/xalan/templates/ElemTemplate.java
rename to xalan/src/main/java/org/apache/xalan/templates/ElemTemplate.java
index 5add0aa3c..5858372c2 100644
--- a/src/org/apache/xalan/templates/ElemTemplate.java
+++ b/xalan/src/main/java/org/apache/xalan/templates/ElemTemplate.java
@@ -31,20 +31,20 @@
/**
* Implement xsl:template.
*
- *
+ * >
*
- *
+ * >
*
* @see section-Defining-Template-Rules in XSLT Specification
* @xsl.usage advanced
diff --git a/src/org/apache/xalan/templates/ElemTemplateElement.java b/xalan/src/main/java/org/apache/xalan/templates/ElemTemplateElement.java
similarity index 97%
rename from src/org/apache/xalan/templates/ElemTemplateElement.java
rename to xalan/src/main/java/org/apache/xalan/templates/ElemTemplateElement.java
index 807c0b72d..cd4b08d53 100644
--- a/src/org/apache/xalan/templates/ElemTemplateElement.java
+++ b/xalan/src/main/java/org/apache/xalan/templates/ElemTemplateElement.java
@@ -113,14 +113,12 @@ public String getLocalName()
return getNodeName();
}
-
/**
* This function will be called on top-level elements
* only, just before the transform begins.
*
* @param transformer The XSLT TransformerFactory.
- *
- * @throws TransformerException
+ * @throws TransformerException if initialization could not complete
*/
public void runtimeInit(TransformerImpl transformer) throws TransformerException{}
@@ -177,6 +175,8 @@ public StylesheetRoot getStylesheetRoot()
/**
* This function is called during recomposition to
* control how this element is composed.
+ * @param root StylesheetRoot at base of tree to recompose
+ * @throws TransformerException if recomposition fails
*/
public void recompose(StylesheetRoot root) throws TransformerException
{
@@ -187,6 +187,8 @@ public void recompose(StylesheetRoot root) throws TransformerException
* recomposed, and allows the template to set remaining
* values that may be based on some other property that
* depends on recomposition.
+ * @param sroot StylesheetRoot at base of tree to compose
+ * @throws TransformerException if composition fails
*/
public void compose(StylesheetRoot sroot) throws TransformerException
{
@@ -202,6 +204,8 @@ public void compose(StylesheetRoot sroot) throws TransformerException
/**
* This after the template's children have been composed.
+ * @param sroot StylesheetRoot at base of tree to compose
+ * @throws TransformerException if composition fails
*/
public void endCompose(StylesheetRoot sroot) throws TransformerException
{
@@ -249,7 +253,7 @@ public void error(String msg)
* @param newChild Child to be added to child list
*
* @return Child just added to the child list
- * @throws DOMException
+ * @throws DOMException if the child would be poorly formed or misplaced
*/
public Node appendChild(Node newChild) throws DOMException
{
@@ -389,7 +393,7 @@ public ElemTemplateElement removeChild(ElemTemplateElement childETE)
*
* @return The new child
*
- * @throws DOMException
+ * @throws DOMException if the replacement could not be made
*/
public Node replaceChild(Node newChild, Node oldChild) throws DOMException
{
@@ -429,7 +433,7 @@ public Node replaceChild(Node newChild, Node oldChild) throws DOMException
*
* @return null
*
- * @throws DOMException
+ * @throws DOMException if the insertion was not possible
*/
public Node insertBefore(Node newChild, Node refChild) throws DOMException
{
@@ -499,7 +503,7 @@ public Node insertBefore(Node newChild, Node refChild) throws DOMException
*
* @return The new child
*
- * @throws DOMException
+ * @throws DOMException if the replacement could not be performed
*/
public ElemTemplateElement replaceChild(ElemTemplateElement newChildElem,
ElemTemplateElement oldChildElem)
@@ -831,7 +835,7 @@ public List getDeclaredPrefixes()
* @param nsSupport non-null reference to NamespaceSupport from
* the ContentHandler.
*
- * @throws TransformerException
+ * @throws TransformerException if the prefixes could not be bound
*/
public void setPrefixes(NamespaceSupport nsSupport) throws TransformerException
{
@@ -847,7 +851,7 @@ public void setPrefixes(NamespaceSupport nsSupport) throws TransformerException
* the ContentHandler.
* @param excludeXSLDecl true if XSLT namespaces should be ignored.
*
- * @throws TransformerException
+ * @throws TransformerException if the prefixes could not be set
*/
public void setPrefixes(NamespaceSupport nsSupport, boolean excludeXSLDecl)
throws TransformerException
@@ -974,6 +978,7 @@ void setPrefixTable(List list) {
* @see extension-element in XSLT Specification
*
* @param prefix non-null reference to prefix that might be excluded.
+ * @param uri non-null reference to URI that might be excluded
*
* @return true if the prefix should normally be excluded.
*/
@@ -996,7 +1001,7 @@ public boolean containsExcludeResultPrefix(String prefix, String uri)
*
* @return true if the given namespace should be excluded.
*
- * @throws TransformerException
+ * @throws TransformerException if exclusion could not be performed
*/
private boolean excludeResultNSDecl(String prefix, String uri)
throws TransformerException
@@ -1024,7 +1029,7 @@ private boolean excludeResultNSDecl(String prefix, String uri)
* Note that this method builds m_prefixTable with aliased
* namespaces, *not* the original namespaces.
*
- * @throws TransformerException
+ * @throws TransformerException if prefixes could not be resolved
*/
public void resolvePrefixTables() throws TransformerException
{
@@ -1159,7 +1164,7 @@ boolean needToCheckExclude()
*
* @param transformer non-null reference to the the current transform-time state.
*
- * @throws TransformerException
+ * @throws TransformerException if the handler objected to the prefix mappings
*/
void executeNSDecls(TransformerImpl transformer) throws TransformerException
{
@@ -1173,7 +1178,7 @@ void executeNSDecls(TransformerImpl transformer) throws TransformerException
* @param transformer non-null reference to the the current transform-time state.
* @param ignorePrefix string prefix to not startPrefixMapping
*
- * @throws TransformerException
+ * @throws TransformerException if the handler objected to the prefix mappings
*/
void executeNSDecls(TransformerImpl transformer, String ignorePrefix) throws TransformerException
{
@@ -1528,7 +1533,7 @@ else if (myPrecedence > roPrecedence)
*
* @return true if the whitespace should be stripped.
*
- * @throws TransformerException
+ * @throws TransformerException if stylesheet root can't answer the question
*/
public boolean shouldStripWhiteSpace(
org.apache.xpath.XPathContext support,
@@ -1629,6 +1634,7 @@ public void callVisitors(XSLTVisitor visitor)
/**
* Call the children visitors.
* @param visitor The visitor whose appropriate method will be called.
+ * @param callAttributes has no effect in this implementation
*/
protected void callChildVisitors(XSLTVisitor visitor, boolean callAttributes)
{
@@ -1636,8 +1642,8 @@ protected void callChildVisitors(XSLTVisitor visitor, boolean callAttributes)
node != null;
node = node.m_nextSibling)
{
- node.callVisitors(visitor);
- }
+ node.callVisitors(visitor);
+ }
}
/**
diff --git a/src/org/apache/xalan/templates/ElemText.java b/xalan/src/main/java/org/apache/xalan/templates/ElemText.java
similarity index 96%
rename from src/org/apache/xalan/templates/ElemText.java
rename to xalan/src/main/java/org/apache/xalan/templates/ElemText.java
index ac171be4b..b5c7729c2 100644
--- a/src/org/apache/xalan/templates/ElemText.java
+++ b/xalan/src/main/java/org/apache/xalan/templates/ElemText.java
@@ -27,10 +27,10 @@
* This primarily acts as a marker on the element
* stack to signal that whitespace should be preserved.
*
- *
- *
+ * >
*
* @see section-Creating-Text in XSLT Specification
* @xsl.usage advanced
@@ -47,7 +47,7 @@ public class ElemText extends ElemTemplateElement
/**
* Set the "disable-output-escaping" attribute.
- * Normally, the xml output method escapes & and < (and
+ * Normally, the xml output method escapes & and < (and
* possibly other characters) when outputting text nodes.
* This ensures that the output is well-formed XML. However,
* it is sometimes convenient to be able to produce output
@@ -72,7 +72,7 @@ public void setDisableOutputEscaping(boolean v)
/**
* Get the "disable-output-escaping" attribute.
- * Normally, the xml output method escapes & and < (and
+ * Normally, the xml output method escapes & and < (and
* possibly other characters) when outputting text nodes.
* This ensures that the output is well-formed XML. However,
* it is sometimes convenient to be able to produce output
diff --git a/src/org/apache/xalan/templates/ElemTextLiteral.java b/xalan/src/main/java/org/apache/xalan/templates/ElemTextLiteral.java
similarity index 98%
rename from src/org/apache/xalan/templates/ElemTextLiteral.java
rename to xalan/src/main/java/org/apache/xalan/templates/ElemTextLiteral.java
index bcf017610..226482601 100644
--- a/src/org/apache/xalan/templates/ElemTextLiteral.java
+++ b/xalan/src/main/java/org/apache/xalan/templates/ElemTextLiteral.java
@@ -120,7 +120,7 @@ public synchronized String getNodeValue()
/**
* Set the "disable-output-escaping" attribute.
- * Normally, the xml output method escapes & and < (and
+ * Normally, the xml output method escapes & and < (and
* possibly other characters) when outputting text nodes.
* This ensures that the output is well-formed XML. However,
* it is sometimes convenient to be able to produce output
@@ -145,7 +145,7 @@ public void setDisableOutputEscaping(boolean v)
/**
* Get the "disable-output-escaping" attribute.
- * Normally, the xml output method escapes & and < (and
+ * Normally, the xml output method escapes & and < (and
* possibly other characters) when outputting text nodes.
* This ensures that the output is well-formed XML. However,
* it is sometimes convenient to be able to produce output
diff --git a/src/org/apache/xalan/templates/ElemUnknown.java b/xalan/src/main/java/org/apache/xalan/templates/ElemUnknown.java
similarity index 100%
rename from src/org/apache/xalan/templates/ElemUnknown.java
rename to xalan/src/main/java/org/apache/xalan/templates/ElemUnknown.java
diff --git a/src/org/apache/xalan/templates/ElemUse.java b/xalan/src/main/java/org/apache/xalan/templates/ElemUse.java
similarity index 100%
rename from src/org/apache/xalan/templates/ElemUse.java
rename to xalan/src/main/java/org/apache/xalan/templates/ElemUse.java
diff --git a/src/org/apache/xalan/templates/ElemValueOf.java b/xalan/src/main/java/org/apache/xalan/templates/ElemValueOf.java
similarity index 98%
rename from src/org/apache/xalan/templates/ElemValueOf.java
rename to xalan/src/main/java/org/apache/xalan/templates/ElemValueOf.java
index 5cf4d4d74..b9b9d37e4 100644
--- a/src/org/apache/xalan/templates/ElemValueOf.java
+++ b/xalan/src/main/java/org/apache/xalan/templates/ElemValueOf.java
@@ -35,11 +35,11 @@
/**
* Implement xsl:value-of.
*
- *
- *
+ * >
*
* @see value-of in XSLT Specification
* @xsl.usage advanced
@@ -102,7 +102,7 @@ public XPath getSelect()
/**
* Set the "disable-output-escaping" attribute.
- * Normally, the xml output method escapes & and < (and
+ * Normally, the xml output method escapes & and < (and
* possibly other characters) when outputting text nodes.
* This ensures that the output is well-formed XML. However,
* it is sometimes convenient to be able to produce output
@@ -127,7 +127,7 @@ public void setDisableOutputEscaping(boolean v)
/**
* Get the "disable-output-escaping" attribute.
- * Normally, the xml output method escapes & and < (and
+ * Normally, the xml output method escapes & and < (and
* possibly other characters) when outputting text nodes.
* This ensures that the output is well-formed XML. However,
* it is sometimes convenient to be able to produce output
diff --git a/src/org/apache/xalan/templates/ElemVariable.java b/xalan/src/main/java/org/apache/xalan/templates/ElemVariable.java
similarity index 99%
rename from src/org/apache/xalan/templates/ElemVariable.java
rename to xalan/src/main/java/org/apache/xalan/templates/ElemVariable.java
index 12b9374ff..92905eac6 100644
--- a/src/org/apache/xalan/templates/ElemVariable.java
+++ b/xalan/src/main/java/org/apache/xalan/templates/ElemVariable.java
@@ -35,11 +35,11 @@
/**
* Implement xsl:variable.
*
- *
- *
+ * >
*
* @see variables in XSLT Specification
* @xsl.usage advanced
diff --git a/src/org/apache/xalan/templates/ElemVariablePsuedo.java b/xalan/src/main/java/org/apache/xalan/templates/ElemVariablePsuedo.java
similarity index 100%
rename from src/org/apache/xalan/templates/ElemVariablePsuedo.java
rename to xalan/src/main/java/org/apache/xalan/templates/ElemVariablePsuedo.java
diff --git a/src/org/apache/xalan/templates/ElemWhen.java b/xalan/src/main/java/org/apache/xalan/templates/ElemWhen.java
similarity index 97%
rename from src/org/apache/xalan/templates/ElemWhen.java
rename to xalan/src/main/java/org/apache/xalan/templates/ElemWhen.java
index 3ca759da9..c404da2e9 100644
--- a/src/org/apache/xalan/templates/ElemWhen.java
+++ b/xalan/src/main/java/org/apache/xalan/templates/ElemWhen.java
@@ -25,11 +25,11 @@
/**
* Implement xsl:when.
*
- *
- *
+ * >
*
* @see XXX in XSLT Specification
* @xsl.usage advanced
diff --git a/src/org/apache/xalan/templates/ElemWithParam.java b/xalan/src/main/java/org/apache/xalan/templates/ElemWithParam.java
similarity index 98%
rename from src/org/apache/xalan/templates/ElemWithParam.java
rename to xalan/src/main/java/org/apache/xalan/templates/ElemWithParam.java
index b638bc810..f0f865b43 100644
--- a/src/org/apache/xalan/templates/ElemWithParam.java
+++ b/xalan/src/main/java/org/apache/xalan/templates/ElemWithParam.java
@@ -35,11 +35,11 @@
* Implement xsl:with-param. xsl:with-param is allowed within
* both xsl:call-template and xsl:apply-templates.
*
- *
- *
+ * >
*
* @see element-with-param in XSLT Specification
* @xsl.usage advanced
diff --git a/src/org/apache/xalan/templates/FuncDocument.java b/xalan/src/main/java/org/apache/xalan/templates/FuncDocument.java
similarity index 100%
rename from src/org/apache/xalan/templates/FuncDocument.java
rename to xalan/src/main/java/org/apache/xalan/templates/FuncDocument.java
diff --git a/src/org/apache/xalan/templates/FuncFormatNumb.java b/xalan/src/main/java/org/apache/xalan/templates/FuncFormatNumb.java
similarity index 100%
rename from src/org/apache/xalan/templates/FuncFormatNumb.java
rename to xalan/src/main/java/org/apache/xalan/templates/FuncFormatNumb.java
diff --git a/src/org/apache/xalan/templates/FuncKey.java b/xalan/src/main/java/org/apache/xalan/templates/FuncKey.java
similarity index 100%
rename from src/org/apache/xalan/templates/FuncKey.java
rename to xalan/src/main/java/org/apache/xalan/templates/FuncKey.java
diff --git a/src/org/apache/xalan/templates/KeyDeclaration.java b/xalan/src/main/java/org/apache/xalan/templates/KeyDeclaration.java
similarity index 100%
rename from src/org/apache/xalan/templates/KeyDeclaration.java
rename to xalan/src/main/java/org/apache/xalan/templates/KeyDeclaration.java
diff --git a/src/org/apache/xalan/templates/NamespaceAlias.java b/xalan/src/main/java/org/apache/xalan/templates/NamespaceAlias.java
similarity index 100%
rename from src/org/apache/xalan/templates/NamespaceAlias.java
rename to xalan/src/main/java/org/apache/xalan/templates/NamespaceAlias.java
diff --git a/src/org/apache/xalan/templates/OutputProperties.java b/xalan/src/main/java/org/apache/xalan/templates/OutputProperties.java
similarity index 100%
rename from src/org/apache/xalan/templates/OutputProperties.java
rename to xalan/src/main/java/org/apache/xalan/templates/OutputProperties.java
diff --git a/src/org/apache/xalan/templates/RedundentExprEliminator.java b/xalan/src/main/java/org/apache/xalan/templates/RedundentExprEliminator.java
similarity index 100%
rename from src/org/apache/xalan/templates/RedundentExprEliminator.java
rename to xalan/src/main/java/org/apache/xalan/templates/RedundentExprEliminator.java
diff --git a/src/org/apache/xalan/templates/Stylesheet.java b/xalan/src/main/java/org/apache/xalan/templates/Stylesheet.java
similarity index 99%
rename from src/org/apache/xalan/templates/Stylesheet.java
rename to xalan/src/main/java/org/apache/xalan/templates/Stylesheet.java
index a37e77597..6364d4afe 100644
--- a/src/org/apache/xalan/templates/Stylesheet.java
+++ b/xalan/src/main/java/org/apache/xalan/templates/Stylesheet.java
@@ -44,7 +44,7 @@
* defined in the getSetterMethodName
* function.
* @see section-Stylesheet-Structure in XSLT Specification
diff --git a/src/org/apache/xalan/templates/StylesheetComposed.java b/xalan/src/main/java/org/apache/xalan/templates/StylesheetComposed.java
similarity index 100%
rename from src/org/apache/xalan/templates/StylesheetComposed.java
rename to xalan/src/main/java/org/apache/xalan/templates/StylesheetComposed.java
diff --git a/src/org/apache/xalan/templates/StylesheetRoot.java b/xalan/src/main/java/org/apache/xalan/templates/StylesheetRoot.java
similarity index 100%
rename from src/org/apache/xalan/templates/StylesheetRoot.java
rename to xalan/src/main/java/org/apache/xalan/templates/StylesheetRoot.java
diff --git a/src/org/apache/xalan/templates/TemplateList.java b/xalan/src/main/java/org/apache/xalan/templates/TemplateList.java
similarity index 100%
rename from src/org/apache/xalan/templates/TemplateList.java
rename to xalan/src/main/java/org/apache/xalan/templates/TemplateList.java
diff --git a/src/org/apache/xalan/templates/TemplateSubPatternAssociation.java b/xalan/src/main/java/org/apache/xalan/templates/TemplateSubPatternAssociation.java
similarity index 100%
rename from src/org/apache/xalan/templates/TemplateSubPatternAssociation.java
rename to xalan/src/main/java/org/apache/xalan/templates/TemplateSubPatternAssociation.java
diff --git a/src/org/apache/xalan/templates/VarNameCollector.java b/xalan/src/main/java/org/apache/xalan/templates/VarNameCollector.java
similarity index 100%
rename from src/org/apache/xalan/templates/VarNameCollector.java
rename to xalan/src/main/java/org/apache/xalan/templates/VarNameCollector.java
diff --git a/src/org/apache/xalan/templates/WhiteSpaceInfo.java b/xalan/src/main/java/org/apache/xalan/templates/WhiteSpaceInfo.java
similarity index 100%
rename from src/org/apache/xalan/templates/WhiteSpaceInfo.java
rename to xalan/src/main/java/org/apache/xalan/templates/WhiteSpaceInfo.java
diff --git a/src/org/apache/xalan/templates/XMLNSDecl.java b/xalan/src/main/java/org/apache/xalan/templates/XMLNSDecl.java
similarity index 100%
rename from src/org/apache/xalan/templates/XMLNSDecl.java
rename to xalan/src/main/java/org/apache/xalan/templates/XMLNSDecl.java
diff --git a/src/org/apache/xalan/templates/XSLTVisitable.java b/xalan/src/main/java/org/apache/xalan/templates/XSLTVisitable.java
similarity index 100%
rename from src/org/apache/xalan/templates/XSLTVisitable.java
rename to xalan/src/main/java/org/apache/xalan/templates/XSLTVisitable.java
diff --git a/src/org/apache/xalan/templates/XSLTVisitor.java b/xalan/src/main/java/org/apache/xalan/templates/XSLTVisitor.java
similarity index 100%
rename from src/org/apache/xalan/templates/XSLTVisitor.java
rename to xalan/src/main/java/org/apache/xalan/templates/XSLTVisitor.java
diff --git a/src/org/apache/xalan/templates/XUnresolvedVariable.java b/xalan/src/main/java/org/apache/xalan/templates/XUnresolvedVariable.java
similarity index 100%
rename from src/org/apache/xalan/templates/XUnresolvedVariable.java
rename to xalan/src/main/java/org/apache/xalan/templates/XUnresolvedVariable.java
diff --git a/src/org/apache/xalan/templates/XUnresolvedVariableSimple.java b/xalan/src/main/java/org/apache/xalan/templates/XUnresolvedVariableSimple.java
similarity index 100%
rename from src/org/apache/xalan/templates/XUnresolvedVariableSimple.java
rename to xalan/src/main/java/org/apache/xalan/templates/XUnresolvedVariableSimple.java
diff --git a/src/org/apache/xalan/templates/package.html b/xalan/src/main/java/org/apache/xalan/templates/package.html
similarity index 100%
rename from src/org/apache/xalan/templates/package.html
rename to xalan/src/main/java/org/apache/xalan/templates/package.html
diff --git a/src/org/apache/xalan/trace/EndSelectionEvent.java b/xalan/src/main/java/org/apache/xalan/trace/EndSelectionEvent.java
similarity index 100%
rename from src/org/apache/xalan/trace/EndSelectionEvent.java
rename to xalan/src/main/java/org/apache/xalan/trace/EndSelectionEvent.java
diff --git a/src/org/apache/xalan/trace/ExtensionEvent.java b/xalan/src/main/java/org/apache/xalan/trace/ExtensionEvent.java
similarity index 100%
rename from src/org/apache/xalan/trace/ExtensionEvent.java
rename to xalan/src/main/java/org/apache/xalan/trace/ExtensionEvent.java
diff --git a/src/org/apache/xalan/trace/GenerateEvent.java b/xalan/src/main/java/org/apache/xalan/trace/GenerateEvent.java
similarity index 100%
rename from src/org/apache/xalan/trace/GenerateEvent.java
rename to xalan/src/main/java/org/apache/xalan/trace/GenerateEvent.java
diff --git a/src/org/apache/xalan/trace/PrintTraceListener.java b/xalan/src/main/java/org/apache/xalan/trace/PrintTraceListener.java
similarity index 100%
rename from src/org/apache/xalan/trace/PrintTraceListener.java
rename to xalan/src/main/java/org/apache/xalan/trace/PrintTraceListener.java
diff --git a/src/org/apache/xalan/trace/SelectionEvent.java b/xalan/src/main/java/org/apache/xalan/trace/SelectionEvent.java
similarity index 100%
rename from src/org/apache/xalan/trace/SelectionEvent.java
rename to xalan/src/main/java/org/apache/xalan/trace/SelectionEvent.java
diff --git a/src/org/apache/xalan/trace/TraceListener.java b/xalan/src/main/java/org/apache/xalan/trace/TraceListener.java
similarity index 100%
rename from src/org/apache/xalan/trace/TraceListener.java
rename to xalan/src/main/java/org/apache/xalan/trace/TraceListener.java
diff --git a/src/org/apache/xalan/trace/TraceListenerEx.java b/xalan/src/main/java/org/apache/xalan/trace/TraceListenerEx.java
similarity index 100%
rename from src/org/apache/xalan/trace/TraceListenerEx.java
rename to xalan/src/main/java/org/apache/xalan/trace/TraceListenerEx.java
diff --git a/src/org/apache/xalan/trace/TraceListenerEx2.java b/xalan/src/main/java/org/apache/xalan/trace/TraceListenerEx2.java
similarity index 100%
rename from src/org/apache/xalan/trace/TraceListenerEx2.java
rename to xalan/src/main/java/org/apache/xalan/trace/TraceListenerEx2.java
diff --git a/src/org/apache/xalan/trace/TraceListenerEx3.java b/xalan/src/main/java/org/apache/xalan/trace/TraceListenerEx3.java
similarity index 100%
rename from src/org/apache/xalan/trace/TraceListenerEx3.java
rename to xalan/src/main/java/org/apache/xalan/trace/TraceListenerEx3.java
diff --git a/src/org/apache/xalan/trace/TraceManager.java b/xalan/src/main/java/org/apache/xalan/trace/TraceManager.java
similarity index 100%
rename from src/org/apache/xalan/trace/TraceManager.java
rename to xalan/src/main/java/org/apache/xalan/trace/TraceManager.java
diff --git a/src/org/apache/xalan/trace/TracerEvent.java b/xalan/src/main/java/org/apache/xalan/trace/TracerEvent.java
similarity index 100%
rename from src/org/apache/xalan/trace/TracerEvent.java
rename to xalan/src/main/java/org/apache/xalan/trace/TracerEvent.java
diff --git a/src/org/apache/xalan/trace/package.html b/xalan/src/main/java/org/apache/xalan/trace/package.html
similarity index 100%
rename from src/org/apache/xalan/trace/package.html
rename to xalan/src/main/java/org/apache/xalan/trace/package.html
diff --git a/src/org/apache/xalan/transformer/ClonerToResultTree.java b/xalan/src/main/java/org/apache/xalan/transformer/ClonerToResultTree.java
similarity index 100%
rename from src/org/apache/xalan/transformer/ClonerToResultTree.java
rename to xalan/src/main/java/org/apache/xalan/transformer/ClonerToResultTree.java
diff --git a/src/org/apache/xalan/transformer/Counter.java b/xalan/src/main/java/org/apache/xalan/transformer/Counter.java
similarity index 100%
rename from src/org/apache/xalan/transformer/Counter.java
rename to xalan/src/main/java/org/apache/xalan/transformer/Counter.java
diff --git a/src/org/apache/xalan/transformer/CountersTable.java b/xalan/src/main/java/org/apache/xalan/transformer/CountersTable.java
similarity index 100%
rename from src/org/apache/xalan/transformer/CountersTable.java
rename to xalan/src/main/java/org/apache/xalan/transformer/CountersTable.java
diff --git a/src/org/apache/xalan/transformer/DecimalToRoman.java b/xalan/src/main/java/org/apache/xalan/transformer/DecimalToRoman.java
similarity index 100%
rename from src/org/apache/xalan/transformer/DecimalToRoman.java
rename to xalan/src/main/java/org/apache/xalan/transformer/DecimalToRoman.java
diff --git a/src/org/apache/xalan/transformer/KeyIterator.java b/xalan/src/main/java/org/apache/xalan/transformer/KeyIterator.java
similarity index 100%
rename from src/org/apache/xalan/transformer/KeyIterator.java
rename to xalan/src/main/java/org/apache/xalan/transformer/KeyIterator.java
diff --git a/src/org/apache/xalan/transformer/KeyManager.java b/xalan/src/main/java/org/apache/xalan/transformer/KeyManager.java
similarity index 100%
rename from src/org/apache/xalan/transformer/KeyManager.java
rename to xalan/src/main/java/org/apache/xalan/transformer/KeyManager.java
diff --git a/src/org/apache/xalan/transformer/KeyRefIterator.java b/xalan/src/main/java/org/apache/xalan/transformer/KeyRefIterator.java
similarity index 100%
rename from src/org/apache/xalan/transformer/KeyRefIterator.java
rename to xalan/src/main/java/org/apache/xalan/transformer/KeyRefIterator.java
diff --git a/src/org/apache/xalan/transformer/KeyTable.java b/xalan/src/main/java/org/apache/xalan/transformer/KeyTable.java
similarity index 100%
rename from src/org/apache/xalan/transformer/KeyTable.java
rename to xalan/src/main/java/org/apache/xalan/transformer/KeyTable.java
diff --git a/src/org/apache/xalan/transformer/MsgMgr.java b/xalan/src/main/java/org/apache/xalan/transformer/MsgMgr.java
similarity index 100%
rename from src/org/apache/xalan/transformer/MsgMgr.java
rename to xalan/src/main/java/org/apache/xalan/transformer/MsgMgr.java
diff --git a/src/org/apache/xalan/transformer/NodeSortKey.java b/xalan/src/main/java/org/apache/xalan/transformer/NodeSortKey.java
similarity index 100%
rename from src/org/apache/xalan/transformer/NodeSortKey.java
rename to xalan/src/main/java/org/apache/xalan/transformer/NodeSortKey.java
diff --git a/src/org/apache/xalan/transformer/NodeSorter.java b/xalan/src/main/java/org/apache/xalan/transformer/NodeSorter.java
similarity index 100%
rename from src/org/apache/xalan/transformer/NodeSorter.java
rename to xalan/src/main/java/org/apache/xalan/transformer/NodeSorter.java
diff --git a/src/org/apache/xalan/transformer/NumeratorFormatter.java b/xalan/src/main/java/org/apache/xalan/transformer/NumeratorFormatter.java
similarity index 100%
rename from src/org/apache/xalan/transformer/NumeratorFormatter.java
rename to xalan/src/main/java/org/apache/xalan/transformer/NumeratorFormatter.java
diff --git a/src/org/apache/xalan/transformer/QueuedEvents.java b/xalan/src/main/java/org/apache/xalan/transformer/QueuedEvents.java
similarity index 100%
rename from src/org/apache/xalan/transformer/QueuedEvents.java
rename to xalan/src/main/java/org/apache/xalan/transformer/QueuedEvents.java
diff --git a/src/org/apache/xalan/transformer/ResultNameSpace.java b/xalan/src/main/java/org/apache/xalan/transformer/ResultNameSpace.java
similarity index 100%
rename from src/org/apache/xalan/transformer/ResultNameSpace.java
rename to xalan/src/main/java/org/apache/xalan/transformer/ResultNameSpace.java
diff --git a/src/org/apache/xalan/transformer/SerializerSwitcher.java b/xalan/src/main/java/org/apache/xalan/transformer/SerializerSwitcher.java
similarity index 100%
rename from src/org/apache/xalan/transformer/SerializerSwitcher.java
rename to xalan/src/main/java/org/apache/xalan/transformer/SerializerSwitcher.java
diff --git a/src/org/apache/xalan/transformer/StackGuard.java b/xalan/src/main/java/org/apache/xalan/transformer/StackGuard.java
similarity index 100%
rename from src/org/apache/xalan/transformer/StackGuard.java
rename to xalan/src/main/java/org/apache/xalan/transformer/StackGuard.java
diff --git a/src/org/apache/xalan/transformer/TrAXFilter.java b/xalan/src/main/java/org/apache/xalan/transformer/TrAXFilter.java
similarity index 100%
rename from src/org/apache/xalan/transformer/TrAXFilter.java
rename to xalan/src/main/java/org/apache/xalan/transformer/TrAXFilter.java
diff --git a/src/org/apache/xalan/transformer/TransformSnapshot.java b/xalan/src/main/java/org/apache/xalan/transformer/TransformSnapshot.java
similarity index 100%
rename from src/org/apache/xalan/transformer/TransformSnapshot.java
rename to xalan/src/main/java/org/apache/xalan/transformer/TransformSnapshot.java
diff --git a/src/org/apache/xalan/transformer/TransformSnapshotImpl.java b/xalan/src/main/java/org/apache/xalan/transformer/TransformSnapshotImpl.java
similarity index 100%
rename from src/org/apache/xalan/transformer/TransformSnapshotImpl.java
rename to xalan/src/main/java/org/apache/xalan/transformer/TransformSnapshotImpl.java
diff --git a/src/org/apache/xalan/transformer/TransformState.java b/xalan/src/main/java/org/apache/xalan/transformer/TransformState.java
similarity index 100%
rename from src/org/apache/xalan/transformer/TransformState.java
rename to xalan/src/main/java/org/apache/xalan/transformer/TransformState.java
diff --git a/src/org/apache/xalan/transformer/TransformerClient.java b/xalan/src/main/java/org/apache/xalan/transformer/TransformerClient.java
similarity index 100%
rename from src/org/apache/xalan/transformer/TransformerClient.java
rename to xalan/src/main/java/org/apache/xalan/transformer/TransformerClient.java
diff --git a/src/org/apache/xalan/transformer/TransformerHandlerImpl.java b/xalan/src/main/java/org/apache/xalan/transformer/TransformerHandlerImpl.java
similarity index 100%
rename from src/org/apache/xalan/transformer/TransformerHandlerImpl.java
rename to xalan/src/main/java/org/apache/xalan/transformer/TransformerHandlerImpl.java
diff --git a/src/org/apache/xalan/transformer/TransformerIdentityImpl.java b/xalan/src/main/java/org/apache/xalan/transformer/TransformerIdentityImpl.java
similarity index 100%
rename from src/org/apache/xalan/transformer/TransformerIdentityImpl.java
rename to xalan/src/main/java/org/apache/xalan/transformer/TransformerIdentityImpl.java
diff --git a/src/org/apache/xalan/transformer/TransformerImpl.java b/xalan/src/main/java/org/apache/xalan/transformer/TransformerImpl.java
similarity index 100%
rename from src/org/apache/xalan/transformer/TransformerImpl.java
rename to xalan/src/main/java/org/apache/xalan/transformer/TransformerImpl.java
diff --git a/src/org/apache/xalan/transformer/TreeWalker2Result.java b/xalan/src/main/java/org/apache/xalan/transformer/TreeWalker2Result.java
similarity index 98%
rename from src/org/apache/xalan/transformer/TreeWalker2Result.java
rename to xalan/src/main/java/org/apache/xalan/transformer/TreeWalker2Result.java
index 453059bb9..fcb0d6cff 100644
--- a/src/org/apache/xalan/transformer/TreeWalker2Result.java
+++ b/xalan/src/main/java/org/apache/xalan/transformer/TreeWalker2Result.java
@@ -25,6 +25,7 @@
import org.apache.xml.dtm.ref.DTMTreeWalker;
import org.apache.xml.serializer.SerializationHandler;
import org.apache.xpath.XPathContext;
+import javax.xml.transform.TransformerException;
/**
* Handle a walk of a tree, but screen out attributes for
diff --git a/src/org/apache/xalan/transformer/XSLInfiniteLoopException.java b/xalan/src/main/java/org/apache/xalan/transformer/XSLInfiniteLoopException.java
similarity index 100%
rename from src/org/apache/xalan/transformer/XSLInfiniteLoopException.java
rename to xalan/src/main/java/org/apache/xalan/transformer/XSLInfiniteLoopException.java
diff --git a/src/org/apache/xalan/transformer/XalanProperties.java b/xalan/src/main/java/org/apache/xalan/transformer/XalanProperties.java
similarity index 100%
rename from src/org/apache/xalan/transformer/XalanProperties.java
rename to xalan/src/main/java/org/apache/xalan/transformer/XalanProperties.java
diff --git a/src/org/apache/xalan/transformer/XalanTransformState.java b/xalan/src/main/java/org/apache/xalan/transformer/XalanTransformState.java
similarity index 100%
rename from src/org/apache/xalan/transformer/XalanTransformState.java
rename to xalan/src/main/java/org/apache/xalan/transformer/XalanTransformState.java
diff --git a/src/org/apache/xalan/transformer/package.html b/xalan/src/main/java/org/apache/xalan/transformer/package.html
similarity index 100%
rename from src/org/apache/xalan/transformer/package.html
rename to xalan/src/main/java/org/apache/xalan/transformer/package.html
diff --git a/src/org/apache/xalan/xslt/EnvironmentCheck.java b/xalan/src/main/java/org/apache/xalan/xslt/EnvironmentCheck.java
similarity index 100%
rename from src/org/apache/xalan/xslt/EnvironmentCheck.java
rename to xalan/src/main/java/org/apache/xalan/xslt/EnvironmentCheck.java
diff --git a/src/org/apache/xalan/xslt/ObjectFactory.java b/xalan/src/main/java/org/apache/xalan/xslt/ObjectFactory.java
similarity index 100%
rename from src/org/apache/xalan/xslt/ObjectFactory.java
rename to xalan/src/main/java/org/apache/xalan/xslt/ObjectFactory.java
diff --git a/src/org/apache/xalan/xslt/Process.java b/xalan/src/main/java/org/apache/xalan/xslt/Process.java
similarity index 100%
rename from src/org/apache/xalan/xslt/Process.java
rename to xalan/src/main/java/org/apache/xalan/xslt/Process.java
diff --git a/src/org/apache/xalan/xslt/SecuritySupport.java b/xalan/src/main/java/org/apache/xalan/xslt/SecuritySupport.java
similarity index 100%
rename from src/org/apache/xalan/xslt/SecuritySupport.java
rename to xalan/src/main/java/org/apache/xalan/xslt/SecuritySupport.java
diff --git a/src/org/apache/xalan/xslt/package.html b/xalan/src/main/java/org/apache/xalan/xslt/package.html
similarity index 100%
rename from src/org/apache/xalan/xslt/package.html
rename to xalan/src/main/java/org/apache/xalan/xslt/package.html
diff --git a/src/org/apache/xalan/xslt/util/XslTransformErrorLocatorHelper.java b/xalan/src/main/java/org/apache/xalan/xslt/util/XslTransformErrorLocatorHelper.java
similarity index 100%
rename from src/org/apache/xalan/xslt/util/XslTransformErrorLocatorHelper.java
rename to xalan/src/main/java/org/apache/xalan/xslt/util/XslTransformErrorLocatorHelper.java
diff --git a/src/org/apache/xalan/xsltc/CollatorFactory.java b/xalan/src/main/java/org/apache/xalan/xsltc/CollatorFactory.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/CollatorFactory.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/CollatorFactory.java
diff --git a/src/org/apache/xalan/xsltc/DOM.java b/xalan/src/main/java/org/apache/xalan/xsltc/DOM.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/DOM.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/DOM.java
diff --git a/src/org/apache/xalan/xsltc/DOMCache.java b/xalan/src/main/java/org/apache/xalan/xsltc/DOMCache.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/DOMCache.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/DOMCache.java
diff --git a/src/org/apache/xalan/xsltc/DOMEnhancedForDTM.java b/xalan/src/main/java/org/apache/xalan/xsltc/DOMEnhancedForDTM.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/DOMEnhancedForDTM.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/DOMEnhancedForDTM.java
diff --git a/src/org/apache/xalan/xsltc/NodeIterator.java b/xalan/src/main/java/org/apache/xalan/xsltc/NodeIterator.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/NodeIterator.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/NodeIterator.java
diff --git a/src/org/apache/xalan/xsltc/ProcessorVersion.java b/xalan/src/main/java/org/apache/xalan/xsltc/ProcessorVersion.java
similarity index 93%
rename from src/org/apache/xalan/xsltc/ProcessorVersion.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/ProcessorVersion.java
index 43c411f3d..33120f636 100644
--- a/src/org/apache/xalan/xsltc/ProcessorVersion.java
+++ b/xalan/src/main/java/org/apache/xalan/xsltc/ProcessorVersion.java
@@ -35,6 +35,10 @@
* architectural changes. MINOR field goes to zero
* and MAJOR is incremented such as: {...,1.1.14,1.2,2.0}
* Stability of a release follows: X.0 > X.X > X.X.X
+ *
+ * Futurework: have this read version info from jar manifest,
+ * pom.properties, and/or a file updated during maven build.
+ *
* @author G. Todd Miller
*/
public class ProcessorVersion {
diff --git a/src/org/apache/xalan/xsltc/StripFilter.java b/xalan/src/main/java/org/apache/xalan/xsltc/StripFilter.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/StripFilter.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/StripFilter.java
diff --git a/src/org/apache/xalan/xsltc/Translet.java b/xalan/src/main/java/org/apache/xalan/xsltc/Translet.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/Translet.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/Translet.java
diff --git a/src/org/apache/xalan/xsltc/TransletException.java b/xalan/src/main/java/org/apache/xalan/xsltc/TransletException.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/TransletException.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/TransletException.java
diff --git a/src/org/apache/xalan/xsltc/cmdline/Compile.java b/xalan/src/main/java/org/apache/xalan/xsltc/cmdline/Compile.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/cmdline/Compile.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/cmdline/Compile.java
diff --git a/src/org/apache/xalan/xsltc/cmdline/ObjectFactory.java b/xalan/src/main/java/org/apache/xalan/xsltc/cmdline/ObjectFactory.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/cmdline/ObjectFactory.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/cmdline/ObjectFactory.java
diff --git a/src/org/apache/xalan/xsltc/cmdline/SecuritySupport.java b/xalan/src/main/java/org/apache/xalan/xsltc/cmdline/SecuritySupport.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/cmdline/SecuritySupport.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/cmdline/SecuritySupport.java
diff --git a/src/org/apache/xalan/xsltc/cmdline/Transform.java b/xalan/src/main/java/org/apache/xalan/xsltc/cmdline/Transform.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/cmdline/Transform.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/cmdline/Transform.java
diff --git a/src/org/apache/xalan/xsltc/cmdline/getopt/GetOpt.java b/xalan/src/main/java/org/apache/xalan/xsltc/cmdline/getopt/GetOpt.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/cmdline/getopt/GetOpt.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/cmdline/getopt/GetOpt.java
diff --git a/src/org/apache/xalan/xsltc/cmdline/getopt/GetOptsException.java b/xalan/src/main/java/org/apache/xalan/xsltc/cmdline/getopt/GetOptsException.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/cmdline/getopt/GetOptsException.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/cmdline/getopt/GetOptsException.java
diff --git a/src/org/apache/xalan/xsltc/cmdline/getopt/IllegalArgumentException.java b/xalan/src/main/java/org/apache/xalan/xsltc/cmdline/getopt/IllegalArgumentException.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/cmdline/getopt/IllegalArgumentException.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/cmdline/getopt/IllegalArgumentException.java
diff --git a/src/org/apache/xalan/xsltc/cmdline/getopt/MissingOptArgException.java b/xalan/src/main/java/org/apache/xalan/xsltc/cmdline/getopt/MissingOptArgException.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/cmdline/getopt/MissingOptArgException.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/cmdline/getopt/MissingOptArgException.java
diff --git a/src/org/apache/xalan/xsltc/compiler/AbsoluteLocationPath.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/AbsoluteLocationPath.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/AbsoluteLocationPath.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/AbsoluteLocationPath.java
diff --git a/src/org/apache/xalan/xsltc/compiler/AbsolutePathPattern.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/AbsolutePathPattern.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/AbsolutePathPattern.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/AbsolutePathPattern.java
diff --git a/src/org/apache/xalan/xsltc/compiler/AlternativePattern.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/AlternativePattern.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/AlternativePattern.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/AlternativePattern.java
diff --git a/src/org/apache/xalan/xsltc/compiler/AncestorPattern.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/AncestorPattern.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/AncestorPattern.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/AncestorPattern.java
diff --git a/src/org/apache/xalan/xsltc/compiler/ApplyImports.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/ApplyImports.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/ApplyImports.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/ApplyImports.java
diff --git a/src/org/apache/xalan/xsltc/compiler/ApplyTemplates.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/ApplyTemplates.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/ApplyTemplates.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/ApplyTemplates.java
diff --git a/src/org/apache/xalan/xsltc/compiler/ArgumentList.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/ArgumentList.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/ArgumentList.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/ArgumentList.java
diff --git a/src/org/apache/xalan/xsltc/compiler/Attribute.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/Attribute.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/Attribute.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/Attribute.java
diff --git a/src/org/apache/xalan/xsltc/compiler/AttributeSet.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/AttributeSet.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/AttributeSet.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/AttributeSet.java
diff --git a/src/org/apache/xalan/xsltc/compiler/AttributeValue.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/AttributeValue.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/AttributeValue.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/AttributeValue.java
diff --git a/src/org/apache/xalan/xsltc/compiler/AttributeValueTemplate.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/AttributeValueTemplate.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/AttributeValueTemplate.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/AttributeValueTemplate.java
diff --git a/src/org/apache/xalan/xsltc/compiler/BinOpExpr.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/BinOpExpr.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/BinOpExpr.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/BinOpExpr.java
diff --git a/src/org/apache/xalan/xsltc/compiler/BooleanCall.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/BooleanCall.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/BooleanCall.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/BooleanCall.java
diff --git a/src/org/apache/xalan/xsltc/compiler/BooleanExpr.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/BooleanExpr.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/BooleanExpr.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/BooleanExpr.java
diff --git a/src/org/apache/xalan/xsltc/compiler/CallTemplate.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/CallTemplate.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/CallTemplate.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/CallTemplate.java
diff --git a/src/org/apache/xalan/xsltc/compiler/CastCall.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/CastCall.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/CastCall.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/CastCall.java
diff --git a/src/org/apache/xalan/xsltc/compiler/CastExpr.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/CastExpr.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/CastExpr.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/CastExpr.java
diff --git a/src/org/apache/xalan/xsltc/compiler/CeilingCall.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/CeilingCall.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/CeilingCall.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/CeilingCall.java
diff --git a/src/org/apache/xalan/xsltc/compiler/Choose.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/Choose.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/Choose.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/Choose.java
diff --git a/src/org/apache/xalan/xsltc/compiler/Closure.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/Closure.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/Closure.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/Closure.java
diff --git a/src/org/apache/xalan/xsltc/compiler/Comment.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/Comment.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/Comment.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/Comment.java
diff --git a/src/org/apache/xalan/xsltc/compiler/CompilerException.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/CompilerException.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/CompilerException.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/CompilerException.java
diff --git a/src/org/apache/xalan/xsltc/compiler/ConcatCall.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/ConcatCall.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/ConcatCall.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/ConcatCall.java
diff --git a/src/org/apache/xalan/xsltc/compiler/Constants.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/Constants.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/Constants.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/Constants.java
diff --git a/src/org/apache/xalan/xsltc/compiler/ContainsCall.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/ContainsCall.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/ContainsCall.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/ContainsCall.java
diff --git a/src/org/apache/xalan/xsltc/compiler/Copy.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/Copy.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/Copy.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/Copy.java
diff --git a/src/org/apache/xalan/xsltc/compiler/CopyOf.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/CopyOf.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/CopyOf.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/CopyOf.java
diff --git a/src/org/apache/xalan/xsltc/compiler/CurrentCall.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/CurrentCall.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/CurrentCall.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/CurrentCall.java
diff --git a/src/org/apache/xalan/xsltc/compiler/DecimalFormatting.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/DecimalFormatting.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/DecimalFormatting.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/DecimalFormatting.java
diff --git a/src/org/apache/xalan/xsltc/compiler/DocumentCall.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/DocumentCall.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/DocumentCall.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/DocumentCall.java
diff --git a/src/org/apache/xalan/xsltc/compiler/ElementAvailableCall.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/ElementAvailableCall.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/ElementAvailableCall.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/ElementAvailableCall.java
diff --git a/src/org/apache/xalan/xsltc/compiler/EqualityExpr.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/EqualityExpr.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/EqualityExpr.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/EqualityExpr.java
diff --git a/src/org/apache/xalan/xsltc/compiler/Expression.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/Expression.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/Expression.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/Expression.java
diff --git a/src/org/apache/xalan/xsltc/compiler/Fallback.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/Fallback.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/Fallback.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/Fallback.java
diff --git a/src/org/apache/xalan/xsltc/compiler/FilterExpr.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/FilterExpr.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/FilterExpr.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/FilterExpr.java
diff --git a/src/org/apache/xalan/xsltc/compiler/FilterParentPath.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/FilterParentPath.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/FilterParentPath.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/FilterParentPath.java
diff --git a/src/org/apache/xalan/xsltc/compiler/FilteredAbsoluteLocationPath.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/FilteredAbsoluteLocationPath.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/FilteredAbsoluteLocationPath.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/FilteredAbsoluteLocationPath.java
diff --git a/src/org/apache/xalan/xsltc/compiler/FloorCall.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/FloorCall.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/FloorCall.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/FloorCall.java
diff --git a/src/org/apache/xalan/xsltc/compiler/FlowList.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/FlowList.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/FlowList.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/FlowList.java
diff --git a/src/org/apache/xalan/xsltc/compiler/ForEach.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/ForEach.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/ForEach.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/ForEach.java
diff --git a/src/org/apache/xalan/xsltc/compiler/FormatNumberCall.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/FormatNumberCall.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/FormatNumberCall.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/FormatNumberCall.java
diff --git a/src/org/apache/xalan/xsltc/compiler/FunctionAvailableCall.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/FunctionAvailableCall.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/FunctionAvailableCall.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/FunctionAvailableCall.java
diff --git a/src/org/apache/xalan/xsltc/compiler/FunctionCall.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/FunctionCall.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/FunctionCall.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/FunctionCall.java
diff --git a/src/org/apache/xalan/xsltc/compiler/GenerateIdCall.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/GenerateIdCall.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/GenerateIdCall.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/GenerateIdCall.java
diff --git a/src/org/apache/xalan/xsltc/compiler/IdKeyPattern.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/IdKeyPattern.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/IdKeyPattern.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/IdKeyPattern.java
diff --git a/src/org/apache/xalan/xsltc/compiler/IdPattern.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/IdPattern.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/IdPattern.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/IdPattern.java
diff --git a/src/org/apache/xalan/xsltc/compiler/If.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/If.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/If.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/If.java
diff --git a/src/org/apache/xalan/xsltc/compiler/IllegalCharException.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/IllegalCharException.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/IllegalCharException.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/IllegalCharException.java
diff --git a/src/org/apache/xalan/xsltc/compiler/Import.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/Import.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/Import.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/Import.java
diff --git a/src/org/apache/xalan/xsltc/compiler/Include.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/Include.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/Include.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/Include.java
diff --git a/src/org/apache/xalan/xsltc/compiler/Instruction.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/Instruction.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/Instruction.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/Instruction.java
diff --git a/src/org/apache/xalan/xsltc/compiler/IntExpr.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/IntExpr.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/IntExpr.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/IntExpr.java
diff --git a/src/org/apache/xalan/xsltc/compiler/Key.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/Key.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/Key.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/Key.java
diff --git a/src/org/apache/xalan/xsltc/compiler/KeyCall.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/KeyCall.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/KeyCall.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/KeyCall.java
diff --git a/src/org/apache/xalan/xsltc/compiler/KeyPattern.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/KeyPattern.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/KeyPattern.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/KeyPattern.java
diff --git a/src/org/apache/xalan/xsltc/compiler/LangCall.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/LangCall.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/LangCall.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/LangCall.java
diff --git a/src/org/apache/xalan/xsltc/compiler/LastCall.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/LastCall.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/LastCall.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/LastCall.java
diff --git a/src/org/apache/xalan/xsltc/compiler/LiteralAttribute.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/LiteralAttribute.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/LiteralAttribute.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/LiteralAttribute.java
diff --git a/src/org/apache/xalan/xsltc/compiler/LiteralElement.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/LiteralElement.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/LiteralElement.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/LiteralElement.java
diff --git a/src/org/apache/xalan/xsltc/compiler/LiteralExpr.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/LiteralExpr.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/LiteralExpr.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/LiteralExpr.java
diff --git a/src/org/apache/xalan/xsltc/compiler/LocalNameCall.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/LocalNameCall.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/LocalNameCall.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/LocalNameCall.java
diff --git a/src/org/apache/xalan/xsltc/compiler/LocationPathPattern.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/LocationPathPattern.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/LocationPathPattern.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/LocationPathPattern.java
diff --git a/src/org/apache/xalan/xsltc/compiler/LogicalExpr.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/LogicalExpr.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/LogicalExpr.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/LogicalExpr.java
diff --git a/src/org/apache/xalan/xsltc/compiler/Makefile.inc b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/Makefile.inc
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/Makefile.inc
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/Makefile.inc
diff --git a/src/org/apache/xalan/xsltc/compiler/Message.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/Message.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/Message.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/Message.java
diff --git a/src/org/apache/xalan/xsltc/compiler/Mode.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/Mode.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/Mode.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/Mode.java
diff --git a/src/org/apache/xalan/xsltc/compiler/NameBase.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/NameBase.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/NameBase.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/NameBase.java
diff --git a/src/org/apache/xalan/xsltc/compiler/NameCall.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/NameCall.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/NameCall.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/NameCall.java
diff --git a/src/org/apache/xalan/xsltc/compiler/NamespaceAlias.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/NamespaceAlias.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/NamespaceAlias.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/NamespaceAlias.java
diff --git a/src/org/apache/xalan/xsltc/compiler/NamespaceUriCall.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/NamespaceUriCall.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/NamespaceUriCall.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/NamespaceUriCall.java
diff --git a/src/org/apache/xalan/xsltc/compiler/NodeTest.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/NodeTest.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/NodeTest.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/NodeTest.java
diff --git a/src/org/apache/xalan/xsltc/compiler/NotCall.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/NotCall.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/NotCall.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/NotCall.java
diff --git a/src/org/apache/xalan/xsltc/compiler/Number.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/Number.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/Number.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/Number.java
diff --git a/src/org/apache/xalan/xsltc/compiler/NumberCall.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/NumberCall.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/NumberCall.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/NumberCall.java
diff --git a/src/org/apache/xalan/xsltc/compiler/ObjectFactory.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/ObjectFactory.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/ObjectFactory.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/ObjectFactory.java
diff --git a/src/org/apache/xalan/xsltc/compiler/Otherwise.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/Otherwise.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/Otherwise.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/Otherwise.java
diff --git a/src/org/apache/xalan/xsltc/compiler/Output.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/Output.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/Output.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/Output.java
diff --git a/src/org/apache/xalan/xsltc/compiler/Param.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/Param.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/Param.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/Param.java
diff --git a/src/org/apache/xalan/xsltc/compiler/ParameterRef.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/ParameterRef.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/ParameterRef.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/ParameterRef.java
diff --git a/src/org/apache/xalan/xsltc/compiler/ParentLocationPath.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/ParentLocationPath.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/ParentLocationPath.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/ParentLocationPath.java
diff --git a/src/org/apache/xalan/xsltc/compiler/ParentPattern.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/ParentPattern.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/ParentPattern.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/ParentPattern.java
diff --git a/src/org/apache/xalan/xsltc/compiler/Parser.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/Parser.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/Parser.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/Parser.java
diff --git a/src/org/apache/xalan/xsltc/compiler/Pattern.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/Pattern.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/Pattern.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/Pattern.java
diff --git a/src/org/apache/xalan/xsltc/compiler/PositionCall.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/PositionCall.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/PositionCall.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/PositionCall.java
diff --git a/src/org/apache/xalan/xsltc/compiler/Predicate.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/Predicate.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/Predicate.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/Predicate.java
diff --git a/src/org/apache/xalan/xsltc/compiler/ProcessingInstruction.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/ProcessingInstruction.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/ProcessingInstruction.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/ProcessingInstruction.java
diff --git a/src/org/apache/xalan/xsltc/compiler/ProcessingInstructionPattern.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/ProcessingInstructionPattern.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/ProcessingInstructionPattern.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/ProcessingInstructionPattern.java
diff --git a/src/org/apache/xalan/xsltc/compiler/QName.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/QName.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/QName.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/QName.java
diff --git a/src/org/apache/xalan/xsltc/compiler/RealExpr.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/RealExpr.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/RealExpr.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/RealExpr.java
diff --git a/src/org/apache/xalan/xsltc/compiler/RelationalExpr.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/RelationalExpr.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/RelationalExpr.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/RelationalExpr.java
diff --git a/src/org/apache/xalan/xsltc/compiler/RelativeLocationPath.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/RelativeLocationPath.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/RelativeLocationPath.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/RelativeLocationPath.java
diff --git a/src/org/apache/xalan/xsltc/compiler/RelativePathPattern.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/RelativePathPattern.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/RelativePathPattern.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/RelativePathPattern.java
diff --git a/src/org/apache/xalan/xsltc/compiler/RoundCall.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/RoundCall.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/RoundCall.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/RoundCall.java
diff --git a/src/org/apache/xalan/xsltc/compiler/SecuritySupport.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/SecuritySupport.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/SecuritySupport.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/SecuritySupport.java
diff --git a/src/org/apache/xalan/xsltc/compiler/SimpleAttributeValue.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/SimpleAttributeValue.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/SimpleAttributeValue.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/SimpleAttributeValue.java
diff --git a/src/org/apache/xalan/xsltc/compiler/Sort.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/Sort.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/Sort.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/Sort.java
diff --git a/src/org/apache/xalan/xsltc/compiler/SourceLoader.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/SourceLoader.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/SourceLoader.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/SourceLoader.java
diff --git a/src/org/apache/xalan/xsltc/compiler/StartsWithCall.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/StartsWithCall.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/StartsWithCall.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/StartsWithCall.java
diff --git a/src/org/apache/xalan/xsltc/compiler/Step.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/Step.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/Step.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/Step.java
diff --git a/src/org/apache/xalan/xsltc/compiler/StepPattern.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/StepPattern.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/StepPattern.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/StepPattern.java
diff --git a/src/org/apache/xalan/xsltc/compiler/StringCall.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/StringCall.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/StringCall.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/StringCall.java
diff --git a/src/org/apache/xalan/xsltc/compiler/StringLengthCall.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/StringLengthCall.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/StringLengthCall.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/StringLengthCall.java
diff --git a/src/org/apache/xalan/xsltc/compiler/Stylesheet.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/Stylesheet.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/Stylesheet.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/Stylesheet.java
diff --git a/src/org/apache/xalan/xsltc/compiler/SymbolTable.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/SymbolTable.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/SymbolTable.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/SymbolTable.java
diff --git a/src/org/apache/xalan/xsltc/compiler/SyntaxTreeNode.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/SyntaxTreeNode.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/SyntaxTreeNode.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/SyntaxTreeNode.java
diff --git a/src/org/apache/xalan/xsltc/compiler/Template.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/Template.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/Template.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/Template.java
diff --git a/src/org/apache/xalan/xsltc/compiler/TestSeq.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/TestSeq.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/TestSeq.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/TestSeq.java
diff --git a/src/org/apache/xalan/xsltc/compiler/Text.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/Text.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/Text.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/Text.java
diff --git a/src/org/apache/xalan/xsltc/compiler/TopLevelElement.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/TopLevelElement.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/TopLevelElement.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/TopLevelElement.java
diff --git a/src/org/apache/xalan/xsltc/compiler/TransletOutput.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/TransletOutput.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/TransletOutput.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/TransletOutput.java
diff --git a/src/org/apache/xalan/xsltc/compiler/UnaryOpExpr.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/UnaryOpExpr.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/UnaryOpExpr.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/UnaryOpExpr.java
diff --git a/src/org/apache/xalan/xsltc/compiler/UnionPathExpr.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/UnionPathExpr.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/UnionPathExpr.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/UnionPathExpr.java
diff --git a/src/org/apache/xalan/xsltc/compiler/UnparsedEntityUriCall.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/UnparsedEntityUriCall.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/UnparsedEntityUriCall.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/UnparsedEntityUriCall.java
diff --git a/src/org/apache/xalan/xsltc/compiler/UnresolvedRef.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/UnresolvedRef.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/UnresolvedRef.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/UnresolvedRef.java
diff --git a/src/org/apache/xalan/xsltc/compiler/UnsupportedElement.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/UnsupportedElement.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/UnsupportedElement.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/UnsupportedElement.java
diff --git a/src/org/apache/xalan/xsltc/compiler/UseAttributeSets.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/UseAttributeSets.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/UseAttributeSets.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/UseAttributeSets.java
diff --git a/src/org/apache/xalan/xsltc/compiler/ValueOf.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/ValueOf.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/ValueOf.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/ValueOf.java
diff --git a/src/org/apache/xalan/xsltc/compiler/Variable.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/Variable.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/Variable.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/Variable.java
diff --git a/src/org/apache/xalan/xsltc/compiler/VariableBase.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/VariableBase.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/VariableBase.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/VariableBase.java
diff --git a/src/org/apache/xalan/xsltc/compiler/VariableRef.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/VariableRef.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/VariableRef.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/VariableRef.java
diff --git a/src/org/apache/xalan/xsltc/compiler/VariableRefBase.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/VariableRefBase.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/VariableRefBase.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/VariableRefBase.java
diff --git a/src/org/apache/xalan/xsltc/compiler/When.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/When.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/When.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/When.java
diff --git a/src/org/apache/xalan/xsltc/compiler/Whitespace.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/Whitespace.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/Whitespace.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/Whitespace.java
diff --git a/src/org/apache/xalan/xsltc/compiler/WithParam.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/WithParam.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/WithParam.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/WithParam.java
diff --git a/src/org/apache/xalan/xsltc/compiler/XSLTC.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/XSLTC.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/XSLTC.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/XSLTC.java
diff --git a/src/org/apache/xalan/xsltc/compiler/XslAttribute.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/XslAttribute.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/XslAttribute.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/XslAttribute.java
diff --git a/src/org/apache/xalan/xsltc/compiler/XslElement.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/XslElement.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/XslElement.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/XslElement.java
diff --git a/src/org/apache/xalan/xsltc/compiler/util/AttributeSetMethodGenerator.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/AttributeSetMethodGenerator.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/util/AttributeSetMethodGenerator.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/AttributeSetMethodGenerator.java
diff --git a/src/org/apache/xalan/xsltc/compiler/util/BooleanType.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/BooleanType.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/util/BooleanType.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/BooleanType.java
diff --git a/src/org/apache/xalan/xsltc/compiler/util/ClassGenerator.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/ClassGenerator.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/util/ClassGenerator.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/ClassGenerator.java
diff --git a/src/org/apache/xalan/xsltc/compiler/util/CompareGenerator.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/CompareGenerator.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/util/CompareGenerator.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/CompareGenerator.java
diff --git a/src/org/apache/xalan/xsltc/compiler/util/ErrorMessages.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/ErrorMessages.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/util/ErrorMessages.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/ErrorMessages.java
diff --git a/src/org/apache/xalan/xsltc/compiler/util/ErrorMessages_ca.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/ErrorMessages_ca.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/util/ErrorMessages_ca.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/ErrorMessages_ca.java
diff --git a/src/org/apache/xalan/xsltc/compiler/util/ErrorMessages_cs.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/ErrorMessages_cs.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/util/ErrorMessages_cs.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/ErrorMessages_cs.java
diff --git a/src/org/apache/xalan/xsltc/compiler/util/ErrorMessages_de.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/ErrorMessages_de.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/util/ErrorMessages_de.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/ErrorMessages_de.java
diff --git a/src/org/apache/xalan/xsltc/compiler/util/ErrorMessages_es.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/ErrorMessages_es.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/util/ErrorMessages_es.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/ErrorMessages_es.java
diff --git a/src/org/apache/xalan/xsltc/compiler/util/ErrorMessages_fr.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/ErrorMessages_fr.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/util/ErrorMessages_fr.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/ErrorMessages_fr.java
diff --git a/src/org/apache/xalan/xsltc/compiler/util/ErrorMessages_hu.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/ErrorMessages_hu.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/util/ErrorMessages_hu.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/ErrorMessages_hu.java
diff --git a/src/org/apache/xalan/xsltc/compiler/util/ErrorMessages_it.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/ErrorMessages_it.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/util/ErrorMessages_it.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/ErrorMessages_it.java
diff --git a/src/org/apache/xalan/xsltc/compiler/util/ErrorMessages_ja.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/ErrorMessages_ja.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/util/ErrorMessages_ja.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/ErrorMessages_ja.java
diff --git a/src/org/apache/xalan/xsltc/compiler/util/ErrorMessages_ko.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/ErrorMessages_ko.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/util/ErrorMessages_ko.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/ErrorMessages_ko.java
diff --git a/src/org/apache/xalan/xsltc/compiler/util/ErrorMessages_no.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/ErrorMessages_no.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/util/ErrorMessages_no.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/ErrorMessages_no.java
diff --git a/src/org/apache/xalan/xsltc/compiler/util/ErrorMessages_pl.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/ErrorMessages_pl.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/util/ErrorMessages_pl.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/ErrorMessages_pl.java
diff --git a/src/org/apache/xalan/xsltc/compiler/util/ErrorMessages_pt_BR.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/ErrorMessages_pt_BR.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/util/ErrorMessages_pt_BR.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/ErrorMessages_pt_BR.java
diff --git a/src/org/apache/xalan/xsltc/compiler/util/ErrorMessages_ru.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/ErrorMessages_ru.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/util/ErrorMessages_ru.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/ErrorMessages_ru.java
diff --git a/src/org/apache/xalan/xsltc/compiler/util/ErrorMessages_sk.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/ErrorMessages_sk.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/util/ErrorMessages_sk.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/ErrorMessages_sk.java
diff --git a/src/org/apache/xalan/xsltc/compiler/util/ErrorMessages_sl.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/ErrorMessages_sl.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/util/ErrorMessages_sl.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/ErrorMessages_sl.java
diff --git a/src/org/apache/xalan/xsltc/compiler/util/ErrorMessages_tr.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/ErrorMessages_tr.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/util/ErrorMessages_tr.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/ErrorMessages_tr.java
diff --git a/src/org/apache/xalan/xsltc/compiler/util/ErrorMessages_zh.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/ErrorMessages_zh.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/util/ErrorMessages_zh.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/ErrorMessages_zh.java
diff --git a/src/org/apache/xalan/xsltc/compiler/util/ErrorMessages_zh_TW.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/ErrorMessages_zh_TW.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/util/ErrorMessages_zh_TW.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/ErrorMessages_zh_TW.java
diff --git a/src/org/apache/xalan/xsltc/compiler/util/ErrorMsg.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/ErrorMsg.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/util/ErrorMsg.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/ErrorMsg.java
diff --git a/src/org/apache/xalan/xsltc/compiler/util/FilterGenerator.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/FilterGenerator.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/util/FilterGenerator.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/FilterGenerator.java
diff --git a/src/org/apache/xalan/xsltc/compiler/util/IntType.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/IntType.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/util/IntType.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/IntType.java
diff --git a/src/org/apache/xalan/xsltc/compiler/util/InternalError.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/InternalError.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/util/InternalError.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/InternalError.java
diff --git a/src/org/apache/xalan/xsltc/compiler/util/MarkerInstruction.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/MarkerInstruction.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/util/MarkerInstruction.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/MarkerInstruction.java
diff --git a/src/org/apache/xalan/xsltc/compiler/util/MatchGenerator.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/MatchGenerator.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/util/MatchGenerator.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/MatchGenerator.java
diff --git a/src/org/apache/xalan/xsltc/compiler/util/MethodGenerator.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/MethodGenerator.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/util/MethodGenerator.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/MethodGenerator.java
diff --git a/src/org/apache/xalan/xsltc/compiler/util/MethodType.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/MethodType.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/util/MethodType.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/MethodType.java
diff --git a/src/org/apache/xalan/xsltc/compiler/util/MultiHashtable.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/MultiHashtable.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/util/MultiHashtable.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/MultiHashtable.java
diff --git a/src/org/apache/xalan/xsltc/compiler/util/NamedMethodGenerator.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/NamedMethodGenerator.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/util/NamedMethodGenerator.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/NamedMethodGenerator.java
diff --git a/src/org/apache/xalan/xsltc/compiler/util/NodeCounterGenerator.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/NodeCounterGenerator.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/util/NodeCounterGenerator.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/NodeCounterGenerator.java
diff --git a/src/org/apache/xalan/xsltc/compiler/util/NodeSetType.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/NodeSetType.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/util/NodeSetType.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/NodeSetType.java
diff --git a/src/org/apache/xalan/xsltc/compiler/util/NodeSortRecordFactGenerator.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/NodeSortRecordFactGenerator.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/util/NodeSortRecordFactGenerator.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/NodeSortRecordFactGenerator.java
diff --git a/src/org/apache/xalan/xsltc/compiler/util/NodeSortRecordGenerator.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/NodeSortRecordGenerator.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/util/NodeSortRecordGenerator.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/NodeSortRecordGenerator.java
diff --git a/src/org/apache/xalan/xsltc/compiler/util/NodeType.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/NodeType.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/util/NodeType.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/NodeType.java
diff --git a/src/org/apache/xalan/xsltc/compiler/util/NumberType.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/NumberType.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/util/NumberType.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/NumberType.java
diff --git a/src/org/apache/xalan/xsltc/compiler/util/ObjectFactory.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/ObjectFactory.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/util/ObjectFactory.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/ObjectFactory.java
diff --git a/src/org/apache/xalan/xsltc/compiler/util/ObjectType.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/ObjectType.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/util/ObjectType.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/ObjectType.java
diff --git a/src/org/apache/xalan/xsltc/compiler/util/OutlineableChunkEnd.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/OutlineableChunkEnd.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/util/OutlineableChunkEnd.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/OutlineableChunkEnd.java
diff --git a/src/org/apache/xalan/xsltc/compiler/util/OutlineableChunkStart.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/OutlineableChunkStart.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/util/OutlineableChunkStart.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/OutlineableChunkStart.java
diff --git a/src/org/apache/xalan/xsltc/compiler/util/RealType.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/RealType.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/util/RealType.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/RealType.java
diff --git a/src/org/apache/xalan/xsltc/compiler/util/ReferenceType.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/ReferenceType.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/util/ReferenceType.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/ReferenceType.java
diff --git a/src/org/apache/xalan/xsltc/compiler/util/ResultTreeType.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/ResultTreeType.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/util/ResultTreeType.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/ResultTreeType.java
diff --git a/src/org/apache/xalan/xsltc/compiler/util/RtMethodGenerator.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/RtMethodGenerator.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/util/RtMethodGenerator.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/RtMethodGenerator.java
diff --git a/src/org/apache/xalan/xsltc/compiler/util/SecuritySupport.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/SecuritySupport.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/util/SecuritySupport.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/SecuritySupport.java
diff --git a/src/org/apache/xalan/xsltc/compiler/util/SlotAllocator.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/SlotAllocator.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/util/SlotAllocator.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/SlotAllocator.java
diff --git a/src/org/apache/xalan/xsltc/compiler/util/StringStack.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/StringStack.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/util/StringStack.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/StringStack.java
diff --git a/src/org/apache/xalan/xsltc/compiler/util/StringType.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/StringType.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/util/StringType.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/StringType.java
diff --git a/src/org/apache/xalan/xsltc/compiler/util/TestGenerator.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/TestGenerator.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/util/TestGenerator.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/TestGenerator.java
diff --git a/src/org/apache/xalan/xsltc/compiler/util/Type.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/Type.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/util/Type.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/Type.java
diff --git a/src/org/apache/xalan/xsltc/compiler/util/TypeCheckError.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/TypeCheckError.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/util/TypeCheckError.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/TypeCheckError.java
diff --git a/src/org/apache/xalan/xsltc/compiler/util/Util.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/Util.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/util/Util.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/Util.java
diff --git a/src/org/apache/xalan/xsltc/compiler/util/VoidType.java b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/VoidType.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/util/VoidType.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/util/VoidType.java
diff --git a/src/org/apache/xalan/xsltc/compiler/xpath.cup b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/xpath.cup
similarity index 100%
rename from src/org/apache/xalan/xsltc/compiler/xpath.cup
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/xpath.cup
diff --git a/src/org/apache/xalan/xsltc/compiler/xpath.lex b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/xpath.lex
similarity index 78%
rename from src/org/apache/xalan/xsltc/compiler/xpath.lex
rename to xalan/src/main/java/org/apache/xalan/xsltc/compiler/xpath.lex
index e37194154..7008db280 100644
--- a/src/org/apache/xalan/xsltc/compiler/xpath.lex
+++ b/xalan/src/main/java/org/apache/xalan/xsltc/compiler/xpath.lex
@@ -14,6 +14,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
+/* Modified from Jlex manual lookahead to JFlex RE LA */
/*
* $Id$
*/
@@ -22,7 +23,7 @@
* @author Jacek Ambroziak
* @author Santiago Pericas-Geertsen
* @author Morten Jorgensen
- *
+ * @author Joseph Kesselman
*/
package org.apache.xalan.xsltc.compiler;
@@ -46,29 +47,10 @@ import java_cup.runtime.Symbol;
}
/**
- * If symbol is not followed by '::' or '(', then treat it as a
+ * Lookahead disambiguation is now handled in the patterns: If
+ * symbol is not followed by '::' or '(', then treat it as a
* name instead of an axis or function (Jira-1912).
- */
- Symbol disambiguateAxisOrFunction(int ss) throws Exception {
- // Peek in the input buffer without changing the internal state
- int index = yy_buffer_index;
-
- // Skip whitespace
- while (index < yy_buffer_read && isWhitespace(yy_buffer[index])) {
- index++;
- }
-
- // If end of buffer, can't disambiguate :(
- if (index >= yy_buffer_read) {
- // Can't disambiguate, so return as symbol
- return new Symbol(ss);
- }
-
- // Return symbol if next token is '::' or '('
- return (yy_buffer[index] == ':' && yy_buffer[index+1] == ':' ||
- yy_buffer[index] == '(') ?
- newSymbol(ss) : newSymbol(sym.QNAME, yytext());
- }
+ */
/**
* If symbol is first token or if it follows any of the operators
@@ -189,6 +171,8 @@ HighSurrogate=[\uD800-\uDBFF]
LowSurrogate=[\uDC00-\uDFFF]
+%state COMMENT
+
%%
"*" { return disambiguateStar(); }
@@ -210,32 +194,66 @@ LowSurrogate=[\uDC00-\uDFFF]
">" { return newSymbol(sym.GT); }
"<=" { return newSymbol(sym.LE); }
">=" { return newSymbol(sym.GE); }
-"id" { return disambiguateAxisOrFunction(sym.ID); }
-"key" { return disambiguateAxisOrFunction(sym.KEY); }
-"text()" { return newSymbol(sym.TEXT); }
-"text"+[ \t\r\n\f]+"()" { return newSymbol(sym.TEXT); }
-"node()" { return newSymbol(sym.NODE); }
-"node"+[ \t\r\n\f]+"()" { return newSymbol(sym.NODE); }
-"comment()" { return newSymbol(sym.COMMENT); }
-"comment"+[ \t\r\n\f]+"()" { return newSymbol(sym.COMMENT); }
-"processing-instruction" { return disambiguateAxisOrFunction(sym.PIPARAM); }
-"processing-instruction()" { return newSymbol(sym.PI); }
-"processing-instruction"+[ \t\r\n\f]+"()" { return newSymbol(sym.PI); }
-"or" { return disambiguateOperator(sym.OR); }
-"and" { return disambiguateOperator(sym.AND); }
-"child" { return disambiguateAxisOrFunction(sym.CHILD); }
-"attribute" { return disambiguateAxisOrFunction(sym.ATTRIBUTE); }
-"ancestor" { return disambiguateAxisOrFunction(sym.ANCESTOR); }
-"ancestor-or-self" { return disambiguateAxisOrFunction(sym.ANCESTORORSELF); }
-"descendant" { return disambiguateAxisOrFunction(sym.DESCENDANT); }
-"descendant-or-self" { return disambiguateAxisOrFunction(sym.DESCENDANTORSELF); }
-"following" { return disambiguateAxisOrFunction(sym.FOLLOWING); }
-"following-sibling" { return disambiguateAxisOrFunction(sym.FOLLOWINGSIBLING); }
-"namespace" { return disambiguateAxisOrFunction(sym.NAMESPACE); }
-"parent" { return disambiguateAxisOrFunction(sym.PARENT); }
-"preceding" { return disambiguateAxisOrFunction(sym.PRECEDING); }
-"preceding-sibling" { return disambiguateAxisOrFunction(sym.PRECEDINGSIBLING); }
-"self" { return disambiguateAxisOrFunction(sym.SELF); }
+
+"id"/\s*"(" { return newSymbol(sym.ID); }
+"id"/\s*"::" { return newSymbol(sym.ID); }
+
+"key"/\s*"(" { return newSymbol(sym.KEY); }
+"key"/\s*"::" { return newSymbol(sym.KEY); }
+
+"text"\s*"()" { return newSymbol(sym.TEXT); }
+"node"\s*"()" { return newSymbol(sym.NODE); }
+"comment"\s*"()" { return newSymbol(sym.COMMENT); }
+
+"processing-instruction"\s*"()" { return newSymbol(sym.PI); }
+/* NOTE: This may be redundent with next rule. */
+"processing-instruction"/\s*"::" { return newSymbol(sym.PIPARAM); }
+/* NOTE PI's departure from usual fallthrough (QNAME) */
+"processing-instruction" { return newSymbol(sym.PIPARAM); }
+
+"or" { return disambiguateOperator(sym.OR); }
+"and" { return disambiguateOperator(sym.AND); }
+
+"child"/\s*"(" { return newSymbol(sym.CHILD); }
+"child"/\s*"::" { return newSymbol(sym.CHILD); }
+
+
+"attribute"/\s*"::" { return newSymbol(sym.ATTRIBUTE); }
+"attribute"/\s*"(" { return newSymbol(sym.ATTRIBUTE); }
+
+"ancestor"/\s*"::" { return newSymbol(sym.ANCESTOR); }
+"ancestor"/\s*"(" { return newSymbol(sym.ANCESTOR); }
+
+"ancestor-or-self"/\s*"::" { return newSymbol(sym.ANCESTORORSELF); }
+"ancestor-or-self"/\s*"(" { return newSymbol(sym.ANCESTORORSELF); }
+
+"descendant"/\s*"::" { return newSymbol(sym.DESCENDANT); }
+"descendant"/\s*"(" { return newSymbol(sym.DESCENDANT); }
+
+"descendant-or-self"/\s*"::" { return newSymbol(sym.DESCENDANTORSELF); }
+"descendant-or-self"/\s*"(" { return newSymbol(sym.DESCENDANTORSELF); }
+
+"following"/\s*"::" { return newSymbol(sym.FOLLOWING); }
+"following"/\s*"(" { return newSymbol(sym.FOLLOWING); }
+
+"following-sibling"/\s*"::" { return newSymbol(sym.FOLLOWINGSIBLING); }
+"following-sibling"/\s*"(" { return newSymbol(sym.FOLLOWINGSIBLING); }
+
+"namespace"/\s*"::" { return newSymbol(sym.NAMESPACE); }
+"namespace"/\s*"(" { return newSymbol(sym.NAMESPACE); }
+
+"parent"/\s*"::" { return newSymbol(sym.PARENT); }
+"parent"/\s*"(" { return newSymbol(sym.PARENT); }
+
+"preceding"/\s*"::" { return newSymbol(sym.PRECEDING); }
+"preceding"/\s*"(" { return newSymbol(sym.PRECEDING); }
+
+"preceding-sibling"/\s*"::" { return newSymbol(sym.PRECEDINGSIBLING); }
+"preceding-sibling"/\s*"(" { return newSymbol(sym.PRECEDINGSIBLING); }
+
+"self"/\s*"::" { return newSymbol(sym.SELF); }
+"self"/\s*"(" { return newSymbol(sym.SELF); }
+
"[" { return newSymbol(sym.LBRACK); }
"]" { return newSymbol(sym.RBRACK); }
"(" { return newSymbol(sym.LPAREN); }
@@ -253,5 +271,5 @@ LowSurrogate=[\uDC00-\uDFFF]
({NCName}":")?{NCName} { return newSymbol(sym.QNAME, yytext()); }
({NCName}":")?"*" { return newSymbol(sym.QNAME, yytext()); }
({NCName}":")?"@*" { return newSymbol(sym.QNAME, yytext()); }
-[ \t\r\n\f] { /* ignore white space. */ }
+\s { /* ignore white space. */ }
. { throw new Exception(yytext()); }
diff --git a/src/org/apache/xalan/xsltc/dom/AbsoluteIterator.java b/xalan/src/main/java/org/apache/xalan/xsltc/dom/AbsoluteIterator.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/dom/AbsoluteIterator.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/dom/AbsoluteIterator.java
diff --git a/src/org/apache/xalan/xsltc/dom/AdaptiveResultTreeImpl.java b/xalan/src/main/java/org/apache/xalan/xsltc/dom/AdaptiveResultTreeImpl.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/dom/AdaptiveResultTreeImpl.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/dom/AdaptiveResultTreeImpl.java
diff --git a/src/org/apache/xalan/xsltc/dom/AnyNodeCounter.java b/xalan/src/main/java/org/apache/xalan/xsltc/dom/AnyNodeCounter.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/dom/AnyNodeCounter.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/dom/AnyNodeCounter.java
diff --git a/src/org/apache/xalan/xsltc/dom/ArrayNodeListIterator.java b/xalan/src/main/java/org/apache/xalan/xsltc/dom/ArrayNodeListIterator.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/dom/ArrayNodeListIterator.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/dom/ArrayNodeListIterator.java
diff --git a/src/org/apache/xalan/xsltc/dom/BitArray.java b/xalan/src/main/java/org/apache/xalan/xsltc/dom/BitArray.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/dom/BitArray.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/dom/BitArray.java
diff --git a/src/org/apache/xalan/xsltc/dom/CachedNodeListIterator.java b/xalan/src/main/java/org/apache/xalan/xsltc/dom/CachedNodeListIterator.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/dom/CachedNodeListIterator.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/dom/CachedNodeListIterator.java
diff --git a/src/org/apache/xalan/xsltc/dom/ClonedNodeListIterator.java b/xalan/src/main/java/org/apache/xalan/xsltc/dom/ClonedNodeListIterator.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/dom/ClonedNodeListIterator.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/dom/ClonedNodeListIterator.java
diff --git a/src/org/apache/xalan/xsltc/dom/CollatorFactoryBase.java b/xalan/src/main/java/org/apache/xalan/xsltc/dom/CollatorFactoryBase.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/dom/CollatorFactoryBase.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/dom/CollatorFactoryBase.java
diff --git a/src/org/apache/xalan/xsltc/dom/CurrentNodeListFilter.java b/xalan/src/main/java/org/apache/xalan/xsltc/dom/CurrentNodeListFilter.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/dom/CurrentNodeListFilter.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/dom/CurrentNodeListFilter.java
diff --git a/src/org/apache/xalan/xsltc/dom/CurrentNodeListIterator.java b/xalan/src/main/java/org/apache/xalan/xsltc/dom/CurrentNodeListIterator.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/dom/CurrentNodeListIterator.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/dom/CurrentNodeListIterator.java
diff --git a/src/org/apache/xalan/xsltc/dom/DOMAdapter.java b/xalan/src/main/java/org/apache/xalan/xsltc/dom/DOMAdapter.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/dom/DOMAdapter.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/dom/DOMAdapter.java
diff --git a/src/org/apache/xalan/xsltc/dom/DOMBuilder.java b/xalan/src/main/java/org/apache/xalan/xsltc/dom/DOMBuilder.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/dom/DOMBuilder.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/dom/DOMBuilder.java
diff --git a/src/org/apache/xalan/xsltc/dom/DOMWSFilter.java b/xalan/src/main/java/org/apache/xalan/xsltc/dom/DOMWSFilter.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/dom/DOMWSFilter.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/dom/DOMWSFilter.java
diff --git a/src/org/apache/xalan/xsltc/dom/DocumentCache.java b/xalan/src/main/java/org/apache/xalan/xsltc/dom/DocumentCache.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/dom/DocumentCache.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/dom/DocumentCache.java
diff --git a/src/org/apache/xalan/xsltc/dom/DupFilterIterator.java b/xalan/src/main/java/org/apache/xalan/xsltc/dom/DupFilterIterator.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/dom/DupFilterIterator.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/dom/DupFilterIterator.java
diff --git a/src/org/apache/xalan/xsltc/dom/EmptyFilter.java b/xalan/src/main/java/org/apache/xalan/xsltc/dom/EmptyFilter.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/dom/EmptyFilter.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/dom/EmptyFilter.java
diff --git a/src/org/apache/xalan/xsltc/dom/ExtendedSAX.java b/xalan/src/main/java/org/apache/xalan/xsltc/dom/ExtendedSAX.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/dom/ExtendedSAX.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/dom/ExtendedSAX.java
diff --git a/src/org/apache/xalan/xsltc/dom/Filter.java b/xalan/src/main/java/org/apache/xalan/xsltc/dom/Filter.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/dom/Filter.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/dom/Filter.java
diff --git a/src/org/apache/xalan/xsltc/dom/FilterIterator.java b/xalan/src/main/java/org/apache/xalan/xsltc/dom/FilterIterator.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/dom/FilterIterator.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/dom/FilterIterator.java
diff --git a/src/org/apache/xalan/xsltc/dom/FilteredStepIterator.java b/xalan/src/main/java/org/apache/xalan/xsltc/dom/FilteredStepIterator.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/dom/FilteredStepIterator.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/dom/FilteredStepIterator.java
diff --git a/src/org/apache/xalan/xsltc/dom/ForwardPositionIterator.java b/xalan/src/main/java/org/apache/xalan/xsltc/dom/ForwardPositionIterator.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/dom/ForwardPositionIterator.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/dom/ForwardPositionIterator.java
diff --git a/src/org/apache/xalan/xsltc/dom/KeyIndex.java b/xalan/src/main/java/org/apache/xalan/xsltc/dom/KeyIndex.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/dom/KeyIndex.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/dom/KeyIndex.java
diff --git a/src/org/apache/xalan/xsltc/dom/LoadDocument.java b/xalan/src/main/java/org/apache/xalan/xsltc/dom/LoadDocument.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/dom/LoadDocument.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/dom/LoadDocument.java
diff --git a/src/org/apache/xalan/xsltc/dom/MatchingIterator.java b/xalan/src/main/java/org/apache/xalan/xsltc/dom/MatchingIterator.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/dom/MatchingIterator.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/dom/MatchingIterator.java
diff --git a/src/org/apache/xalan/xsltc/dom/MultiDOM.java b/xalan/src/main/java/org/apache/xalan/xsltc/dom/MultiDOM.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/dom/MultiDOM.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/dom/MultiDOM.java
diff --git a/src/org/apache/xalan/xsltc/dom/MultiValuedNodeHeapIterator.java b/xalan/src/main/java/org/apache/xalan/xsltc/dom/MultiValuedNodeHeapIterator.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/dom/MultiValuedNodeHeapIterator.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/dom/MultiValuedNodeHeapIterator.java
diff --git a/src/org/apache/xalan/xsltc/dom/MultipleNodeCounter.java b/xalan/src/main/java/org/apache/xalan/xsltc/dom/MultipleNodeCounter.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/dom/MultipleNodeCounter.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/dom/MultipleNodeCounter.java
diff --git a/src/org/apache/xalan/xsltc/dom/NodeCounter.java b/xalan/src/main/java/org/apache/xalan/xsltc/dom/NodeCounter.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/dom/NodeCounter.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/dom/NodeCounter.java
diff --git a/src/org/apache/xalan/xsltc/dom/NodeIteratorBase.java b/xalan/src/main/java/org/apache/xalan/xsltc/dom/NodeIteratorBase.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/dom/NodeIteratorBase.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/dom/NodeIteratorBase.java
diff --git a/src/org/apache/xalan/xsltc/dom/NodeSortRecord.java b/xalan/src/main/java/org/apache/xalan/xsltc/dom/NodeSortRecord.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/dom/NodeSortRecord.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/dom/NodeSortRecord.java
diff --git a/src/org/apache/xalan/xsltc/dom/NodeSortRecordFactory.java b/xalan/src/main/java/org/apache/xalan/xsltc/dom/NodeSortRecordFactory.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/dom/NodeSortRecordFactory.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/dom/NodeSortRecordFactory.java
diff --git a/src/org/apache/xalan/xsltc/dom/NthIterator.java b/xalan/src/main/java/org/apache/xalan/xsltc/dom/NthIterator.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/dom/NthIterator.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/dom/NthIterator.java
diff --git a/src/org/apache/xalan/xsltc/dom/ObjectFactory.java b/xalan/src/main/java/org/apache/xalan/xsltc/dom/ObjectFactory.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/dom/ObjectFactory.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/dom/ObjectFactory.java
diff --git a/src/org/apache/xalan/xsltc/dom/SAXImpl.java b/xalan/src/main/java/org/apache/xalan/xsltc/dom/SAXImpl.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/dom/SAXImpl.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/dom/SAXImpl.java
diff --git a/src/org/apache/xalan/xsltc/dom/SecuritySupport.java b/xalan/src/main/java/org/apache/xalan/xsltc/dom/SecuritySupport.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/dom/SecuritySupport.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/dom/SecuritySupport.java
diff --git a/src/org/apache/xalan/xsltc/dom/SimpleResultTreeImpl.java b/xalan/src/main/java/org/apache/xalan/xsltc/dom/SimpleResultTreeImpl.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/dom/SimpleResultTreeImpl.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/dom/SimpleResultTreeImpl.java
diff --git a/src/org/apache/xalan/xsltc/dom/SingleNodeCounter.java b/xalan/src/main/java/org/apache/xalan/xsltc/dom/SingleNodeCounter.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/dom/SingleNodeCounter.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/dom/SingleNodeCounter.java
diff --git a/src/org/apache/xalan/xsltc/dom/SingletonIterator.java b/xalan/src/main/java/org/apache/xalan/xsltc/dom/SingletonIterator.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/dom/SingletonIterator.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/dom/SingletonIterator.java
diff --git a/src/org/apache/xalan/xsltc/dom/SortSettings.java b/xalan/src/main/java/org/apache/xalan/xsltc/dom/SortSettings.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/dom/SortSettings.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/dom/SortSettings.java
diff --git a/src/org/apache/xalan/xsltc/dom/SortingIterator.java b/xalan/src/main/java/org/apache/xalan/xsltc/dom/SortingIterator.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/dom/SortingIterator.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/dom/SortingIterator.java
diff --git a/src/org/apache/xalan/xsltc/dom/StepIterator.java b/xalan/src/main/java/org/apache/xalan/xsltc/dom/StepIterator.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/dom/StepIterator.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/dom/StepIterator.java
diff --git a/src/org/apache/xalan/xsltc/dom/StripWhitespaceFilter.java b/xalan/src/main/java/org/apache/xalan/xsltc/dom/StripWhitespaceFilter.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/dom/StripWhitespaceFilter.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/dom/StripWhitespaceFilter.java
diff --git a/src/org/apache/xalan/xsltc/dom/UnionIterator.java b/xalan/src/main/java/org/apache/xalan/xsltc/dom/UnionIterator.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/dom/UnionIterator.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/dom/UnionIterator.java
diff --git a/src/org/apache/xalan/xsltc/dom/XSLTCDTMManager.java b/xalan/src/main/java/org/apache/xalan/xsltc/dom/XSLTCDTMManager.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/dom/XSLTCDTMManager.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/dom/XSLTCDTMManager.java
diff --git a/src/org/apache/xalan/xsltc/javax.xml.transform.TransformerFactory b/xalan/src/main/java/org/apache/xalan/xsltc/javax.xml.transform.TransformerFactory
similarity index 100%
rename from src/org/apache/xalan/xsltc/javax.xml.transform.TransformerFactory
rename to xalan/src/main/java/org/apache/xalan/xsltc/javax.xml.transform.TransformerFactory
diff --git a/src/org/apache/xalan/xsltc/runtime/AbstractTranslet.java b/xalan/src/main/java/org/apache/xalan/xsltc/runtime/AbstractTranslet.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/runtime/AbstractTranslet.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/runtime/AbstractTranslet.java
diff --git a/src/org/apache/xalan/xsltc/runtime/AttributeList.java b/xalan/src/main/java/org/apache/xalan/xsltc/runtime/AttributeList.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/runtime/AttributeList.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/runtime/AttributeList.java
diff --git a/src/org/apache/xalan/xsltc/runtime/Attributes.java b/xalan/src/main/java/org/apache/xalan/xsltc/runtime/Attributes.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/runtime/Attributes.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/runtime/Attributes.java
diff --git a/src/org/apache/xalan/xsltc/runtime/BasisLibrary.java b/xalan/src/main/java/org/apache/xalan/xsltc/runtime/BasisLibrary.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/runtime/BasisLibrary.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/runtime/BasisLibrary.java
diff --git a/src/org/apache/xalan/xsltc/runtime/Constants.java b/xalan/src/main/java/org/apache/xalan/xsltc/runtime/Constants.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/runtime/Constants.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/runtime/Constants.java
diff --git a/src/org/apache/xalan/xsltc/runtime/ErrorMessages.java b/xalan/src/main/java/org/apache/xalan/xsltc/runtime/ErrorMessages.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/runtime/ErrorMessages.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/runtime/ErrorMessages.java
diff --git a/src/org/apache/xalan/xsltc/runtime/ErrorMessages_ca.java b/xalan/src/main/java/org/apache/xalan/xsltc/runtime/ErrorMessages_ca.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/runtime/ErrorMessages_ca.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/runtime/ErrorMessages_ca.java
diff --git a/src/org/apache/xalan/xsltc/runtime/ErrorMessages_cs.java b/xalan/src/main/java/org/apache/xalan/xsltc/runtime/ErrorMessages_cs.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/runtime/ErrorMessages_cs.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/runtime/ErrorMessages_cs.java
diff --git a/src/org/apache/xalan/xsltc/runtime/ErrorMessages_de.java b/xalan/src/main/java/org/apache/xalan/xsltc/runtime/ErrorMessages_de.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/runtime/ErrorMessages_de.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/runtime/ErrorMessages_de.java
diff --git a/src/org/apache/xalan/xsltc/runtime/ErrorMessages_es.java b/xalan/src/main/java/org/apache/xalan/xsltc/runtime/ErrorMessages_es.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/runtime/ErrorMessages_es.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/runtime/ErrorMessages_es.java
diff --git a/src/org/apache/xalan/xsltc/runtime/ErrorMessages_fr.java b/xalan/src/main/java/org/apache/xalan/xsltc/runtime/ErrorMessages_fr.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/runtime/ErrorMessages_fr.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/runtime/ErrorMessages_fr.java
diff --git a/src/org/apache/xalan/xsltc/runtime/ErrorMessages_hu.java b/xalan/src/main/java/org/apache/xalan/xsltc/runtime/ErrorMessages_hu.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/runtime/ErrorMessages_hu.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/runtime/ErrorMessages_hu.java
diff --git a/src/org/apache/xalan/xsltc/runtime/ErrorMessages_it.java b/xalan/src/main/java/org/apache/xalan/xsltc/runtime/ErrorMessages_it.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/runtime/ErrorMessages_it.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/runtime/ErrorMessages_it.java
diff --git a/src/org/apache/xalan/xsltc/runtime/ErrorMessages_ja.java b/xalan/src/main/java/org/apache/xalan/xsltc/runtime/ErrorMessages_ja.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/runtime/ErrorMessages_ja.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/runtime/ErrorMessages_ja.java
diff --git a/src/org/apache/xalan/xsltc/runtime/ErrorMessages_ko.java b/xalan/src/main/java/org/apache/xalan/xsltc/runtime/ErrorMessages_ko.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/runtime/ErrorMessages_ko.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/runtime/ErrorMessages_ko.java
diff --git a/src/org/apache/xalan/xsltc/runtime/ErrorMessages_no.java b/xalan/src/main/java/org/apache/xalan/xsltc/runtime/ErrorMessages_no.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/runtime/ErrorMessages_no.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/runtime/ErrorMessages_no.java
diff --git a/src/org/apache/xalan/xsltc/runtime/ErrorMessages_pl.java b/xalan/src/main/java/org/apache/xalan/xsltc/runtime/ErrorMessages_pl.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/runtime/ErrorMessages_pl.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/runtime/ErrorMessages_pl.java
diff --git a/src/org/apache/xalan/xsltc/runtime/ErrorMessages_pt_BR.java b/xalan/src/main/java/org/apache/xalan/xsltc/runtime/ErrorMessages_pt_BR.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/runtime/ErrorMessages_pt_BR.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/runtime/ErrorMessages_pt_BR.java
diff --git a/src/org/apache/xalan/xsltc/runtime/ErrorMessages_ru.java b/xalan/src/main/java/org/apache/xalan/xsltc/runtime/ErrorMessages_ru.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/runtime/ErrorMessages_ru.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/runtime/ErrorMessages_ru.java
diff --git a/src/org/apache/xalan/xsltc/runtime/ErrorMessages_sk.java b/xalan/src/main/java/org/apache/xalan/xsltc/runtime/ErrorMessages_sk.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/runtime/ErrorMessages_sk.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/runtime/ErrorMessages_sk.java
diff --git a/src/org/apache/xalan/xsltc/runtime/ErrorMessages_sl.java b/xalan/src/main/java/org/apache/xalan/xsltc/runtime/ErrorMessages_sl.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/runtime/ErrorMessages_sl.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/runtime/ErrorMessages_sl.java
diff --git a/src/org/apache/xalan/xsltc/runtime/ErrorMessages_tr.java b/xalan/src/main/java/org/apache/xalan/xsltc/runtime/ErrorMessages_tr.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/runtime/ErrorMessages_tr.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/runtime/ErrorMessages_tr.java
diff --git a/src/org/apache/xalan/xsltc/runtime/ErrorMessages_zh.java b/xalan/src/main/java/org/apache/xalan/xsltc/runtime/ErrorMessages_zh.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/runtime/ErrorMessages_zh.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/runtime/ErrorMessages_zh.java
diff --git a/src/org/apache/xalan/xsltc/runtime/ErrorMessages_zh_TW.java b/xalan/src/main/java/org/apache/xalan/xsltc/runtime/ErrorMessages_zh_TW.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/runtime/ErrorMessages_zh_TW.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/runtime/ErrorMessages_zh_TW.java
diff --git a/src/org/apache/xalan/xsltc/runtime/Hashtable.java b/xalan/src/main/java/org/apache/xalan/xsltc/runtime/Hashtable.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/runtime/Hashtable.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/runtime/Hashtable.java
diff --git a/src/org/apache/xalan/xsltc/runtime/InternalRuntimeError.java b/xalan/src/main/java/org/apache/xalan/xsltc/runtime/InternalRuntimeError.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/runtime/InternalRuntimeError.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/runtime/InternalRuntimeError.java
diff --git a/src/org/apache/xalan/xsltc/runtime/MessageHandler.java b/xalan/src/main/java/org/apache/xalan/xsltc/runtime/MessageHandler.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/runtime/MessageHandler.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/runtime/MessageHandler.java
diff --git a/src/org/apache/xalan/xsltc/runtime/Node.java b/xalan/src/main/java/org/apache/xalan/xsltc/runtime/Node.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/runtime/Node.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/runtime/Node.java
diff --git a/src/org/apache/xalan/xsltc/runtime/ObjectFactory.java b/xalan/src/main/java/org/apache/xalan/xsltc/runtime/ObjectFactory.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/runtime/ObjectFactory.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/runtime/ObjectFactory.java
diff --git a/src/org/apache/xalan/xsltc/runtime/Operators.java b/xalan/src/main/java/org/apache/xalan/xsltc/runtime/Operators.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/runtime/Operators.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/runtime/Operators.java
diff --git a/src/org/apache/xalan/xsltc/runtime/Parameter.java b/xalan/src/main/java/org/apache/xalan/xsltc/runtime/Parameter.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/runtime/Parameter.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/runtime/Parameter.java
diff --git a/src/org/apache/xalan/xsltc/runtime/SecuritySupport.java b/xalan/src/main/java/org/apache/xalan/xsltc/runtime/SecuritySupport.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/runtime/SecuritySupport.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/runtime/SecuritySupport.java
diff --git a/src/org/apache/xalan/xsltc/runtime/StringValueHandler.java b/xalan/src/main/java/org/apache/xalan/xsltc/runtime/StringValueHandler.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/runtime/StringValueHandler.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/runtime/StringValueHandler.java
diff --git a/src/org/apache/xalan/xsltc/runtime/output/OutputBuffer.java b/xalan/src/main/java/org/apache/xalan/xsltc/runtime/output/OutputBuffer.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/runtime/output/OutputBuffer.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/runtime/output/OutputBuffer.java
diff --git a/src/org/apache/xalan/xsltc/runtime/output/StringOutputBuffer.java b/xalan/src/main/java/org/apache/xalan/xsltc/runtime/output/StringOutputBuffer.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/runtime/output/StringOutputBuffer.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/runtime/output/StringOutputBuffer.java
diff --git a/src/org/apache/xalan/xsltc/runtime/output/TransletOutputHandlerFactory.java b/xalan/src/main/java/org/apache/xalan/xsltc/runtime/output/TransletOutputHandlerFactory.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/runtime/output/TransletOutputHandlerFactory.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/runtime/output/TransletOutputHandlerFactory.java
diff --git a/src/org/apache/xalan/xsltc/runtime/output/WriterOutputBuffer.java b/xalan/src/main/java/org/apache/xalan/xsltc/runtime/output/WriterOutputBuffer.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/runtime/output/WriterOutputBuffer.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/runtime/output/WriterOutputBuffer.java
diff --git a/src/org/apache/xalan/xsltc/trax/DOM2SAX.java b/xalan/src/main/java/org/apache/xalan/xsltc/trax/DOM2SAX.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/trax/DOM2SAX.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/trax/DOM2SAX.java
diff --git a/src/org/apache/xalan/xsltc/trax/DOM2TO.java b/xalan/src/main/java/org/apache/xalan/xsltc/trax/DOM2TO.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/trax/DOM2TO.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/trax/DOM2TO.java
diff --git a/src/org/apache/xalan/xsltc/trax/ObjectFactory.java b/xalan/src/main/java/org/apache/xalan/xsltc/trax/ObjectFactory.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/trax/ObjectFactory.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/trax/ObjectFactory.java
diff --git a/src/org/apache/xalan/xsltc/trax/OutputSettings.java b/xalan/src/main/java/org/apache/xalan/xsltc/trax/OutputSettings.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/trax/OutputSettings.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/trax/OutputSettings.java
diff --git a/src/org/apache/xalan/xsltc/trax/SAX2DOM.java b/xalan/src/main/java/org/apache/xalan/xsltc/trax/SAX2DOM.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/trax/SAX2DOM.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/trax/SAX2DOM.java
diff --git a/src/org/apache/xalan/xsltc/trax/SecuritySupport.java b/xalan/src/main/java/org/apache/xalan/xsltc/trax/SecuritySupport.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/trax/SecuritySupport.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/trax/SecuritySupport.java
diff --git a/src/org/apache/xalan/xsltc/trax/SmartTransformerFactoryImpl.java b/xalan/src/main/java/org/apache/xalan/xsltc/trax/SmartTransformerFactoryImpl.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/trax/SmartTransformerFactoryImpl.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/trax/SmartTransformerFactoryImpl.java
diff --git a/src/org/apache/xalan/xsltc/trax/TemplatesHandlerImpl.java b/xalan/src/main/java/org/apache/xalan/xsltc/trax/TemplatesHandlerImpl.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/trax/TemplatesHandlerImpl.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/trax/TemplatesHandlerImpl.java
diff --git a/src/org/apache/xalan/xsltc/trax/TemplatesImpl.java b/xalan/src/main/java/org/apache/xalan/xsltc/trax/TemplatesImpl.java
similarity index 99%
rename from src/org/apache/xalan/xsltc/trax/TemplatesImpl.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/trax/TemplatesImpl.java
index 7e4cbcba8..481328ad2 100644
--- a/src/org/apache/xalan/xsltc/trax/TemplatesImpl.java
+++ b/xalan/src/main/java/org/apache/xalan/xsltc/trax/TemplatesImpl.java
@@ -407,4 +407,4 @@ public DOM getStylesheetDOM() {
public void setStylesheetDOM(DOM sdom) {
_sdom.set(sdom);
}
-}
\ No newline at end of file
+}
diff --git a/src/org/apache/xalan/xsltc/trax/TrAXFilter.java b/xalan/src/main/java/org/apache/xalan/xsltc/trax/TrAXFilter.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/trax/TrAXFilter.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/trax/TrAXFilter.java
diff --git a/src/org/apache/xalan/xsltc/trax/TransformerFactoryImpl.java b/xalan/src/main/java/org/apache/xalan/xsltc/trax/TransformerFactoryImpl.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/trax/TransformerFactoryImpl.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/trax/TransformerFactoryImpl.java
diff --git a/src/org/apache/xalan/xsltc/trax/TransformerHandlerImpl.java b/xalan/src/main/java/org/apache/xalan/xsltc/trax/TransformerHandlerImpl.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/trax/TransformerHandlerImpl.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/trax/TransformerHandlerImpl.java
diff --git a/src/org/apache/xalan/xsltc/trax/TransformerImpl.java b/xalan/src/main/java/org/apache/xalan/xsltc/trax/TransformerImpl.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/trax/TransformerImpl.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/trax/TransformerImpl.java
diff --git a/src/org/apache/xalan/xsltc/trax/Util.java b/xalan/src/main/java/org/apache/xalan/xsltc/trax/Util.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/trax/Util.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/trax/Util.java
diff --git a/src/org/apache/xalan/xsltc/trax/XSLTCSource.java b/xalan/src/main/java/org/apache/xalan/xsltc/trax/XSLTCSource.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/trax/XSLTCSource.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/trax/XSLTCSource.java
diff --git a/src/org/apache/xalan/xsltc/util/IntegerArray.java b/xalan/src/main/java/org/apache/xalan/xsltc/util/IntegerArray.java
similarity index 100%
rename from src/org/apache/xalan/xsltc/util/IntegerArray.java
rename to xalan/src/main/java/org/apache/xalan/xsltc/util/IntegerArray.java
diff --git a/src/org/apache/xml/dtm/Axis.java b/xalan/src/main/java/org/apache/xml/dtm/Axis.java
similarity index 100%
rename from src/org/apache/xml/dtm/Axis.java
rename to xalan/src/main/java/org/apache/xml/dtm/Axis.java
diff --git a/src/org/apache/xml/dtm/DTM.java b/xalan/src/main/java/org/apache/xml/dtm/DTM.java
similarity index 100%
rename from src/org/apache/xml/dtm/DTM.java
rename to xalan/src/main/java/org/apache/xml/dtm/DTM.java
diff --git a/src/org/apache/xml/dtm/DTMAxisIterator.java b/xalan/src/main/java/org/apache/xml/dtm/DTMAxisIterator.java
similarity index 100%
rename from src/org/apache/xml/dtm/DTMAxisIterator.java
rename to xalan/src/main/java/org/apache/xml/dtm/DTMAxisIterator.java
diff --git a/src/org/apache/xml/dtm/DTMAxisTraverser.java b/xalan/src/main/java/org/apache/xml/dtm/DTMAxisTraverser.java
similarity index 100%
rename from src/org/apache/xml/dtm/DTMAxisTraverser.java
rename to xalan/src/main/java/org/apache/xml/dtm/DTMAxisTraverser.java
diff --git a/src/org/apache/xml/dtm/DTMConfigurationException.java b/xalan/src/main/java/org/apache/xml/dtm/DTMConfigurationException.java
similarity index 100%
rename from src/org/apache/xml/dtm/DTMConfigurationException.java
rename to xalan/src/main/java/org/apache/xml/dtm/DTMConfigurationException.java
diff --git a/src/org/apache/xml/dtm/DTMDOMException.java b/xalan/src/main/java/org/apache/xml/dtm/DTMDOMException.java
similarity index 100%
rename from src/org/apache/xml/dtm/DTMDOMException.java
rename to xalan/src/main/java/org/apache/xml/dtm/DTMDOMException.java
diff --git a/src/org/apache/xml/dtm/DTMException.java b/xalan/src/main/java/org/apache/xml/dtm/DTMException.java
similarity index 100%
rename from src/org/apache/xml/dtm/DTMException.java
rename to xalan/src/main/java/org/apache/xml/dtm/DTMException.java
diff --git a/src/org/apache/xml/dtm/DTMFilter.java b/xalan/src/main/java/org/apache/xml/dtm/DTMFilter.java
similarity index 100%
rename from src/org/apache/xml/dtm/DTMFilter.java
rename to xalan/src/main/java/org/apache/xml/dtm/DTMFilter.java
diff --git a/src/org/apache/xml/dtm/DTMIterator.java b/xalan/src/main/java/org/apache/xml/dtm/DTMIterator.java
similarity index 100%
rename from src/org/apache/xml/dtm/DTMIterator.java
rename to xalan/src/main/java/org/apache/xml/dtm/DTMIterator.java
diff --git a/src/org/apache/xml/dtm/DTMManager.java b/xalan/src/main/java/org/apache/xml/dtm/DTMManager.java
similarity index 100%
rename from src/org/apache/xml/dtm/DTMManager.java
rename to xalan/src/main/java/org/apache/xml/dtm/DTMManager.java
diff --git a/src/org/apache/xml/dtm/DTMWSFilter.java b/xalan/src/main/java/org/apache/xml/dtm/DTMWSFilter.java
similarity index 100%
rename from src/org/apache/xml/dtm/DTMWSFilter.java
rename to xalan/src/main/java/org/apache/xml/dtm/DTMWSFilter.java
diff --git a/src/org/apache/xml/dtm/ObjectFactory.java b/xalan/src/main/java/org/apache/xml/dtm/ObjectFactory.java
similarity index 100%
rename from src/org/apache/xml/dtm/ObjectFactory.java
rename to xalan/src/main/java/org/apache/xml/dtm/ObjectFactory.java
diff --git a/src/org/apache/xml/dtm/SecuritySupport.java b/xalan/src/main/java/org/apache/xml/dtm/SecuritySupport.java
similarity index 100%
rename from src/org/apache/xml/dtm/SecuritySupport.java
rename to xalan/src/main/java/org/apache/xml/dtm/SecuritySupport.java
diff --git a/src/org/apache/xml/dtm/ref/ChunkedIntArray.java b/xalan/src/main/java/org/apache/xml/dtm/ref/ChunkedIntArray.java
similarity index 100%
rename from src/org/apache/xml/dtm/ref/ChunkedIntArray.java
rename to xalan/src/main/java/org/apache/xml/dtm/ref/ChunkedIntArray.java
diff --git a/src/org/apache/xml/dtm/ref/CoroutineManager.java b/xalan/src/main/java/org/apache/xml/dtm/ref/CoroutineManager.java
similarity index 100%
rename from src/org/apache/xml/dtm/ref/CoroutineManager.java
rename to xalan/src/main/java/org/apache/xml/dtm/ref/CoroutineManager.java
diff --git a/src/org/apache/xml/dtm/ref/CoroutineParser.java b/xalan/src/main/java/org/apache/xml/dtm/ref/CoroutineParser.java
similarity index 100%
rename from src/org/apache/xml/dtm/ref/CoroutineParser.java
rename to xalan/src/main/java/org/apache/xml/dtm/ref/CoroutineParser.java
diff --git a/src/org/apache/xml/dtm/ref/CustomStringPool.java b/xalan/src/main/java/org/apache/xml/dtm/ref/CustomStringPool.java
similarity index 100%
rename from src/org/apache/xml/dtm/ref/CustomStringPool.java
rename to xalan/src/main/java/org/apache/xml/dtm/ref/CustomStringPool.java
diff --git a/src/org/apache/xml/dtm/ref/DTMAxisIterNodeList.java b/xalan/src/main/java/org/apache/xml/dtm/ref/DTMAxisIterNodeList.java
similarity index 100%
rename from src/org/apache/xml/dtm/ref/DTMAxisIterNodeList.java
rename to xalan/src/main/java/org/apache/xml/dtm/ref/DTMAxisIterNodeList.java
diff --git a/src/org/apache/xml/dtm/ref/DTMAxisIteratorBase.java b/xalan/src/main/java/org/apache/xml/dtm/ref/DTMAxisIteratorBase.java
similarity index 100%
rename from src/org/apache/xml/dtm/ref/DTMAxisIteratorBase.java
rename to xalan/src/main/java/org/apache/xml/dtm/ref/DTMAxisIteratorBase.java
diff --git a/src/org/apache/xml/dtm/ref/DTMChildIterNodeList.java b/xalan/src/main/java/org/apache/xml/dtm/ref/DTMChildIterNodeList.java
similarity index 100%
rename from src/org/apache/xml/dtm/ref/DTMChildIterNodeList.java
rename to xalan/src/main/java/org/apache/xml/dtm/ref/DTMChildIterNodeList.java
diff --git a/src/org/apache/xml/dtm/ref/DTMDefaultBase.java b/xalan/src/main/java/org/apache/xml/dtm/ref/DTMDefaultBase.java
similarity index 100%
rename from src/org/apache/xml/dtm/ref/DTMDefaultBase.java
rename to xalan/src/main/java/org/apache/xml/dtm/ref/DTMDefaultBase.java
diff --git a/src/org/apache/xml/dtm/ref/DTMDefaultBaseIterators.java b/xalan/src/main/java/org/apache/xml/dtm/ref/DTMDefaultBaseIterators.java
similarity index 100%
rename from src/org/apache/xml/dtm/ref/DTMDefaultBaseIterators.java
rename to xalan/src/main/java/org/apache/xml/dtm/ref/DTMDefaultBaseIterators.java
diff --git a/src/org/apache/xml/dtm/ref/DTMDefaultBaseTraversers.java b/xalan/src/main/java/org/apache/xml/dtm/ref/DTMDefaultBaseTraversers.java
similarity index 100%
rename from src/org/apache/xml/dtm/ref/DTMDefaultBaseTraversers.java
rename to xalan/src/main/java/org/apache/xml/dtm/ref/DTMDefaultBaseTraversers.java
diff --git a/src/org/apache/xml/dtm/ref/DTMDocumentImpl.java b/xalan/src/main/java/org/apache/xml/dtm/ref/DTMDocumentImpl.java
similarity index 100%
rename from src/org/apache/xml/dtm/ref/DTMDocumentImpl.java
rename to xalan/src/main/java/org/apache/xml/dtm/ref/DTMDocumentImpl.java
diff --git a/src/org/apache/xml/dtm/ref/DTMManagerDefault.java b/xalan/src/main/java/org/apache/xml/dtm/ref/DTMManagerDefault.java
similarity index 100%
rename from src/org/apache/xml/dtm/ref/DTMManagerDefault.java
rename to xalan/src/main/java/org/apache/xml/dtm/ref/DTMManagerDefault.java
diff --git a/src/org/apache/xml/dtm/ref/DTMNamedNodeMap.java b/xalan/src/main/java/org/apache/xml/dtm/ref/DTMNamedNodeMap.java
similarity index 100%
rename from src/org/apache/xml/dtm/ref/DTMNamedNodeMap.java
rename to xalan/src/main/java/org/apache/xml/dtm/ref/DTMNamedNodeMap.java
diff --git a/src/org/apache/xml/dtm/ref/DTMNodeIterator.java b/xalan/src/main/java/org/apache/xml/dtm/ref/DTMNodeIterator.java
similarity index 100%
rename from src/org/apache/xml/dtm/ref/DTMNodeIterator.java
rename to xalan/src/main/java/org/apache/xml/dtm/ref/DTMNodeIterator.java
diff --git a/src/org/apache/xml/dtm/ref/DTMNodeList.java b/xalan/src/main/java/org/apache/xml/dtm/ref/DTMNodeList.java
similarity index 100%
rename from src/org/apache/xml/dtm/ref/DTMNodeList.java
rename to xalan/src/main/java/org/apache/xml/dtm/ref/DTMNodeList.java
diff --git a/src/org/apache/xml/dtm/ref/DTMNodeListBase.java b/xalan/src/main/java/org/apache/xml/dtm/ref/DTMNodeListBase.java
similarity index 100%
rename from src/org/apache/xml/dtm/ref/DTMNodeListBase.java
rename to xalan/src/main/java/org/apache/xml/dtm/ref/DTMNodeListBase.java
diff --git a/src/org/apache/xml/dtm/ref/DTMNodeProxy.java b/xalan/src/main/java/org/apache/xml/dtm/ref/DTMNodeProxy.java
similarity index 100%
rename from src/org/apache/xml/dtm/ref/DTMNodeProxy.java
rename to xalan/src/main/java/org/apache/xml/dtm/ref/DTMNodeProxy.java
diff --git a/src/org/apache/xml/dtm/ref/DTMSafeStringPool.java b/xalan/src/main/java/org/apache/xml/dtm/ref/DTMSafeStringPool.java
similarity index 100%
rename from src/org/apache/xml/dtm/ref/DTMSafeStringPool.java
rename to xalan/src/main/java/org/apache/xml/dtm/ref/DTMSafeStringPool.java
diff --git a/src/org/apache/xml/dtm/ref/DTMStringPool.java b/xalan/src/main/java/org/apache/xml/dtm/ref/DTMStringPool.java
similarity index 100%
rename from src/org/apache/xml/dtm/ref/DTMStringPool.java
rename to xalan/src/main/java/org/apache/xml/dtm/ref/DTMStringPool.java
diff --git a/src/org/apache/xml/dtm/ref/DTMTreeWalker.java b/xalan/src/main/java/org/apache/xml/dtm/ref/DTMTreeWalker.java
similarity index 100%
rename from src/org/apache/xml/dtm/ref/DTMTreeWalker.java
rename to xalan/src/main/java/org/apache/xml/dtm/ref/DTMTreeWalker.java
diff --git a/src/org/apache/xml/dtm/ref/EmptyIterator.java b/xalan/src/main/java/org/apache/xml/dtm/ref/EmptyIterator.java
similarity index 100%
rename from src/org/apache/xml/dtm/ref/EmptyIterator.java
rename to xalan/src/main/java/org/apache/xml/dtm/ref/EmptyIterator.java
diff --git a/src/org/apache/xml/dtm/ref/ExpandedNameTable.java b/xalan/src/main/java/org/apache/xml/dtm/ref/ExpandedNameTable.java
similarity index 100%
rename from src/org/apache/xml/dtm/ref/ExpandedNameTable.java
rename to xalan/src/main/java/org/apache/xml/dtm/ref/ExpandedNameTable.java
diff --git a/src/org/apache/xml/dtm/ref/ExtendedType.java b/xalan/src/main/java/org/apache/xml/dtm/ref/ExtendedType.java
similarity index 100%
rename from src/org/apache/xml/dtm/ref/ExtendedType.java
rename to xalan/src/main/java/org/apache/xml/dtm/ref/ExtendedType.java
diff --git a/src/org/apache/xml/dtm/ref/IncrementalSAXSource.java b/xalan/src/main/java/org/apache/xml/dtm/ref/IncrementalSAXSource.java
similarity index 100%
rename from src/org/apache/xml/dtm/ref/IncrementalSAXSource.java
rename to xalan/src/main/java/org/apache/xml/dtm/ref/IncrementalSAXSource.java
diff --git a/src/org/apache/xml/dtm/ref/IncrementalSAXSource_Filter.java b/xalan/src/main/java/org/apache/xml/dtm/ref/IncrementalSAXSource_Filter.java
similarity index 100%
rename from src/org/apache/xml/dtm/ref/IncrementalSAXSource_Filter.java
rename to xalan/src/main/java/org/apache/xml/dtm/ref/IncrementalSAXSource_Filter.java
diff --git a/src/org/apache/xml/dtm/ref/IncrementalSAXSource_Xerces.java b/xalan/src/main/java/org/apache/xml/dtm/ref/IncrementalSAXSource_Xerces.java
similarity index 100%
rename from src/org/apache/xml/dtm/ref/IncrementalSAXSource_Xerces.java
rename to xalan/src/main/java/org/apache/xml/dtm/ref/IncrementalSAXSource_Xerces.java
diff --git a/src/org/apache/xml/dtm/ref/NodeLocator.java b/xalan/src/main/java/org/apache/xml/dtm/ref/NodeLocator.java
similarity index 100%
rename from src/org/apache/xml/dtm/ref/NodeLocator.java
rename to xalan/src/main/java/org/apache/xml/dtm/ref/NodeLocator.java
diff --git a/src/org/apache/xml/dtm/ref/ObjectFactory.java b/xalan/src/main/java/org/apache/xml/dtm/ref/ObjectFactory.java
similarity index 100%
rename from src/org/apache/xml/dtm/ref/ObjectFactory.java
rename to xalan/src/main/java/org/apache/xml/dtm/ref/ObjectFactory.java
diff --git a/src/org/apache/xml/dtm/ref/SecuritySupport.java b/xalan/src/main/java/org/apache/xml/dtm/ref/SecuritySupport.java
similarity index 100%
rename from src/org/apache/xml/dtm/ref/SecuritySupport.java
rename to xalan/src/main/java/org/apache/xml/dtm/ref/SecuritySupport.java
diff --git a/src/org/apache/xml/dtm/ref/dom2dtm/DOM2DTM.java b/xalan/src/main/java/org/apache/xml/dtm/ref/dom2dtm/DOM2DTM.java
similarity index 100%
rename from src/org/apache/xml/dtm/ref/dom2dtm/DOM2DTM.java
rename to xalan/src/main/java/org/apache/xml/dtm/ref/dom2dtm/DOM2DTM.java
diff --git a/src/org/apache/xml/dtm/ref/dom2dtm/DOM2DTMdefaultNamespaceDeclarationNode.java b/xalan/src/main/java/org/apache/xml/dtm/ref/dom2dtm/DOM2DTMdefaultNamespaceDeclarationNode.java
similarity index 100%
rename from src/org/apache/xml/dtm/ref/dom2dtm/DOM2DTMdefaultNamespaceDeclarationNode.java
rename to xalan/src/main/java/org/apache/xml/dtm/ref/dom2dtm/DOM2DTMdefaultNamespaceDeclarationNode.java
diff --git a/src/org/apache/xml/dtm/ref/sax2dtm/SAX2DTM.java b/xalan/src/main/java/org/apache/xml/dtm/ref/sax2dtm/SAX2DTM.java
similarity index 100%
rename from src/org/apache/xml/dtm/ref/sax2dtm/SAX2DTM.java
rename to xalan/src/main/java/org/apache/xml/dtm/ref/sax2dtm/SAX2DTM.java
diff --git a/src/org/apache/xml/dtm/ref/sax2dtm/SAX2DTM2.java b/xalan/src/main/java/org/apache/xml/dtm/ref/sax2dtm/SAX2DTM2.java
similarity index 100%
rename from src/org/apache/xml/dtm/ref/sax2dtm/SAX2DTM2.java
rename to xalan/src/main/java/org/apache/xml/dtm/ref/sax2dtm/SAX2DTM2.java
diff --git a/src/org/apache/xml/dtm/ref/sax2dtm/SAX2RTFDTM.java b/xalan/src/main/java/org/apache/xml/dtm/ref/sax2dtm/SAX2RTFDTM.java
similarity index 100%
rename from src/org/apache/xml/dtm/ref/sax2dtm/SAX2RTFDTM.java
rename to xalan/src/main/java/org/apache/xml/dtm/ref/sax2dtm/SAX2RTFDTM.java
diff --git a/src/org/apache/xml/res/XMLErrorResources.java b/xalan/src/main/java/org/apache/xml/res/XMLErrorResources.java
similarity index 100%
rename from src/org/apache/xml/res/XMLErrorResources.java
rename to xalan/src/main/java/org/apache/xml/res/XMLErrorResources.java
diff --git a/src/org/apache/xml/res/XMLErrorResources_ca.java b/xalan/src/main/java/org/apache/xml/res/XMLErrorResources_ca.java
similarity index 100%
rename from src/org/apache/xml/res/XMLErrorResources_ca.java
rename to xalan/src/main/java/org/apache/xml/res/XMLErrorResources_ca.java
diff --git a/src/org/apache/xml/res/XMLErrorResources_cs.java b/xalan/src/main/java/org/apache/xml/res/XMLErrorResources_cs.java
similarity index 100%
rename from src/org/apache/xml/res/XMLErrorResources_cs.java
rename to xalan/src/main/java/org/apache/xml/res/XMLErrorResources_cs.java
diff --git a/src/org/apache/xml/res/XMLErrorResources_de.java b/xalan/src/main/java/org/apache/xml/res/XMLErrorResources_de.java
similarity index 100%
rename from src/org/apache/xml/res/XMLErrorResources_de.java
rename to xalan/src/main/java/org/apache/xml/res/XMLErrorResources_de.java
diff --git a/src/org/apache/xml/res/XMLErrorResources_en.java b/xalan/src/main/java/org/apache/xml/res/XMLErrorResources_en.java
similarity index 100%
rename from src/org/apache/xml/res/XMLErrorResources_en.java
rename to xalan/src/main/java/org/apache/xml/res/XMLErrorResources_en.java
diff --git a/src/org/apache/xml/res/XMLErrorResources_es.java b/xalan/src/main/java/org/apache/xml/res/XMLErrorResources_es.java
similarity index 100%
rename from src/org/apache/xml/res/XMLErrorResources_es.java
rename to xalan/src/main/java/org/apache/xml/res/XMLErrorResources_es.java
diff --git a/src/org/apache/xml/res/XMLErrorResources_fr.java b/xalan/src/main/java/org/apache/xml/res/XMLErrorResources_fr.java
similarity index 100%
rename from src/org/apache/xml/res/XMLErrorResources_fr.java
rename to xalan/src/main/java/org/apache/xml/res/XMLErrorResources_fr.java
diff --git a/src/org/apache/xml/res/XMLErrorResources_hu.java b/xalan/src/main/java/org/apache/xml/res/XMLErrorResources_hu.java
similarity index 100%
rename from src/org/apache/xml/res/XMLErrorResources_hu.java
rename to xalan/src/main/java/org/apache/xml/res/XMLErrorResources_hu.java
diff --git a/src/org/apache/xml/res/XMLErrorResources_it.java b/xalan/src/main/java/org/apache/xml/res/XMLErrorResources_it.java
similarity index 100%
rename from src/org/apache/xml/res/XMLErrorResources_it.java
rename to xalan/src/main/java/org/apache/xml/res/XMLErrorResources_it.java
diff --git a/src/org/apache/xml/res/XMLErrorResources_ja.java b/xalan/src/main/java/org/apache/xml/res/XMLErrorResources_ja.java
similarity index 100%
rename from src/org/apache/xml/res/XMLErrorResources_ja.java
rename to xalan/src/main/java/org/apache/xml/res/XMLErrorResources_ja.java
diff --git a/src/org/apache/xml/res/XMLErrorResources_ko.java b/xalan/src/main/java/org/apache/xml/res/XMLErrorResources_ko.java
similarity index 100%
rename from src/org/apache/xml/res/XMLErrorResources_ko.java
rename to xalan/src/main/java/org/apache/xml/res/XMLErrorResources_ko.java
diff --git a/src/org/apache/xml/res/XMLErrorResources_pl.java b/xalan/src/main/java/org/apache/xml/res/XMLErrorResources_pl.java
similarity index 100%
rename from src/org/apache/xml/res/XMLErrorResources_pl.java
rename to xalan/src/main/java/org/apache/xml/res/XMLErrorResources_pl.java
diff --git a/src/org/apache/xml/res/XMLErrorResources_pt_BR.java b/xalan/src/main/java/org/apache/xml/res/XMLErrorResources_pt_BR.java
similarity index 100%
rename from src/org/apache/xml/res/XMLErrorResources_pt_BR.java
rename to xalan/src/main/java/org/apache/xml/res/XMLErrorResources_pt_BR.java
diff --git a/src/org/apache/xml/res/XMLErrorResources_ru.java b/xalan/src/main/java/org/apache/xml/res/XMLErrorResources_ru.java
similarity index 100%
rename from src/org/apache/xml/res/XMLErrorResources_ru.java
rename to xalan/src/main/java/org/apache/xml/res/XMLErrorResources_ru.java
diff --git a/src/org/apache/xml/res/XMLErrorResources_sk.java b/xalan/src/main/java/org/apache/xml/res/XMLErrorResources_sk.java
similarity index 100%
rename from src/org/apache/xml/res/XMLErrorResources_sk.java
rename to xalan/src/main/java/org/apache/xml/res/XMLErrorResources_sk.java
diff --git a/src/org/apache/xml/res/XMLErrorResources_sl.java b/xalan/src/main/java/org/apache/xml/res/XMLErrorResources_sl.java
similarity index 100%
rename from src/org/apache/xml/res/XMLErrorResources_sl.java
rename to xalan/src/main/java/org/apache/xml/res/XMLErrorResources_sl.java
diff --git a/src/org/apache/xml/res/XMLErrorResources_sv.java b/xalan/src/main/java/org/apache/xml/res/XMLErrorResources_sv.java
similarity index 100%
rename from src/org/apache/xml/res/XMLErrorResources_sv.java
rename to xalan/src/main/java/org/apache/xml/res/XMLErrorResources_sv.java
diff --git a/src/org/apache/xml/res/XMLErrorResources_tr.java b/xalan/src/main/java/org/apache/xml/res/XMLErrorResources_tr.java
similarity index 100%
rename from src/org/apache/xml/res/XMLErrorResources_tr.java
rename to xalan/src/main/java/org/apache/xml/res/XMLErrorResources_tr.java
diff --git a/src/org/apache/xml/res/XMLErrorResources_zh.java b/xalan/src/main/java/org/apache/xml/res/XMLErrorResources_zh.java
similarity index 100%
rename from src/org/apache/xml/res/XMLErrorResources_zh.java
rename to xalan/src/main/java/org/apache/xml/res/XMLErrorResources_zh.java
diff --git a/src/org/apache/xml/res/XMLErrorResources_zh_TW.java b/xalan/src/main/java/org/apache/xml/res/XMLErrorResources_zh_TW.java
similarity index 100%
rename from src/org/apache/xml/res/XMLErrorResources_zh_TW.java
rename to xalan/src/main/java/org/apache/xml/res/XMLErrorResources_zh_TW.java
diff --git a/src/org/apache/xml/res/XMLMessages.java b/xalan/src/main/java/org/apache/xml/res/XMLMessages.java
similarity index 98%
rename from src/org/apache/xml/res/XMLMessages.java
rename to xalan/src/main/java/org/apache/xml/res/XMLMessages.java
index c1e31641d..6185ac6cb 100644
--- a/src/org/apache/xml/res/XMLMessages.java
+++ b/xalan/src/main/java/org/apache/xml/res/XMLMessages.java
@@ -160,7 +160,7 @@ public static final String createMsg(ListResourceBundle fResourceBundle,
*
* @param className The class name of the resource bundle.
* @return the ResourceBundle
- * @throws MissingResourceException
+ * @throws MissingResourceException if the resource bundle can not be retrieved
*/
public static ListResourceBundle loadResourceBundle(String className)
throws MissingResourceException
diff --git a/src/org/apache/xml/utils/AttList.java b/xalan/src/main/java/org/apache/xml/utils/AttList.java
similarity index 100%
rename from src/org/apache/xml/utils/AttList.java
rename to xalan/src/main/java/org/apache/xml/utils/AttList.java
diff --git a/src/org/apache/xml/utils/BoolStack.java b/xalan/src/main/java/org/apache/xml/utils/BoolStack.java
similarity index 99%
rename from src/org/apache/xml/utils/BoolStack.java
rename to xalan/src/main/java/org/apache/xml/utils/BoolStack.java
index b36ed7079..7bb621970 100644
--- a/src/org/apache/xml/utils/BoolStack.java
+++ b/xalan/src/main/java/org/apache/xml/utils/BoolStack.java
@@ -19,7 +19,7 @@
* $Id$
*/
package org.apache.xml.utils;
-
+import java.util.EmptyStackException;
/**
* Simple stack for boolean values.
diff --git a/src/org/apache/xml/utils/Constants.java b/xalan/src/main/java/org/apache/xml/utils/Constants.java
similarity index 100%
rename from src/org/apache/xml/utils/Constants.java
rename to xalan/src/main/java/org/apache/xml/utils/Constants.java
diff --git a/src/org/apache/xml/utils/DOM2Helper.java b/xalan/src/main/java/org/apache/xml/utils/DOM2Helper.java
similarity index 100%
rename from src/org/apache/xml/utils/DOM2Helper.java
rename to xalan/src/main/java/org/apache/xml/utils/DOM2Helper.java
diff --git a/src/org/apache/xml/utils/DOMBuilder.java b/xalan/src/main/java/org/apache/xml/utils/DOMBuilder.java
similarity index 100%
rename from src/org/apache/xml/utils/DOMBuilder.java
rename to xalan/src/main/java/org/apache/xml/utils/DOMBuilder.java
diff --git a/src/org/apache/xml/utils/DOMHelper.java b/xalan/src/main/java/org/apache/xml/utils/DOMHelper.java
similarity index 100%
rename from src/org/apache/xml/utils/DOMHelper.java
rename to xalan/src/main/java/org/apache/xml/utils/DOMHelper.java
diff --git a/src/org/apache/xml/utils/DOMOrder.java b/xalan/src/main/java/org/apache/xml/utils/DOMOrder.java
similarity index 100%
rename from src/org/apache/xml/utils/DOMOrder.java
rename to xalan/src/main/java/org/apache/xml/utils/DOMOrder.java
diff --git a/src/org/apache/xml/utils/DefaultErrorHandler.java b/xalan/src/main/java/org/apache/xml/utils/DefaultErrorHandler.java
similarity index 100%
rename from src/org/apache/xml/utils/DefaultErrorHandler.java
rename to xalan/src/main/java/org/apache/xml/utils/DefaultErrorHandler.java
diff --git a/src/org/apache/xml/utils/ElemDesc.java b/xalan/src/main/java/org/apache/xml/utils/ElemDesc.java
similarity index 100%
rename from src/org/apache/xml/utils/ElemDesc.java
rename to xalan/src/main/java/org/apache/xml/utils/ElemDesc.java
diff --git a/src/org/apache/xml/utils/FastStringBuffer.java b/xalan/src/main/java/org/apache/xml/utils/FastStringBuffer.java
similarity index 100%
rename from src/org/apache/xml/utils/FastStringBuffer.java
rename to xalan/src/main/java/org/apache/xml/utils/FastStringBuffer.java
diff --git a/src/org/apache/xml/utils/Hashtree2Node.java b/xalan/src/main/java/org/apache/xml/utils/Hashtree2Node.java
similarity index 100%
rename from src/org/apache/xml/utils/Hashtree2Node.java
rename to xalan/src/main/java/org/apache/xml/utils/Hashtree2Node.java
diff --git a/src/org/apache/xml/utils/IntStack.java b/xalan/src/main/java/org/apache/xml/utils/IntStack.java
similarity index 99%
rename from src/org/apache/xml/utils/IntStack.java
rename to xalan/src/main/java/org/apache/xml/utils/IntStack.java
index 7969913c5..ce9a28ec4 100644
--- a/src/org/apache/xml/utils/IntStack.java
+++ b/xalan/src/main/java/org/apache/xml/utils/IntStack.java
@@ -19,7 +19,6 @@
* $Id$
*/
package org.apache.xml.utils;
-
import java.util.EmptyStackException;
/**
diff --git a/src/org/apache/xml/utils/IntVector.java b/xalan/src/main/java/org/apache/xml/utils/IntVector.java
similarity index 100%
rename from src/org/apache/xml/utils/IntVector.java
rename to xalan/src/main/java/org/apache/xml/utils/IntVector.java
diff --git a/src/org/apache/xml/utils/ListingErrorHandler.java b/xalan/src/main/java/org/apache/xml/utils/ListingErrorHandler.java
similarity index 100%
rename from src/org/apache/xml/utils/ListingErrorHandler.java
rename to xalan/src/main/java/org/apache/xml/utils/ListingErrorHandler.java
diff --git a/src/org/apache/xml/utils/LocaleUtility.java b/xalan/src/main/java/org/apache/xml/utils/LocaleUtility.java
similarity index 100%
rename from src/org/apache/xml/utils/LocaleUtility.java
rename to xalan/src/main/java/org/apache/xml/utils/LocaleUtility.java
diff --git a/src/org/apache/xml/utils/MutableAttrListImpl.java b/xalan/src/main/java/org/apache/xml/utils/MutableAttrListImpl.java
similarity index 100%
rename from src/org/apache/xml/utils/MutableAttrListImpl.java
rename to xalan/src/main/java/org/apache/xml/utils/MutableAttrListImpl.java
diff --git a/src/org/apache/xml/utils/NSInfo.java b/xalan/src/main/java/org/apache/xml/utils/NSInfo.java
similarity index 100%
rename from src/org/apache/xml/utils/NSInfo.java
rename to xalan/src/main/java/org/apache/xml/utils/NSInfo.java
diff --git a/src/org/apache/xml/utils/NameSpace.java b/xalan/src/main/java/org/apache/xml/utils/NameSpace.java
similarity index 100%
rename from src/org/apache/xml/utils/NameSpace.java
rename to xalan/src/main/java/org/apache/xml/utils/NameSpace.java
diff --git a/src/org/apache/xml/utils/NamespaceSupport2.java b/xalan/src/main/java/org/apache/xml/utils/NamespaceSupport2.java
similarity index 100%
rename from src/org/apache/xml/utils/NamespaceSupport2.java
rename to xalan/src/main/java/org/apache/xml/utils/NamespaceSupport2.java
diff --git a/src/org/apache/xml/utils/NodeConsumer.java b/xalan/src/main/java/org/apache/xml/utils/NodeConsumer.java
similarity index 100%
rename from src/org/apache/xml/utils/NodeConsumer.java
rename to xalan/src/main/java/org/apache/xml/utils/NodeConsumer.java
diff --git a/src/org/apache/xml/utils/NodeVector.java b/xalan/src/main/java/org/apache/xml/utils/NodeVector.java
similarity index 100%
rename from src/org/apache/xml/utils/NodeVector.java
rename to xalan/src/main/java/org/apache/xml/utils/NodeVector.java
diff --git a/src/org/apache/xml/utils/ObjectFactory.java b/xalan/src/main/java/org/apache/xml/utils/ObjectFactory.java
similarity index 100%
rename from src/org/apache/xml/utils/ObjectFactory.java
rename to xalan/src/main/java/org/apache/xml/utils/ObjectFactory.java
diff --git a/src/org/apache/xml/utils/ObjectPool.java b/xalan/src/main/java/org/apache/xml/utils/ObjectPool.java
similarity index 100%
rename from src/org/apache/xml/utils/ObjectPool.java
rename to xalan/src/main/java/org/apache/xml/utils/ObjectPool.java
diff --git a/src/org/apache/xml/utils/ObjectStack.java b/xalan/src/main/java/org/apache/xml/utils/ObjectStack.java
similarity index 99%
rename from src/org/apache/xml/utils/ObjectStack.java
rename to xalan/src/main/java/org/apache/xml/utils/ObjectStack.java
index 7b406f6fa..b91c4eaa5 100644
--- a/src/org/apache/xml/utils/ObjectStack.java
+++ b/xalan/src/main/java/org/apache/xml/utils/ObjectStack.java
@@ -19,7 +19,6 @@
* $Id$
*/
package org.apache.xml.utils;
-
import java.util.EmptyStackException;
/**
diff --git a/src/org/apache/xml/utils/ObjectVector.java b/xalan/src/main/java/org/apache/xml/utils/ObjectVector.java
similarity index 100%
rename from src/org/apache/xml/utils/ObjectVector.java
rename to xalan/src/main/java/org/apache/xml/utils/ObjectVector.java
diff --git a/src/org/apache/xml/utils/PrefixResolver.java b/xalan/src/main/java/org/apache/xml/utils/PrefixResolver.java
similarity index 100%
rename from src/org/apache/xml/utils/PrefixResolver.java
rename to xalan/src/main/java/org/apache/xml/utils/PrefixResolver.java
diff --git a/src/org/apache/xml/utils/PrefixResolverDefault.java b/xalan/src/main/java/org/apache/xml/utils/PrefixResolverDefault.java
similarity index 100%
rename from src/org/apache/xml/utils/PrefixResolverDefault.java
rename to xalan/src/main/java/org/apache/xml/utils/PrefixResolverDefault.java
diff --git a/src/org/apache/xml/utils/QName.java b/xalan/src/main/java/org/apache/xml/utils/QName.java
similarity index 100%
rename from src/org/apache/xml/utils/QName.java
rename to xalan/src/main/java/org/apache/xml/utils/QName.java
diff --git a/src/org/apache/xml/utils/RawCharacterHandler.java b/xalan/src/main/java/org/apache/xml/utils/RawCharacterHandler.java
similarity index 100%
rename from src/org/apache/xml/utils/RawCharacterHandler.java
rename to xalan/src/main/java/org/apache/xml/utils/RawCharacterHandler.java
diff --git a/src/org/apache/xml/utils/SAXSourceLocator.java b/xalan/src/main/java/org/apache/xml/utils/SAXSourceLocator.java
similarity index 100%
rename from src/org/apache/xml/utils/SAXSourceLocator.java
rename to xalan/src/main/java/org/apache/xml/utils/SAXSourceLocator.java
diff --git a/src/org/apache/xml/utils/SecuritySupport.java b/xalan/src/main/java/org/apache/xml/utils/SecuritySupport.java
similarity index 100%
rename from src/org/apache/xml/utils/SecuritySupport.java
rename to xalan/src/main/java/org/apache/xml/utils/SecuritySupport.java
diff --git a/src/org/apache/xml/utils/SerializableLocatorImpl.java b/xalan/src/main/java/org/apache/xml/utils/SerializableLocatorImpl.java
similarity index 100%
rename from src/org/apache/xml/utils/SerializableLocatorImpl.java
rename to xalan/src/main/java/org/apache/xml/utils/SerializableLocatorImpl.java
diff --git a/src/org/apache/xml/utils/StopParseException.java b/xalan/src/main/java/org/apache/xml/utils/StopParseException.java
similarity index 100%
rename from src/org/apache/xml/utils/StopParseException.java
rename to xalan/src/main/java/org/apache/xml/utils/StopParseException.java
diff --git a/src/org/apache/xml/utils/StringBufferPool.java b/xalan/src/main/java/org/apache/xml/utils/StringBufferPool.java
similarity index 100%
rename from src/org/apache/xml/utils/StringBufferPool.java
rename to xalan/src/main/java/org/apache/xml/utils/StringBufferPool.java
diff --git a/src/org/apache/xml/utils/StringComparable.java b/xalan/src/main/java/org/apache/xml/utils/StringComparable.java
similarity index 100%
rename from src/org/apache/xml/utils/StringComparable.java
rename to xalan/src/main/java/org/apache/xml/utils/StringComparable.java
diff --git a/src/org/apache/xml/utils/StringToIntTable.java b/xalan/src/main/java/org/apache/xml/utils/StringToIntTable.java
similarity index 100%
rename from src/org/apache/xml/utils/StringToIntTable.java
rename to xalan/src/main/java/org/apache/xml/utils/StringToIntTable.java
diff --git a/src/org/apache/xml/utils/StringToStringTable.java b/xalan/src/main/java/org/apache/xml/utils/StringToStringTable.java
similarity index 100%
rename from src/org/apache/xml/utils/StringToStringTable.java
rename to xalan/src/main/java/org/apache/xml/utils/StringToStringTable.java
diff --git a/src/org/apache/xml/utils/StringToStringTableVector.java b/xalan/src/main/java/org/apache/xml/utils/StringToStringTableVector.java
similarity index 100%
rename from src/org/apache/xml/utils/StringToStringTableVector.java
rename to xalan/src/main/java/org/apache/xml/utils/StringToStringTableVector.java
diff --git a/src/org/apache/xml/utils/StringVector.java b/xalan/src/main/java/org/apache/xml/utils/StringVector.java
similarity index 100%
rename from src/org/apache/xml/utils/StringVector.java
rename to xalan/src/main/java/org/apache/xml/utils/StringVector.java
diff --git a/src/org/apache/xml/utils/StylesheetPIHandler.java b/xalan/src/main/java/org/apache/xml/utils/StylesheetPIHandler.java
similarity index 100%
rename from src/org/apache/xml/utils/StylesheetPIHandler.java
rename to xalan/src/main/java/org/apache/xml/utils/StylesheetPIHandler.java
diff --git a/src/org/apache/xml/utils/SuballocatedByteVector.java b/xalan/src/main/java/org/apache/xml/utils/SuballocatedByteVector.java
similarity index 100%
rename from src/org/apache/xml/utils/SuballocatedByteVector.java
rename to xalan/src/main/java/org/apache/xml/utils/SuballocatedByteVector.java
diff --git a/src/org/apache/xml/utils/SuballocatedIntVector.java b/xalan/src/main/java/org/apache/xml/utils/SuballocatedIntVector.java
similarity index 100%
rename from src/org/apache/xml/utils/SuballocatedIntVector.java
rename to xalan/src/main/java/org/apache/xml/utils/SuballocatedIntVector.java
diff --git a/src/org/apache/xml/utils/SystemIDResolver.java b/xalan/src/main/java/org/apache/xml/utils/SystemIDResolver.java
similarity index 100%
rename from src/org/apache/xml/utils/SystemIDResolver.java
rename to xalan/src/main/java/org/apache/xml/utils/SystemIDResolver.java
diff --git a/src/org/apache/xml/utils/ThreadControllerWrapper.java b/xalan/src/main/java/org/apache/xml/utils/ThreadControllerWrapper.java
similarity index 100%
rename from src/org/apache/xml/utils/ThreadControllerWrapper.java
rename to xalan/src/main/java/org/apache/xml/utils/ThreadControllerWrapper.java
diff --git a/src/org/apache/xml/utils/TreeWalker.java b/xalan/src/main/java/org/apache/xml/utils/TreeWalker.java
similarity index 100%
rename from src/org/apache/xml/utils/TreeWalker.java
rename to xalan/src/main/java/org/apache/xml/utils/TreeWalker.java
diff --git a/src/org/apache/xml/utils/URI.java b/xalan/src/main/java/org/apache/xml/utils/URI.java
similarity index 100%
rename from src/org/apache/xml/utils/URI.java
rename to xalan/src/main/java/org/apache/xml/utils/URI.java
diff --git a/src/org/apache/xml/utils/UnImplNode.java b/xalan/src/main/java/org/apache/xml/utils/UnImplNode.java
similarity index 90%
rename from src/org/apache/xml/utils/UnImplNode.java
rename to xalan/src/main/java/org/apache/xml/utils/UnImplNode.java
index 8f29913dc..f4d298501 100644
--- a/src/org/apache/xml/utils/UnImplNode.java
+++ b/xalan/src/main/java/org/apache/xml/utils/UnImplNode.java
@@ -43,7 +43,8 @@
import org.w3c.dom.DOMConfiguration;
import org.w3c.dom.TypeInfo;
/**
- * To be subclassed by classes that wish to fake being nodes.
+ * No-op Node implementation. To be subclassed by classes that wish to
+ * fake being nodes.
* @xsl.usage internal
*/
public class UnImplNode implements Node, Element, NodeList, Document
@@ -87,9 +88,9 @@ public void error(String msg, Object[] args)
*
* @param newChild New node to append to the list of this node's children
*
- * @return null
+ * @return null, meaning the append can't be done
*
- * @throws DOMException
+ * @throws DOMException always, "not supported!"
*/
public Node appendChild(Node newChild) throws DOMException
{
@@ -283,9 +284,10 @@ public NodeList getElementsByTagName(String name)
*
* @param oldAttr Attribute to be removed from this node's list of attributes
*
- * @return null
+ * @return null, meaning the remove could not be done in this implementation
*
- * @throws DOMException
+ * @throws DOMException always, "not supported!"
+
*/
public Attr removeAttributeNode(Attr oldAttr) throws DOMException
{
@@ -300,9 +302,9 @@ public Attr removeAttributeNode(Attr oldAttr) throws DOMException
*
* @param newAttr Attribute node to be added to this node's list of attributes
*
- * @return null
+ * @return null, meaning attribute could not be set in this implementation.
*
- * @throws DOMException
+ * @throws DOMException always, "not supported!"
*/
public Attr setAttributeNode(Attr newAttr) throws DOMException
{
@@ -329,13 +331,11 @@ public boolean hasAttribute(String name)
}
/**
- * Unimplemented. See org.w3c.dom.Element
- *
- *
- * @param name
- * @param x
- *
- * @return false
+ * Unimplemented
+ * {@inheritDoc}
+ * @see org.w3c.dom.Element#hasAttributeNS(String,String)
+ * @return false
+ * @throws DOMException always, "not supported!"
*/
public boolean hasAttributeNS(String name, String x)
{
@@ -346,12 +346,11 @@ public boolean hasAttributeNS(String name, String x)
}
/**
- * Unimplemented. See org.w3c.dom.Element
- *
+ * Unimplemented.
+ * @see org.w3c.dom.Element#getAttributeNode(String)
*
* @param name Attribute node name
- *
- * @return null
+ * @return null; always, "not supported!" empty in this implementation.
*/
public Attr getAttributeNode(String name)
{
@@ -362,11 +361,12 @@ public Attr getAttributeNode(String name)
}
/**
- * Unimplemented. See org.w3c.dom.Element
+ * Unimplemented.
+ * @see org.w3c.dom.Element#removeAttribute(String)
*
* @param name Attribute node name to remove from list of attributes
*
- * @throws DOMException
+ * @throws DOMException always, "not supported!"
*/
public void removeAttribute(String name) throws DOMException
{
@@ -374,12 +374,13 @@ public void removeAttribute(String name) throws DOMException
}
/**
- * Unimplemented. See org.w3c.dom.Element
+ * Unimplemented.
+ * @see org.w3c.dom.Element#setAttribute(String,String)
*
* @param name Name of attribute to set
* @param value Value of attribute
*
- * @throws DOMException
+ * @throws DOMException always, "not supported!"
*/
public void setAttribute(String name, String value) throws DOMException
{
@@ -387,11 +388,12 @@ public void setAttribute(String name, String value) throws DOMException
}
/**
- * Unimplemented. See org.w3c.dom.Element
+ * Unimplemented.
+ * @see org.w3c.dom.Element#getAttribute(String)
*
* @param name Name of attribute to get
*
- * @return null
+ * @return null always, "not supported!" (no match) in this implementation
*/
public String getAttribute(String name)
{
@@ -403,8 +405,9 @@ public String getAttribute(String name)
/**
* Unimplemented. Introduced in DOM Level 2.
+ * {@inheritDoc}
*
- * @return false
+ * @return false; this implementation will never have attributes
*/
public boolean hasAttributes()
{
@@ -415,12 +418,14 @@ public boolean hasAttributes()
}
/**
- * Unimplemented. See org.w3c.dom.Element
+ * Unimplemented.
+ * {@inheritDoc}
+ * @see org.w3c.dom.Element#getElementsByTagNameNS(String,String)
*
* @param namespaceURI Namespace URI of the element
* @param localName Local part of qualified name of the element
*
- * @return null
+ * @return null always, "not supported!", in this implementation
*/
public NodeList getElementsByTagNameNS(String namespaceURI,
String localName)
@@ -438,7 +443,7 @@ public NodeList getElementsByTagNameNS(String namespaceURI,
*
* @return null
*
- * @throws DOMException
+ * @throws DOMException always, "not supported!"
*/
public Attr setAttributeNodeNS(Attr newAttr) throws DOMException
{
@@ -470,7 +475,7 @@ public Attr getAttributeNodeNS(String namespaceURI, String localName)
* @param namespaceURI Namespace URI of attribute node to remove
* @param localName Local part of qualified name of attribute node to remove
*
- * @throws DOMException
+ * @throws DOMException always, "not supported!"
*/
public void removeAttributeNS(String namespaceURI, String localName)
throws DOMException
@@ -485,7 +490,7 @@ public void removeAttributeNS(String namespaceURI, String localName)
* NEEDSDOC @param qualifiedName
* @param value value of attribute
*
- * @throws DOMException
+ * @throws DOMException always, "not supported!"
*/
public void setAttributeNS(
String namespaceURI, String qualifiedName, String value)
@@ -543,7 +548,7 @@ public Node cloneNode(boolean deep)
*
* @return null
*
- * @throws DOMException
+ * @throws DOMException always, "not supported!"
*/
public String getNodeValue() throws DOMException
{
@@ -558,7 +563,7 @@ public String getNodeValue() throws DOMException
*
* @param nodeValue Value to set this node to
*
- * @throws DOMException
+ * @throws DOMException always, "not supported!"
*/
public void setNodeValue(String nodeValue) throws DOMException
{
@@ -572,7 +577,7 @@ public void setNodeValue(String nodeValue) throws DOMException
* NEEDSDOC @param value
* @return value Node value
*
- * @throws DOMException
+ * @throws DOMException always, "not supported!"
*/
// public String getValue ()
@@ -586,19 +591,18 @@ public void setNodeValue(String nodeValue) throws DOMException
*
* @param value Value to set this node to
*
- * @throws DOMException
+ * @throws DOMException always, "not supported!"
*/
public void setValue(String value) throws DOMException
{
error(XMLErrorResources.ER_FUNCTION_NOT_SUPPORTED); //"setValue not supported!");
}
- /**
- * Returns the name of this attribute.
- *
- * @return the name of this attribute.
- */
-
+ // /**
+ // * Returns the name of this attribute.
+ // *
+ // * @return the name of this attribute.
+ // */
// public String getName()
// {
// return this.getNodeName();
@@ -608,6 +612,7 @@ public void setValue(String value) throws DOMException
* Unimplemented. See org.w3c.dom.Node
*
* @return null
+ * @throws DOMException always, "not supported!"
*/
public Element getOwnerElement()
{
@@ -651,7 +656,7 @@ public NamedNodeMap getAttributes()
*
* @return null
*
- * @throws DOMException
+ * @throws DOMException always, "not supported!"
*/
public Node insertBefore(Node newChild, Node refChild) throws DOMException
{
@@ -669,7 +674,7 @@ public Node insertBefore(Node newChild, Node refChild) throws DOMException
*
* @return null
*
- * @throws DOMException
+ * @throws DOMException always, "not supported!"
*/
public Node replaceChild(Node newChild, Node oldChild) throws DOMException
{
@@ -686,7 +691,7 @@ public Node replaceChild(Node newChild, Node oldChild) throws DOMException
*
* @return null
*
- * @throws DOMException
+ * @throws DOMException always, "not supported!"
*/
public Node removeChild(Node oldChild) throws DOMException
{
@@ -746,7 +751,7 @@ public String getPrefix()
*
* @param prefix Prefix to set for this node
*
- * @throws DOMException
+ * @throws DOMException always, "not supported!"
*/
public void setPrefix(String prefix) throws DOMException
{
@@ -812,7 +817,7 @@ public Element getDocumentElement()
*
* @return null
*
- * @throws DOMException
+ * @throws DOMException always, "not supported!"
*/
public Element createElement(String tagName) throws DOMException
{
@@ -872,7 +877,7 @@ public Comment createComment(String data)
*
* @return null
*
- * @throws DOMException
+ * @throws DOMException always, "not supported!"
*/
public CDATASection createCDATASection(String data) throws DOMException
{
@@ -890,7 +895,7 @@ public CDATASection createCDATASection(String data) throws DOMException
*
* @return null
*
- * @throws DOMException
+ * @throws DOMException always, "not supported!"
*/
public ProcessingInstruction createProcessingInstruction(
String target, String data) throws DOMException
@@ -908,7 +913,7 @@ public ProcessingInstruction createProcessingInstruction(
*
* @return null
*
- * @throws DOMException
+ * @throws DOMException always, "not supported!"
*/
public Attr createAttribute(String name) throws DOMException
{
@@ -925,7 +930,7 @@ public Attr createAttribute(String name) throws DOMException
*
* @return null
*
- * @throws DOMException
+ * @throws DOMException always, "not supported!"
*/
public EntityReference createEntityReference(String name)
throws DOMException
@@ -947,7 +952,7 @@ public EntityReference createEntityReference(String name)
*
* @return null
*
- * @throws DOMException
+ * @throws DOMException always, "not supported!"
*/
public Node importNode(Node importedNode, boolean deep) throws DOMException
{
@@ -965,7 +970,7 @@ public Node importNode(Node importedNode, boolean deep) throws DOMException
*
* @return null
*
- * @throws DOMException
+ * @throws DOMException always, "not supported!"
*/
public Element createElementNS(String namespaceURI, String qualifiedName)
throws DOMException
@@ -984,7 +989,7 @@ public Element createElementNS(String namespaceURI, String qualifiedName)
*
* @return null
*
- * @throws DOMException
+ * @throws DOMException always, "not supported!"
*/
public Attr createAttributeNS(String namespaceURI, String qualifiedName)
throws DOMException
@@ -1016,7 +1021,7 @@ public Element getElementById(String elementId)
*
* @param data data to set for this node
*
- * @throws DOMException
+ * @throws DOMException always, "not supported!"
*/
public void setData(String data) throws DOMException
{
@@ -1031,7 +1036,7 @@ public void setData(String data) throws DOMException
*
* @return null
*
- * @throws DOMException
+ * @throws DOMException always, "not supported!"
*/
public String substringData(int offset, int count) throws DOMException
{
@@ -1046,7 +1051,7 @@ public String substringData(int offset, int count) throws DOMException
*
* @param arg String data to append
*
- * @throws DOMException
+ * @throws DOMException always, "not supported!"
*/
public void appendData(String arg) throws DOMException
{
@@ -1056,10 +1061,10 @@ public void appendData(String arg) throws DOMException
/**
* Unimplemented.
*
- * @param offset Start offset of substring to insert.
- * NEEDSDOC @param arg
+ * @param offset Start offset at which to insert data
+ * @param arg String to be inserted.
*
- * @throws DOMException
+ * @throws DOMException always, "not supported!"
*/
public void insertData(int offset, String arg) throws DOMException
{
@@ -1072,7 +1077,7 @@ public void insertData(int offset, String arg) throws DOMException
* @param offset Start offset of substring to delete.
* @param count The length of the substring to delete.
*
- * @throws DOMException
+ * @throws DOMException always, "not supported!"
*/
public void deleteData(int offset, int count) throws DOMException
{
@@ -1086,7 +1091,7 @@ public void deleteData(int offset, int count) throws DOMException
* @param count The length of the substring to replace.
* @param arg substring to replace with
*
- * @throws DOMException
+ * @throws DOMException always, "not supported!"
*/
public void replaceData(int offset, int count, String arg)
throws DOMException
@@ -1101,7 +1106,7 @@ public void replaceData(int offset, int count, String arg)
*
* @return null, unimplemented
*
- * @throws DOMException
+ * @throws DOMException always, "not supported!"
*/
public Text splitText(int offset) throws DOMException
{
@@ -1119,7 +1124,7 @@ public Text splitText(int offset) throws DOMException
*
* NEEDSDOC (adoptNode) @return
*
- * @throws DOMException
+ * @throws DOMException always, "not supported!"
*/
public Node adoptNode(Node source) throws DOMException
{
@@ -1157,7 +1162,7 @@ public String getInputEncoding()
* of this document. This is null when unspecified.
* @since DOM Level 3
*
- * NEEDSDOC @param encoding
+ * @param encoding String containing the encoding name for this document
*/
public void setInputEncoding(String encoding)
{
@@ -1288,9 +1293,6 @@ public Object getFeature(String feature, String version) {
* Text nodes, as well as any user data or event listeners
* registered on the nodes.
* @param arg The node to compare equality with.
- * @param deep If true, recursively compare the subtrees; if
- * false, compare only the nodes themselves (and its
- * attributes, if it is an Element).
* @return If the nodes, and possibly subtrees are equal,
* true otherwise false.
* @since DOM Level 3
@@ -1367,8 +1369,8 @@ else if (!getBaseURI().equals(((NodeImpl) arg).getBaseURI())) {
* Look up the namespace URI associated to the given prefix, starting from this node.
* Use lookupNamespaceURI(null) to lookup the default namespace
*
- * @param namespaceURI
- * @return th URI for the namespace
+ * @param specifiedPrefix String to be resolved, or null to look up the default namespace
+ * @return String, the URI for the namespace, or null if prefix not bound
* @since DOM Level 3
*/
public String lookupNamespaceURI(String specifiedPrefix) {
@@ -1531,10 +1533,10 @@ public boolean isDefaultNamespace(String namespaceURI){
/**
*
* DOM Level 3:
- * Look up the prefix associated to the given namespace URI, starting from this node.
+ * Look up the prefix associated to the given namespace URI, starting from this node. REVIEW: What happens if more than one prefix is bound to the same namespace? I suspect any valid prefix may be resolved, but there may be some "nearest" logic; check the DOM Level 3 spec.
*
- * @param namespaceURI
- * @return the prefix for the namespace
+ * @param namespaceURI String namespace URI to be resolved to a prefix
+ * @return String prefix for the namespace in this context.
*/
public String lookupPrefix(String namespaceURI){
@@ -1615,6 +1617,7 @@ public boolean isSameNode(Node other) {
* The string returned is made of the text content of this node
* depending on its type, as defined below:
*
+ *
Text Content of DOM nodes, by node type
*
*
Node type
*
Content
@@ -1665,6 +1668,7 @@ public void setTextContent(String textContent)
* The string returned is made of the text content of this node
* depending on its type, as defined below:
*
+ *
Text Content of DOM nodes, by node type
*
*
Node type
*
Content
@@ -1798,8 +1802,8 @@ public String getDocumentURI(){
/**
* DOM Level 3
- * An attribute specifying the actual encoding of this document. This is
- * null otherwise.
+ * @return a String specifying the actual encoding of this document, or
+ * null if no encoding could be retrieved
* This attribute represents the property [character encoding scheme]
* defined in .
* @since DOM Level 3
@@ -1810,10 +1814,10 @@ public String getActualEncoding() {
/**
* DOM Level 3
- * An attribute specifying the actual encoding of this document. This is
- * null otherwise.
* This attribute represents the property [character encoding scheme]
* defined in .
+ * @param value A string specifying the actual encoding of this document. This is
+ * null otherwise.
* @since DOM Level 3
*/
public void setActualEncoding(String value) {
@@ -1821,7 +1825,9 @@ public void setActualEncoding(String value) {
}
/**
- * DOM Level 3
+ * DOM Level 3, UNIMPLEMENTED
+ * @param content String, new text to replace all of the node's text content
+ * @return null until implemented.
*/
public Text replaceWholeText(String content)
throws DOMException{
@@ -1871,9 +1877,8 @@ public Text replaceWholeText(String content)
}
/**
- * DOM Level 3
- * Returns all text of Text nodes logically-adjacent text
- * nodes to this node, concatenated in document order.
+ * DOM Level 3, UNIMPLEMENTED.
+ * @return all text of Text nodes logically-adjacent to this node, concatenated in document order... or, in UnImplNode, null.
* @since DOM Level 3
*/
public String getWholeText(){
@@ -1898,24 +1903,28 @@ public String getWholeText(){
/**
* DOM Level 3
- * Returns whether this text node contains whitespace in element content,
- * often abusively called "ignorable whitespace".
+ * @return whether this text node contains whitespace in element
+ * content, often abusively called "ignorable whitespace". In
+ * UnImplNode, return false.
*/
public boolean isWhitespaceInElementContent(){
return false;
}
/**
- * NON-DOM: set the type of this attribute to be ID type.
+ * NON-DOM, UNIMPLEMENTED: set the type of this attribute node to
+ * be ID type.
*
- * @param id
+ * @param id boolean, true or false to set new state
*/
public void setIdAttribute(boolean id){
//PENDING
}
/**
- * DOM Level 3: register the given attribute node as an ID attribute
+ * DOM Level 3: register or deregister the given attribute node of this element as an ID attribute
+ * @param name Attribute node name
+ * @param makeID boolean, true or false to set new state
*/
public void setIdAttribute(String name, boolean makeId) {
//PENDING
@@ -1923,6 +1932,8 @@ public void setIdAttribute(String name, boolean makeId) {
/**
* DOM Level 3: register the given attribute node as an ID attribute
+ * @param at Attr node object to be registered or deregistered
+ * @param makeId boolean, true or false
*/
public void setIdAttributeNode(Attr at, boolean makeId) {
//PENDING
@@ -1930,6 +1941,9 @@ public void setIdAttributeNode(Attr at, boolean makeId) {
/**
* DOM Level 3: register the given attribute node as an ID attribute
+ * @param namespaceURI: String, namespace of attribute to be bound
+ * @param localName String, localName of attribute to be bound
+ * @param makeId boolean, true or false
*/
public void setIdAttributeNS(String namespaceURI, String localName,
boolean makeId) {
@@ -1938,7 +1952,8 @@ public void setIdAttributeNS(String namespaceURI, String localName,
/**
* Method getSchemaTypeInfo.
- * @return TypeInfo
+ * @return TypeInfo for this node, if it has a schema type, or null if not.
+ * (In this implementation, always null)
*/
public TypeInfo getSchemaTypeInfo(){
return null; //PENDING
diff --git a/src/org/apache/xml/utils/WrappedRuntimeException.java b/xalan/src/main/java/org/apache/xml/utils/WrappedRuntimeException.java
similarity index 100%
rename from src/org/apache/xml/utils/WrappedRuntimeException.java
rename to xalan/src/main/java/org/apache/xml/utils/WrappedRuntimeException.java
diff --git a/src/org/apache/xml/utils/WrongParserException.java b/xalan/src/main/java/org/apache/xml/utils/WrongParserException.java
similarity index 100%
rename from src/org/apache/xml/utils/WrongParserException.java
rename to xalan/src/main/java/org/apache/xml/utils/WrongParserException.java
diff --git a/src/org/apache/xml/utils/XML11Char.java b/xalan/src/main/java/org/apache/xml/utils/XML11Char.java
similarity index 100%
rename from src/org/apache/xml/utils/XML11Char.java
rename to xalan/src/main/java/org/apache/xml/utils/XML11Char.java
diff --git a/src/org/apache/xml/utils/XMLChar.java b/xalan/src/main/java/org/apache/xml/utils/XMLChar.java
similarity index 100%
rename from src/org/apache/xml/utils/XMLChar.java
rename to xalan/src/main/java/org/apache/xml/utils/XMLChar.java
diff --git a/src/org/apache/xml/utils/XMLCharacterRecognizer.java b/xalan/src/main/java/org/apache/xml/utils/XMLCharacterRecognizer.java
similarity index 100%
rename from src/org/apache/xml/utils/XMLCharacterRecognizer.java
rename to xalan/src/main/java/org/apache/xml/utils/XMLCharacterRecognizer.java
diff --git a/src/org/apache/xml/utils/XMLReaderManager.java b/xalan/src/main/java/org/apache/xml/utils/XMLReaderManager.java
similarity index 97%
rename from src/org/apache/xml/utils/XMLReaderManager.java
rename to xalan/src/main/java/org/apache/xml/utils/XMLReaderManager.java
index 780cc4bf9..409136cbe 100644
--- a/src/org/apache/xml/utils/XMLReaderManager.java
+++ b/xalan/src/main/java/org/apache/xml/utils/XMLReaderManager.java
@@ -146,17 +146,17 @@ public synchronized XMLReader getXMLReader() throws SAXException {
}
/**
- * Mark the cached XMLReader as available. If the reader was not
- * actually in the cache, do nothing.
+ * Mark the cached XMLReader as available for reuse.
*
* @param reader The XMLReader that's being released.
*/
public synchronized void releaseXMLReader(XMLReader reader) {
- if (reader == null) {
+ if (reader == null) {
return;
}
// If the reader that's being released is the cached reader
// for this thread, mark it as no longer being in use.
+ // TODO: REVIEW. I'm not sure this sequence makes sense.
if (m_readers.get() == reader) {
m_readers.set(null);
m_inUse.put(reader, Boolean.FALSE);
diff --git a/src/org/apache/xml/utils/XMLString.java b/xalan/src/main/java/org/apache/xml/utils/XMLString.java
similarity index 100%
rename from src/org/apache/xml/utils/XMLString.java
rename to xalan/src/main/java/org/apache/xml/utils/XMLString.java
diff --git a/src/org/apache/xml/utils/XMLStringDefault.java b/xalan/src/main/java/org/apache/xml/utils/XMLStringDefault.java
similarity index 100%
rename from src/org/apache/xml/utils/XMLStringDefault.java
rename to xalan/src/main/java/org/apache/xml/utils/XMLStringDefault.java
diff --git a/src/org/apache/xml/utils/XMLStringFactory.java b/xalan/src/main/java/org/apache/xml/utils/XMLStringFactory.java
similarity index 100%
rename from src/org/apache/xml/utils/XMLStringFactory.java
rename to xalan/src/main/java/org/apache/xml/utils/XMLStringFactory.java
diff --git a/src/org/apache/xml/utils/XMLStringFactoryDefault.java b/xalan/src/main/java/org/apache/xml/utils/XMLStringFactoryDefault.java
similarity index 100%
rename from src/org/apache/xml/utils/XMLStringFactoryDefault.java
rename to xalan/src/main/java/org/apache/xml/utils/XMLStringFactoryDefault.java
diff --git a/src/org/apache/xml/utils/package.html b/xalan/src/main/java/org/apache/xml/utils/package.html
similarity index 100%
rename from src/org/apache/xml/utils/package.html
rename to xalan/src/main/java/org/apache/xml/utils/package.html
diff --git a/src/org/apache/xml/utils/res/CharArrayWrapper.java b/xalan/src/main/java/org/apache/xml/utils/res/CharArrayWrapper.java
similarity index 100%
rename from src/org/apache/xml/utils/res/CharArrayWrapper.java
rename to xalan/src/main/java/org/apache/xml/utils/res/CharArrayWrapper.java
diff --git a/src/org/apache/xml/utils/res/IntArrayWrapper.java b/xalan/src/main/java/org/apache/xml/utils/res/IntArrayWrapper.java
similarity index 100%
rename from src/org/apache/xml/utils/res/IntArrayWrapper.java
rename to xalan/src/main/java/org/apache/xml/utils/res/IntArrayWrapper.java
diff --git a/src/org/apache/xml/utils/res/LongArrayWrapper.java b/xalan/src/main/java/org/apache/xml/utils/res/LongArrayWrapper.java
similarity index 100%
rename from src/org/apache/xml/utils/res/LongArrayWrapper.java
rename to xalan/src/main/java/org/apache/xml/utils/res/LongArrayWrapper.java
diff --git a/src/org/apache/xml/utils/res/StringArrayWrapper.java b/xalan/src/main/java/org/apache/xml/utils/res/StringArrayWrapper.java
similarity index 100%
rename from src/org/apache/xml/utils/res/StringArrayWrapper.java
rename to xalan/src/main/java/org/apache/xml/utils/res/StringArrayWrapper.java
diff --git a/src/org/apache/xml/utils/res/XResourceBundle.java b/xalan/src/main/java/org/apache/xml/utils/res/XResourceBundle.java
similarity index 100%
rename from src/org/apache/xml/utils/res/XResourceBundle.java
rename to xalan/src/main/java/org/apache/xml/utils/res/XResourceBundle.java
diff --git a/src/org/apache/xml/utils/res/XResourceBundleBase.java b/xalan/src/main/java/org/apache/xml/utils/res/XResourceBundleBase.java
similarity index 100%
rename from src/org/apache/xml/utils/res/XResourceBundleBase.java
rename to xalan/src/main/java/org/apache/xml/utils/res/XResourceBundleBase.java
diff --git a/src/org/apache/xml/utils/res/XResources_cy.java b/xalan/src/main/java/org/apache/xml/utils/res/XResources_cy.java
similarity index 100%
rename from src/org/apache/xml/utils/res/XResources_cy.java
rename to xalan/src/main/java/org/apache/xml/utils/res/XResources_cy.java
diff --git a/src/org/apache/xml/utils/res/XResources_de.java b/xalan/src/main/java/org/apache/xml/utils/res/XResources_de.java
similarity index 100%
rename from src/org/apache/xml/utils/res/XResources_de.java
rename to xalan/src/main/java/org/apache/xml/utils/res/XResources_de.java
diff --git a/src/org/apache/xml/utils/res/XResources_el.java b/xalan/src/main/java/org/apache/xml/utils/res/XResources_el.java
similarity index 100%
rename from src/org/apache/xml/utils/res/XResources_el.java
rename to xalan/src/main/java/org/apache/xml/utils/res/XResources_el.java
diff --git a/src/org/apache/xml/utils/res/XResources_en.java b/xalan/src/main/java/org/apache/xml/utils/res/XResources_en.java
similarity index 100%
rename from src/org/apache/xml/utils/res/XResources_en.java
rename to xalan/src/main/java/org/apache/xml/utils/res/XResources_en.java
diff --git a/src/org/apache/xml/utils/res/XResources_es.java b/xalan/src/main/java/org/apache/xml/utils/res/XResources_es.java
similarity index 100%
rename from src/org/apache/xml/utils/res/XResources_es.java
rename to xalan/src/main/java/org/apache/xml/utils/res/XResources_es.java
diff --git a/src/org/apache/xml/utils/res/XResources_fr.java b/xalan/src/main/java/org/apache/xml/utils/res/XResources_fr.java
similarity index 100%
rename from src/org/apache/xml/utils/res/XResources_fr.java
rename to xalan/src/main/java/org/apache/xml/utils/res/XResources_fr.java
diff --git a/src/org/apache/xml/utils/res/XResources_he.java b/xalan/src/main/java/org/apache/xml/utils/res/XResources_he.java
similarity index 100%
rename from src/org/apache/xml/utils/res/XResources_he.java
rename to xalan/src/main/java/org/apache/xml/utils/res/XResources_he.java
diff --git a/src/org/apache/xml/utils/res/XResources_hy.java b/xalan/src/main/java/org/apache/xml/utils/res/XResources_hy.java
similarity index 100%
rename from src/org/apache/xml/utils/res/XResources_hy.java
rename to xalan/src/main/java/org/apache/xml/utils/res/XResources_hy.java
diff --git a/src/org/apache/xml/utils/res/XResources_it.java b/xalan/src/main/java/org/apache/xml/utils/res/XResources_it.java
similarity index 100%
rename from src/org/apache/xml/utils/res/XResources_it.java
rename to xalan/src/main/java/org/apache/xml/utils/res/XResources_it.java
diff --git a/src/org/apache/xml/utils/res/XResources_ja_JP_A.java b/xalan/src/main/java/org/apache/xml/utils/res/XResources_ja_JP_A.java
similarity index 100%
rename from src/org/apache/xml/utils/res/XResources_ja_JP_A.java
rename to xalan/src/main/java/org/apache/xml/utils/res/XResources_ja_JP_A.java
diff --git a/src/org/apache/xml/utils/res/XResources_ja_JP_HA.java b/xalan/src/main/java/org/apache/xml/utils/res/XResources_ja_JP_HA.java
similarity index 100%
rename from src/org/apache/xml/utils/res/XResources_ja_JP_HA.java
rename to xalan/src/main/java/org/apache/xml/utils/res/XResources_ja_JP_HA.java
diff --git a/src/org/apache/xml/utils/res/XResources_ja_JP_HI.java b/xalan/src/main/java/org/apache/xml/utils/res/XResources_ja_JP_HI.java
similarity index 100%
rename from src/org/apache/xml/utils/res/XResources_ja_JP_HI.java
rename to xalan/src/main/java/org/apache/xml/utils/res/XResources_ja_JP_HI.java
diff --git a/src/org/apache/xml/utils/res/XResources_ja_JP_I.java b/xalan/src/main/java/org/apache/xml/utils/res/XResources_ja_JP_I.java
similarity index 100%
rename from src/org/apache/xml/utils/res/XResources_ja_JP_I.java
rename to xalan/src/main/java/org/apache/xml/utils/res/XResources_ja_JP_I.java
diff --git a/src/org/apache/xml/utils/res/XResources_ka.java b/xalan/src/main/java/org/apache/xml/utils/res/XResources_ka.java
similarity index 100%
rename from src/org/apache/xml/utils/res/XResources_ka.java
rename to xalan/src/main/java/org/apache/xml/utils/res/XResources_ka.java
diff --git a/src/org/apache/xml/utils/res/XResources_ko.java b/xalan/src/main/java/org/apache/xml/utils/res/XResources_ko.java
similarity index 100%
rename from src/org/apache/xml/utils/res/XResources_ko.java
rename to xalan/src/main/java/org/apache/xml/utils/res/XResources_ko.java
diff --git a/src/org/apache/xml/utils/res/XResources_sv.java b/xalan/src/main/java/org/apache/xml/utils/res/XResources_sv.java
similarity index 100%
rename from src/org/apache/xml/utils/res/XResources_sv.java
rename to xalan/src/main/java/org/apache/xml/utils/res/XResources_sv.java
diff --git a/src/org/apache/xml/utils/res/XResources_zh_CN.java b/xalan/src/main/java/org/apache/xml/utils/res/XResources_zh_CN.java
similarity index 100%
rename from src/org/apache/xml/utils/res/XResources_zh_CN.java
rename to xalan/src/main/java/org/apache/xml/utils/res/XResources_zh_CN.java
diff --git a/src/org/apache/xml/utils/res/XResources_zh_TW.java b/xalan/src/main/java/org/apache/xml/utils/res/XResources_zh_TW.java
similarity index 100%
rename from src/org/apache/xml/utils/res/XResources_zh_TW.java
rename to xalan/src/main/java/org/apache/xml/utils/res/XResources_zh_TW.java
diff --git a/src/org/apache/xpath/Arg.java b/xalan/src/main/java/org/apache/xpath/Arg.java
similarity index 100%
rename from src/org/apache/xpath/Arg.java
rename to xalan/src/main/java/org/apache/xpath/Arg.java
diff --git a/src/org/apache/xpath/CachedXPathAPI.java b/xalan/src/main/java/org/apache/xpath/CachedXPathAPI.java
similarity index 100%
rename from src/org/apache/xpath/CachedXPathAPI.java
rename to xalan/src/main/java/org/apache/xpath/CachedXPathAPI.java
diff --git a/src/org/apache/xpath/Expression.java b/xalan/src/main/java/org/apache/xpath/Expression.java
similarity index 100%
rename from src/org/apache/xpath/Expression.java
rename to xalan/src/main/java/org/apache/xpath/Expression.java
diff --git a/src/org/apache/xpath/ExpressionNode.java b/xalan/src/main/java/org/apache/xpath/ExpressionNode.java
similarity index 77%
rename from src/org/apache/xpath/ExpressionNode.java
rename to xalan/src/main/java/org/apache/xpath/ExpressionNode.java
index 3a16d7090..a6edd57e5 100644
--- a/src/org/apache/xpath/ExpressionNode.java
+++ b/xalan/src/main/java/org/apache/xpath/ExpressionNode.java
@@ -33,20 +33,28 @@
*/
public interface ExpressionNode extends SourceLocator
{
- /** This pair of methods are used to inform the node of its
- parent. */
+ /** @param n ExpressionNode to be set as parent of this one
+ */
public void exprSetParent(ExpressionNode n);
+ /** @return ExpressionNode currently set as parent of this one
+ */
public ExpressionNode exprGetParent();
/** This method tells the node to add its argument to the node's
- list of children. */
+ list of children.
+ @param n ExpressionNode to be added to the list of children
+ @param i Insertion offset within that list
+ */
public void exprAddChild(ExpressionNode n, int i);
/** This method returns a child node. The children are numbered
- from zero, left to right. */
+ from zero, left to right.
+ @param i Index of child to be returned
+ @return ExpressionNode at that child offset, or null if none found
+ */
public ExpressionNode exprGetChild(int i);
- /** Return the number of children the node has. */
+ /** @return the number of children this ExpressionNode has. */
public int exprGetNumChildren();
}
diff --git a/src/org/apache/xpath/ExpressionOwner.java b/xalan/src/main/java/org/apache/xpath/ExpressionOwner.java
similarity index 100%
rename from src/org/apache/xpath/ExpressionOwner.java
rename to xalan/src/main/java/org/apache/xpath/ExpressionOwner.java
diff --git a/src/org/apache/xpath/ExtensionsProvider.java b/xalan/src/main/java/org/apache/xpath/ExtensionsProvider.java
similarity index 100%
rename from src/org/apache/xpath/ExtensionsProvider.java
rename to xalan/src/main/java/org/apache/xpath/ExtensionsProvider.java
diff --git a/src/org/apache/xpath/FoundIndex.java b/xalan/src/main/java/org/apache/xpath/FoundIndex.java
similarity index 100%
rename from src/org/apache/xpath/FoundIndex.java
rename to xalan/src/main/java/org/apache/xpath/FoundIndex.java
diff --git a/src/org/apache/xpath/NodeSet.java b/xalan/src/main/java/org/apache/xpath/NodeSet.java
similarity index 100%
rename from src/org/apache/xpath/NodeSet.java
rename to xalan/src/main/java/org/apache/xpath/NodeSet.java
diff --git a/src/org/apache/xpath/NodeSetDTM.java b/xalan/src/main/java/org/apache/xpath/NodeSetDTM.java
similarity index 100%
rename from src/org/apache/xpath/NodeSetDTM.java
rename to xalan/src/main/java/org/apache/xpath/NodeSetDTM.java
diff --git a/src/org/apache/xpath/SourceTree.java b/xalan/src/main/java/org/apache/xpath/SourceTree.java
similarity index 100%
rename from src/org/apache/xpath/SourceTree.java
rename to xalan/src/main/java/org/apache/xpath/SourceTree.java
diff --git a/src/org/apache/xpath/SourceTreeManager.java b/xalan/src/main/java/org/apache/xpath/SourceTreeManager.java
similarity index 100%
rename from src/org/apache/xpath/SourceTreeManager.java
rename to xalan/src/main/java/org/apache/xpath/SourceTreeManager.java
diff --git a/src/org/apache/xpath/VariableStack.java b/xalan/src/main/java/org/apache/xpath/VariableStack.java
similarity index 100%
rename from src/org/apache/xpath/VariableStack.java
rename to xalan/src/main/java/org/apache/xpath/VariableStack.java
diff --git a/src/org/apache/xpath/WhitespaceStrippingElementMatcher.java b/xalan/src/main/java/org/apache/xpath/WhitespaceStrippingElementMatcher.java
similarity index 95%
rename from src/org/apache/xpath/WhitespaceStrippingElementMatcher.java
rename to xalan/src/main/java/org/apache/xpath/WhitespaceStrippingElementMatcher.java
index 2af8fdc41..9720f6866 100644
--- a/src/org/apache/xpath/WhitespaceStrippingElementMatcher.java
+++ b/xalan/src/main/java/org/apache/xpath/WhitespaceStrippingElementMatcher.java
@@ -39,7 +39,7 @@ public interface WhitespaceStrippingElementMatcher
*
* @return true if the whitespace should be stripped.
*
- * @throws TransformerException
+ * @throws TransformerException if the question can't be answered (bad arguments, bad state).
*/
public boolean shouldStripWhiteSpace(
XPathContext support, Element targetElement) throws TransformerException;
diff --git a/src/org/apache/xpath/XPath.java b/xalan/src/main/java/org/apache/xpath/XPath.java
similarity index 100%
rename from src/org/apache/xpath/XPath.java
rename to xalan/src/main/java/org/apache/xpath/XPath.java
diff --git a/src/org/apache/xpath/XPathAPI.java b/xalan/src/main/java/org/apache/xpath/XPathAPI.java
similarity index 100%
rename from src/org/apache/xpath/XPathAPI.java
rename to xalan/src/main/java/org/apache/xpath/XPathAPI.java
diff --git a/src/org/apache/xpath/XPathContext.java b/xalan/src/main/java/org/apache/xpath/XPathContext.java
similarity index 100%
rename from src/org/apache/xpath/XPathContext.java
rename to xalan/src/main/java/org/apache/xpath/XPathContext.java
diff --git a/src/org/apache/xpath/XPathException.java b/xalan/src/main/java/org/apache/xpath/XPathException.java
similarity index 100%
rename from src/org/apache/xpath/XPathException.java
rename to xalan/src/main/java/org/apache/xpath/XPathException.java
diff --git a/src/org/apache/xpath/XPathFactory.java b/xalan/src/main/java/org/apache/xpath/XPathFactory.java
similarity index 100%
rename from src/org/apache/xpath/XPathFactory.java
rename to xalan/src/main/java/org/apache/xpath/XPathFactory.java
diff --git a/src/org/apache/xpath/XPathProcessorException.java b/xalan/src/main/java/org/apache/xpath/XPathProcessorException.java
similarity index 100%
rename from src/org/apache/xpath/XPathProcessorException.java
rename to xalan/src/main/java/org/apache/xpath/XPathProcessorException.java
diff --git a/src/org/apache/xpath/XPathVisitable.java b/xalan/src/main/java/org/apache/xpath/XPathVisitable.java
similarity index 100%
rename from src/org/apache/xpath/XPathVisitable.java
rename to xalan/src/main/java/org/apache/xpath/XPathVisitable.java
diff --git a/src/org/apache/xpath/XPathVisitor.java b/xalan/src/main/java/org/apache/xpath/XPathVisitor.java
similarity index 100%
rename from src/org/apache/xpath/XPathVisitor.java
rename to xalan/src/main/java/org/apache/xpath/XPathVisitor.java
diff --git a/src/org/apache/xpath/axes/AttributeIterator.java b/xalan/src/main/java/org/apache/xpath/axes/AttributeIterator.java
similarity index 100%
rename from src/org/apache/xpath/axes/AttributeIterator.java
rename to xalan/src/main/java/org/apache/xpath/axes/AttributeIterator.java
diff --git a/src/org/apache/xpath/axes/AxesWalker.java b/xalan/src/main/java/org/apache/xpath/axes/AxesWalker.java
similarity index 100%
rename from src/org/apache/xpath/axes/AxesWalker.java
rename to xalan/src/main/java/org/apache/xpath/axes/AxesWalker.java
diff --git a/src/org/apache/xpath/axes/BasicTestIterator.java b/xalan/src/main/java/org/apache/xpath/axes/BasicTestIterator.java
similarity index 100%
rename from src/org/apache/xpath/axes/BasicTestIterator.java
rename to xalan/src/main/java/org/apache/xpath/axes/BasicTestIterator.java
diff --git a/src/org/apache/xpath/axes/ChildIterator.java b/xalan/src/main/java/org/apache/xpath/axes/ChildIterator.java
similarity index 100%
rename from src/org/apache/xpath/axes/ChildIterator.java
rename to xalan/src/main/java/org/apache/xpath/axes/ChildIterator.java
diff --git a/src/org/apache/xpath/axes/ChildTestIterator.java b/xalan/src/main/java/org/apache/xpath/axes/ChildTestIterator.java
similarity index 100%
rename from src/org/apache/xpath/axes/ChildTestIterator.java
rename to xalan/src/main/java/org/apache/xpath/axes/ChildTestIterator.java
diff --git a/src/org/apache/xpath/axes/ContextNodeList.java b/xalan/src/main/java/org/apache/xpath/axes/ContextNodeList.java
similarity index 100%
rename from src/org/apache/xpath/axes/ContextNodeList.java
rename to xalan/src/main/java/org/apache/xpath/axes/ContextNodeList.java
diff --git a/src/org/apache/xpath/axes/DescendantIterator.java b/xalan/src/main/java/org/apache/xpath/axes/DescendantIterator.java
similarity index 100%
rename from src/org/apache/xpath/axes/DescendantIterator.java
rename to xalan/src/main/java/org/apache/xpath/axes/DescendantIterator.java
diff --git a/src/org/apache/xpath/axes/FilterExprIterator.java b/xalan/src/main/java/org/apache/xpath/axes/FilterExprIterator.java
similarity index 100%
rename from src/org/apache/xpath/axes/FilterExprIterator.java
rename to xalan/src/main/java/org/apache/xpath/axes/FilterExprIterator.java
diff --git a/src/org/apache/xpath/axes/FilterExprIteratorSimple.java b/xalan/src/main/java/org/apache/xpath/axes/FilterExprIteratorSimple.java
similarity index 100%
rename from src/org/apache/xpath/axes/FilterExprIteratorSimple.java
rename to xalan/src/main/java/org/apache/xpath/axes/FilterExprIteratorSimple.java
diff --git a/src/org/apache/xpath/axes/FilterExprWalker.java b/xalan/src/main/java/org/apache/xpath/axes/FilterExprWalker.java
similarity index 100%
rename from src/org/apache/xpath/axes/FilterExprWalker.java
rename to xalan/src/main/java/org/apache/xpath/axes/FilterExprWalker.java
diff --git a/src/org/apache/xpath/axes/HasPositionalPredChecker.java b/xalan/src/main/java/org/apache/xpath/axes/HasPositionalPredChecker.java
similarity index 100%
rename from src/org/apache/xpath/axes/HasPositionalPredChecker.java
rename to xalan/src/main/java/org/apache/xpath/axes/HasPositionalPredChecker.java
diff --git a/src/org/apache/xpath/axes/IteratorPool.java b/xalan/src/main/java/org/apache/xpath/axes/IteratorPool.java
similarity index 100%
rename from src/org/apache/xpath/axes/IteratorPool.java
rename to xalan/src/main/java/org/apache/xpath/axes/IteratorPool.java
diff --git a/src/org/apache/xpath/axes/LocPathIterator.java b/xalan/src/main/java/org/apache/xpath/axes/LocPathIterator.java
similarity index 99%
rename from src/org/apache/xpath/axes/LocPathIterator.java
rename to xalan/src/main/java/org/apache/xpath/axes/LocPathIterator.java
index 38ef745d0..23fecf175 100644
--- a/src/org/apache/xpath/axes/LocPathIterator.java
+++ b/xalan/src/main/java/org/apache/xpath/axes/LocPathIterator.java
@@ -598,7 +598,7 @@ public int previousNode()
* show. It is here only to fullfill the DOM NodeIterator
* interface.
*
- * @return For now, always NodeFilter.SHOW_ALL & ~NodeFilter.SHOW_ENTITY_REFERENCE.
+ * @return For now, always NodeFilter.SHOW_ALL & ~NodeFilter.SHOW_ENTITY_REFERENCE.
* @see org.w3c.dom.traversal.NodeIterator
*/
public int getWhatToShow()
diff --git a/src/org/apache/xpath/axes/MatchPatternIterator.java b/xalan/src/main/java/org/apache/xpath/axes/MatchPatternIterator.java
similarity index 100%
rename from src/org/apache/xpath/axes/MatchPatternIterator.java
rename to xalan/src/main/java/org/apache/xpath/axes/MatchPatternIterator.java
diff --git a/src/org/apache/xpath/axes/NodeSequence.java b/xalan/src/main/java/org/apache/xpath/axes/NodeSequence.java
similarity index 100%
rename from src/org/apache/xpath/axes/NodeSequence.java
rename to xalan/src/main/java/org/apache/xpath/axes/NodeSequence.java
diff --git a/src/org/apache/xpath/axes/OneStepIterator.java b/xalan/src/main/java/org/apache/xpath/axes/OneStepIterator.java
similarity index 100%
rename from src/org/apache/xpath/axes/OneStepIterator.java
rename to xalan/src/main/java/org/apache/xpath/axes/OneStepIterator.java
diff --git a/src/org/apache/xpath/axes/OneStepIteratorForward.java b/xalan/src/main/java/org/apache/xpath/axes/OneStepIteratorForward.java
similarity index 98%
rename from src/org/apache/xpath/axes/OneStepIteratorForward.java
rename to xalan/src/main/java/org/apache/xpath/axes/OneStepIteratorForward.java
index 2fe1583a8..4af845294 100644
--- a/src/org/apache/xpath/axes/OneStepIteratorForward.java
+++ b/xalan/src/main/java/org/apache/xpath/axes/OneStepIteratorForward.java
@@ -133,7 +133,7 @@ public void setRoot(int context, Object environment)
// }
/**
- * Get the next node via getFirstAttribute && getNextAttribute.
+ * Get the next node via getFirstAttribute and getNextAttribute.
*/
protected int getNextNode()
{
diff --git a/src/org/apache/xpath/axes/PathComponent.java b/xalan/src/main/java/org/apache/xpath/axes/PathComponent.java
similarity index 100%
rename from src/org/apache/xpath/axes/PathComponent.java
rename to xalan/src/main/java/org/apache/xpath/axes/PathComponent.java
diff --git a/src/org/apache/xpath/axes/PredicatedNodeTest.java b/xalan/src/main/java/org/apache/xpath/axes/PredicatedNodeTest.java
similarity index 100%
rename from src/org/apache/xpath/axes/PredicatedNodeTest.java
rename to xalan/src/main/java/org/apache/xpath/axes/PredicatedNodeTest.java
diff --git a/src/org/apache/xpath/axes/RTFIterator.java b/xalan/src/main/java/org/apache/xpath/axes/RTFIterator.java
similarity index 100%
rename from src/org/apache/xpath/axes/RTFIterator.java
rename to xalan/src/main/java/org/apache/xpath/axes/RTFIterator.java
diff --git a/src/org/apache/xpath/axes/ReverseAxesWalker.java b/xalan/src/main/java/org/apache/xpath/axes/ReverseAxesWalker.java
similarity index 100%
rename from src/org/apache/xpath/axes/ReverseAxesWalker.java
rename to xalan/src/main/java/org/apache/xpath/axes/ReverseAxesWalker.java
diff --git a/src/org/apache/xpath/axes/SelfIteratorNoPredicate.java b/xalan/src/main/java/org/apache/xpath/axes/SelfIteratorNoPredicate.java
similarity index 100%
rename from src/org/apache/xpath/axes/SelfIteratorNoPredicate.java
rename to xalan/src/main/java/org/apache/xpath/axes/SelfIteratorNoPredicate.java
diff --git a/src/org/apache/xpath/axes/SubContextList.java b/xalan/src/main/java/org/apache/xpath/axes/SubContextList.java
similarity index 100%
rename from src/org/apache/xpath/axes/SubContextList.java
rename to xalan/src/main/java/org/apache/xpath/axes/SubContextList.java
diff --git a/src/org/apache/xpath/axes/UnionChildIterator.java b/xalan/src/main/java/org/apache/xpath/axes/UnionChildIterator.java
similarity index 100%
rename from src/org/apache/xpath/axes/UnionChildIterator.java
rename to xalan/src/main/java/org/apache/xpath/axes/UnionChildIterator.java
diff --git a/src/org/apache/xpath/axes/UnionPathIterator.java b/xalan/src/main/java/org/apache/xpath/axes/UnionPathIterator.java
similarity index 100%
rename from src/org/apache/xpath/axes/UnionPathIterator.java
rename to xalan/src/main/java/org/apache/xpath/axes/UnionPathIterator.java
diff --git a/src/org/apache/xpath/axes/WalkerFactory.java b/xalan/src/main/java/org/apache/xpath/axes/WalkerFactory.java
similarity index 100%
rename from src/org/apache/xpath/axes/WalkerFactory.java
rename to xalan/src/main/java/org/apache/xpath/axes/WalkerFactory.java
diff --git a/src/org/apache/xpath/axes/WalkingIterator.java b/xalan/src/main/java/org/apache/xpath/axes/WalkingIterator.java
similarity index 100%
rename from src/org/apache/xpath/axes/WalkingIterator.java
rename to xalan/src/main/java/org/apache/xpath/axes/WalkingIterator.java
diff --git a/src/org/apache/xpath/axes/WalkingIteratorSorted.java b/xalan/src/main/java/org/apache/xpath/axes/WalkingIteratorSorted.java
similarity index 100%
rename from src/org/apache/xpath/axes/WalkingIteratorSorted.java
rename to xalan/src/main/java/org/apache/xpath/axes/WalkingIteratorSorted.java
diff --git a/src/org/apache/xpath/axes/package.html b/xalan/src/main/java/org/apache/xpath/axes/package.html
similarity index 100%
rename from src/org/apache/xpath/axes/package.html
rename to xalan/src/main/java/org/apache/xpath/axes/package.html
diff --git a/src/org/apache/xpath/compiler/Compiler.java b/xalan/src/main/java/org/apache/xpath/compiler/Compiler.java
similarity index 100%
rename from src/org/apache/xpath/compiler/Compiler.java
rename to xalan/src/main/java/org/apache/xpath/compiler/Compiler.java
diff --git a/src/org/apache/xpath/compiler/FunctionTable.java b/xalan/src/main/java/org/apache/xpath/compiler/FunctionTable.java
similarity index 100%
rename from src/org/apache/xpath/compiler/FunctionTable.java
rename to xalan/src/main/java/org/apache/xpath/compiler/FunctionTable.java
diff --git a/src/org/apache/xpath/compiler/Keywords.java b/xalan/src/main/java/org/apache/xpath/compiler/Keywords.java
similarity index 100%
rename from src/org/apache/xpath/compiler/Keywords.java
rename to xalan/src/main/java/org/apache/xpath/compiler/Keywords.java
diff --git a/src/org/apache/xpath/compiler/Lexer.java b/xalan/src/main/java/org/apache/xpath/compiler/Lexer.java
similarity index 100%
rename from src/org/apache/xpath/compiler/Lexer.java
rename to xalan/src/main/java/org/apache/xpath/compiler/Lexer.java
diff --git a/src/org/apache/xpath/compiler/OpCodes.java b/xalan/src/main/java/org/apache/xpath/compiler/OpCodes.java
similarity index 100%
rename from src/org/apache/xpath/compiler/OpCodes.java
rename to xalan/src/main/java/org/apache/xpath/compiler/OpCodes.java
diff --git a/src/org/apache/xpath/compiler/OpMap.java b/xalan/src/main/java/org/apache/xpath/compiler/OpMap.java
similarity index 100%
rename from src/org/apache/xpath/compiler/OpMap.java
rename to xalan/src/main/java/org/apache/xpath/compiler/OpMap.java
diff --git a/src/org/apache/xpath/compiler/OpMapVector.java b/xalan/src/main/java/org/apache/xpath/compiler/OpMapVector.java
similarity index 100%
rename from src/org/apache/xpath/compiler/OpMapVector.java
rename to xalan/src/main/java/org/apache/xpath/compiler/OpMapVector.java
diff --git a/src/org/apache/xpath/compiler/PsuedoNames.java b/xalan/src/main/java/org/apache/xpath/compiler/PsuedoNames.java
similarity index 100%
rename from src/org/apache/xpath/compiler/PsuedoNames.java
rename to xalan/src/main/java/org/apache/xpath/compiler/PsuedoNames.java
diff --git a/src/org/apache/xpath/compiler/XPathDumper.java b/xalan/src/main/java/org/apache/xpath/compiler/XPathDumper.java
similarity index 100%
rename from src/org/apache/xpath/compiler/XPathDumper.java
rename to xalan/src/main/java/org/apache/xpath/compiler/XPathDumper.java
diff --git a/src/org/apache/xpath/compiler/XPathParser.java b/xalan/src/main/java/org/apache/xpath/compiler/XPathParser.java
similarity index 100%
rename from src/org/apache/xpath/compiler/XPathParser.java
rename to xalan/src/main/java/org/apache/xpath/compiler/XPathParser.java
diff --git a/src/org/apache/xpath/compiler/package.html b/xalan/src/main/java/org/apache/xpath/compiler/package.html
similarity index 100%
rename from src/org/apache/xpath/compiler/package.html
rename to xalan/src/main/java/org/apache/xpath/compiler/package.html
diff --git a/src/org/apache/xpath/domapi/XPathEvaluatorImpl.java b/xalan/src/main/java/org/apache/xpath/domapi/XPathEvaluatorImpl.java
similarity index 100%
rename from src/org/apache/xpath/domapi/XPathEvaluatorImpl.java
rename to xalan/src/main/java/org/apache/xpath/domapi/XPathEvaluatorImpl.java
diff --git a/src/org/apache/xpath/domapi/XPathExpressionImpl.java b/xalan/src/main/java/org/apache/xpath/domapi/XPathExpressionImpl.java
similarity index 100%
rename from src/org/apache/xpath/domapi/XPathExpressionImpl.java
rename to xalan/src/main/java/org/apache/xpath/domapi/XPathExpressionImpl.java
diff --git a/src/org/apache/xpath/domapi/XPathNSResolverImpl.java b/xalan/src/main/java/org/apache/xpath/domapi/XPathNSResolverImpl.java
similarity index 100%
rename from src/org/apache/xpath/domapi/XPathNSResolverImpl.java
rename to xalan/src/main/java/org/apache/xpath/domapi/XPathNSResolverImpl.java
diff --git a/src/org/apache/xpath/domapi/XPathNamespaceImpl.java b/xalan/src/main/java/org/apache/xpath/domapi/XPathNamespaceImpl.java
similarity index 100%
rename from src/org/apache/xpath/domapi/XPathNamespaceImpl.java
rename to xalan/src/main/java/org/apache/xpath/domapi/XPathNamespaceImpl.java
diff --git a/src/org/apache/xpath/domapi/XPathResultImpl.java b/xalan/src/main/java/org/apache/xpath/domapi/XPathResultImpl.java
similarity index 100%
rename from src/org/apache/xpath/domapi/XPathResultImpl.java
rename to xalan/src/main/java/org/apache/xpath/domapi/XPathResultImpl.java
diff --git a/src/org/apache/xpath/domapi/XPathStylesheetDOM3Exception.java b/xalan/src/main/java/org/apache/xpath/domapi/XPathStylesheetDOM3Exception.java
similarity index 100%
rename from src/org/apache/xpath/domapi/XPathStylesheetDOM3Exception.java
rename to xalan/src/main/java/org/apache/xpath/domapi/XPathStylesheetDOM3Exception.java
diff --git a/src/org/apache/xpath/domapi/package.html b/xalan/src/main/java/org/apache/xpath/domapi/package.html
similarity index 100%
rename from src/org/apache/xpath/domapi/package.html
rename to xalan/src/main/java/org/apache/xpath/domapi/package.html
diff --git a/src/org/apache/xpath/functions/FuncBoolean.java b/xalan/src/main/java/org/apache/xpath/functions/FuncBoolean.java
similarity index 100%
rename from src/org/apache/xpath/functions/FuncBoolean.java
rename to xalan/src/main/java/org/apache/xpath/functions/FuncBoolean.java
diff --git a/src/org/apache/xpath/functions/FuncCeiling.java b/xalan/src/main/java/org/apache/xpath/functions/FuncCeiling.java
similarity index 100%
rename from src/org/apache/xpath/functions/FuncCeiling.java
rename to xalan/src/main/java/org/apache/xpath/functions/FuncCeiling.java
diff --git a/src/org/apache/xpath/functions/FuncConcat.java b/xalan/src/main/java/org/apache/xpath/functions/FuncConcat.java
similarity index 100%
rename from src/org/apache/xpath/functions/FuncConcat.java
rename to xalan/src/main/java/org/apache/xpath/functions/FuncConcat.java
diff --git a/src/org/apache/xpath/functions/FuncContains.java b/xalan/src/main/java/org/apache/xpath/functions/FuncContains.java
similarity index 100%
rename from src/org/apache/xpath/functions/FuncContains.java
rename to xalan/src/main/java/org/apache/xpath/functions/FuncContains.java
diff --git a/src/org/apache/xpath/functions/FuncCount.java b/xalan/src/main/java/org/apache/xpath/functions/FuncCount.java
similarity index 100%
rename from src/org/apache/xpath/functions/FuncCount.java
rename to xalan/src/main/java/org/apache/xpath/functions/FuncCount.java
diff --git a/src/org/apache/xpath/functions/FuncCurrent.java b/xalan/src/main/java/org/apache/xpath/functions/FuncCurrent.java
similarity index 100%
rename from src/org/apache/xpath/functions/FuncCurrent.java
rename to xalan/src/main/java/org/apache/xpath/functions/FuncCurrent.java
diff --git a/src/org/apache/xpath/functions/FuncDoclocation.java b/xalan/src/main/java/org/apache/xpath/functions/FuncDoclocation.java
similarity index 100%
rename from src/org/apache/xpath/functions/FuncDoclocation.java
rename to xalan/src/main/java/org/apache/xpath/functions/FuncDoclocation.java
diff --git a/src/org/apache/xpath/functions/FuncExtElementAvailable.java b/xalan/src/main/java/org/apache/xpath/functions/FuncExtElementAvailable.java
similarity index 100%
rename from src/org/apache/xpath/functions/FuncExtElementAvailable.java
rename to xalan/src/main/java/org/apache/xpath/functions/FuncExtElementAvailable.java
diff --git a/src/org/apache/xpath/functions/FuncExtFunction.java b/xalan/src/main/java/org/apache/xpath/functions/FuncExtFunction.java
similarity index 100%
rename from src/org/apache/xpath/functions/FuncExtFunction.java
rename to xalan/src/main/java/org/apache/xpath/functions/FuncExtFunction.java
diff --git a/src/org/apache/xpath/functions/FuncExtFunctionAvailable.java b/xalan/src/main/java/org/apache/xpath/functions/FuncExtFunctionAvailable.java
similarity index 100%
rename from src/org/apache/xpath/functions/FuncExtFunctionAvailable.java
rename to xalan/src/main/java/org/apache/xpath/functions/FuncExtFunctionAvailable.java
diff --git a/src/org/apache/xpath/functions/FuncFalse.java b/xalan/src/main/java/org/apache/xpath/functions/FuncFalse.java
similarity index 100%
rename from src/org/apache/xpath/functions/FuncFalse.java
rename to xalan/src/main/java/org/apache/xpath/functions/FuncFalse.java
diff --git a/src/org/apache/xpath/functions/FuncFloor.java b/xalan/src/main/java/org/apache/xpath/functions/FuncFloor.java
similarity index 100%
rename from src/org/apache/xpath/functions/FuncFloor.java
rename to xalan/src/main/java/org/apache/xpath/functions/FuncFloor.java
diff --git a/src/org/apache/xpath/functions/FuncGenerateId.java b/xalan/src/main/java/org/apache/xpath/functions/FuncGenerateId.java
similarity index 100%
rename from src/org/apache/xpath/functions/FuncGenerateId.java
rename to xalan/src/main/java/org/apache/xpath/functions/FuncGenerateId.java
diff --git a/src/org/apache/xpath/functions/FuncId.java b/xalan/src/main/java/org/apache/xpath/functions/FuncId.java
similarity index 100%
rename from src/org/apache/xpath/functions/FuncId.java
rename to xalan/src/main/java/org/apache/xpath/functions/FuncId.java
diff --git a/src/org/apache/xpath/functions/FuncLang.java b/xalan/src/main/java/org/apache/xpath/functions/FuncLang.java
similarity index 100%
rename from src/org/apache/xpath/functions/FuncLang.java
rename to xalan/src/main/java/org/apache/xpath/functions/FuncLang.java
diff --git a/src/org/apache/xpath/functions/FuncLast.java b/xalan/src/main/java/org/apache/xpath/functions/FuncLast.java
similarity index 100%
rename from src/org/apache/xpath/functions/FuncLast.java
rename to xalan/src/main/java/org/apache/xpath/functions/FuncLast.java
diff --git a/src/org/apache/xpath/functions/FuncLocalPart.java b/xalan/src/main/java/org/apache/xpath/functions/FuncLocalPart.java
similarity index 100%
rename from src/org/apache/xpath/functions/FuncLocalPart.java
rename to xalan/src/main/java/org/apache/xpath/functions/FuncLocalPart.java
diff --git a/src/org/apache/xpath/functions/FuncNamespace.java b/xalan/src/main/java/org/apache/xpath/functions/FuncNamespace.java
similarity index 100%
rename from src/org/apache/xpath/functions/FuncNamespace.java
rename to xalan/src/main/java/org/apache/xpath/functions/FuncNamespace.java
diff --git a/src/org/apache/xpath/functions/FuncNormalizeSpace.java b/xalan/src/main/java/org/apache/xpath/functions/FuncNormalizeSpace.java
similarity index 100%
rename from src/org/apache/xpath/functions/FuncNormalizeSpace.java
rename to xalan/src/main/java/org/apache/xpath/functions/FuncNormalizeSpace.java
diff --git a/src/org/apache/xpath/functions/FuncNot.java b/xalan/src/main/java/org/apache/xpath/functions/FuncNot.java
similarity index 100%
rename from src/org/apache/xpath/functions/FuncNot.java
rename to xalan/src/main/java/org/apache/xpath/functions/FuncNot.java
diff --git a/src/org/apache/xpath/functions/FuncNumber.java b/xalan/src/main/java/org/apache/xpath/functions/FuncNumber.java
similarity index 100%
rename from src/org/apache/xpath/functions/FuncNumber.java
rename to xalan/src/main/java/org/apache/xpath/functions/FuncNumber.java
diff --git a/src/org/apache/xpath/functions/FuncPosition.java b/xalan/src/main/java/org/apache/xpath/functions/FuncPosition.java
similarity index 100%
rename from src/org/apache/xpath/functions/FuncPosition.java
rename to xalan/src/main/java/org/apache/xpath/functions/FuncPosition.java
diff --git a/src/org/apache/xpath/functions/FuncQname.java b/xalan/src/main/java/org/apache/xpath/functions/FuncQname.java
similarity index 100%
rename from src/org/apache/xpath/functions/FuncQname.java
rename to xalan/src/main/java/org/apache/xpath/functions/FuncQname.java
diff --git a/src/org/apache/xpath/functions/FuncRound.java b/xalan/src/main/java/org/apache/xpath/functions/FuncRound.java
similarity index 100%
rename from src/org/apache/xpath/functions/FuncRound.java
rename to xalan/src/main/java/org/apache/xpath/functions/FuncRound.java
diff --git a/src/org/apache/xpath/functions/FuncStartsWith.java b/xalan/src/main/java/org/apache/xpath/functions/FuncStartsWith.java
similarity index 100%
rename from src/org/apache/xpath/functions/FuncStartsWith.java
rename to xalan/src/main/java/org/apache/xpath/functions/FuncStartsWith.java
diff --git a/src/org/apache/xpath/functions/FuncString.java b/xalan/src/main/java/org/apache/xpath/functions/FuncString.java
similarity index 100%
rename from src/org/apache/xpath/functions/FuncString.java
rename to xalan/src/main/java/org/apache/xpath/functions/FuncString.java
diff --git a/src/org/apache/xpath/functions/FuncStringLength.java b/xalan/src/main/java/org/apache/xpath/functions/FuncStringLength.java
similarity index 100%
rename from src/org/apache/xpath/functions/FuncStringLength.java
rename to xalan/src/main/java/org/apache/xpath/functions/FuncStringLength.java
diff --git a/src/org/apache/xpath/functions/FuncSubstring.java b/xalan/src/main/java/org/apache/xpath/functions/FuncSubstring.java
similarity index 100%
rename from src/org/apache/xpath/functions/FuncSubstring.java
rename to xalan/src/main/java/org/apache/xpath/functions/FuncSubstring.java
diff --git a/src/org/apache/xpath/functions/FuncSubstringAfter.java b/xalan/src/main/java/org/apache/xpath/functions/FuncSubstringAfter.java
similarity index 100%
rename from src/org/apache/xpath/functions/FuncSubstringAfter.java
rename to xalan/src/main/java/org/apache/xpath/functions/FuncSubstringAfter.java
diff --git a/src/org/apache/xpath/functions/FuncSubstringBefore.java b/xalan/src/main/java/org/apache/xpath/functions/FuncSubstringBefore.java
similarity index 100%
rename from src/org/apache/xpath/functions/FuncSubstringBefore.java
rename to xalan/src/main/java/org/apache/xpath/functions/FuncSubstringBefore.java
diff --git a/src/org/apache/xpath/functions/FuncSum.java b/xalan/src/main/java/org/apache/xpath/functions/FuncSum.java
similarity index 100%
rename from src/org/apache/xpath/functions/FuncSum.java
rename to xalan/src/main/java/org/apache/xpath/functions/FuncSum.java
diff --git a/src/org/apache/xpath/functions/FuncSystemProperty.java b/xalan/src/main/java/org/apache/xpath/functions/FuncSystemProperty.java
similarity index 100%
rename from src/org/apache/xpath/functions/FuncSystemProperty.java
rename to xalan/src/main/java/org/apache/xpath/functions/FuncSystemProperty.java
diff --git a/src/org/apache/xpath/functions/FuncTranslate.java b/xalan/src/main/java/org/apache/xpath/functions/FuncTranslate.java
similarity index 100%
rename from src/org/apache/xpath/functions/FuncTranslate.java
rename to xalan/src/main/java/org/apache/xpath/functions/FuncTranslate.java
diff --git a/src/org/apache/xpath/functions/FuncTrue.java b/xalan/src/main/java/org/apache/xpath/functions/FuncTrue.java
similarity index 100%
rename from src/org/apache/xpath/functions/FuncTrue.java
rename to xalan/src/main/java/org/apache/xpath/functions/FuncTrue.java
diff --git a/src/org/apache/xpath/functions/FuncUnparsedEntityURI.java b/xalan/src/main/java/org/apache/xpath/functions/FuncUnparsedEntityURI.java
similarity index 100%
rename from src/org/apache/xpath/functions/FuncUnparsedEntityURI.java
rename to xalan/src/main/java/org/apache/xpath/functions/FuncUnparsedEntityURI.java
diff --git a/src/org/apache/xpath/functions/Function.java b/xalan/src/main/java/org/apache/xpath/functions/Function.java
similarity index 100%
rename from src/org/apache/xpath/functions/Function.java
rename to xalan/src/main/java/org/apache/xpath/functions/Function.java
diff --git a/src/org/apache/xpath/functions/Function2Args.java b/xalan/src/main/java/org/apache/xpath/functions/Function2Args.java
similarity index 100%
rename from src/org/apache/xpath/functions/Function2Args.java
rename to xalan/src/main/java/org/apache/xpath/functions/Function2Args.java
diff --git a/src/org/apache/xpath/functions/Function3Args.java b/xalan/src/main/java/org/apache/xpath/functions/Function3Args.java
similarity index 100%
rename from src/org/apache/xpath/functions/Function3Args.java
rename to xalan/src/main/java/org/apache/xpath/functions/Function3Args.java
diff --git a/src/org/apache/xpath/functions/FunctionDef1Arg.java b/xalan/src/main/java/org/apache/xpath/functions/FunctionDef1Arg.java
similarity index 100%
rename from src/org/apache/xpath/functions/FunctionDef1Arg.java
rename to xalan/src/main/java/org/apache/xpath/functions/FunctionDef1Arg.java
diff --git a/src/org/apache/xpath/functions/FunctionMultiArgs.java b/xalan/src/main/java/org/apache/xpath/functions/FunctionMultiArgs.java
similarity index 100%
rename from src/org/apache/xpath/functions/FunctionMultiArgs.java
rename to xalan/src/main/java/org/apache/xpath/functions/FunctionMultiArgs.java
diff --git a/src/org/apache/xpath/functions/FunctionOneArg.java b/xalan/src/main/java/org/apache/xpath/functions/FunctionOneArg.java
similarity index 100%
rename from src/org/apache/xpath/functions/FunctionOneArg.java
rename to xalan/src/main/java/org/apache/xpath/functions/FunctionOneArg.java
diff --git a/src/org/apache/xpath/functions/ObjectFactory.java b/xalan/src/main/java/org/apache/xpath/functions/ObjectFactory.java
similarity index 100%
rename from src/org/apache/xpath/functions/ObjectFactory.java
rename to xalan/src/main/java/org/apache/xpath/functions/ObjectFactory.java
diff --git a/src/org/apache/xpath/functions/SecuritySupport.java b/xalan/src/main/java/org/apache/xpath/functions/SecuritySupport.java
similarity index 100%
rename from src/org/apache/xpath/functions/SecuritySupport.java
rename to xalan/src/main/java/org/apache/xpath/functions/SecuritySupport.java
diff --git a/src/org/apache/xpath/functions/WrongNumberArgsException.java b/xalan/src/main/java/org/apache/xpath/functions/WrongNumberArgsException.java
similarity index 100%
rename from src/org/apache/xpath/functions/WrongNumberArgsException.java
rename to xalan/src/main/java/org/apache/xpath/functions/WrongNumberArgsException.java
diff --git a/src/org/apache/xpath/functions/package.html b/xalan/src/main/java/org/apache/xpath/functions/package.html
similarity index 100%
rename from src/org/apache/xpath/functions/package.html
rename to xalan/src/main/java/org/apache/xpath/functions/package.html
diff --git a/src/org/apache/xpath/jaxp/JAXPExtensionsProvider.java b/xalan/src/main/java/org/apache/xpath/jaxp/JAXPExtensionsProvider.java
similarity index 100%
rename from src/org/apache/xpath/jaxp/JAXPExtensionsProvider.java
rename to xalan/src/main/java/org/apache/xpath/jaxp/JAXPExtensionsProvider.java
diff --git a/src/org/apache/xpath/jaxp/JAXPPrefixResolver.java b/xalan/src/main/java/org/apache/xpath/jaxp/JAXPPrefixResolver.java
similarity index 100%
rename from src/org/apache/xpath/jaxp/JAXPPrefixResolver.java
rename to xalan/src/main/java/org/apache/xpath/jaxp/JAXPPrefixResolver.java
diff --git a/src/org/apache/xpath/jaxp/JAXPVariableStack.java b/xalan/src/main/java/org/apache/xpath/jaxp/JAXPVariableStack.java
similarity index 100%
rename from src/org/apache/xpath/jaxp/JAXPVariableStack.java
rename to xalan/src/main/java/org/apache/xpath/jaxp/JAXPVariableStack.java
diff --git a/src/org/apache/xpath/jaxp/XPathExpressionImpl.java b/xalan/src/main/java/org/apache/xpath/jaxp/XPathExpressionImpl.java
similarity index 100%
rename from src/org/apache/xpath/jaxp/XPathExpressionImpl.java
rename to xalan/src/main/java/org/apache/xpath/jaxp/XPathExpressionImpl.java
diff --git a/src/org/apache/xpath/jaxp/XPathFactoryImpl.java b/xalan/src/main/java/org/apache/xpath/jaxp/XPathFactoryImpl.java
similarity index 100%
rename from src/org/apache/xpath/jaxp/XPathFactoryImpl.java
rename to xalan/src/main/java/org/apache/xpath/jaxp/XPathFactoryImpl.java
diff --git a/src/org/apache/xpath/jaxp/XPathImpl.java b/xalan/src/main/java/org/apache/xpath/jaxp/XPathImpl.java
similarity index 99%
rename from src/org/apache/xpath/jaxp/XPathImpl.java
rename to xalan/src/main/java/org/apache/xpath/jaxp/XPathImpl.java
index d213ba995..420325b6f 100644
--- a/src/org/apache/xpath/jaxp/XPathImpl.java
+++ b/xalan/src/main/java/org/apache/xpath/jaxp/XPathImpl.java
@@ -283,7 +283,7 @@ public Object evaluate(String expression, Object item, QName returnType)
} catch ( java.lang.NullPointerException npe ) {
// If VariableResolver returns null Or if we get
// NullPointerException at this stage for some other reason
- // then we have to return XPathException
+ // then we have to return XPathException
throw new XPathExpressionException ( npe );
} catch ( javax.xml.transform.TransformerException te ) {
Throwable nestedException = te.getException();
diff --git a/src/org/apache/xpath/objects/DTMXRTreeFrag.java b/xalan/src/main/java/org/apache/xpath/objects/DTMXRTreeFrag.java
similarity index 100%
rename from src/org/apache/xpath/objects/DTMXRTreeFrag.java
rename to xalan/src/main/java/org/apache/xpath/objects/DTMXRTreeFrag.java
diff --git a/src/org/apache/xpath/objects/XBoolean.java b/xalan/src/main/java/org/apache/xpath/objects/XBoolean.java
similarity index 100%
rename from src/org/apache/xpath/objects/XBoolean.java
rename to xalan/src/main/java/org/apache/xpath/objects/XBoolean.java
diff --git a/src/org/apache/xpath/objects/XBooleanStatic.java b/xalan/src/main/java/org/apache/xpath/objects/XBooleanStatic.java
similarity index 100%
rename from src/org/apache/xpath/objects/XBooleanStatic.java
rename to xalan/src/main/java/org/apache/xpath/objects/XBooleanStatic.java
diff --git a/src/org/apache/xpath/objects/XMLStringFactoryImpl.java b/xalan/src/main/java/org/apache/xpath/objects/XMLStringFactoryImpl.java
similarity index 100%
rename from src/org/apache/xpath/objects/XMLStringFactoryImpl.java
rename to xalan/src/main/java/org/apache/xpath/objects/XMLStringFactoryImpl.java
diff --git a/src/org/apache/xpath/objects/XNodeSet.java b/xalan/src/main/java/org/apache/xpath/objects/XNodeSet.java
similarity index 100%
rename from src/org/apache/xpath/objects/XNodeSet.java
rename to xalan/src/main/java/org/apache/xpath/objects/XNodeSet.java
diff --git a/src/org/apache/xpath/objects/XNodeSetForDOM.java b/xalan/src/main/java/org/apache/xpath/objects/XNodeSetForDOM.java
similarity index 100%
rename from src/org/apache/xpath/objects/XNodeSetForDOM.java
rename to xalan/src/main/java/org/apache/xpath/objects/XNodeSetForDOM.java
diff --git a/src/org/apache/xpath/objects/XNull.java b/xalan/src/main/java/org/apache/xpath/objects/XNull.java
similarity index 100%
rename from src/org/apache/xpath/objects/XNull.java
rename to xalan/src/main/java/org/apache/xpath/objects/XNull.java
diff --git a/src/org/apache/xpath/objects/XNumber.java b/xalan/src/main/java/org/apache/xpath/objects/XNumber.java
similarity index 100%
rename from src/org/apache/xpath/objects/XNumber.java
rename to xalan/src/main/java/org/apache/xpath/objects/XNumber.java
diff --git a/src/org/apache/xpath/objects/XObject.java b/xalan/src/main/java/org/apache/xpath/objects/XObject.java
similarity index 100%
rename from src/org/apache/xpath/objects/XObject.java
rename to xalan/src/main/java/org/apache/xpath/objects/XObject.java
diff --git a/src/org/apache/xpath/objects/XObjectFactory.java b/xalan/src/main/java/org/apache/xpath/objects/XObjectFactory.java
similarity index 100%
rename from src/org/apache/xpath/objects/XObjectFactory.java
rename to xalan/src/main/java/org/apache/xpath/objects/XObjectFactory.java
diff --git a/src/org/apache/xpath/objects/XRTreeFrag.java b/xalan/src/main/java/org/apache/xpath/objects/XRTreeFrag.java
similarity index 100%
rename from src/org/apache/xpath/objects/XRTreeFrag.java
rename to xalan/src/main/java/org/apache/xpath/objects/XRTreeFrag.java
diff --git a/src/org/apache/xpath/objects/XRTreeFragSelectWrapper.java b/xalan/src/main/java/org/apache/xpath/objects/XRTreeFragSelectWrapper.java
similarity index 100%
rename from src/org/apache/xpath/objects/XRTreeFragSelectWrapper.java
rename to xalan/src/main/java/org/apache/xpath/objects/XRTreeFragSelectWrapper.java
diff --git a/src/org/apache/xpath/objects/XString.java b/xalan/src/main/java/org/apache/xpath/objects/XString.java
similarity index 100%
rename from src/org/apache/xpath/objects/XString.java
rename to xalan/src/main/java/org/apache/xpath/objects/XString.java
diff --git a/src/org/apache/xpath/objects/XStringForChars.java b/xalan/src/main/java/org/apache/xpath/objects/XStringForChars.java
similarity index 100%
rename from src/org/apache/xpath/objects/XStringForChars.java
rename to xalan/src/main/java/org/apache/xpath/objects/XStringForChars.java
diff --git a/src/org/apache/xpath/objects/XStringForFSB.java b/xalan/src/main/java/org/apache/xpath/objects/XStringForFSB.java
similarity index 100%
rename from src/org/apache/xpath/objects/XStringForFSB.java
rename to xalan/src/main/java/org/apache/xpath/objects/XStringForFSB.java
diff --git a/src/org/apache/xpath/objects/package.html b/xalan/src/main/java/org/apache/xpath/objects/package.html
similarity index 100%
rename from src/org/apache/xpath/objects/package.html
rename to xalan/src/main/java/org/apache/xpath/objects/package.html
diff --git a/src/org/apache/xpath/operations/And.java b/xalan/src/main/java/org/apache/xpath/operations/And.java
similarity index 100%
rename from src/org/apache/xpath/operations/And.java
rename to xalan/src/main/java/org/apache/xpath/operations/And.java
diff --git a/src/org/apache/xpath/operations/Bool.java b/xalan/src/main/java/org/apache/xpath/operations/Bool.java
similarity index 100%
rename from src/org/apache/xpath/operations/Bool.java
rename to xalan/src/main/java/org/apache/xpath/operations/Bool.java
diff --git a/src/org/apache/xpath/operations/Div.java b/xalan/src/main/java/org/apache/xpath/operations/Div.java
similarity index 100%
rename from src/org/apache/xpath/operations/Div.java
rename to xalan/src/main/java/org/apache/xpath/operations/Div.java
diff --git a/src/org/apache/xpath/operations/Equals.java b/xalan/src/main/java/org/apache/xpath/operations/Equals.java
similarity index 100%
rename from src/org/apache/xpath/operations/Equals.java
rename to xalan/src/main/java/org/apache/xpath/operations/Equals.java
diff --git a/src/org/apache/xpath/operations/Gt.java b/xalan/src/main/java/org/apache/xpath/operations/Gt.java
similarity index 100%
rename from src/org/apache/xpath/operations/Gt.java
rename to xalan/src/main/java/org/apache/xpath/operations/Gt.java
diff --git a/src/org/apache/xpath/operations/Gte.java b/xalan/src/main/java/org/apache/xpath/operations/Gte.java
similarity index 100%
rename from src/org/apache/xpath/operations/Gte.java
rename to xalan/src/main/java/org/apache/xpath/operations/Gte.java
diff --git a/src/org/apache/xpath/operations/Lt.java b/xalan/src/main/java/org/apache/xpath/operations/Lt.java
similarity index 100%
rename from src/org/apache/xpath/operations/Lt.java
rename to xalan/src/main/java/org/apache/xpath/operations/Lt.java
diff --git a/src/org/apache/xpath/operations/Lte.java b/xalan/src/main/java/org/apache/xpath/operations/Lte.java
similarity index 100%
rename from src/org/apache/xpath/operations/Lte.java
rename to xalan/src/main/java/org/apache/xpath/operations/Lte.java
diff --git a/src/org/apache/xpath/operations/Minus.java b/xalan/src/main/java/org/apache/xpath/operations/Minus.java
similarity index 100%
rename from src/org/apache/xpath/operations/Minus.java
rename to xalan/src/main/java/org/apache/xpath/operations/Minus.java
diff --git a/src/org/apache/xpath/operations/Mod.java b/xalan/src/main/java/org/apache/xpath/operations/Mod.java
similarity index 100%
rename from src/org/apache/xpath/operations/Mod.java
rename to xalan/src/main/java/org/apache/xpath/operations/Mod.java
diff --git a/src/org/apache/xpath/operations/Mult.java b/xalan/src/main/java/org/apache/xpath/operations/Mult.java
similarity index 100%
rename from src/org/apache/xpath/operations/Mult.java
rename to xalan/src/main/java/org/apache/xpath/operations/Mult.java
diff --git a/src/org/apache/xpath/operations/Neg.java b/xalan/src/main/java/org/apache/xpath/operations/Neg.java
similarity index 100%
rename from src/org/apache/xpath/operations/Neg.java
rename to xalan/src/main/java/org/apache/xpath/operations/Neg.java
diff --git a/src/org/apache/xpath/operations/NotEquals.java b/xalan/src/main/java/org/apache/xpath/operations/NotEquals.java
similarity index 100%
rename from src/org/apache/xpath/operations/NotEquals.java
rename to xalan/src/main/java/org/apache/xpath/operations/NotEquals.java
diff --git a/src/org/apache/xpath/operations/Number.java b/xalan/src/main/java/org/apache/xpath/operations/Number.java
similarity index 100%
rename from src/org/apache/xpath/operations/Number.java
rename to xalan/src/main/java/org/apache/xpath/operations/Number.java
diff --git a/src/org/apache/xpath/operations/Operation.java b/xalan/src/main/java/org/apache/xpath/operations/Operation.java
similarity index 100%
rename from src/org/apache/xpath/operations/Operation.java
rename to xalan/src/main/java/org/apache/xpath/operations/Operation.java
diff --git a/src/org/apache/xpath/operations/Or.java b/xalan/src/main/java/org/apache/xpath/operations/Or.java
similarity index 100%
rename from src/org/apache/xpath/operations/Or.java
rename to xalan/src/main/java/org/apache/xpath/operations/Or.java
diff --git a/src/org/apache/xpath/operations/Plus.java b/xalan/src/main/java/org/apache/xpath/operations/Plus.java
similarity index 100%
rename from src/org/apache/xpath/operations/Plus.java
rename to xalan/src/main/java/org/apache/xpath/operations/Plus.java
diff --git a/src/org/apache/xpath/operations/Quo.java b/xalan/src/main/java/org/apache/xpath/operations/Quo.java
similarity index 100%
rename from src/org/apache/xpath/operations/Quo.java
rename to xalan/src/main/java/org/apache/xpath/operations/Quo.java
diff --git a/src/org/apache/xpath/operations/String.java b/xalan/src/main/java/org/apache/xpath/operations/String.java
similarity index 100%
rename from src/org/apache/xpath/operations/String.java
rename to xalan/src/main/java/org/apache/xpath/operations/String.java
diff --git a/src/org/apache/xpath/operations/UnaryOperation.java b/xalan/src/main/java/org/apache/xpath/operations/UnaryOperation.java
similarity index 100%
rename from src/org/apache/xpath/operations/UnaryOperation.java
rename to xalan/src/main/java/org/apache/xpath/operations/UnaryOperation.java
diff --git a/src/org/apache/xpath/operations/Variable.java b/xalan/src/main/java/org/apache/xpath/operations/Variable.java
similarity index 100%
rename from src/org/apache/xpath/operations/Variable.java
rename to xalan/src/main/java/org/apache/xpath/operations/Variable.java
diff --git a/src/org/apache/xpath/operations/VariableSafeAbsRef.java b/xalan/src/main/java/org/apache/xpath/operations/VariableSafeAbsRef.java
similarity index 100%
rename from src/org/apache/xpath/operations/VariableSafeAbsRef.java
rename to xalan/src/main/java/org/apache/xpath/operations/VariableSafeAbsRef.java
diff --git a/src/org/apache/xpath/operations/package.html b/xalan/src/main/java/org/apache/xpath/operations/package.html
similarity index 100%
rename from src/org/apache/xpath/operations/package.html
rename to xalan/src/main/java/org/apache/xpath/operations/package.html
diff --git a/src/org/apache/xpath/package.html b/xalan/src/main/java/org/apache/xpath/package.html
similarity index 100%
rename from src/org/apache/xpath/package.html
rename to xalan/src/main/java/org/apache/xpath/package.html
diff --git a/src/org/apache/xpath/patterns/ContextMatchStepPattern.java b/xalan/src/main/java/org/apache/xpath/patterns/ContextMatchStepPattern.java
similarity index 100%
rename from src/org/apache/xpath/patterns/ContextMatchStepPattern.java
rename to xalan/src/main/java/org/apache/xpath/patterns/ContextMatchStepPattern.java
diff --git a/src/org/apache/xpath/patterns/FunctionPattern.java b/xalan/src/main/java/org/apache/xpath/patterns/FunctionPattern.java
similarity index 100%
rename from src/org/apache/xpath/patterns/FunctionPattern.java
rename to xalan/src/main/java/org/apache/xpath/patterns/FunctionPattern.java
diff --git a/src/org/apache/xpath/patterns/NodeTest.java b/xalan/src/main/java/org/apache/xpath/patterns/NodeTest.java
similarity index 100%
rename from src/org/apache/xpath/patterns/NodeTest.java
rename to xalan/src/main/java/org/apache/xpath/patterns/NodeTest.java
diff --git a/src/org/apache/xpath/patterns/NodeTestFilter.java b/xalan/src/main/java/org/apache/xpath/patterns/NodeTestFilter.java
similarity index 100%
rename from src/org/apache/xpath/patterns/NodeTestFilter.java
rename to xalan/src/main/java/org/apache/xpath/patterns/NodeTestFilter.java
diff --git a/src/org/apache/xpath/patterns/StepPattern.java b/xalan/src/main/java/org/apache/xpath/patterns/StepPattern.java
similarity index 100%
rename from src/org/apache/xpath/patterns/StepPattern.java
rename to xalan/src/main/java/org/apache/xpath/patterns/StepPattern.java
diff --git a/src/org/apache/xpath/patterns/UnionPattern.java b/xalan/src/main/java/org/apache/xpath/patterns/UnionPattern.java
similarity index 100%
rename from src/org/apache/xpath/patterns/UnionPattern.java
rename to xalan/src/main/java/org/apache/xpath/patterns/UnionPattern.java
diff --git a/src/org/apache/xpath/patterns/package.html b/xalan/src/main/java/org/apache/xpath/patterns/package.html
similarity index 100%
rename from src/org/apache/xpath/patterns/package.html
rename to xalan/src/main/java/org/apache/xpath/patterns/package.html
diff --git a/src/org/apache/xpath/res/XPATHErrorResources.java b/xalan/src/main/java/org/apache/xpath/res/XPATHErrorResources.java
similarity index 100%
rename from src/org/apache/xpath/res/XPATHErrorResources.java
rename to xalan/src/main/java/org/apache/xpath/res/XPATHErrorResources.java
diff --git a/src/org/apache/xpath/res/XPATHErrorResources_ca.java b/xalan/src/main/java/org/apache/xpath/res/XPATHErrorResources_ca.java
similarity index 100%
rename from src/org/apache/xpath/res/XPATHErrorResources_ca.java
rename to xalan/src/main/java/org/apache/xpath/res/XPATHErrorResources_ca.java
diff --git a/src/org/apache/xpath/res/XPATHErrorResources_cs.java b/xalan/src/main/java/org/apache/xpath/res/XPATHErrorResources_cs.java
similarity index 100%
rename from src/org/apache/xpath/res/XPATHErrorResources_cs.java
rename to xalan/src/main/java/org/apache/xpath/res/XPATHErrorResources_cs.java
diff --git a/src/org/apache/xpath/res/XPATHErrorResources_de.java b/xalan/src/main/java/org/apache/xpath/res/XPATHErrorResources_de.java
similarity index 100%
rename from src/org/apache/xpath/res/XPATHErrorResources_de.java
rename to xalan/src/main/java/org/apache/xpath/res/XPATHErrorResources_de.java
diff --git a/src/org/apache/xpath/res/XPATHErrorResources_en.java b/xalan/src/main/java/org/apache/xpath/res/XPATHErrorResources_en.java
similarity index 100%
rename from src/org/apache/xpath/res/XPATHErrorResources_en.java
rename to xalan/src/main/java/org/apache/xpath/res/XPATHErrorResources_en.java
diff --git a/src/org/apache/xpath/res/XPATHErrorResources_es.java b/xalan/src/main/java/org/apache/xpath/res/XPATHErrorResources_es.java
similarity index 100%
rename from src/org/apache/xpath/res/XPATHErrorResources_es.java
rename to xalan/src/main/java/org/apache/xpath/res/XPATHErrorResources_es.java
diff --git a/src/org/apache/xpath/res/XPATHErrorResources_fr.java b/xalan/src/main/java/org/apache/xpath/res/XPATHErrorResources_fr.java
similarity index 100%
rename from src/org/apache/xpath/res/XPATHErrorResources_fr.java
rename to xalan/src/main/java/org/apache/xpath/res/XPATHErrorResources_fr.java
diff --git a/src/org/apache/xpath/res/XPATHErrorResources_hu.java b/xalan/src/main/java/org/apache/xpath/res/XPATHErrorResources_hu.java
similarity index 100%
rename from src/org/apache/xpath/res/XPATHErrorResources_hu.java
rename to xalan/src/main/java/org/apache/xpath/res/XPATHErrorResources_hu.java
diff --git a/src/org/apache/xpath/res/XPATHErrorResources_it.java b/xalan/src/main/java/org/apache/xpath/res/XPATHErrorResources_it.java
similarity index 100%
rename from src/org/apache/xpath/res/XPATHErrorResources_it.java
rename to xalan/src/main/java/org/apache/xpath/res/XPATHErrorResources_it.java
diff --git a/src/org/apache/xpath/res/XPATHErrorResources_ja.java b/xalan/src/main/java/org/apache/xpath/res/XPATHErrorResources_ja.java
similarity index 100%
rename from src/org/apache/xpath/res/XPATHErrorResources_ja.java
rename to xalan/src/main/java/org/apache/xpath/res/XPATHErrorResources_ja.java
diff --git a/src/org/apache/xpath/res/XPATHErrorResources_ko.java b/xalan/src/main/java/org/apache/xpath/res/XPATHErrorResources_ko.java
similarity index 100%
rename from src/org/apache/xpath/res/XPATHErrorResources_ko.java
rename to xalan/src/main/java/org/apache/xpath/res/XPATHErrorResources_ko.java
diff --git a/src/org/apache/xpath/res/XPATHErrorResources_pl.java b/xalan/src/main/java/org/apache/xpath/res/XPATHErrorResources_pl.java
similarity index 100%
rename from src/org/apache/xpath/res/XPATHErrorResources_pl.java
rename to xalan/src/main/java/org/apache/xpath/res/XPATHErrorResources_pl.java
diff --git a/src/org/apache/xpath/res/XPATHErrorResources_pt_BR.java b/xalan/src/main/java/org/apache/xpath/res/XPATHErrorResources_pt_BR.java
similarity index 100%
rename from src/org/apache/xpath/res/XPATHErrorResources_pt_BR.java
rename to xalan/src/main/java/org/apache/xpath/res/XPATHErrorResources_pt_BR.java
diff --git a/src/org/apache/xpath/res/XPATHErrorResources_ru.java b/xalan/src/main/java/org/apache/xpath/res/XPATHErrorResources_ru.java
similarity index 100%
rename from src/org/apache/xpath/res/XPATHErrorResources_ru.java
rename to xalan/src/main/java/org/apache/xpath/res/XPATHErrorResources_ru.java
diff --git a/src/org/apache/xpath/res/XPATHErrorResources_sk.java b/xalan/src/main/java/org/apache/xpath/res/XPATHErrorResources_sk.java
similarity index 100%
rename from src/org/apache/xpath/res/XPATHErrorResources_sk.java
rename to xalan/src/main/java/org/apache/xpath/res/XPATHErrorResources_sk.java
diff --git a/src/org/apache/xpath/res/XPATHErrorResources_sl.java b/xalan/src/main/java/org/apache/xpath/res/XPATHErrorResources_sl.java
similarity index 100%
rename from src/org/apache/xpath/res/XPATHErrorResources_sl.java
rename to xalan/src/main/java/org/apache/xpath/res/XPATHErrorResources_sl.java
diff --git a/src/org/apache/xpath/res/XPATHErrorResources_sv.java b/xalan/src/main/java/org/apache/xpath/res/XPATHErrorResources_sv.java
similarity index 100%
rename from src/org/apache/xpath/res/XPATHErrorResources_sv.java
rename to xalan/src/main/java/org/apache/xpath/res/XPATHErrorResources_sv.java
diff --git a/src/org/apache/xpath/res/XPATHErrorResources_tr.java b/xalan/src/main/java/org/apache/xpath/res/XPATHErrorResources_tr.java
similarity index 100%
rename from src/org/apache/xpath/res/XPATHErrorResources_tr.java
rename to xalan/src/main/java/org/apache/xpath/res/XPATHErrorResources_tr.java
diff --git a/src/org/apache/xpath/res/XPATHErrorResources_zh.java b/xalan/src/main/java/org/apache/xpath/res/XPATHErrorResources_zh.java
similarity index 100%
rename from src/org/apache/xpath/res/XPATHErrorResources_zh.java
rename to xalan/src/main/java/org/apache/xpath/res/XPATHErrorResources_zh.java
diff --git a/src/org/apache/xpath/res/XPATHErrorResources_zh_CN.java b/xalan/src/main/java/org/apache/xpath/res/XPATHErrorResources_zh_CN.java
similarity index 100%
rename from src/org/apache/xpath/res/XPATHErrorResources_zh_CN.java
rename to xalan/src/main/java/org/apache/xpath/res/XPATHErrorResources_zh_CN.java
diff --git a/src/org/apache/xpath/res/XPATHErrorResources_zh_TW.java b/xalan/src/main/java/org/apache/xpath/res/XPATHErrorResources_zh_TW.java
similarity index 100%
rename from src/org/apache/xpath/res/XPATHErrorResources_zh_TW.java
rename to xalan/src/main/java/org/apache/xpath/res/XPATHErrorResources_zh_TW.java
diff --git a/src/org/apache/xpath/res/XPATHMessages.java b/xalan/src/main/java/org/apache/xpath/res/XPATHMessages.java
similarity index 100%
rename from src/org/apache/xpath/res/XPATHMessages.java
rename to xalan/src/main/java/org/apache/xpath/res/XPATHMessages.java
diff --git a/src/org/apache/xpath/res/package.html b/xalan/src/main/java/org/apache/xpath/res/package.html
similarity index 100%
rename from src/org/apache/xpath/res/package.html
rename to xalan/src/main/java/org/apache/xpath/res/package.html
diff --git a/src/org/apache/xalan/res/XSLTInfo.properties b/xalan/src/main/resources/org/apache/xalan/res/XSLTInfo.properties
similarity index 100%
rename from src/org/apache/xalan/res/XSLTInfo.properties
rename to xalan/src/main/resources/org/apache/xalan/res/XSLTInfo.properties
diff --git a/xalan/src/main/resources/org/apache/xalan/version.properties b/xalan/src/main/resources/org/apache/xalan/version.properties
new file mode 100644
index 000000000..defbd4820
--- /dev/null
+++ b/xalan/src/main/resources/org/apache/xalan/version.properties
@@ -0,0 +1 @@
+version=${project.version}
diff --git a/src/trax/trax.properties b/xalan/src/main/resources/trax/trax.properties
similarity index 100%
rename from src/trax/trax.properties
rename to xalan/src/main/resources/trax/trax.properties
diff --git a/xalan/src/site/resources/images/compilation.gif b/xalan/src/site/resources/images/compilation.gif
new file mode 100644
index 000000000..675d7d4ff
Binary files /dev/null and b/xalan/src/site/resources/images/compilation.gif differ
diff --git a/xalan/src/site/resources/images/conceptual.gif b/xalan/src/site/resources/images/conceptual.gif
new file mode 100644
index 000000000..283fee57d
Binary files /dev/null and b/xalan/src/site/resources/images/conceptual.gif differ
diff --git a/xalan/src/site/resources/images/data.gif b/xalan/src/site/resources/images/data.gif
new file mode 100644
index 000000000..0f28a177a
Binary files /dev/null and b/xalan/src/site/resources/images/data.gif differ
diff --git a/xalan/src/site/resources/images/org_apache.gif b/xalan/src/site/resources/images/org_apache.gif
new file mode 100644
index 000000000..105f2643b
Binary files /dev/null and b/xalan/src/site/resources/images/org_apache.gif differ
diff --git a/xalan/src/site/resources/images/trax.gif b/xalan/src/site/resources/images/trax.gif
new file mode 100644
index 000000000..8eb96144d
Binary files /dev/null and b/xalan/src/site/resources/images/trax.gif differ
diff --git a/xalan/src/site/resources/images/xalan1_1x1.gif b/xalan/src/site/resources/images/xalan1_1x1.gif
new file mode 100644
index 000000000..c9e153631
Binary files /dev/null and b/xalan/src/site/resources/images/xalan1_1x1.gif differ
diff --git a/xalan/src/site/resources/images/xmllogo.gif b/xalan/src/site/resources/images/xmllogo.gif
new file mode 100644
index 000000000..b63188dd2
Binary files /dev/null and b/xalan/src/site/resources/images/xmllogo.gif differ
diff --git a/xalan/src/site/resources/images/xpath.gif b/xalan/src/site/resources/images/xpath.gif
new file mode 100644
index 000000000..cf28f9cb7
Binary files /dev/null and b/xalan/src/site/resources/images/xpath.gif differ
diff --git a/xalan/src/site/resources/images/xslt_abstract.gif b/xalan/src/site/resources/images/xslt_abstract.gif
new file mode 100644
index 000000000..fa041a640
Binary files /dev/null and b/xalan/src/site/resources/images/xslt_abstract.gif differ
diff --git a/xalan/src/site/xhtml/design2_0_0.xhtml b/xalan/src/site/xhtml/design2_0_0.xhtml
new file mode 100644
index 000000000..6869f0f86
--- /dev/null
+++ b/xalan/src/site/xhtml/design2_0_0.xhtml
@@ -0,0 +1,277 @@
+Xalan-J 2.0 Design
This document presents the basic design for Xalan-J 2.0, which is a
+ refactoring
+ and redesign of the Xalan-J 1.x processor. This document will expand and grow over time, and is also incomplete in some sections, though hopefully overall accurate. The reader should be able to get a good overall idea of the internal design of Xalan, and begin to understand the process flow, and also the technical challenges.
+
The main goals of this redesign are
+ to:
+
Make the design and code more understandable by Open Source
+ people.
+
Reduce code size and complexity.
+
By simplifying the code, make optimization easier.
+
Make modules generally more localized, and less tangled with other
+ modules.
Increase the ability to incrementally produce the result tree.
+
The techniques used toward these goals are to:
+
+
In general, flatten the hierarchy of packages, in order to make the
+ structure more apparent from the top-level view.
+
Break the construction and the validation of the XSLT stylesheet from
+ the stylesheet objects themselves.
+
Drive the construction of the stylesheet through a table, so that it
+ is less prone to error.
+
Break the transformation process into a separate package, away from
+ the stylesheet objects.
+
Create this design document, as a starting point for people interested in
+ approaching the code.
+
+
The goals are not:
+
+
To add more features in the progress of this refactoring. This is
+ design and code clean-up in order to meet the above-named goals. We expect that it will be much easier to add
+ features once this work is completed.
+
To optimize code for the sake of optimization. However, we
+ expect that the code will be faster once this work is complete.
+
+
How well we've achieved the goals will be measured by feedback from the
+ Xalan-dev list, and by software metrics tools.
+
Please note that the diagrams in this design document are meant to be
+ useful abstractions, and may not always be exact.
+
+
Xalan Requirements
+
These are the concrete general requirements of Xalan, as I understand them, and covering both the Java and C++ versions. These requirements have been built up over time by experience with product groups and general users.
Java, C++ Versions.
XSLT 1.0 conformance, and beyond. (i.e. conform to the current W3C recommendation).
Have design and Code understandable by Open Source Community.
Ability to interoperate with standard APIs. (SAX2, DOM2, JAXP) [this is currently Less of an issue with C++].
High Performance (Raw performance, Incremental ability, Scaleability to large documents, Reduction of Garbage Collection for the Java version.)
Tooling API (Access stylesheet data structures, Access source node from result event, Ask runtime questions, Debugging API).
Support addressing of XML in standalone fashion (i.e. XPath API).
Extensibility (Ability to call Java, Ability to call JavaScript, other languages).
Multiple data sources (JDBC, LDAP, other data sources, Direct XML repository coupling).
+
Overview of Architecture
+
The following diagram shows the XSLT abstract processing model. A transformation expressed in XSLT describes rules for transforming a Source Tree into a result tree. The transformation is achieved by associating patterns with templates. A pattern is matched against elements in the source tree. A template is instantiated to create part of the result tree. The result tree is separate from the source tree. The structure of the result tree can be completely different from the structure of the source tree. In constructing the result tree, elements from the source tree can be filtered and reordered, and arbitrary structure can be added.
+
+
The term "tree", as used within this document, describes an
+ abstract structure that consists of nodes or events that may be produced by
+ XML. A Tree physically may be a DOM tree, a series of well balanced parse
+ events (such as those coming from a SAX2 ContentHander), a series of requests
+ (the result of which can describe a tree), or a stream of marked-up
+ characters.
The primary interface for Xalan 2.0 external usage is defined in the javax.xml.transform interfaces. These interfaces define a standard and powerful interface to perform tree-based transformations.
+
The internal architecture of Xalan 2.0 is divided into four major modules, and various smaller
+ modules. The main modules are:
The module that processes both XPath expressions, and XSLT Match
+ patterns.
+
+
In addition to the above modules, Xalan implements the
+ javax.xml.transform interfaces, and depends on the
+ SAX2 and DOM packages.
+
There is also a general utilities package that contains both XML utility
+ classes such as QName, but generally useful classes such as
+ StringToIntTable.
+
In the diagram below, the dashed lines denote visibility. All packages
+ access the SAX2 and DOM packages.
+
+
In addition to the above packages, there are the following additional
+ packages:
This is the built-in Xalan extensions library, which holds
+ extensions such as Redirect (which allows a stylesheet to produce multiple
+ output files).
This package contains classes and interfaces that allow a caller to
+ add trace listeners to the transformation, allowing an interface to XSLT
+ debuggers and similar tools.
This package holds the Xalan2 command line processor.
+
+
A more conceptual view of this architecture is as follows:
+
Process Module
+
The org.apache.xalan.processor module implements the
+ javax.xml.transform.TransformerFactory interface, which provides a
+ factory method for creating a concrete Processor instance, and provides methods
+ for creating a javax.xml.transform.Templates instance, which, in
+ Xalan and XSLT terms, is the Stylesheet. Thus the task of the process module is
+ to read the XSLT input in the form of a file, stream, SAX events, or a DOM
+ tree, and produce a Templates/Stylesheet object.
+
The overall strategy is to define a schema in that dictates the legal
+ structure for XSLT elements and attributes, and to associate with those
+ elements construction-time processors that can fill in the appropriate fields
+ in the top-level Stylesheet object, and also associate classes in the templates
+ module that can be created in a generalized fashion. This makes the validation
+ object-to-class associations centralized and declarative.
The implementation of the javax.xml.transform.TransformerFactory
+ interface is in org.apache.xalan.processor.TransformerFactoryImpl,
+ which creates a org.apache.xalan.processor.StylesheetHandler
+ instance. This instance acts as the ContentHandler for the parse events, and is
+ handed to the org.xml.sax.XMLReader, which the StylesheetProcessor
+ uses to parse the XSLT document. The StylesheetHandler then receives the parse
+ events, which maintains the state of the construction, and passes the events on
+ to the appropriate XSLTElementProcessor for the given event, as dictated by the
+ XSLTElementDef that is associated with the given event.
+
+
Templates Module
+
The org.apache.xalan.templates module implements the
+ javax.xml.transform.Templates interface, and defines a set of
+ classes that represent a Stylesheet. The primary purpose of this module is to
+ hold stylesheet data, not to perform procedural tasks associated with the
+ construction of the data, nor tasks associated with the transformation itself.
+
+
The base class of all templates objects that are associated with an XSLT element is the ElemTemplateElement object, which in turn implements UnImplNode. A ElemTemplateElement object must be immutable once it's constructed, so that it may be shared among multiple threads concurrently. Ideally, a ElemTemplateElement should be a data object only, and be used via a visitor pattern. However, in practice this is impractical, because it would cause too much data exposure and would have a significant impact on performance. Therefore, each ElemTemplateElement class has an execute method where it performs it's transformation duties. A ElemTemplateElement also knows it's position in the source stylesheet, and can answer questions about current namespace nodes.
A StylesheetRoot, which implements the
+ Templates interface, is a type of StylesheetComposed,
+ which is a Stylesheet composed of itself and all included
+ Stylesheet objects. A StylesheetRoot has a global
+ imports list, which is a list of all imported StylesheetComposed
+ instances. From each StylesheetComposed object, one can iterate
+ through the list of directly or indirectly included Stylesheet
+ objects, and one call also iterate through the list of all
+ StylesheetComposed objects of lesser import precedence.
+ StylesheetRoot is a StylesheetComposed, which is a
+ Stylesheet.
+
Each stylesheet has a set of properties, which can be set by various
+ means, usually either via an attribute on xsl:stylesheet, or via a top-level
+ xsl instruction (for instance, xsl:attribute-set). The get methods for these
+ properties only access the declaration within the given Stylesheet
+ object, and never takes into account included or imported stylesheets. The
+ StylesheetComposed derivative object, if it is a root
+ Stylesheet or imported Stylesheet, has "composed"
+ getter methods that do take into account imported and included stylesheets, for
+ some of these properties.
+
+
+
Transformer Module
+
The Transformer module is in charge of run-time transformations. The TransformerImpl object, which implements the TrAX Transformer interface, and has an association with a StylesheetRoot object, begins the processing of the source tree (or provides a ContentHandler reference via the SourceTreeHandler), and performs the transformation. The Transformer package does as much of the transformation as it can, but element level operations are generally performed in the ElemTemplateElement.execute(...) methods.
Result Tree events are fed into a ResultTreeHandler object, which acts as a layer between the direct calls to the result
+tree content handler (often a Serializer), and the Transformer. For one thing,
+ we have to delay the call to
+ startElement(name, atts) because of the
+ xsl:attribute and xsl:copy calls. In other words,
+ the attributes have to be fully collected before you
+ can call startElement.
Other important classes in this package are:
CountersTable and Counter
The Counter class does incremental counting for support of xsl:number.
+ This class stores a cache of counted nodes (m_countNodes).
+ It tries to cache the counted nodes in document order...
+ the node count is based on its position in the cache list. The CountersTable class is a table of counters, keyed by ElemNumber objects, each
+ of which has a list of Counter objects.
KeyIterator, KeyManager, and KeyTable
These classes handle mapping of keys declared with the xsl:key element. They attempt to work incrementally, locating nodes on request but indexing all as they traverse the tree, and stopping when the requested node is found. If a requested node is not found, then the entire tree will be traversed. Such is the nature of xsl:key.
TransformState
This interface is meant to be used by a consumer of SAX2 events produced by Xalan, and enables the consumer
+ to get information about the state of the transform. It
+ is primarily intended as a tooling interface.
Even though the following modules are defined in the org.apache.xalan package, instead of the transformer package, they are defined in this section as they are mostly related to runtime transformation.
+
Stree Module [and discussions about streaming]
+
The Stree module implements the default Source Tree for Xalan, that is to be transformed. It implements read-only DOM2 interfaces, and provides some information needed for fast transforms, such as document order indexes. It also attempts to allow an incremental transform by launching the transform on a secondary thread as soon as the SAX2 StartDocument event has occurred. When the transform requests a node, and the node is not present, the getFirstChild and GetNextSibling methods will wait until the child node has arrived, or an endElement event has occurred.
Note that the secondary thread is an issue. It would be better to do the same thing as described above on a single thread, but using the parser in 'pull' mode, or simply with a parseNext method so the parse would occur in blocks. However, this model would only be possible
This kind of incrementality is not perfect because it still requires an entire source tree to be concretely built. There have been a lot of good discussions on the xalan-dev list about how to do static analysis of a stylesheet, and be able to allocate only the nodes needed by the transform, while they are needed (or not allocate source objects at all).
+
+
Serializer Module
+
XML serialization is a term used for turning a tree or set of events into a stream, and should not be confused with Java object serialization. The Xalan serializers implement the ContentHandler to turn parser events coming from the transform, into a stream of XML, HTML, or plain text. The serializers also implement the Serializer which allows the transform process to set XSLT output properties and the output stream or Writer.
+
Extensions Module
+
This package contains an implementation of Xalan Extension Mechanism, which uses the Bean Scripting Framework.
+
+The Bean Scripting Framework (BSF) is an architecture for incorporating scripting into Java applications and applets. Scripting languages such as Netscape Rhino (Javascript), VBScript, Perl, Tcl, Python, NetRexx and Rexx can be used to augment XSLT's functionality. In addition, the Xalan extension mechanism allows use of Java classes. See the Xalan-J 2 extension documentation for a description of using extensions in a stylesheet. Please note that the W3C XSL Working Group is working on a specification for standard extension bindings, and this module will change to follow that specification.
[More needed... -sb]
+
XPath Module
+
This module is pulled out of the Xalan package, and put in the org.apache package, to emphasize that the intention is that this package can be used independently of the XSLT engine, even though it has dependencies on the Xalan utils module.
+
The XPath module first compiles the XPath strings into expression trees, and then executes these expressions via a call to the XPath execute(...) function.
Major classes are:
XPath
Represents a compiled XPath. Major function is XObject execute(XPathContext xctxt, Node contextNode,
+ PrefixResolver namespaceContext).
XPathAPI
The methods in this class are convenience methods into the
+ low-level XPath API.
XPathContext
Used as the runtime execution context for XPath.
DOMHelper
Used as a helper for handling DOM issues. May be subclassed to take advantage
+ of specific DOM implementations.
SourceTreeManager
bottlenecks all management of source trees. The methods
+ in this class should allow easy garbage collection of source
+ trees, and should centralize parsing for those source trees.
Expression
The base-class of all expression objects, allowing polymorphic behaviors.
The general architecture of the XPath module is divided into the compiler, and categories of expression objects.
The most important module is the axes module. This module implements the DOM2 NodeIterator interface, and is meant to allow XPath clients to either override the default behavior or to replace this behavior.
The LocPathIterator and UnionPathIterator classes implement the NodeIterator interface, and polymorphically use AxesWalker derived objects to execute each step in the path. The whole trick is to execute the LocationPath in depth-first document order so that nodes can be found without necessarily looking ahead or performing a breadth-first search. Because a document order depth-first search requires state to be saved for many expressions, the default operations create "Waiter" clones that have to wait while the main AxesWalkers traverses child nodes (think carefully about what happens when a "//foo/baz" expression is executed). Optimization is done by implementing specialized iterators and AxesWalkers for certain types of operations. The decision as to what type of iterator or walker will be created is done in the WalkerFactory class.
[Frankly, the implementation of the default AxesWalker, with it's waiters, is the one totally incomprehensible part of Xalan. It gets especially difficult because you can not look to the node ahead. I would be very interested if any rocket scientists out there can come up with a better algorithm.]
+
XPath Database Connection
+
An important part of the XPath design in both Xalan 1 and Xalan 2, is to enable database connections to be used as drivers directly to the XPath LocationPath handling. This allows databases to be directly connected to the transform, and be able to take advantage of internal indexing and the like. While in Xalan 1 this was done via the XLocator interface, in Xalan 2 this interface is no longer used, and has been replaced by the DOM2 NodeIterator interface. An application or extension should be able to install their own NodeIterator for a given document.
[More to do]
+
Utils Package
+
This package contains general utilities for use by both the xalan and xpath packages.
+
Other Packages
+
client
Implementation of Xalan Applet [should we keep this?].
+
+
+
+
+
lib
Implementation of Xalan-specific extensions.
res
Contains strings that require internationalization.
+
Xalan Stylesheet Complilation to Java
+
We are doing some work on compiling stylesheet objects to Java. This is a work in progress, and is not meant for general use yet. For the moment, we are writing out Java text files, and then compiling them to bytecodes via javac, rather than directly producing bytecodes. The CompilingStylesheetProcessor derives from TransformerFactoryImpl to produce these classes, which are then bundled into a jar file. For the moment the full Xalan jar is required, but we're looking at ways to only use a subset of Xalan, so that only a minimal jar would be required.
+
Future Optimizations
+
This section enumerates some optimizations that we're planning to do in future versions of Xalan.
Likely near term optimizations (next six months?):
By pre-analysis of the stylesheet, prune nodes from the tree that have been processed and can be predicted that they won't be visited again.
Optimize variable patterns such as <xsl:variable name="foo"><xsl:variable select="yada"/></xsl:variable> into <xsl:variable name="foo" select="string(yada)"/>, in order to reduce result tree fragment creation.
Reduce size of Stree nodes.
Implement our own NamespaceSupport class (the SAX2 one is too expensive).
More specialization of itterators and walkers.
Full Java compilation support.
Schema Awareness (if "//foo", the Schema can tell us where to look, but we need standard interface to Schemas).
Likely longer term optimizations (12-18 months?):
On-the-fly indexing.
Predict if nodes won't be processed at all, and so don't build them, achieve full streaming support for a certain class of stylesheets.
+
Coding Conventions
+
This section documents the coding conventions used in the Xalan
+ source.
+
+
Class files are arranged with constructors and possibly an init()
+ function first, public API methods second, package specific, protected, and
+ private methods following (arranged based on related functionality), member
+ variables with their getter/setter access methods last.
+
Non-static member variables are prefixed with "m_".
+
static final member variables should always be upper case, without
+ the "m_" prefix. They need not have accessors.
+
Private member variables that are not accessed outside the class need
+ not have getter/setter methods declared.
+
Private member variables that are accessed outside the class should
+ have either package specific or public getter/setter methods declared. All
+ accessors should follow the bean design patterns.
+
Package-scoped member variables, public member variables, and
+ protected member variables should not be declared.
XLST is a stylesheet language for transforming XML documents into other XML documents, HTML documents,
other document types, or text. The language includes the XSL Transformation vocabulary and XPath, a language for
addressing parts of an XML document. An XSL stylesheet describes how to transform the tree of nodes in the XML
diff --git a/xalan/src/site/xhtml/org/apache/xalan/client/package.xhtml b/xalan/src/site/xhtml/org/apache/xalan/client/package.xhtml
new file mode 100644
index 000000000..154cd5465
--- /dev/null
+++ b/xalan/src/site/xhtml/org/apache/xalan/client/package.xhtml
@@ -0,0 +1,26 @@
+
+
+
+
Provides extension functions for connecting to a JDBC data source, executing a query,
+and working incrementally through a "streamable" result set. Streaming (reuse of a single row node to traverse the result set) is the default mode of operation. If you want unlimited access to the entire result set, you can cache the query result set (1 row node for each row in the result set).
+
If you use streaming mode (the default), you can only access row elements one at a time moving forward through the result set. The use of XPath expressions in your stylesheet, for example, that attempt to return nodes from the result set in any other manner may produce unpredictable results.
+
XConnection provides three extension functions that you can use in your stylesheet.
+
+
new() -- Use one of the XConnection constructors to connect to a data source, and return an XConnection
+ object.
+
query() -- Use the XConnection object query() method to return a "streamable" result set in the form of a row-set
+ node. Work your way through the row-set one row at a time. The same row element is used over and over again, so you can
+ begin "transforming" the row-set before the entire result set has been returned.
+
close() -- Use the XConnection object close() method to terminate the connection.
+
+
The query() extension function returns a Document node that contains (as needed) an array of column-header elements,
+ a single row element that is used repeatedly, and an array of col elements. Each column-header element (one per column in the
+ row-set) contains an attribute (ColumnAttribute) for each of the column descriptors in the ResultSetMetaData object.
+ Each col element contains a text node with a textual representation of the value for that column in the current row.
+
Example
+
This example displays the result set from a table in a sample InstantDB database.
Parses an XSLT stylesheet document (which may include and import other stylesheet documents) and produces a StylesheetRoot
+ (a TRaX Templates object).
+
+
StylesheetProcessor implements the TRaX {@link javax.xml.transform.TransformerFactory} interface,
+ as well as the {@link javax.xml.transform.sax.SAXTransformerFactory} interface.
+ It registers the {@link org.apache.xalan.processor.StylesheetHandler} object
+ (a TrAX {@link javax.xml.transform.sax.TemplatesHandler} implementation)
+ as the SAX ContentHandler for an XMLReader, and uses the XMLReader to parse
+ the stylesheet document.
+
Before parsing the XSLT input, StylesheetHandler assembles an {@link org.apache.xalan.processor.XSLTSchema},
+ which uses {@link org.apache.xalan.processor.XSLTElementDef}
+ and {@link org.apache.xalan.processor.XSLTAttributeDef} objects to
+ recursively define the elements and attributes that an XSLT stylesheet may
+ contain. The StylesheetHandler then passes on each parse event to the
+ {@link org.apache.xalan.processor.XSLTElementProcessor} which the
+ XSLTElementDef assigned to the element associated with that event.
Implements the {@link javax.xml.transform.Templates} interface,
+ and defines a set of classes that represent an XSLT stylesheet.
+
+
{@link org.apache.xalan.templates.StylesheetRoot} implements the {@link javax.xml.transform.Templates} interface, and
+ extends {@link org.apache.xalan.templates.StylesheetComposed},
+ which is a {@link org.apache.xalan.templates.Stylesheet} composed of itself
+ and its included Stylesheet objects. A StylesheetRoot also contains a
+ global list of all imported StylesheetComposed objects. The
+ role of these objects is to hold immutable stylesheet data, not to perform
+ procedural tasks associated with the
+ construction of the data (the org.apache.xalan.processor package) or with the transformation (the org.apache.xalan.transformer
+ package).
+
{@link org.apache.xalan.templates.ElemTemplateElement} is the superclass of
+ all XSLT instruction elements, including Stylesheet. The xFunc classes
+ extend members of the org.apache.xpath package and implement XSLT functions. Unlike
+ the Stylesheet "container" objects, the
+ instruction element and function classes do contain procedural execute()
+ methods that are called during the transformation.
In charge of run-time transformations and the production of result trees.
+
+
{@link org.apache.xalan.transformer.TransformerImpl} implements the
+ {@link javax.xml.transform.Transformer} interface, and is the core representation
+ of the transformation execution.
+
For each node in the XML source, TransformerImpl uses the StylesheetRoot and underlying XSLT schema to determine which
+ template to apply: one of the templates in the StylesheetRoot, a default template rule as specified in the XSLT spec, or
+ none.
+
The Transformer works with {@link org.apache.xml.serializer.SerializationHandler} to
+ forward the SAX-like events produced by the
+ transformation to the appropriate output ContentHandler.
+
To the degree possible, the parsing of the XML source and application of the Templates object to that source are performed
+ concurrently in separate threads. When necessary, the Transformer waits for the parse events that must be in place before a
+ given template may be applied.
Implementation of Xalan utility classes. This package is also shared by XPath.
+ There *should* be no outward dependencies to XPath or Xalan by classes in this package.
Implements XPath functions -- each function is derived from Function,
+ FunctionOneArg, Function2Args, etc, with number-of-arguments checking being
+ applied mainly at compile time -- this package only implements XPath functions,
+ XSLT functions are found in the "templates" package.
Contains strings for XPath support that require internationalization.
+
+
+
+
diff --git a/xalan/src/test/java/org/apache/xalan/VersionAccessor.java b/xalan/src/test/java/org/apache/xalan/VersionAccessor.java
new file mode 100644
index 000000000..4b5409dc0
--- /dev/null
+++ b/xalan/src/test/java/org/apache/xalan/VersionAccessor.java
@@ -0,0 +1,16 @@
+package org.apache.xalan;
+
+/**
+ * Provides tests in other packages with access to (package) protected methods
+ * in class {@link Version}, passing through parameters and results
+ */
+public class VersionAccessor {
+ /**
+ * Provides tests in other packages with access to (package) protected method
+ * {@link Version#parseVersionNumber(String)}, passing through parameters and
+ * results
+ */
+ public static void parseVersionNumber(String version) {
+ Version.parseVersionNumber(version);
+ }
+}
diff --git a/xalan/src/test/java/org/apache/xalan/VersionTest.java b/xalan/src/test/java/org/apache/xalan/VersionTest.java
new file mode 100644
index 000000000..b4a0cb995
--- /dev/null
+++ b/xalan/src/test/java/org/apache/xalan/VersionTest.java
@@ -0,0 +1,132 @@
+/*
+ * 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;
+
+import org.junit.jupiter.api.AfterAll;
+import org.junit.jupiter.api.BeforeAll;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.parallel.Isolated;
+import org.junit.jupiter.params.ParameterizedTest;
+import org.junit.jupiter.params.provider.Arguments;
+import org.junit.jupiter.params.provider.MethodSource;
+import org.mockito.MockedStatic;
+import org.mockito.Mockito;
+
+import java.io.ByteArrayInputStream;
+import java.io.ByteArrayOutputStream;
+import java.io.PrintStream;
+import java.util.stream.Stream;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertTrue;
+
+@Isolated("redirecting System.err is not thread-safe")
+public class VersionTest {
+ private static final PrintStream originalPrintStream = System.err;
+ private static final ByteArrayOutputStream buffer = new ByteArrayOutputStream();
+ private static final PrintStream mockPrintStream = new PrintStream(buffer, true);
+
+ @BeforeAll
+ public static void beforeAll() {
+ System.setErr(mockPrintStream);
+ }
+
+ @AfterAll
+ public static void afterAll() {
+ System.setErr(originalPrintStream);
+ }
+
+ @BeforeEach
+ public void beforeEach() {
+ buffer.reset();
+ }
+
+ @ParameterizedTest(name = "{0} -> {2}")
+ @MethodSource("testReadPropertiesArgs")
+ public void testReadProperties(String ignoredName, String properties, String version) {
+ try (MockedStatic versionMock = Mockito.mockStatic(Version.class, Mockito.CALLS_REAL_METHODS)) {
+ versionMock
+ .when(Version::getPropertiesStream)
+ .thenReturn(new ByteArrayInputStream(properties.getBytes()));
+ assertEquals(version, Version.readVersionNumber());
+ }
+ }
+
+ private static Stream testReadPropertiesArgs() {
+ return Stream.of(
+ Arguments.of("single line without line feed", "version=1.2.3", "1.2.3"),
+ Arguments.of("single line with line feed", "version=4.5.D6-SNAPSHOT\n", "4.5.D6-SNAPSHOT"),
+ Arguments.of("multiple lines with version number", "foo=bar\nversion=7.8.9\nbaz=zot\n", "7.8.9"),
+ Arguments.of("single line without version number", "verXion=7.8.9\n", "0.0.0"),
+ Arguments.of("multiple lines without version number", "foo=bar\nverXion=7.8.9\nbaz=zot\n", "0.0.0")
+ );
+ }
+
+ @Test
+ public void testCannotReadProperties() {
+ try (MockedStatic versionMock = Mockito.mockStatic(Version.class, Mockito.CALLS_REAL_METHODS)) {
+ versionMock
+ .when(Version::getPropertiesStream)
+ .thenThrow(NullPointerException.class);
+ assertEquals("0.0.0", Version.readVersionNumber());
+ assertTrue(buffer.toString().contains("RuntimeException: Cannot read properties file"));
+ }
+ }
+
+ @ParameterizedTest(name = "{0} -> {1}")
+ @MethodSource("testParseVersionNumberArgs")
+ public void testParseVersionNumber(
+ String inputVersion, boolean matchSuccessful, String parsedVersion,
+ int major, int release, int maintenance, int development, boolean snapshot
+ ) {
+ Version.parseVersionNumber(inputVersion);
+ assertEquals(parsedVersion, Version.getVersion());
+ assertEquals(major, Version.getMajorVersionNum());
+ assertEquals(release, Version.getReleaseVersionNum());
+ assertEquals(maintenance, Version.getMaintenanceVersionNum());
+ assertEquals(development, Version.getDevelopmentVersionNum());
+ assertEquals(snapshot, Version.isSnapshot());
+ boolean cannotMatchWarningFound = buffer.toString().contains("Cannot match Xalan version");
+ assertEquals(matchSuccessful, !cannotMatchWarningFound);
+ }
+
+ private static Stream testParseVersionNumberArgs() {
+ return Stream.of(
+ // Pattern match
+ Arguments.of("1.2.3", true, "Xalan Java 1.2.3", 1, 2, 3, 0, false),
+ Arguments.of("1.2.D3", true, "Xalan Java 1.2.D3", 1, 2, 0, 3, false),
+ Arguments.of("1.2.3-SNAPSHOT", true, "Xalan Java 1.2.3-SNAPSHOT", 1, 2, 3, 0, true),
+ Arguments.of("1.2.D03-SNAPSHOT", true, "Xalan Java 1.2.D3-SNAPSHOT", 1, 2, 0, 3, true),
+ Arguments.of("0.0.0", true, "Xalan Java 0.0.0", 0, 0, 0, 0, false),
+ // No pattern match
+ Arguments.of("", false, "Xalan Java 0.0.0", 0, 0, 0, 0, false),
+ Arguments.of("-1.2.3", false, "Xalan Java 0.0.0", 0, 0, 0, 0, false),
+ Arguments.of("-1.2.3", false, "Xalan Java 0.0.0", 0, 0, 0, 0, false),
+ Arguments.of("1. 2.3", false, "Xalan Java 0.0.0", 0, 0, 0, 0, false),
+ Arguments.of("1.2.D3x", false, "Xalan Java 0.0.0", 0, 0, 0, 0, false),
+ Arguments.of("1.2.3-XSNAPSHOT", false, "Xalan Java 0.0.0", 0, 0, 0, 0, false),
+ Arguments.of("1.2.D3-snapshot", false, "Xalan Java 0.0.0", 0, 0, 0, 0, false),
+ Arguments.of("1.2.D3-SNAPSHOT-1", false, "Xalan Java 0.0.0", 0, 0, 0, 0, false),
+ // Input version null -> cannot happen in class under test, but we know
+ // what would happen if it did
+ Arguments.of(null, true, "Xalan Java 0.0.0", 0, 0, 0, 0, false)
+ );
+ }
+
+}
diff --git a/xalan/src/test/java/org/apache/xalan/processor/XSLProcessorVersionTest.java b/xalan/src/test/java/org/apache/xalan/processor/XSLProcessorVersionTest.java
new file mode 100644
index 000000000..711e28f3c
--- /dev/null
+++ b/xalan/src/test/java/org/apache/xalan/processor/XSLProcessorVersionTest.java
@@ -0,0 +1,96 @@
+/*
+ * 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.processor;
+
+import org.apache.xalan.VersionAccessor;
+import org.junit.jupiter.api.AfterAll;
+import org.junit.jupiter.api.BeforeAll;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.parallel.Isolated;
+import org.junit.jupiter.params.ParameterizedTest;
+import org.junit.jupiter.params.provider.Arguments;
+import org.junit.jupiter.params.provider.MethodSource;
+
+import java.io.ByteArrayOutputStream;
+import java.io.PrintStream;
+import java.util.stream.Stream;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
+
+@Isolated("redirecting System.err is not thread-safe")
+public class XSLProcessorVersionTest {
+ private static final PrintStream originalPrintStream = System.err;
+ private static final ByteArrayOutputStream buffer = new ByteArrayOutputStream();
+ private static final PrintStream mockPrintStream = new PrintStream(buffer, true);
+
+ @BeforeAll
+ public static void beforeAll() {
+ System.setErr(mockPrintStream);
+ }
+
+ @AfterAll
+ public static void afterAll() {
+ System.setErr(originalPrintStream);
+ }
+
+ @BeforeEach
+ public void beforeEach() {
+ buffer.reset();
+ }
+
+ @ParameterizedTest(name = "{0} -> {1}")
+ @MethodSource("testParseVersionNumberArgs")
+ public void testParseVersionNumber(
+ String inputVersion, boolean matchSuccessful, String parsedVersion,
+ int major, int release, int maintenance, int development, boolean snapshot
+ ) {
+ VersionAccessor.parseVersionNumber(inputVersion);
+ assertEquals(parsedVersion, XSLProcessorVersion.getVersion());
+ assertEquals(major, XSLProcessorVersion.getMajorVersionNum());
+ assertEquals(release, XSLProcessorVersion.getReleaseVersionNum());
+ assertEquals(maintenance, XSLProcessorVersion.getMaintenanceVersionNum());
+ assertEquals(development, XSLProcessorVersion.getDevelopmentVersionNum());
+ assertEquals(snapshot, XSLProcessorVersion.isSnapshot());
+ boolean cannotMatchWarningFound = buffer.toString().contains("Cannot match Xalan version");
+ assertEquals(matchSuccessful, !cannotMatchWarningFound);
+ }
+
+ private static Stream testParseVersionNumberArgs() {
+ return Stream.of(
+ // Pattern match
+ Arguments.of("1.2.3", true, "Xalan Processor Java 1.2.3", 1, 2, 3, 0, false),
+ Arguments.of("1.2.D3", true, "Xalan Processor Java 1.2.D3", 1, 2, 0, 3, false),
+ Arguments.of("1.2.3-SNAPSHOT", true, "Xalan Processor Java 1.2.3-SNAPSHOT", 1, 2, 3, 0, true),
+ Arguments.of("1.2.D03-SNAPSHOT", true, "Xalan Processor Java 1.2.D3-SNAPSHOT", 1, 2, 0, 3, true),
+ Arguments.of("0.0.0", true, "Xalan Processor Java 0.0.0", 0, 0, 0, 0, false),
+ // No pattern match
+ Arguments.of("", false, "Xalan Processor Java 0.0.0", 0, 0, 0, 0, false),
+ Arguments.of("-1.2.3", false, "Xalan Processor Java 0.0.0", 0, 0, 0, 0, false),
+ Arguments.of("-1.2.3", false, "Xalan Processor Java 0.0.0", 0, 0, 0, 0, false),
+ Arguments.of("1. 2.3", false, "Xalan Processor Java 0.0.0", 0, 0, 0, 0, false),
+ Arguments.of("1.2.D3x", false, "Xalan Processor Java 0.0.0", 0, 0, 0, 0, false),
+ Arguments.of("1.2.3-XSNAPSHOT", false, "Xalan Processor Java 0.0.0", 0, 0, 0, 0, false),
+ Arguments.of("1.2.D3-snapshot", false, "Xalan Processor Java 0.0.0", 0, 0, 0, 0, false),
+ Arguments.of("1.2.D3-SNAPSHOT-1", false, "Xalan Processor Java 0.0.0", 0, 0, 0, 0, false),
+ // Input version null -> cannot happen in class under test, but we know
+ // what would happen if it did
+ Arguments.of(null, true, "Xalan Processor Java 0.0.0", 0, 0, 0, 0, false)
+ );
+ }
+
+}
diff --git a/xalan2jtaglet/pom.xml b/xalan2jtaglet/pom.xml
new file mode 100644
index 000000000..0bdd9c8e0
--- /dev/null
+++ b/xalan2jtaglet/pom.xml
@@ -0,0 +1,41 @@
+
+ 4.0.0
+
+ xalan
+ xalan-j
+ 2.7.3
+
+
+ xalan2jtaglet
+ @xsl.usage taglet JDK 8
+
+ Implementation of the @xsl.usage taglet, used in the Xalan package's javadoc
+ to indicate classes which, while public for cross-module access, are not
+ intended to be called by end-users.
+
+
+
+
+
+ com.github.olivergondza
+ maven-jdk-tools-wrapper
+ 0.1
+
+
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-dependency-plugin
+
+
+
+
+
diff --git a/xalan2jtaglet/src/main/java/xalan2jtaglet/XSLUsage.java b/xalan2jtaglet/src/main/java/xalan2jtaglet/XSLUsage.java
new file mode 100644
index 000000000..e7eff5fbe
--- /dev/null
+++ b/xalan2jtaglet/src/main/java/xalan2jtaglet/XSLUsage.java
@@ -0,0 +1,51 @@
+package xalan2jtaglet;
+
+import com.sun.javadoc.Tag;
+
+/**
+ * Taglet for Xalan-Java documentation, giving us a standard way to
+ * indicate when classes are public only because they are shared
+ * across packages within Xalan code, not because they are intended for use
+ * by others. Typical: "@xsl.usage internal"
+ *
+ * Technically it might be better to OSGIfy the Xalan code, which
+ * would also permit demand-loading of only the classes actually being
+ * used by this execution... but that's an idea for the future.
+ *
+ * This code renders the tag keywords (internal, advanced, experimental)
+ * into their expanded renderings in the Javadoc.
+ *
+ * Source code recreated from xalan2jtaglet.jar by IntelliJ IDEA (powered by
+ * FernFlower decompiler), then adjusted to JDK 8 taglet API.
+ */
+public class XSLUsage {
+ public static final String TAG = "xsl.usage";
+ private static final int INTERNAL = 0;
+ private static final int ADVANCED = 1;
+ private static final int EXPERIMENTAL = 2;
+ private static final int UNSPECIFIED = -1;
+ private static final String[] names = new String[]{
+ "internal", "advanced", "experimental"
+ };
+ private static final String[] colours = new String[]{
+ "FF0000", "00FF00", "0000FF"
+ };
+ private static final String[] messages = new String[]{
+ "**For internal use only**", "**For advanced use only**", "**Experimental**"
+ };
+
+ public static String getHTML(Tag usageTag) {
+ int key = getKey(usageTag);
+ return key == -1
+ ? ""
+ : " " + messages[key] + "\n";
+ }
+
+ private static int getKey(Tag usageTag) {
+ for (int i = 0; i < names.length; ++i) {
+ if (names[i].equals(usageTag.text()))
+ return i;
+ }
+ return -1;
+ }
+}
diff --git a/xalan2jtaglet/src/main/java/xalan2jtaglet/XSLUsageTag.java b/xalan2jtaglet/src/main/java/xalan2jtaglet/XSLUsageTag.java
new file mode 100644
index 000000000..c2cf80941
--- /dev/null
+++ b/xalan2jtaglet/src/main/java/xalan2jtaglet/XSLUsageTag.java
@@ -0,0 +1,92 @@
+package xalan2jtaglet;
+
+import com.sun.javadoc.Tag;
+import com.sun.tools.doclets.Taglet;
+
+import java.util.Map;
+
+/**
+ * Taglet for Xalan-Java documentation, giving us a standard way to
+ * indicate when classes are public only because they are shared
+ * across packages within Xalan code, not because they are intended for use
+ * by others. Typical: "@xsl.usage internal"
+ *
+ * Technically it might be better to OSGIfy the Xalan code, which
+ * would also permit demand-loading of only the classes actually being
+ * used by this execution... but that's an idea for the future.
+ *
+ * This code renders the tag keywords (internal, advanced, experimental)
+ * into their expanded renderings in the Javadoc.
+ *
+ * Source code recreated from xalan2jtaglet.jar by IntelliJ IDEA (powered by
+ * FernFlower decompiler), then adjusted to JDK 8 taglet API.
+ */
+public class XSLUsageTag implements Taglet {
+ private static final String HEADER = "Usage:";
+
+ @Override
+ public boolean inConstructor() {
+ return true;
+ }
+
+ @Override
+ public boolean inField() {
+ return true;
+ }
+
+ @Override
+ public boolean inMethod() {
+ return true;
+ }
+
+ @Override
+ public boolean inOverview() {
+ return true;
+ }
+
+ @Override
+ public boolean inPackage() {
+ return true;
+ }
+
+ @Override
+ public boolean inType() {
+ return true;
+ }
+
+ @Override
+ public boolean isInlineTag() {
+ return false;
+ }
+
+ @Override
+ public String getName() {
+ return "xsl.usage";
+ }
+
+ @Override
+ public String toString(Tag tag) {
+ return "\n
";
+ for (Tag tag : tags)
+ string = string + XSLUsage.getHTML(tag) + ", ";
+
+ // Remove trailing ", ", add end tag
+ return string.substring(0, string.length() - 2) + "
\n";
+ }
+
+ public static void register(Map tagletMap) {
+ XSLUsageTag tag = new XSLUsageTag();
+ Taglet t = (Taglet) tagletMap.get(tag.getName());
+ if (t != null)
+ tagletMap.remove(tag.getName());
+ tagletMap.put(tag.getName(), tag);
+ }
+}
diff --git a/xalan2jtaglet_jdk9/pom.xml b/xalan2jtaglet_jdk9/pom.xml
new file mode 100644
index 000000000..7dc59fbee
--- /dev/null
+++ b/xalan2jtaglet_jdk9/pom.xml
@@ -0,0 +1,39 @@
+
+ 4.0.0
+
+ xalan
+ xalan-j
+ 2.7.3
+
+
+ xalan2jtaglet_jdk9
+ @xsl.usage taglet JDK9+
+
+ Implementation of the @xsl.usage taglet, used in the Xalan package's javadoc
+ to indicate classes which, while public for cross-module access, are not
+ intended to be called by end-users.
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+
+
+ 9
+ 9
+
+
+
+
+ org.apache.maven.plugins
+ maven-dependency-plugin
+
+
+
+
+
diff --git a/xalan2jtaglet_jdk9/src/main/java/xalan2jtaglet/XSLUsage.java b/xalan2jtaglet_jdk9/src/main/java/xalan2jtaglet/XSLUsage.java
new file mode 100644
index 000000000..be7ad1ff2
--- /dev/null
+++ b/xalan2jtaglet_jdk9/src/main/java/xalan2jtaglet/XSLUsage.java
@@ -0,0 +1,55 @@
+package xalan2jtaglet;
+
+import com.sun.source.doctree.DocTree;
+import com.sun.source.doctree.UnknownBlockTagTree;
+
+/**
+ * Taglet for Xalan-Java documentation, giving us a standard way to
+ * indicate when classes are public only because they are shared
+ * across packages within Xalan code, not because they are intended for use
+ * by others. Typical: "@xsl.usage internal"
+ *
+ * Technically it might be better to OSGIfy the Xalan code, which
+ * would also permit demand-loading of only the classes actually being
+ * used by this execution... but that's an idea for the future.
+ *
+ * This code renders the tag keywords (internal, advanced, experimental)
+ * into their expanded renderings in the Javadoc.
+ *
+ * Source code recreated from xalan2jtaglet.jar by IntelliJ IDEA (powered by
+ * FernFlower decompiler), then adjusted to JDK 9+ taglet API.
+ */
+public class XSLUsage {
+ public static final String TAG = "xsl.usage";
+ private static final int INTERNAL = 0;
+ private static final int ADVANCED = 1;
+ private static final int EXPERIMENTAL = 2;
+ private static final int UNSPECIFIED = -1;
+ private static final String[] names = new String[]{
+ "internal", "advanced", "experimental"
+ };
+ private static final String[] colours = new String[]{
+ "FF0000", "00FF00", "0000FF"
+ };
+ private static final String[] messages = new String[]{
+ "**For internal use only**", "**For advanced use only**", "**Experimental**"
+ };
+
+ public static String getHTML(DocTree usageTag) {
+ int key = getKey(usageTag);
+ return key == -1
+ ? ""
+ : " " + messages[key] + "\n";
+ }
+
+ private static int getKey(DocTree usageTag) {
+ if (usageTag instanceof UnknownBlockTagTree) {
+ UnknownBlockTagTree tag = (UnknownBlockTagTree) usageTag;
+ for (int i = 0; i < names.length; ++i) {
+ if (names[i].equals(tag.getContent().toString()))
+ return i;
+ }
+ }
+ return -1;
+ }
+}
diff --git a/xalan2jtaglet_jdk9/src/main/java/xalan2jtaglet/XSLUsageTag.java b/xalan2jtaglet_jdk9/src/main/java/xalan2jtaglet/XSLUsageTag.java
new file mode 100644
index 000000000..e29f8d53a
--- /dev/null
+++ b/xalan2jtaglet_jdk9/src/main/java/xalan2jtaglet/XSLUsageTag.java
@@ -0,0 +1,63 @@
+package xalan2jtaglet;
+
+import com.sun.source.doctree.DocTree;
+import jdk.javadoc.doclet.Taglet;
+
+import javax.lang.model.element.Element;
+import java.util.*;
+
+/**
+ * Taglet for Xalan-Java documentation, giving us a standard way to
+ * indicate when classes are public only because they are shared
+ * across packages within Xalan code, not because they are intended for use
+ * by others. Typical: "@xsl.usage internal"
+ *
+ * Technically it might be better to OSGIfy the Xalan code, which
+ * would also permit demand-loading of only the classes actually being
+ * used by this execution... but that's an idea for the future.
+ *
+ * This code renders the tag keywords (internal, advanced, experimental)
+ * into their expanded renderings in the Javadoc.
+ *
+ * Source code recreated from xalan2jtaglet.jar by IntelliJ IDEA (powered by
+ * FernFlower decompiler), then adjusted to JDK 9+ taglet API.
+ */
+public class XSLUsageTag implements Taglet {
+ private static final String HEADER = "Usage:";
+
+ @Override
+ public Set getAllowedLocations() {
+ return new HashSet<>(Arrays.asList(Location.values()));
+ }
+
+ @Override
+ public boolean isInlineTag() {
+ return false;
+ }
+
+ @Override
+ public String getName() {
+ return "xsl.usage";
+ }
+
+ @Override
+ public String toString(List extends DocTree> tags, Element element) {
+ if (tags == null || tags.isEmpty())
+ return "";
+
+ String string = "\n
Usage:
";
+ for (DocTree tag : tags)
+ string = string + XSLUsage.getHTML(tag) + ", ";
+
+ // Remove trailing ", ", add end tag
+ return string.substring(0, string.length() - 2) + "
\n";
+ }
+
+ public static void register(Map tagletMap) {
+ XSLUsageTag tag = new XSLUsageTag();
+ Taglet t = (Taglet) tagletMap.get(tag.getName());
+ if (t != null)
+ tagletMap.remove(tag.getName());
+ tagletMap.put(tag.getName(), tag);
+ }
+}
diff --git a/xalansamples/pom.xml b/xalansamples/pom.xml
new file mode 100644
index 000000000..6e7db9443
--- /dev/null
+++ b/xalansamples/pom.xml
@@ -0,0 +1,129 @@
+
+
+ 4.0.0
+
+ xalan-j
+ xalan
+ 2.7.3
+
+
+ xalansamples
+ Apache Xalan-Java Samples
+
+ http://www.example.com
+
+
+ UTF-8
+ 1.8
+ 1.8
+
+
+
+
+ xalan
+ serializer
+
+
+ xalan
+ xalan
+
+
+
+ xalan
+ ${xalan.taglet.artifactId}
+ provided
+
+
+
+
+ javax.servlet
+ servlet-api
+ 2.5
+ provided
+
+
+
+
+ javax.ejb
+ ejb-api
+ 3.0
+ provided
+
+
+
+
+ xerces
+ xercesImpl
+ 2.12.2
+ provided
+
+
+
+
+ dev.aspectj
+ sunlabs.brazil
+ 2.3.1
+
+
+
+
+ org.jboss.spec.javax.rmi
+ jboss-rmi-api_1.0_spec
+ 1.0.6.Final
+
+
+
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-dependency-plugin
+
+
+
+
+
+
+ create-javadocs
+
+
+ [1,)
+
+
+
+
+ org.apache.maven.plugins
+ maven-javadoc-plugin
+
+
+
+
+
+ create-sources
+
+
+ [1,)
+
+
+
+
+ org.apache.maven.plugins
+ maven-source-plugin
+
+
+
+
+
+
+
diff --git a/samples/AppletXMLtoHTML/README.html b/xalansamples/src/main/java/samples/AppletXMLtoHTML/README.html
similarity index 100%
rename from samples/AppletXMLtoHTML/README.html
rename to xalansamples/src/main/java/samples/AppletXMLtoHTML/README.html
diff --git a/samples/AppletXMLtoHTML/appletXMLtoHTML.html b/xalansamples/src/main/java/samples/AppletXMLtoHTML/appletXMLtoHTML.html
similarity index 100%
rename from samples/AppletXMLtoHTML/appletXMLtoHTML.html
rename to xalansamples/src/main/java/samples/AppletXMLtoHTML/appletXMLtoHTML.html
diff --git a/samples/AppletXMLtoHTML/client.html b/xalansamples/src/main/java/samples/AppletXMLtoHTML/client.html
similarity index 100%
rename from samples/AppletXMLtoHTML/client.html
rename to xalansamples/src/main/java/samples/AppletXMLtoHTML/client.html
diff --git a/samples/AppletXMLtoHTML/foo-s1.xml b/xalansamples/src/main/java/samples/AppletXMLtoHTML/foo-s1.xml
similarity index 100%
rename from samples/AppletXMLtoHTML/foo-s1.xml
rename to xalansamples/src/main/java/samples/AppletXMLtoHTML/foo-s1.xml
diff --git a/samples/AppletXMLtoHTML/lts3611beac.jpg b/xalansamples/src/main/java/samples/AppletXMLtoHTML/lts3611beac.jpg
similarity index 100%
rename from samples/AppletXMLtoHTML/lts3611beac.jpg
rename to xalansamples/src/main/java/samples/AppletXMLtoHTML/lts3611beac.jpg
diff --git a/samples/AppletXMLtoHTML/rabbitwhorn.jpg b/xalansamples/src/main/java/samples/AppletXMLtoHTML/rabbitwhorn.jpg
similarity index 100%
rename from samples/AppletXMLtoHTML/rabbitwhorn.jpg
rename to xalansamples/src/main/java/samples/AppletXMLtoHTML/rabbitwhorn.jpg
diff --git a/samples/AppletXMLtoHTML/s1ToHTML.xsl b/xalansamples/src/main/java/samples/AppletXMLtoHTML/s1ToHTML.xsl
similarity index 100%
rename from samples/AppletXMLtoHTML/s1ToHTML.xsl
rename to xalansamples/src/main/java/samples/AppletXMLtoHTML/s1ToHTML.xsl
diff --git a/samples/AppletXMLtoHTML/target.html b/xalansamples/src/main/java/samples/AppletXMLtoHTML/target.html
similarity index 100%
rename from samples/AppletXMLtoHTML/target.html
rename to xalansamples/src/main/java/samples/AppletXMLtoHTML/target.html
diff --git a/samples/AppletXMLtoHTML/trax.xml b/xalansamples/src/main/java/samples/AppletXMLtoHTML/trax.xml
similarity index 100%
rename from samples/AppletXMLtoHTML/trax.xml
rename to xalansamples/src/main/java/samples/AppletXMLtoHTML/trax.xml
diff --git a/samples/AppletXMLtoHTML/xalanApplets.xml b/xalansamples/src/main/java/samples/AppletXMLtoHTML/xalanApplets.xml
similarity index 100%
rename from samples/AppletXMLtoHTML/xalanApplets.xml
rename to xalansamples/src/main/java/samples/AppletXMLtoHTML/xalanApplets.xml
diff --git a/samples/ApplyXPath/ApplyXPath.java b/xalansamples/src/main/java/samples/ApplyXPath/ApplyXPath.java
similarity index 99%
rename from samples/ApplyXPath/ApplyXPath.java
rename to xalansamples/src/main/java/samples/ApplyXPath/ApplyXPath.java
index fe8478f9d..a536d26ff 100644
--- a/samples/ApplyXPath/ApplyXPath.java
+++ b/xalansamples/src/main/java/samples/ApplyXPath/ApplyXPath.java
@@ -19,6 +19,7 @@
* $Id$
*/
// This file uses 4 space indents, no tabs.
+package samples.ApplyXPath;
import java.io.FileInputStream;
import java.io.OutputStreamWriter;
diff --git a/samples/ApplyXPath/foo.xml b/xalansamples/src/main/java/samples/ApplyXPath/foo.xml
similarity index 100%
rename from samples/ApplyXPath/foo.xml
rename to xalansamples/src/main/java/samples/ApplyXPath/foo.xml
diff --git a/samples/ApplyXPath/readme.html b/xalansamples/src/main/java/samples/ApplyXPath/readme.html
similarity index 100%
rename from samples/ApplyXPath/readme.html
rename to xalansamples/src/main/java/samples/ApplyXPath/readme.html
diff --git a/samples/ApplyXPathDOM/ApplyXPathDOM.java b/xalansamples/src/main/java/samples/ApplyXPathDOM/ApplyXPathDOM.java
similarity index 99%
rename from samples/ApplyXPathDOM/ApplyXPathDOM.java
rename to xalansamples/src/main/java/samples/ApplyXPathDOM/ApplyXPathDOM.java
index 7ebb1d267..b3b3d94d4 100644
--- a/samples/ApplyXPathDOM/ApplyXPathDOM.java
+++ b/xalansamples/src/main/java/samples/ApplyXPathDOM/ApplyXPathDOM.java
@@ -20,6 +20,9 @@
*/
// This file uses 4 space indents, no tabs.
+package samples.ApplyXPathDOM;
+
+
import java.io.FileInputStream;
import java.io.OutputStreamWriter;
diff --git a/samples/ApplyXPathDOM/foo.xml b/xalansamples/src/main/java/samples/ApplyXPathDOM/foo.xml
similarity index 100%
rename from samples/ApplyXPathDOM/foo.xml
rename to xalansamples/src/main/java/samples/ApplyXPathDOM/foo.xml
diff --git a/samples/ApplyXPathDOM/readme.html b/xalansamples/src/main/java/samples/ApplyXPathDOM/readme.html
similarity index 100%
rename from samples/ApplyXPathDOM/readme.html
rename to xalansamples/src/main/java/samples/ApplyXPathDOM/readme.html
diff --git a/samples/CompiledJAXP/Compile.java b/xalansamples/src/main/java/samples/CompiledJAXP/Compile.java
similarity index 98%
rename from samples/CompiledJAXP/Compile.java
rename to xalansamples/src/main/java/samples/CompiledJAXP/Compile.java
index a2c08b358..00250a62d 100644
--- a/samples/CompiledJAXP/Compile.java
+++ b/xalansamples/src/main/java/samples/CompiledJAXP/Compile.java
@@ -18,6 +18,7 @@
/*
* $Id$
*/
+package samples.CompiledJAXP;
import javax.xml.transform.Templates;
import javax.xml.transform.TransformerFactory;
diff --git a/samples/CompiledJAXP/README.cjaxp b/xalansamples/src/main/java/samples/CompiledJAXP/README.cjaxp
similarity index 100%
rename from samples/CompiledJAXP/README.cjaxp
rename to xalansamples/src/main/java/samples/CompiledJAXP/README.cjaxp
diff --git a/samples/CompiledJAXP/Transform.java b/xalansamples/src/main/java/samples/CompiledJAXP/Transform.java
similarity index 98%
rename from samples/CompiledJAXP/Transform.java
rename to xalansamples/src/main/java/samples/CompiledJAXP/Transform.java
index da9ac396b..935f33206 100644
--- a/samples/CompiledJAXP/Transform.java
+++ b/xalansamples/src/main/java/samples/CompiledJAXP/Transform.java
@@ -18,6 +18,7 @@
/*
* $Id$
*/
+package samples.CompiledJAXP;
import java.io.OutputStreamWriter;
diff --git a/samples/DOM2DOM/DOM2DOM.java b/xalansamples/src/main/java/samples/DOM2DOM/DOM2DOM.java
similarity index 99%
rename from samples/DOM2DOM/DOM2DOM.java
rename to xalansamples/src/main/java/samples/DOM2DOM/DOM2DOM.java
index 8e9c82a4b..fa5e77a60 100644
--- a/samples/DOM2DOM/DOM2DOM.java
+++ b/xalansamples/src/main/java/samples/DOM2DOM/DOM2DOM.java
@@ -18,6 +18,7 @@
/*
* $Id$
*/
+package samples.DOM2DOM;
import java.io.FileNotFoundException;
import java.io.IOException;
diff --git a/samples/DOM2DOM/birds.xml b/xalansamples/src/main/java/samples/DOM2DOM/birds.xml
similarity index 100%
rename from samples/DOM2DOM/birds.xml
rename to xalansamples/src/main/java/samples/DOM2DOM/birds.xml
diff --git a/samples/DOM2DOM/birds.xsl b/xalansamples/src/main/java/samples/DOM2DOM/birds.xsl
similarity index 100%
rename from samples/DOM2DOM/birds.xsl
rename to xalansamples/src/main/java/samples/DOM2DOM/birds.xsl
diff --git a/samples/DOM2DOM/readme.html b/xalansamples/src/main/java/samples/DOM2DOM/readme.html
similarity index 100%
rename from samples/DOM2DOM/readme.html
rename to xalansamples/src/main/java/samples/DOM2DOM/readme.html
diff --git a/samples/Pipe/Pipe.java b/xalansamples/src/main/java/samples/Pipe/Pipe.java
similarity index 99%
rename from samples/Pipe/Pipe.java
rename to xalansamples/src/main/java/samples/Pipe/Pipe.java
index 798c243fc..8ef67b751 100644
--- a/samples/Pipe/Pipe.java
+++ b/xalansamples/src/main/java/samples/Pipe/Pipe.java
@@ -18,6 +18,7 @@
/*
* $Id$
*/
+package samples.Pipe;
import java.io.IOException;
diff --git a/samples/Pipe/foo.xml b/xalansamples/src/main/java/samples/Pipe/foo.xml
similarity index 100%
rename from samples/Pipe/foo.xml
rename to xalansamples/src/main/java/samples/Pipe/foo.xml
diff --git a/samples/Pipe/foo1.xsl b/xalansamples/src/main/java/samples/Pipe/foo1.xsl
similarity index 100%
rename from samples/Pipe/foo1.xsl
rename to xalansamples/src/main/java/samples/Pipe/foo1.xsl
diff --git a/samples/Pipe/foo2.xsl b/xalansamples/src/main/java/samples/Pipe/foo2.xsl
similarity index 100%
rename from samples/Pipe/foo2.xsl
rename to xalansamples/src/main/java/samples/Pipe/foo2.xsl
diff --git a/samples/Pipe/foo3.xsl b/xalansamples/src/main/java/samples/Pipe/foo3.xsl
similarity index 100%
rename from samples/Pipe/foo3.xsl
rename to xalansamples/src/main/java/samples/Pipe/foo3.xsl
diff --git a/samples/Pipe/readme.html b/xalansamples/src/main/java/samples/Pipe/readme.html
similarity index 100%
rename from samples/Pipe/readme.html
rename to xalansamples/src/main/java/samples/Pipe/readme.html
diff --git a/samples/SAX2SAX/SAX2SAX.java b/xalansamples/src/main/java/samples/SAX2SAX/SAX2SAX.java
similarity index 99%
rename from samples/SAX2SAX/SAX2SAX.java
rename to xalansamples/src/main/java/samples/SAX2SAX/SAX2SAX.java
index bbcd4022e..68e14e726 100644
--- a/samples/SAX2SAX/SAX2SAX.java
+++ b/xalansamples/src/main/java/samples/SAX2SAX/SAX2SAX.java
@@ -24,6 +24,7 @@
* Replicate the SimpleTransform sample, explicitly using the SAX model to handle the
* stylesheet, the XML input, and the transformation.
*/
+package samples.SAX2SAX;
import java.io.FileOutputStream;
import java.io.IOException;
diff --git a/samples/SAX2SAX/birds.xml b/xalansamples/src/main/java/samples/SAX2SAX/birds.xml
similarity index 100%
rename from samples/SAX2SAX/birds.xml
rename to xalansamples/src/main/java/samples/SAX2SAX/birds.xml
diff --git a/samples/SAX2SAX/birds.xsl b/xalansamples/src/main/java/samples/SAX2SAX/birds.xsl
similarity index 100%
rename from samples/SAX2SAX/birds.xsl
rename to xalansamples/src/main/java/samples/SAX2SAX/birds.xsl
diff --git a/samples/SAX2SAX/foo.xml b/xalansamples/src/main/java/samples/SAX2SAX/foo.xml
similarity index 100%
rename from samples/SAX2SAX/foo.xml
rename to xalansamples/src/main/java/samples/SAX2SAX/foo.xml
diff --git a/samples/SAX2SAX/foo.xsl b/xalansamples/src/main/java/samples/SAX2SAX/foo.xsl
similarity index 100%
rename from samples/SAX2SAX/foo.xsl
rename to xalansamples/src/main/java/samples/SAX2SAX/foo.xsl
diff --git a/samples/SimpleTransform/SimpleTransform.java b/xalansamples/src/main/java/samples/SimpleTransform/SimpleTransform.java
similarity index 50%
rename from samples/SimpleTransform/SimpleTransform.java
rename to xalansamples/src/main/java/samples/SimpleTransform/SimpleTransform.java
index fbb1ca0cf..6b252a76c 100644
--- a/samples/SimpleTransform/SimpleTransform.java
+++ b/xalansamples/src/main/java/samples/SimpleTransform/SimpleTransform.java
@@ -18,6 +18,7 @@
/*
* $Id$
*/
+package samples.SimpleTransform;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
@@ -36,25 +37,36 @@
*/
public class SimpleTransform
{
- public static void main(String[] args)
- throws TransformerException, TransformerConfigurationException,
- FileNotFoundException, IOException
- {
- // Use the static TransformerFactory.newInstance() method to instantiate
- // a TransformerFactory. The javax.xml.transform.TransformerFactory
- // system property setting determines the actual class to instantiate --
- // org.apache.xalan.transformer.TransformerImpl.
- TransformerFactory tFactory = TransformerFactory.newInstance();
-
- // Use the TransformerFactory to instantiate a Transformer that will work with
- // the stylesheet you specify. This method call also processes the stylesheet
- // into a compiled Templates object.
- Transformer transformer = tFactory.newTransformer(new StreamSource("birds.xsl"));
-
- // Use the Transformer to apply the associated Templates object to an XML document
- // (foo.xml) and write the output to a file (foo.out).
- transformer.transform(new StreamSource("birds.xml"), new StreamResult(new FileOutputStream("birds.out")));
-
- System.out.println("************* The result is in birds.out *************");
+ public static void main(String[] args)
+ throws TransformerException, TransformerConfigurationException,
+ FileNotFoundException, IOException
+ {
+ // Use the static TransformerFactory.newInstance() method to instantiate
+ // a TransformerFactory. The javax.xml.transform.TransformerFactory
+ // system property setting determines the actual class to instantiate --
+ // for Xalan, org.apache.xalan.transformer.TransformerImpl.
+ TransformerFactory tFactory = TransformerFactory.newInstance();
+
+ // Grab the Name of the Stylesheet from the command line
+ String stylesheet="birds.xml";
+ if (args.length == 0)
+ {
+ System.out.println("You must provide the path and name to a stylesheet to process birds.xml into birds.out");
+ System.out.println("Defaulting to birds.xsl");
+ }
+ else
+ stylesheet = args[0];
+
+ System.out.println("Transforming birds.xml with stylesheet "+ stylesheet);
+
+ // processes the stylesheet into a compiled Templates object.
+ Transformer transformer = tFactory.newTransformer(new StreamSource("birds.xsl"));
+
+ // Use the Transformer to apply the associated Templates object to
+ // an XML document and write the output to a file
+ transformer.transform(new StreamSource("birds.xml"),
+ new StreamResult(new FileOutputStream("birds.out")));
+
+ System.out.println("************* The result is in birds.out *************");
}
}
diff --git a/samples/SimpleTransform/birds.xml b/xalansamples/src/main/java/samples/SimpleTransform/birds.xml
similarity index 100%
rename from samples/SimpleTransform/birds.xml
rename to xalansamples/src/main/java/samples/SimpleTransform/birds.xml
diff --git a/samples/SimpleTransform/birds.xsl b/xalansamples/src/main/java/samples/SimpleTransform/birds.xsl
similarity index 100%
rename from samples/SimpleTransform/birds.xsl
rename to xalansamples/src/main/java/samples/SimpleTransform/birds.xsl
diff --git a/samples/SimpleTransform/foo.xml b/xalansamples/src/main/java/samples/SimpleTransform/foo.xml
similarity index 100%
rename from samples/SimpleTransform/foo.xml
rename to xalansamples/src/main/java/samples/SimpleTransform/foo.xml
diff --git a/samples/SimpleTransform/foo.xsl b/xalansamples/src/main/java/samples/SimpleTransform/foo.xsl
similarity index 100%
rename from samples/SimpleTransform/foo.xsl
rename to xalansamples/src/main/java/samples/SimpleTransform/foo.xsl
diff --git a/samples/SimpleTransform/readme.html b/xalansamples/src/main/java/samples/SimpleTransform/readme.html
similarity index 100%
rename from samples/SimpleTransform/readme.html
rename to xalansamples/src/main/java/samples/SimpleTransform/readme.html
diff --git a/samples/Trace/Trace.java b/xalansamples/src/main/java/samples/Trace/Trace.java
similarity index 99%
rename from samples/Trace/Trace.java
rename to xalansamples/src/main/java/samples/Trace/Trace.java
index 05d90e771..17615b949 100644
--- a/samples/Trace/Trace.java
+++ b/xalansamples/src/main/java/samples/Trace/Trace.java
@@ -18,6 +18,8 @@
/*
* $Id$
*/
+package samples.Trace;
+
import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerConfigurationException;
import javax.xml.transform.TransformerException;
diff --git a/samples/Trace/foo.xml b/xalansamples/src/main/java/samples/Trace/foo.xml
similarity index 100%
rename from samples/Trace/foo.xml
rename to xalansamples/src/main/java/samples/Trace/foo.xml
diff --git a/samples/Trace/foo.xsl b/xalansamples/src/main/java/samples/Trace/foo.xsl
similarity index 100%
rename from samples/Trace/foo.xsl
rename to xalansamples/src/main/java/samples/Trace/foo.xsl
diff --git a/samples/TransformThread/TransformThread.java b/xalansamples/src/main/java/samples/TransformThread/TransformThread.java
similarity index 99%
rename from samples/TransformThread/TransformThread.java
rename to xalansamples/src/main/java/samples/TransformThread/TransformThread.java
index c6e437b4f..7ece806c3 100644
--- a/samples/TransformThread/TransformThread.java
+++ b/xalansamples/src/main/java/samples/TransformThread/TransformThread.java
@@ -18,6 +18,7 @@
/*
* $Id$
*/
+package samples.TransformThread;
import java.io.File;
import java.io.FileInputStream;
diff --git a/samples/TransformThread/foo0.xml b/xalansamples/src/main/java/samples/TransformThread/foo0.xml
similarity index 100%
rename from samples/TransformThread/foo0.xml
rename to xalansamples/src/main/java/samples/TransformThread/foo0.xml
diff --git a/samples/TransformThread/foo0.xsl b/xalansamples/src/main/java/samples/TransformThread/foo0.xsl
similarity index 100%
rename from samples/TransformThread/foo0.xsl
rename to xalansamples/src/main/java/samples/TransformThread/foo0.xsl
diff --git a/samples/TransformThread/foo1.xml b/xalansamples/src/main/java/samples/TransformThread/foo1.xml
similarity index 100%
rename from samples/TransformThread/foo1.xml
rename to xalansamples/src/main/java/samples/TransformThread/foo1.xml
diff --git a/samples/TransformThread/foo1.xsl b/xalansamples/src/main/java/samples/TransformThread/foo1.xsl
similarity index 100%
rename from samples/TransformThread/foo1.xsl
rename to xalansamples/src/main/java/samples/TransformThread/foo1.xsl
diff --git a/samples/UseStylesheetPI/UseStylesheetPI.java b/xalansamples/src/main/java/samples/UseStylesheetPI/UseStylesheetPI.java
similarity index 98%
rename from samples/UseStylesheetPI/UseStylesheetPI.java
rename to xalansamples/src/main/java/samples/UseStylesheetPI/UseStylesheetPI.java
index 0e2ee9824..77baaf552 100644
--- a/samples/UseStylesheetPI/UseStylesheetPI.java
+++ b/xalansamples/src/main/java/samples/UseStylesheetPI/UseStylesheetPI.java
@@ -18,6 +18,7 @@
/*
* $Id$
*/
+package samples.UseStylesheetPI;
import javax.xml.transform.Source;
import javax.xml.transform.Transformer;
diff --git a/samples/UseStylesheetPI/foo.xsl b/xalansamples/src/main/java/samples/UseStylesheetPI/foo.xsl
similarity index 100%
rename from samples/UseStylesheetPI/foo.xsl
rename to xalansamples/src/main/java/samples/UseStylesheetPI/foo.xsl
diff --git a/samples/UseStylesheetPI/fooX.xml b/xalansamples/src/main/java/samples/UseStylesheetPI/fooX.xml
similarity index 100%
rename from samples/UseStylesheetPI/fooX.xml
rename to xalansamples/src/main/java/samples/UseStylesheetPI/fooX.xml
diff --git a/samples/UseStylesheetParam/UseStylesheetParam.java b/xalansamples/src/main/java/samples/UseStylesheetParam/UseStylesheetParam.java
similarity index 98%
rename from samples/UseStylesheetParam/UseStylesheetParam.java
rename to xalansamples/src/main/java/samples/UseStylesheetParam/UseStylesheetParam.java
index 24b655c13..939361394 100644
--- a/samples/UseStylesheetParam/UseStylesheetParam.java
+++ b/xalansamples/src/main/java/samples/UseStylesheetParam/UseStylesheetParam.java
@@ -18,7 +18,7 @@
/*
* $Id$
*/
-
+package samples.UseStylesheetParam;
import java.io.IOException;
import java.io.OutputStreamWriter;
diff --git a/samples/UseStylesheetParam/foo.xml b/xalansamples/src/main/java/samples/UseStylesheetParam/foo.xml
similarity index 100%
rename from samples/UseStylesheetParam/foo.xml
rename to xalansamples/src/main/java/samples/UseStylesheetParam/foo.xml
diff --git a/samples/UseStylesheetParam/foo.xsl b/xalansamples/src/main/java/samples/UseStylesheetParam/foo.xsl
similarity index 100%
rename from samples/UseStylesheetParam/foo.xsl
rename to xalansamples/src/main/java/samples/UseStylesheetParam/foo.xsl
diff --git a/samples/UseStylesheetParam/readme.html b/xalansamples/src/main/java/samples/UseStylesheetParam/readme.html
similarity index 100%
rename from samples/UseStylesheetParam/readme.html
rename to xalansamples/src/main/java/samples/UseStylesheetParam/readme.html
diff --git a/samples/UseXMLFilters/UseXMLFilters.java b/xalansamples/src/main/java/samples/UseXMLFilters/UseXMLFilters.java
similarity index 99%
rename from samples/UseXMLFilters/UseXMLFilters.java
rename to xalansamples/src/main/java/samples/UseXMLFilters/UseXMLFilters.java
index 10b909396..7aaddc587 100644
--- a/samples/UseXMLFilters/UseXMLFilters.java
+++ b/xalansamples/src/main/java/samples/UseXMLFilters/UseXMLFilters.java
@@ -18,6 +18,7 @@
/*
* $Id$
*/
+package samples.UseXMLFilters;
import java.io.IOException;
diff --git a/samples/UseXMLFilters/foo.xml b/xalansamples/src/main/java/samples/UseXMLFilters/foo.xml
similarity index 100%
rename from samples/UseXMLFilters/foo.xml
rename to xalansamples/src/main/java/samples/UseXMLFilters/foo.xml
diff --git a/samples/UseXMLFilters/foo1.xsl b/xalansamples/src/main/java/samples/UseXMLFilters/foo1.xsl
similarity index 100%
rename from samples/UseXMLFilters/foo1.xsl
rename to xalansamples/src/main/java/samples/UseXMLFilters/foo1.xsl
diff --git a/samples/UseXMLFilters/foo2.xsl b/xalansamples/src/main/java/samples/UseXMLFilters/foo2.xsl
similarity index 100%
rename from samples/UseXMLFilters/foo2.xsl
rename to xalansamples/src/main/java/samples/UseXMLFilters/foo2.xsl
diff --git a/samples/UseXMLFilters/foo3.xsl b/xalansamples/src/main/java/samples/UseXMLFilters/foo3.xsl
similarity index 100%
rename from samples/UseXMLFilters/foo3.xsl
rename to xalansamples/src/main/java/samples/UseXMLFilters/foo3.xsl
diff --git a/samples/UseXMLFilters/readme.html b/xalansamples/src/main/java/samples/UseXMLFilters/readme.html
similarity index 100%
rename from samples/UseXMLFilters/readme.html
rename to xalansamples/src/main/java/samples/UseXMLFilters/readme.html
diff --git a/samples/Validate/Validate.java b/xalansamples/src/main/java/samples/Validate/Validate.java
similarity index 99%
rename from samples/Validate/Validate.java
rename to xalansamples/src/main/java/samples/Validate/Validate.java
index 5756d0f45..5b794775b 100644
--- a/samples/Validate/Validate.java
+++ b/xalansamples/src/main/java/samples/Validate/Validate.java
@@ -18,6 +18,7 @@
/*
* $Id$
*/
+package samples.Validate;
import java.io.File;
import java.io.FileInputStream;
diff --git a/samples/Validate/ValidateXMLInput.java b/xalansamples/src/main/java/samples/Validate/ValidateXMLInput.java
similarity index 99%
rename from samples/Validate/ValidateXMLInput.java
rename to xalansamples/src/main/java/samples/Validate/ValidateXMLInput.java
index 99e815797..b25f3d79d 100644
--- a/samples/Validate/ValidateXMLInput.java
+++ b/xalansamples/src/main/java/samples/Validate/ValidateXMLInput.java
@@ -18,6 +18,8 @@
/*
* $Id$
*/
+package samples.Validate;
+
import javax.xml.parsers.SAXParserFactory;
import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerException;
diff --git a/samples/Validate/birds.xml b/xalansamples/src/main/java/samples/Validate/birds.xml
similarity index 100%
rename from samples/Validate/birds.xml
rename to xalansamples/src/main/java/samples/Validate/birds.xml
diff --git a/samples/Validate/birds.xsl b/xalansamples/src/main/java/samples/Validate/birds.xsl
similarity index 100%
rename from samples/Validate/birds.xsl
rename to xalansamples/src/main/java/samples/Validate/birds.xsl
diff --git a/samples/Validate/readme.html b/xalansamples/src/main/java/samples/Validate/readme.html
similarity index 100%
rename from samples/Validate/readme.html
rename to xalansamples/src/main/java/samples/Validate/readme.html
diff --git a/samples/XPathAPI/ApplyXPathJAXP.java b/xalansamples/src/main/java/samples/XPathAPI/ApplyXPathJAXP.java
similarity index 99%
rename from samples/XPathAPI/ApplyXPathJAXP.java
rename to xalansamples/src/main/java/samples/XPathAPI/ApplyXPathJAXP.java
index 0bba26fa7..c18c57c83 100644
--- a/samples/XPathAPI/ApplyXPathJAXP.java
+++ b/xalansamples/src/main/java/samples/XPathAPI/ApplyXPathJAXP.java
@@ -15,6 +15,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
+package samples.XPathAPI;
import java.io.OutputStreamWriter;
diff --git a/samples/XPathAPI/ExtensionFunctionResolver.java b/xalansamples/src/main/java/samples/XPathAPI/ExtensionFunctionResolver.java
similarity index 99%
rename from samples/XPathAPI/ExtensionFunctionResolver.java
rename to xalansamples/src/main/java/samples/XPathAPI/ExtensionFunctionResolver.java
index f3ebf3ff5..6e6ae7835 100644
--- a/samples/XPathAPI/ExtensionFunctionResolver.java
+++ b/xalansamples/src/main/java/samples/XPathAPI/ExtensionFunctionResolver.java
@@ -15,6 +15,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
+package samples.XPathAPI;
import javax.xml.xpath.XPath;
import javax.xml.xpath.XPathConstants;
diff --git a/samples/XPathAPI/ExtensionTest.java b/xalansamples/src/main/java/samples/XPathAPI/ExtensionTest.java
similarity index 97%
rename from samples/XPathAPI/ExtensionTest.java
rename to xalansamples/src/main/java/samples/XPathAPI/ExtensionTest.java
index a97a2c0ed..c7b8459c2 100644
--- a/samples/XPathAPI/ExtensionTest.java
+++ b/xalansamples/src/main/java/samples/XPathAPI/ExtensionTest.java
@@ -15,6 +15,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
+package samples.XPathAPI;
public class ExtensionTest
{
diff --git a/samples/XPathAPI/XPathResolver.java b/xalansamples/src/main/java/samples/XPathAPI/XPathResolver.java
similarity index 99%
rename from samples/XPathAPI/XPathResolver.java
rename to xalansamples/src/main/java/samples/XPathAPI/XPathResolver.java
index 50cbddabd..f11edcb07 100644
--- a/samples/XPathAPI/XPathResolver.java
+++ b/xalansamples/src/main/java/samples/XPathAPI/XPathResolver.java
@@ -15,6 +15,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
+package samples.XPathAPI;
import javax.xml.namespace.*;
import javax.xml.xpath.*;
diff --git a/samples/XPathAPI/foo.xml b/xalansamples/src/main/java/samples/XPathAPI/foo.xml
similarity index 100%
rename from samples/XPathAPI/foo.xml
rename to xalansamples/src/main/java/samples/XPathAPI/foo.xml
diff --git a/samples/XPathAPI/numlist.xml b/xalansamples/src/main/java/samples/XPathAPI/numlist.xml
similarity index 100%
rename from samples/XPathAPI/numlist.xml
rename to xalansamples/src/main/java/samples/XPathAPI/numlist.xml
diff --git a/samples/extensions/1-redir.xml b/xalansamples/src/main/java/samples/extensions/1-redir.xml
similarity index 100%
rename from samples/extensions/1-redir.xml
rename to xalansamples/src/main/java/samples/extensions/1-redir.xml
diff --git a/samples/extensions/1-redir.xsl b/xalansamples/src/main/java/samples/extensions/1-redir.xsl
similarity index 100%
rename from samples/extensions/1-redir.xsl
rename to xalansamples/src/main/java/samples/extensions/1-redir.xsl
diff --git a/samples/extensions/2-basicJscript.xml b/xalansamples/src/main/java/samples/extensions/2-basicJscript.xml
similarity index 100%
rename from samples/extensions/2-basicJscript.xml
rename to xalansamples/src/main/java/samples/extensions/2-basicJscript.xml
diff --git a/samples/extensions/2-basicJscript.xsl b/xalansamples/src/main/java/samples/extensions/2-basicJscript.xsl
similarity index 100%
rename from samples/extensions/2-basicJscript.xsl
rename to xalansamples/src/main/java/samples/extensions/2-basicJscript.xsl
diff --git a/samples/extensions/3-java-namespace.xml b/xalansamples/src/main/java/samples/extensions/3-java-namespace.xml
similarity index 100%
rename from samples/extensions/3-java-namespace.xml
rename to xalansamples/src/main/java/samples/extensions/3-java-namespace.xml
diff --git a/samples/extensions/3-java-namespace.xsl b/xalansamples/src/main/java/samples/extensions/3-java-namespace.xsl
similarity index 100%
rename from samples/extensions/3-java-namespace.xsl
rename to xalansamples/src/main/java/samples/extensions/3-java-namespace.xsl
diff --git a/samples/extensions/4-numlistJava.xsl b/xalansamples/src/main/java/samples/extensions/4-numlistJava.xsl
similarity index 100%
rename from samples/extensions/4-numlistJava.xsl
rename to xalansamples/src/main/java/samples/extensions/4-numlistJava.xsl
diff --git a/samples/extensions/5-numlistJscript.xsl b/xalansamples/src/main/java/samples/extensions/5-numlistJscript.xsl
similarity index 100%
rename from samples/extensions/5-numlistJscript.xsl
rename to xalansamples/src/main/java/samples/extensions/5-numlistJscript.xsl
diff --git a/samples/extensions/IntDate.java b/xalansamples/src/main/java/samples/extensions/IntDate.java
similarity index 97%
rename from samples/extensions/IntDate.java
rename to xalansamples/src/main/java/samples/extensions/IntDate.java
index 41c29fa2b..ca94e29ad 100644
--- a/samples/extensions/IntDate.java
+++ b/xalansamples/src/main/java/samples/extensions/IntDate.java
@@ -18,6 +18,7 @@
/*
* $Id$
*/
+package samples.extensions;
import java.util.Calendar;
import java.util.Date;
diff --git a/samples/extensions/MyCounter.java b/xalansamples/src/main/java/samples/extensions/MyCounter.java
similarity index 98%
rename from samples/extensions/MyCounter.java
rename to xalansamples/src/main/java/samples/extensions/MyCounter.java
index 6accf7df0..e2aa6ae84 100644
--- a/samples/extensions/MyCounter.java
+++ b/xalansamples/src/main/java/samples/extensions/MyCounter.java
@@ -18,6 +18,7 @@
/*
* $Id$
*/
+package samples.extensions;
import java.util.Hashtable;
public class MyCounter {
diff --git a/samples/extensions/numlist.xml b/xalansamples/src/main/java/samples/extensions/numlist.xml
similarity index 100%
rename from samples/extensions/numlist.xml
rename to xalansamples/src/main/java/samples/extensions/numlist.xml
diff --git a/samples/extensions/readme.html b/xalansamples/src/main/java/samples/extensions/readme.html
similarity index 100%
rename from samples/extensions/readme.html
rename to xalansamples/src/main/java/samples/extensions/readme.html
diff --git a/samples/extensions/sql/GETTING_STARTED.txt b/xalansamples/src/main/java/samples/extensions/sql/GETTING_STARTED.txt
similarity index 100%
rename from samples/extensions/sql/GETTING_STARTED.txt
rename to xalansamples/src/main/java/samples/extensions/sql/GETTING_STARTED.txt
diff --git a/samples/extensions/sql/basic-connection/DumpSQL.xsl b/xalansamples/src/main/java/samples/extensions/sql/basic-connection/DumpSQL.xsl
similarity index 100%
rename from samples/extensions/sql/basic-connection/DumpSQL.xsl
rename to xalansamples/src/main/java/samples/extensions/sql/basic-connection/DumpSQL.xsl
diff --git a/samples/extensions/sql/basic-connection/dbinfo.xml b/xalansamples/src/main/java/samples/extensions/sql/basic-connection/dbinfo.xml
similarity index 100%
rename from samples/extensions/sql/basic-connection/dbinfo.xml
rename to xalansamples/src/main/java/samples/extensions/sql/basic-connection/dbinfo.xml
diff --git a/samples/extensions/sql/basic-connection/dbtest-cinfo.xsl b/xalansamples/src/main/java/samples/extensions/sql/basic-connection/dbtest-cinfo.xsl
similarity index 100%
rename from samples/extensions/sql/basic-connection/dbtest-cinfo.xsl
rename to xalansamples/src/main/java/samples/extensions/sql/basic-connection/dbtest-cinfo.xsl
diff --git a/samples/extensions/sql/basic-connection/dbtest.xsl b/xalansamples/src/main/java/samples/extensions/sql/basic-connection/dbtest.xsl
similarity index 100%
rename from samples/extensions/sql/basic-connection/dbtest.xsl
rename to xalansamples/src/main/java/samples/extensions/sql/basic-connection/dbtest.xsl
diff --git a/samples/extensions/sql/basic-connection/readme.html b/xalansamples/src/main/java/samples/extensions/sql/basic-connection/readme.html
similarity index 100%
rename from samples/extensions/sql/basic-connection/readme.html
rename to xalansamples/src/main/java/samples/extensions/sql/basic-connection/readme.html
diff --git a/samples/extensions/sql/createdb.sql b/xalansamples/src/main/java/samples/extensions/sql/createdb.sql
similarity index 100%
rename from samples/extensions/sql/createdb.sql
rename to xalansamples/src/main/java/samples/extensions/sql/createdb.sql
diff --git a/xalansamples/src/main/java/samples/extensions/sql/extConnection/#ExternalConnection.java# b/xalansamples/src/main/java/samples/extensions/sql/extConnection/#ExternalConnection.java#
new file mode 100644
index 000000000..d8fbb587f
--- /dev/null
+++ b/xalansamples/src/main/java/samples/extensions/sql/extConnection/#ExternalConnection.java#
@@ -0,0 +1,108 @@
+/*
+ * 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.
+ */
+/*
+ * $Id$
+ */
+package extensions.sql.extConnection;
+
+// Imported TraX classes
+import javax.xml.transform.TransformerFactory;
+import javax.xml.transform.Transformer;
+import javax.xml.transform.stream.StreamSource;
+import javax.xml.transform.stream.StreamResult;
+import javax.xml.transform.TransformerException;
+import javax.xml.transform.TransformerConfigurationException;
+
+import org.apache.xalan.lib.sql.DefaultConnectionPool;
+import org.apache.xalan.lib.sql.ConnectionPoolManager;
+
+
+// Imported java classes
+import java.io.StringReader;
+import java.io.FileOutputStream;
+import java.io.FileNotFoundException;
+import java.io.IOException;
+
+/**
+ * Use the TraX interface to perform a transformation in the simplest manner possible
+ * (3 statements).
+ */
+public class ExternalConnection
+{
+ public static void main(String[] args)
+ throws TransformerException, TransformerConfigurationException,
+ FileNotFoundException, IOException
+ {
+
+ // Create a connection to the database server
+ // Up the connection pool count for testing
+ DefaultConnectionPool cp = new DefaultConnectionPool();
+ cp.setDriver("org.apache.derby.jdbc.EmbeddedDriver");
+ cp.setURL("jdbc:derby:sampleDB");
+ //cp.setUser("sa");
+ //cp.setPassword("");
+ cp.setMinConnections(10);
+ cp.setPoolEnabled(true);
+
+ // Now let's register our connection pool so we can use
+ // in a stylesheet
+ ConnectionPoolManager pm = new ConnectionPoolManager();
+ pm.registerPool("extpool", cp);
+
+
+ // Use the static TransformerFactory.newInstance() method to instantiate
+ // a TransformerFactory. The javax.xml.transform.TransformerFactory
+ // system property setting determines the actual class to instantiate --
+ // org.apache.xalan.transformer.TransformerImpl.
+ TransformerFactory tFactory = TransformerFactory.newInstance();
+
+ // Grab the Name of the Stylesheet from the command line
+ if (args.length == 0)
+ {
+ System.out.println("You must provide the path and name to a stylesheet to process");
+ System.exit(0);
+ }
+
+ String stylesheet = args[0];
+ System.out.println("Transforming Stylesheet " + stylesheet);
+
+ // Use the TransformerFactory to instantiate a Transformer that will work with
+ // the stylesheet you specify. This method call also processes the stylesheet
+ // into a compiled Templates object.
+ Transformer transformer = tFactory.newTransformer(
+ new StreamSource(stylesheet));
+
+ // For this transformation, all the required information is in the
+ // stylesheet, so generate a minimal XML source document for the
+ // input. Note: the command-line processor
+ // (org.apache.xalan.xslt.Process) uses this strategy when the user
+ // does not provide an -IN parameter.
+ StringReader reader =
+ new StringReader(" ");
+
+ // Use the Transformer to apply the associated Templates object to
+ // an XML document and write the output to a file.
+ transformer.transform(
+ new StreamSource(reader),
+ new StreamResult(new FileOutputStream("dbtest-out.html")));
+
+ System.out.println("************* The result is in dbtest-out.html *************");
+
+ cp.setPoolEnabled(false);
+ }
+}
diff --git a/xalansamples/src/main/java/samples/extensions/sql/extConnection/ExternalConnection.java b/xalansamples/src/main/java/samples/extensions/sql/extConnection/ExternalConnection.java
new file mode 100644
index 000000000..5ebba0d59
--- /dev/null
+++ b/xalansamples/src/main/java/samples/extensions/sql/extConnection/ExternalConnection.java
@@ -0,0 +1,108 @@
+/*
+ * 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.
+ */
+/*
+ * $Id$
+ */
+package samples.extensions.sql.extConnection;
+
+// Imported TraX classes
+import javax.xml.transform.TransformerFactory;
+import javax.xml.transform.Transformer;
+import javax.xml.transform.stream.StreamSource;
+import javax.xml.transform.stream.StreamResult;
+import javax.xml.transform.TransformerException;
+import javax.xml.transform.TransformerConfigurationException;
+
+import org.apache.xalan.lib.sql.DefaultConnectionPool;
+import org.apache.xalan.lib.sql.ConnectionPoolManager;
+
+
+// Imported java classes
+import java.io.StringReader;
+import java.io.FileOutputStream;
+import java.io.FileNotFoundException;
+import java.io.IOException;
+
+/**
+ * Use the TraX interface to perform a transformation in the simplest manner possible
+ * (3 statements).
+ */
+public class ExternalConnection
+{
+ public static void main(String[] args)
+ throws TransformerException, TransformerConfigurationException,
+ FileNotFoundException, IOException
+ {
+
+ // Create a connection to the database server
+ // Up the connection pool count for testing
+ DefaultConnectionPool cp = new DefaultConnectionPool();
+ cp.setDriver("org.apache.derby.jdbc.EmbeddedDriver");
+ cp.setURL("jdbc:derby:sampleDB");
+ //cp.setUser("sa");
+ //cp.setPassword("");
+ cp.setMinConnections(10);
+ cp.setPoolEnabled(true);
+
+ // Now let's register our connection pool so we can use
+ // in a stylesheet
+ ConnectionPoolManager pm = new ConnectionPoolManager();
+ pm.registerPool("extpool", cp);
+
+
+ // Use the static TransformerFactory.newInstance() method to instantiate
+ // a TransformerFactory. The javax.xml.transform.TransformerFactory
+ // system property setting determines the actual class to instantiate --
+ // org.apache.xalan.transformer.TransformerImpl.
+ TransformerFactory tFactory = TransformerFactory.newInstance();
+
+ // Grab the Name of the Stylesheet from the command line
+ if (args.length == 0)
+ {
+ System.out.println("You must provide the path and name to a stylesheet to process");
+ System.exit(0);
+ }
+
+ String stylesheet = args[0];
+ System.out.println("Transforming Stylesheet " + stylesheet);
+
+ // Use the TransformerFactory to instantiate a Transformer that will work with
+ // the stylesheet you specify. This method call also processes the stylesheet
+ // into a compiled Templates object.
+ Transformer transformer = tFactory.newTransformer(
+ new StreamSource(stylesheet));
+
+ // For this transformation, all the required information is in the
+ // stylesheet, so generate a minimal XML source document for the
+ // input. Note: the command-line processor
+ // (org.apache.xalan.xslt.Process) uses this strategy when the user
+ // does not provide an -IN parameter.
+ StringReader reader =
+ new StringReader(" ");
+
+ // Use the Transformer to apply the associated Templates object to
+ // an XML document and write the output to a file.
+ transformer.transform(
+ new StreamSource(reader),
+ new StreamResult(new FileOutputStream("dbtest-out.html")));
+
+ System.out.println("************* The result is in dbtest-out.html *************");
+
+ cp.setPoolEnabled(false);
+ }
+}
diff --git a/samples/extensions/sql/ext-connection/dbtest.xsl b/xalansamples/src/main/java/samples/extensions/sql/extConnection/dbtest.xsl
similarity index 100%
rename from samples/extensions/sql/ext-connection/dbtest.xsl
rename to xalansamples/src/main/java/samples/extensions/sql/extConnection/dbtest.xsl
diff --git a/samples/extensions/sql/ext-connection/readme.html b/xalansamples/src/main/java/samples/extensions/sql/extConnection/readme.html
similarity index 100%
rename from samples/extensions/sql/ext-connection/readme.html
rename to xalansamples/src/main/java/samples/extensions/sql/extConnection/readme.html
diff --git a/samples/extensions/sql/pquery/dbinfo.xml b/xalansamples/src/main/java/samples/extensions/sql/pquery/dbinfo.xml
similarity index 100%
rename from samples/extensions/sql/pquery/dbinfo.xml
rename to xalansamples/src/main/java/samples/extensions/sql/pquery/dbinfo.xml
diff --git a/samples/extensions/sql/pquery/dbtest.xsl b/xalansamples/src/main/java/samples/extensions/sql/pquery/dbtest.xsl
similarity index 100%
rename from samples/extensions/sql/pquery/dbtest.xsl
rename to xalansamples/src/main/java/samples/extensions/sql/pquery/dbtest.xsl
diff --git a/samples/extensions/sql/pquery/readme.html b/xalansamples/src/main/java/samples/extensions/sql/pquery/readme.html
similarity index 100%
rename from samples/extensions/sql/pquery/readme.html
rename to xalansamples/src/main/java/samples/extensions/sql/pquery/readme.html
diff --git a/samples/extensions/sql/readme.html b/xalansamples/src/main/java/samples/extensions/sql/readme.html
similarity index 100%
rename from samples/extensions/sql/readme.html
rename to xalansamples/src/main/java/samples/extensions/sql/readme.html
diff --git a/samples/extensions/sql/runDerby.bat b/xalansamples/src/main/java/samples/extensions/sql/runDerby.bat
similarity index 100%
rename from samples/extensions/sql/runDerby.bat
rename to xalansamples/src/main/java/samples/extensions/sql/runDerby.bat
diff --git a/samples/extensions/sql/runDerby.sh b/xalansamples/src/main/java/samples/extensions/sql/runDerby.sh
similarity index 100%
rename from samples/extensions/sql/runDerby.sh
rename to xalansamples/src/main/java/samples/extensions/sql/runDerby.sh
diff --git a/samples/extensions/sql/runExtConnection.bat b/xalansamples/src/main/java/samples/extensions/sql/runExtConnection.bat
similarity index 100%
rename from samples/extensions/sql/runExtConnection.bat
rename to xalansamples/src/main/java/samples/extensions/sql/runExtConnection.bat
diff --git a/samples/extensions/sql/runExtConnection.sh b/xalansamples/src/main/java/samples/extensions/sql/runExtConnection.sh
similarity index 100%
rename from samples/extensions/sql/runExtConnection.sh
rename to xalansamples/src/main/java/samples/extensions/sql/runExtConnection.sh
diff --git a/samples/extensions/sql/runXalan.bat b/xalansamples/src/main/java/samples/extensions/sql/runXalan.bat
similarity index 100%
rename from samples/extensions/sql/runXalan.bat
rename to xalansamples/src/main/java/samples/extensions/sql/runXalan.bat
diff --git a/samples/extensions/sql/runXalan.sh b/xalansamples/src/main/java/samples/extensions/sql/runXalan.sh
similarity index 100%
rename from samples/extensions/sql/runXalan.sh
rename to xalansamples/src/main/java/samples/extensions/sql/runXalan.sh
diff --git a/samples/extensions/sql/show-error/dbinfo.xml b/xalansamples/src/main/java/samples/extensions/sql/show-error/dbinfo.xml
similarity index 100%
rename from samples/extensions/sql/show-error/dbinfo.xml
rename to xalansamples/src/main/java/samples/extensions/sql/show-error/dbinfo.xml
diff --git a/samples/extensions/sql/show-error/invalidConn.xsl b/xalansamples/src/main/java/samples/extensions/sql/show-error/invalidConn.xsl
similarity index 100%
rename from samples/extensions/sql/show-error/invalidConn.xsl
rename to xalansamples/src/main/java/samples/extensions/sql/show-error/invalidConn.xsl
diff --git a/samples/extensions/sql/show-error/invalidPQuery.xsl b/xalansamples/src/main/java/samples/extensions/sql/show-error/invalidPQuery.xsl
similarity index 100%
rename from samples/extensions/sql/show-error/invalidPQuery.xsl
rename to xalansamples/src/main/java/samples/extensions/sql/show-error/invalidPQuery.xsl
diff --git a/samples/extensions/sql/show-error/invalidQuery.xsl b/xalansamples/src/main/java/samples/extensions/sql/show-error/invalidQuery.xsl
similarity index 100%
rename from samples/extensions/sql/show-error/invalidQuery.xsl
rename to xalansamples/src/main/java/samples/extensions/sql/show-error/invalidQuery.xsl
diff --git a/samples/extensions/sql/show-error/readme.html b/xalansamples/src/main/java/samples/extensions/sql/show-error/readme.html
similarity index 100%
rename from samples/extensions/sql/show-error/readme.html
rename to xalansamples/src/main/java/samples/extensions/sql/show-error/readme.html
diff --git a/samples/extensions/sql/streamable/cachedNodes.xsl b/xalansamples/src/main/java/samples/extensions/sql/streamable/cachedNodes.xsl
similarity index 100%
rename from samples/extensions/sql/streamable/cachedNodes.xsl
rename to xalansamples/src/main/java/samples/extensions/sql/streamable/cachedNodes.xsl
diff --git a/samples/extensions/sql/streamable/dbinfo.xml b/xalansamples/src/main/java/samples/extensions/sql/streamable/dbinfo.xml
similarity index 100%
rename from samples/extensions/sql/streamable/dbinfo.xml
rename to xalansamples/src/main/java/samples/extensions/sql/streamable/dbinfo.xml
diff --git a/samples/extensions/sql/streamable/pivot.xsl b/xalansamples/src/main/java/samples/extensions/sql/streamable/pivot.xsl
similarity index 100%
rename from samples/extensions/sql/streamable/pivot.xsl
rename to xalansamples/src/main/java/samples/extensions/sql/streamable/pivot.xsl
diff --git a/samples/extensions/sql/streamable/readme.html b/xalansamples/src/main/java/samples/extensions/sql/streamable/readme.html
similarity index 100%
rename from samples/extensions/sql/streamable/readme.html
rename to xalansamples/src/main/java/samples/extensions/sql/streamable/readme.html
diff --git a/samples/extensions/sql/streamable/streamNodes.xsl b/xalansamples/src/main/java/samples/extensions/sql/streamable/streamNodes.xsl
similarity index 100%
rename from samples/extensions/sql/streamable/streamNodes.xsl
rename to xalansamples/src/main/java/samples/extensions/sql/streamable/streamNodes.xsl
diff --git a/samples/translets/JAXPTransletMultipleTransformations.java b/xalansamples/src/main/java/samples/translets/JAXPTransletMultipleTransformations.java
similarity index 99%
rename from samples/translets/JAXPTransletMultipleTransformations.java
rename to xalansamples/src/main/java/samples/translets/JAXPTransletMultipleTransformations.java
index ffe82a0fb..7ecfa3ba2 100644
--- a/samples/translets/JAXPTransletMultipleTransformations.java
+++ b/xalansamples/src/main/java/samples/translets/JAXPTransletMultipleTransformations.java
@@ -18,6 +18,9 @@
/*
* $Id$
*/
+
+package samples.translets;
+
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
diff --git a/samples/translets/JAXPTransletOneTransformation.java b/xalansamples/src/main/java/samples/translets/JAXPTransletOneTransformation.java
similarity index 99%
rename from samples/translets/JAXPTransletOneTransformation.java
rename to xalansamples/src/main/java/samples/translets/JAXPTransletOneTransformation.java
index 45614e235..e320d15aa 100644
--- a/samples/translets/JAXPTransletOneTransformation.java
+++ b/xalansamples/src/main/java/samples/translets/JAXPTransletOneTransformation.java
@@ -18,6 +18,8 @@
/*
* $Id$
*/
+package samples.translets;
+
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
diff --git a/samples/servlet/readme.html b/xalansamples/src/main/java/samples/translets/readme.html
similarity index 100%
rename from samples/servlet/readme.html
rename to xalansamples/src/main/java/samples/translets/readme.html
diff --git a/samples/translets/todo.xml b/xalansamples/src/main/java/samples/translets/todo.xml
similarity index 100%
rename from samples/translets/todo.xml
rename to xalansamples/src/main/java/samples/translets/todo.xml
diff --git a/samples/translets/todo.xsl b/xalansamples/src/main/java/samples/translets/todo.xsl
similarity index 100%
rename from samples/translets/todo.xsl
rename to xalansamples/src/main/java/samples/translets/todo.xsl
diff --git a/samples/translets/todotoo.xml b/xalansamples/src/main/java/samples/translets/todotoo.xml
similarity index 100%
rename from samples/translets/todotoo.xml
rename to xalansamples/src/main/java/samples/translets/todotoo.xml
diff --git a/samples/trax/ExampleContentHandler.java b/xalansamples/src/main/java/samples/trax/ExampleContentHandler.java
similarity index 99%
rename from samples/trax/ExampleContentHandler.java
rename to xalansamples/src/main/java/samples/trax/ExampleContentHandler.java
index 1d4cfc84b..cfaed15ea 100644
--- a/samples/trax/ExampleContentHandler.java
+++ b/xalansamples/src/main/java/samples/trax/ExampleContentHandler.java
@@ -18,6 +18,8 @@
/*
* $Id$
*/
+package samples.trax;
+
import org.xml.sax.Attributes;
import org.xml.sax.ContentHandler;
import org.xml.sax.Locator;
diff --git a/samples/trax/Examples.java b/xalansamples/src/main/java/samples/trax/Examples.java
similarity index 99%
rename from samples/trax/Examples.java
rename to xalansamples/src/main/java/samples/trax/Examples.java
index c0be12599..88975d7a5 100644
--- a/samples/trax/Examples.java
+++ b/xalansamples/src/main/java/samples/trax/Examples.java
@@ -18,6 +18,8 @@
/*
* $Id$
*/
+package samples.trax;
+
import java.io.BufferedInputStream;
import java.io.BufferedReader;
import java.io.File;
diff --git a/samples/trax/xml/baz.xml b/xalansamples/src/main/java/samples/trax/xml/baz.xml
similarity index 100%
rename from samples/trax/xml/baz.xml
rename to xalansamples/src/main/java/samples/trax/xml/baz.xml
diff --git a/samples/trax/xml/foo.xml b/xalansamples/src/main/java/samples/trax/xml/foo.xml
similarity index 100%
rename from samples/trax/xml/foo.xml
rename to xalansamples/src/main/java/samples/trax/xml/foo.xml
diff --git a/samples/trax/xml/subdir1/foo2.xml b/xalansamples/src/main/java/samples/trax/xml/subdir1/foo2.xml
similarity index 100%
rename from samples/trax/xml/subdir1/foo2.xml
rename to xalansamples/src/main/java/samples/trax/xml/subdir1/foo2.xml
diff --git a/samples/trax/xml/subdir1/subdir2/foo3.xml b/xalansamples/src/main/java/samples/trax/xml/subdir1/subdir2/foo3.xml
similarity index 100%
rename from samples/trax/xml/subdir1/subdir2/foo3.xml
rename to xalansamples/src/main/java/samples/trax/xml/subdir1/subdir2/foo3.xml
diff --git a/samples/trax/xsl/baz.xsl b/xalansamples/src/main/java/samples/trax/xsl/baz.xsl
similarity index 100%
rename from samples/trax/xsl/baz.xsl
rename to xalansamples/src/main/java/samples/trax/xsl/baz.xsl
diff --git a/samples/trax/xsl/foo.xsl b/xalansamples/src/main/java/samples/trax/xsl/foo.xsl
similarity index 100%
rename from samples/trax/xsl/foo.xsl
rename to xalansamples/src/main/java/samples/trax/xsl/foo.xsl
diff --git a/samples/trax/xsl/foo2.xsl b/xalansamples/src/main/java/samples/trax/xsl/foo2.xsl
similarity index 100%
rename from samples/trax/xsl/foo2.xsl
rename to xalansamples/src/main/java/samples/trax/xsl/foo2.xsl
diff --git a/samples/trax/xsl/foo3.xsl b/xalansamples/src/main/java/samples/trax/xsl/foo3.xsl
similarity index 100%
rename from samples/trax/xsl/foo3.xsl
rename to xalansamples/src/main/java/samples/trax/xsl/foo3.xsl
diff --git a/samples/trax/xsl/inc1/inc1.xsl b/xalansamples/src/main/java/samples/trax/xsl/inc1/inc1.xsl
similarity index 100%
rename from samples/trax/xsl/inc1/inc1.xsl
rename to xalansamples/src/main/java/samples/trax/xsl/inc1/inc1.xsl
diff --git a/samples/trax/xsl/inc1/inc2/inc2.xsl b/xalansamples/src/main/java/samples/trax/xsl/inc1/inc2/inc2.xsl
similarity index 100%
rename from samples/trax/xsl/inc1/inc2/inc2.xsl
rename to xalansamples/src/main/java/samples/trax/xsl/inc1/inc2/inc2.xsl
diff --git a/xalansamples/src/site/xhtml/AppletXMLtoHTML/README.xhtml b/xalansamples/src/site/xhtml/AppletXMLtoHTML/README.xhtml
new file mode 100644
index 000000000..77e95cfea
--- /dev/null
+++ b/xalansamples/src/site/xhtml/AppletXMLtoHTML/README.xhtml
@@ -0,0 +1,40 @@
+
+
+
+
+
+ Xalan Sample Applet
+
+
+
+
+
+
Running the Xalan sample applet
+
+
+
+
+
appletXMLtoHTML.html transforms XML into HTML, and displays the XML document and XSL stylesheet as well as the HTML transformation result.
+
The applet looks for xalan.jar, xercesImpl.jar, xml-apis.jar and serializer.jar in the bin directory. If the JAR files are elsewhere, you must move them or adjust the applet archive setting in client.html.
+
+
For information about the samples (what they illustrate and how to run them), see Samples.
+
+
+
+
diff --git a/xalansamples/src/site/xhtml/AppletXMLtoHTML/appletXMLtoHTML.xhtml b/xalansamples/src/site/xhtml/AppletXMLtoHTML/appletXMLtoHTML.xhtml
new file mode 100644
index 000000000..6944d7249
--- /dev/null
+++ b/xalansamples/src/site/xhtml/AppletXMLtoHTML/appletXMLtoHTML.xhtml
@@ -0,0 +1,34 @@
+
+
+
+
+
+ Using an applet to perform XSL transformations
+
+
+
+
diff --git a/xalansamples/src/site/xhtml/AppletXMLtoHTML/client.xhtml b/xalansamples/src/site/xhtml/AppletXMLtoHTML/client.xhtml
new file mode 100644
index 000000000..a9facfe3a
--- /dev/null
+++ b/xalansamples/src/site/xhtml/AppletXMLtoHTML/client.xhtml
@@ -0,0 +1,137 @@
+
+
+
+ AppletXMLtoHTML
+
+
+
+
+
+
+
+
diff --git a/xalansamples/src/site/xhtml/AppletXMLtoHTML/target.xhtml b/xalansamples/src/site/xhtml/AppletXMLtoHTML/target.xhtml
new file mode 100644
index 000000000..f3caa0617
--- /dev/null
+++ b/xalansamples/src/site/xhtml/AppletXMLtoHTML/target.xhtml
@@ -0,0 +1,24 @@
+
+
+
+
+ Untitled
+
+
+
diff --git a/samples/translets/readme.html b/xalansamples/src/site/xhtml/ApplyXPath/readme.xhtml
similarity index 100%
rename from samples/translets/readme.html
rename to xalansamples/src/site/xhtml/ApplyXPath/readme.xhtml
diff --git a/xalansamples/src/site/xhtml/ApplyXPathDOM/readme.xhtml b/xalansamples/src/site/xhtml/ApplyXPathDOM/readme.xhtml
new file mode 100644
index 000000000..415137e63
--- /dev/null
+++ b/xalansamples/src/site/xhtml/ApplyXPathDOM/readme.xhtml
@@ -0,0 +1,30 @@
+
+
+
+
+
+ Xalan Samples
+
+
+
Xalan Samples
+
For information about the samples (what they illustrate and how to run them), see Samples.
For information about the samples (what they illustrate and how to run them), see Samples.
+
+
+
+
diff --git a/xalanservlet/pom.xml b/xalanservlet/pom.xml
new file mode 100644
index 000000000..f6e35e1d8
--- /dev/null
+++ b/xalanservlet/pom.xml
@@ -0,0 +1,141 @@
+
+
+
+ 4.0.0
+
+ xalan-j
+ xalan
+ 2.7.3
+
+
+ xalanservlet
+ Apache Xalan-Java Servlet Sample
+ war
+
+ http://www.example.com
+
+
+ UTF-8
+ 1.8
+ 1.8
+
+
+
+
+
+ xalan
+ serializer
+
+
+ xalan
+ xalan
+
+
+
+ xalan
+ ${xalan.taglet.artifactId}
+ provided
+
+
+
+
+ javax.servlet
+ servlet-api
+ 2.5
+ provided
+
+
+
+
+ javax.ejb
+ ejb-api
+ 3.0
+ provided
+
+
+
+
+ xerces
+ xercesImpl
+ 2.12.2
+ provided
+
+
+
+
+ dev.aspectj
+ sunlabs.brazil
+ 2.3.1
+
+
+
+
+ org.jboss.spec.javax.rmi
+ jboss-rmi-api_1.0_spec
+ 1.0.6.Final
+
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-dependency-plugin
+
+
+
+
+
+
+ create-javadocs
+
+
+ [1,)
+
+
+
+
+ org.apache.maven.plugins
+ maven-javadoc-plugin
+
+
+
+
+
+ create-sources
+
+
+ [1,)
+
+
+
+
+ org.apache.maven.plugins
+ maven-source-plugin
+
+
+
+
+
+
+
diff --git a/samples/servlet/ApplyXSLT.java b/xalanservlet/src/main/java/servlet/ApplyXSLT.java
similarity index 83%
rename from samples/servlet/ApplyXSLT.java
rename to xalanservlet/src/main/java/servlet/ApplyXSLT.java
index 50c4d8070..e326a6758 100644
--- a/samples/servlet/ApplyXSLT.java
+++ b/xalanservlet/src/main/java/servlet/ApplyXSLT.java
@@ -107,30 +107,30 @@ public void init(ServletConfig config)
super.init(config);
// If the server.root property --see above-- is null, use current working directory
// as default location for media.properties.
- if (ROOT != null){
+ if (ROOT != null) {
CURRENTDIR= getServletContext().getRealPath("/WEB-INF/classes/servlet/") + FS;
- System.out.println ( CURRENTDIR);}
+ System.out.println ( CURRENTDIR);
+ }
else
CURRENTDIR = System.getProperty("user.dir")+ FS;
-
- setDefaultParameters(config);
-
- setMediaProps(config.getInitParameter("mediaURL"));
+
+ setDefaultParameters(config);
+ setMediaProps(config.getInitParameter("mediaURL"));
}
-
+
/**
* Sets the default parameters for the servlet from the configuration.
- * Also sets required system properties until we figure out why servlet
- * sometimess fails to read properties from properties files.
+ * Also sets required system properties until we figure out why servlet
+ * sometimes fails to read properties from properties files.
* @param config Configuration
*/
protected void setDefaultParameters(ServletConfig config)
{
ourDefaultParameters = new DefaultApplyXSLTProperties(config);
}
-
+
/**
- * Loads the media properties file specified by the given string.
+ * Loads the media properties file specified by the given string.
* @param mediaURLstring Location of the media properties file. Can be either a full URL or a path relative
* to the System's server.root /servlets directory. If this parameter is null,
* server.root/servlets/media.properties will be used.
@@ -190,7 +190,7 @@ public String getMedia(HttpServletRequest request)
{
return ourMediaProps.getValue(request.getHeader(HEADER_NAME));
}
-
+
// doPost removed for security reasons due to the possibility of sending
// unsecure XML and XSL XSLTInputSources through the request input stream
@@ -204,26 +204,30 @@ public String getMedia(HttpServletRequest request)
*/
public void doGet (HttpServletRequest request,
HttpServletResponse response)
- throws ServletException, IOException
+ throws ServletException, IOException
{
try
- {
+ {
TransformerFactory tFactory = TransformerFactory.newInstance();
process(tFactory, request, response);
}
catch (Exception e)
{
+ // discard
}
}
-
+
/**
- * Coordinates applying an XSL stylesheet to XML data using operational parameters.
- *
If successfully applied, the result tree will be streamed to the response object
- * and the content type set according to the XSL stylesheet's <xsl:output> element(s).
- *
If there is a problem in parsing the XML/XSL or if there is a problem in applying
- * the XSL to the XML, an exception will be streamed to the response object. The detail
- * of the information returned in the response object will depend on whether we're
- * running in debug mode or not.
+ * Coordinates applying an XSL stylesheet to XML data using
+ * operational parameters.
If successfully applied, the result
+ * tree will be streamed to the response object and the content type
+ * set according to the XSL stylesheet's <xsl:output>
+ * element(s).
If there is a problem in parsing the XML/XSL
+ * or if there is a problem in applying the XSL to the XML, an
+ * exception will be streamed to the response object. The detail of
+ * the information returned in the response object will depend on
+ * whether we're running in debug mode or not.
+
* @param processor implementation of TRaX processor
* @param request May contain information relevant to creating XML and XSL XSLTInputSource's
* @param response Where to write the transformation result
@@ -235,11 +239,11 @@ public void doGet (HttpServletRequest request,
* @exception ServletException Never thrown
* @exception IOException Never thrown
*/
-
- public void process(TransformerFactory tFactory,
- HttpServletRequest request,
+
+ public void process(TransformerFactory tFactory,
+ HttpServletRequest request,
HttpServletResponse response)
- throws ServletException, IOException, SAXException
+ throws ServletException, IOException, SAXException
{
boolean debug = ourDefaultParameters.isDebug(request);
@@ -249,10 +253,10 @@ public void process(TransformerFactory tFactory,
// Listener to be used for all reporting
ApplyXSLTListener listener = new ApplyXSLTListener();
- listener.out.println("debug is " + debug);
+ listener.out.println("debug is " + debug);
StreamSource xmlSource = null;
- StreamSource xslSource = null;
+ StreamSource xslSource = null;
try
{
if ((xmlSource = getDocument(request, listener)) == null)
@@ -262,7 +266,9 @@ public void process(TransformerFactory tFactory,
}
catch (ApplyXSLTException axe)
{
- axe.appendMessage(EOL + "getDocument() resulted in ApplyXSLTException" + EOL
+ axe.appendMessage(EOL
+ + "getDocument() resulted in ApplyXSLTException"
+ + EOL
+ listener.getMessage());
if (debug) writeLog(axe);
displayException(response, axe, debug);
@@ -270,93 +276,95 @@ public void process(TransformerFactory tFactory,
}
// creating XSL Stylesheet
if (xmlSource != null)
- {
+ {
try
{
- if ((xslSource = getStylesheet(tFactory, request, xmlSource, listener)) == null)
- {
+ if ((xslSource = getStylesheet(tFactory, request, xmlSource, listener)) == null)
+ {
throw new ApplyXSLTException("getStylesheet() returned null",
new NullPointerException(),
response.SC_NOT_FOUND);
}
// For time being, must "reset" xmlSource after extracting stylesheet PI
- xmlSource = getDocument(request, listener);
+ xmlSource = getDocument(request, listener);
}
catch (ApplyXSLTException axe)
{
- axe.appendMessage(EOL + "getStylesheet() resulted in ApplyXSLTException" + EOL
+ axe.appendMessage(EOL
+ + "getStylesheet() resulted in ApplyXSLTException"
+ + EOL
+ listener.getMessage());
if (debug) writeLog(axe);
displayException(response, axe, debug);
xslSource = null;
}
- // perform Transformation
-
- if ((xmlSource != null) && (xslSource != null))
- {
- try
- {
- listener.out.println("Performing transformation...");
-
- Templates templates = tFactory.newTemplates(xslSource);
- Transformer transformer = templates.newTransformer();
+ // perform Transformation
+
+ if ((xmlSource != null) && (xslSource != null))
+ {
+ try
{
- try
+ listener.out.println("Performing transformation...");
+
+ Templates templates = tFactory.newTemplates(xslSource);
+ Transformer transformer = templates.newTransformer();
{
- String contentType = null;
- contentType = getContentType(templates);
- if (contentType != null);
+ try
+ {
+ String contentType = null;
+ contentType = getContentType(templates);
+ if (contentType != null);
response.setContentType(contentType);
- if (transformer instanceof TransformerImpl)
- {
- TransformerImpl transformerImpl = (TransformerImpl)transformer;
- transformerImpl.setQuietConflictWarnings(ourDefaultParameters.isNoCW(request));
- }
-
- setStylesheetParams(transformer, request);
- transformer.transform(xmlSource, new StreamResult(response.getOutputStream()));
-
- if (debug)
- writeLog(listener.getMessage(), response.SC_OK);
+ if (transformer instanceof TransformerImpl)
+ {
+ TransformerImpl transformerImpl = (TransformerImpl)transformer;
+ transformerImpl.setQuietConflictWarnings(ourDefaultParameters.isNoCW(request));
+ }
+
+ setStylesheetParams(transformer, request);
+ transformer.transform(xmlSource, new StreamResult(response.getOutputStream()));
+
+ if (debug)
+ writeLog(listener.getMessage(), response.SC_OK);
+ }
+ catch (Exception exc)
+ {
+ ApplyXSLTException axe =
+ new ApplyXSLTException("Exception occurred during Transformation:"
+ + EOL + listener.getMessage() + EOL
+ + exc.getMessage(),
+ exc,
+ response.SC_INTERNAL_SERVER_ERROR);
+ if (debug) writeLog(axe);
+ displayException(response, axe, debug);
+ }
+ finally
+ {
+ // transformer.reset();
+ } // end of try ... catch ... finally
}
- catch (Exception exc)
- {
- ApplyXSLTException axe = new ApplyXSLTException
- ("Exception occurred during Transformation:"
- + EOL + listener.getMessage() + EOL
- + exc.getMessage(),
- exc,
- response.SC_INTERNAL_SERVER_ERROR);
+ }
+ catch (/*org.xml.sax.SAX*/Exception saxExc)
+ {
+ ApplyXSLTException axe = new ApplyXSLTException(
+ "Exception occurred during ctor/Transformation:"
+ + EOL + listener.getMessage() + EOL
+ + saxExc.getMessage(),
+ saxExc,
+ response.SC_INTERNAL_SERVER_ERROR);
if (debug) writeLog(axe);
displayException(response, axe, debug);
- }
- finally
- {
- // transformer.reset();
- } // end of try ... catch ... finally
- }
- }
- catch (/*org.xml.sax.SAX*/Exception saxExc)
+ } // end of new try ... catch
+ } // end of if((stylesheetRoot != null) ...
+ if (debug)
{
- ApplyXSLTException axe = new ApplyXSLTException
- ("Exception occurred during ctor/Transformation:"
- + EOL + listener.getMessage() + EOL
- + saxExc.getMessage(),
- saxExc,
- response.SC_INTERNAL_SERVER_ERROR);
- if (debug) writeLog(axe);
- displayException(response, axe, debug);
- } // end of new try ... catch
- } // end of if((stylesheetRoot != null) ...
- if (debug)
- {
- time = System.currentTimeMillis() - time;
- writeLog(" No Conflict Warnings = " + ourDefaultParameters.isNoCW(request) +
- " Transformation time: " + time + " ms", response.SC_OK);
+ time = System.currentTimeMillis() - time;
+ writeLog(" No Conflict Warnings = " + ourDefaultParameters.isNoCW(request) +
+ " Transformation time: " + time + " ms", response.SC_OK);
+ }
}
}
- }
/**
* Returns an XML XSLTInputSource DOM. Attempts will be make to create the DOM from the following
@@ -385,10 +393,10 @@ protected StreamSource getDocument(HttpServletRequest request,
if ((xmlURL = request.getPathInfo()) != null)
{
listener.out.println("Parsing XML Document from PathInfo: " + xmlURL);
- return new StreamSource(new URL("http", ((DefaultApplyXSLTProperties)
- ourDefaultParameters).getLocalHost(),
+ return new StreamSource(new URL("http",
+ ((DefaultApplyXSLTProperties) ourDefaultParameters).getLocalHost(),
request.getServerPort(),
- xmlURL.replace('\\', '/')).openStream());
+ xmlURL.replace('\\', '/')).openStream());
}
// document from Request parameter
if ((xmlURL = ourDefaultParameters.getXMLurl(request)) != null)
@@ -416,7 +424,7 @@ protected StreamSource getDocument(HttpServletRequest request,
}
/**
- * Returns a Templates (StylesheetRoot) object. Attempts will be make to create the Stylesheet
+ * Returns a Templates (StylesheetRoot) object. Attempts will be make to create the Stylesheet
* from the followingsources:
*
*
A URL specified in the HTTP request's xslURL= parameter. This capability
@@ -441,7 +449,7 @@ protected StreamSource getDocument(HttpServletRequest request,
* @exception ApplyXSLTException Thrown if exception occurs while handling request
*/
protected StreamSource getStylesheet(TransformerFactory tFactory,
- HttpServletRequest request,
+ HttpServletRequest request,
StreamSource xmlSource,
ApplyXSLTListener listener)
throws ApplyXSLTException
@@ -490,26 +498,26 @@ protected StreamSource getStylesheet(TransformerFactory tFactory,
public String getContentType(Templates templates)
{
Properties oprops = templates.getOutputProperties();
- String encoding = oprops.getProperty(OutputKeys.ENCODING);
- String media = oprops.getProperty(OutputKeys.MEDIA_TYPE);
- if (media != null)
- {
+ String encoding = oprops.getProperty(OutputKeys.ENCODING);
+ String media = oprops.getProperty(OutputKeys.MEDIA_TYPE);
+ if (media != null)
+ {
if (encoding != null)
return media + "; charset=" + encoding;
return media;
- }
- else
- {
- String method = oprops.getProperty(OutputKeys.METHOD);
- if (method.equals("html"))
- return "text/html";
- else if (method.equals("text"))
- return "text/plain";
- else
- return "text/xml";
- }
- }
-
+ }
+ else
+ {
+ String method = oprops.getProperty(OutputKeys.METHOD);
+ if (method.equals("html"))
+ return "text/html";
+ else if (method.equals("text"))
+ return "text/plain";
+ else
+ return "text/xml";
+ }
+ }
+
/**
* Defines and sets select top-level XSL stylesheet variables from the HTTP request, which
@@ -545,8 +553,8 @@ public void setStylesheetParams(Transformer transformer, HttpServletRequest requ
{
String[] paramVals = request.getParameterValues(paramName);
if (paramVals != null)
- transformer.setParameter(paramName, new XString(paramVals[0]));
-
+ transformer.setParameter(paramName, new XString(paramVals[0]));
+
}
catch (Exception e)
{
@@ -555,7 +563,7 @@ public void setStylesheetParams(Transformer transformer, HttpServletRequest requ
try
{
transformer.setParameter("servlet-RemoteAddr", new XString(request.getRemoteAddr()));
-
+
}
catch (Exception e)
{
@@ -563,7 +571,7 @@ public void setStylesheetParams(Transformer transformer, HttpServletRequest requ
try
{
transformer.setParameter("servlet-RemoteHost", new XString(request.getRemoteHost()));
-
+
}
catch (Exception e)
{
@@ -571,7 +579,7 @@ public void setStylesheetParams(Transformer transformer, HttpServletRequest requ
try
{
transformer.setParameter("servlet-RemoteUser", new XString(request.getRemoteUser()));
-
+
}
catch (Exception e)
{
@@ -720,7 +728,7 @@ public static String getXSLURLfromDoc(StreamSource xmlSource,
String tempURL = null, returnURL = null;
try
{
- DocumentBuilderFactory dfactory = DocumentBuilderFactory.newInstance();
+ DocumentBuilderFactory dfactory = DocumentBuilderFactory.newInstance();
DocumentBuilder docBuilder = dfactory.newDocumentBuilder();
Node sourceTree = docBuilder.parse(xmlSource.getInputStream());
for(Node child=sourceTree.getFirstChild(); null != child; child=child.getNextSibling())
@@ -748,7 +756,7 @@ public static String getXSLURLfromDoc(StreamSource xmlSource,
{
}
return returnURL;
- }
+ }
/**
* The attribute name in the tag used in stylesheet selection.
@@ -756,7 +764,7 @@ public static String getXSLURLfromDoc(StreamSource xmlSource,
protected static final String STYLESHEET_ATTRIBUTE = "media";
/**
- * The HTTP Header used for matching the Stylesheet attribute via the
+ * The HTTP Header used for matching the Stylesheet attribute via the
* media properties file selected.
*/
protected static final String HEADER_NAME = "user-Agent";
@@ -825,7 +833,6 @@ String getValue(String s)
*/
class PIA
{
-
private Hashtable piAttributes = null;
/**
@@ -850,5 +857,5 @@ class PIA
String getAttribute(String name)
{
return (String) piAttributes.get(name);
- }
+ }
}
diff --git a/samples/servlet/ApplyXSLTException.java b/xalanservlet/src/main/java/servlet/ApplyXSLTException.java
similarity index 100%
rename from samples/servlet/ApplyXSLTException.java
rename to xalanservlet/src/main/java/servlet/ApplyXSLTException.java
diff --git a/samples/servlet/ApplyXSLTListener.java b/xalanservlet/src/main/java/servlet/ApplyXSLTListener.java
similarity index 98%
rename from samples/servlet/ApplyXSLTListener.java
rename to xalanservlet/src/main/java/servlet/ApplyXSLTListener.java
index 7e0f95bd3..0fab4b914 100644
--- a/samples/servlet/ApplyXSLTListener.java
+++ b/xalanservlet/src/main/java/servlet/ApplyXSLTListener.java
@@ -23,6 +23,7 @@
import java.io.*;
import org.xml.sax.*;
import org.apache.xml.utils.DefaultErrorHandler;
+import org.xml.sax.SAXException;
/*****************************************************************************************************
* ApplyXSLTListener provides a buffered listener essential for capturing, and then subsequently
diff --git a/samples/servlet/ApplyXSLTProperties.java b/xalanservlet/src/main/java/servlet/ApplyXSLTProperties.java
similarity index 100%
rename from samples/servlet/ApplyXSLTProperties.java
rename to xalanservlet/src/main/java/servlet/ApplyXSLTProperties.java
diff --git a/samples/servlet/DefaultApplyXSLTProperties.java b/xalanservlet/src/main/java/servlet/DefaultApplyXSLTProperties.java
similarity index 100%
rename from samples/servlet/DefaultApplyXSLTProperties.java
rename to xalanservlet/src/main/java/servlet/DefaultApplyXSLTProperties.java
diff --git a/samples/servlet/SimpleXSLTServlet.java b/xalanservlet/src/main/java/servlet/SimpleXSLTServlet.java
similarity index 100%
rename from samples/servlet/SimpleXSLTServlet.java
rename to xalanservlet/src/main/java/servlet/SimpleXSLTServlet.java
diff --git a/samples/servlet/UseStylesheetParamServlet.java b/xalanservlet/src/main/java/servlet/UseStylesheetParamServlet.java
similarity index 100%
rename from samples/servlet/UseStylesheetParamServlet.java
rename to xalanservlet/src/main/java/servlet/UseStylesheetParamServlet.java
diff --git a/samples/servlet/XSLTServletWithParams.java b/xalanservlet/src/main/java/servlet/XSLTServletWithParams.java
similarity index 99%
rename from samples/servlet/XSLTServletWithParams.java
rename to xalanservlet/src/main/java/servlet/XSLTServletWithParams.java
index eb60e47d6..e59df6c61 100644
--- a/samples/servlet/XSLTServletWithParams.java
+++ b/xalanservlet/src/main/java/servlet/XSLTServletWithParams.java
@@ -19,6 +19,7 @@
* $Id$
*/
package servlet;
+
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
diff --git a/samples/servlet/web.xml b/xalanservlet/src/main/webapp/WEB-INF/web.xml
similarity index 100%
rename from samples/servlet/web.xml
rename to xalanservlet/src/main/webapp/WEB-INF/web.xml
diff --git a/samples/servlet/birds.xml b/xalanservlet/src/main/webapp/birds.xml
similarity index 100%
rename from samples/servlet/birds.xml
rename to xalanservlet/src/main/webapp/birds.xml
diff --git a/samples/servlet/birds.xsl b/xalanservlet/src/main/webapp/birds.xsl
similarity index 100%
rename from samples/servlet/birds.xsl
rename to xalanservlet/src/main/webapp/birds.xsl
diff --git a/samples/servlet/booklist1.xsl b/xalanservlet/src/main/webapp/booklist1.xsl
similarity index 100%
rename from samples/servlet/booklist1.xsl
rename to xalanservlet/src/main/webapp/booklist1.xsl
diff --git a/samples/servlet/booklist2.xsl b/xalanservlet/src/main/webapp/booklist2.xsl
similarity index 100%
rename from samples/servlet/booklist2.xsl
rename to xalanservlet/src/main/webapp/booklist2.xsl
diff --git a/samples/servlet/catalog.xml b/xalanservlet/src/main/webapp/catalog.xml
similarity index 100%
rename from samples/servlet/catalog.xml
rename to xalanservlet/src/main/webapp/catalog.xml
diff --git a/samples/servlet/default.xsl b/xalanservlet/src/main/webapp/default.xsl
similarity index 99%
rename from samples/servlet/default.xsl
rename to xalanservlet/src/main/webapp/default.xsl
index d8c5b1dad..9a45c4b96 100644
--- a/samples/servlet/default.xsl
+++ b/xalanservlet/src/main/webapp/default.xsl
@@ -291,4 +291,4 @@
-
\ No newline at end of file
+
diff --git a/samples/servlet/default2.xsl b/xalanservlet/src/main/webapp/default2.xsl
similarity index 100%
rename from samples/servlet/default2.xsl
rename to xalanservlet/src/main/webapp/default2.xsl
diff --git a/samples/servlet/fooparam.xml b/xalanservlet/src/main/webapp/fooparam.xml
similarity index 100%
rename from samples/servlet/fooparam.xml
rename to xalanservlet/src/main/webapp/fooparam.xml
diff --git a/samples/servlet/fooparam.xsl b/xalanservlet/src/main/webapp/fooparam.xsl
similarity index 100%
rename from samples/servlet/fooparam.xsl
rename to xalanservlet/src/main/webapp/fooparam.xsl
diff --git a/samples/servlet/jspSample.jsp b/xalanservlet/src/main/webapp/jspSample.jsp
similarity index 100%
rename from samples/servlet/jspSample.jsp
rename to xalanservlet/src/main/webapp/jspSample.jsp
diff --git a/xalanservlet/src/site/xhtml/servlet/readme.xhtml b/xalanservlet/src/site/xhtml/servlet/readme.xhtml
new file mode 100644
index 000000000..415137e63
--- /dev/null
+++ b/xalanservlet/src/site/xhtml/servlet/readme.xhtml
@@ -0,0 +1,30 @@
+
+
+
+
+
+ Xalan Samples
+
+
+
Xalan Samples
+
For information about the samples (what they illustrate and how to run them), see Samples.