SAXONICA

Saxon Documentation
Full Contents
About Saxon
Changes in this Release
Conditions of Use
Using XSLT 2.0
Using XQuery
Handling Source Documents
XML Schema Processing
The XPath API
Standards Conformance
Extensibility
| Introduction
» | Writing extension functions
| Converting Arguments to Extension Functions
| Converting the Result of an Extension Function
| Writing extension instructions
| Writing input filters
| Writing output filters
| Implementing a collating sequence
| Localizing numbers and dates
| Adding an output encoding
| Writing a URI Resolver for Input Files
| Writing a URI Resolver for Output Files
Saxon Extensions
Sample Saxon Applications
The Saxon SQL Extension
XSLT Elements
XPath 2.0 Expression Syntax
Function Library
XSLT Patterns

# Calling Java Constructors

Java constructors are called by using the function named `new()`. If there are several constructors, then again the system tries to find the one that is the best fit, according to the types of the supplied arguments. The result of calling `new()` is an XPath value whose type is denoted by a QName whose local name is the actual Java class (for example `java.sql.Connection` or `java.util.List`) and whose namespace URI is `http://saxon.sf.net/java-type` (conventional prefix `class`). Any '$' characters in the class name are replaced by '-' characters in the QName. The only things that can be done with a wrapped Java Object are to assign it to a variable, to pass it to an extension function, and to convert it to a string, number, or boolean, using the rules given below.

Next