1 package net.sf.saxon.functions; 2 import net.sf.saxon.expr.Expression; 3 import net.sf.saxon.expr.StaticContext; 4 import net.sf.saxon.trans.XPathException; 5 import net.sf.saxon.value.AnyURIValue; 6 7 /** 8 * This class supports the static-base-uri() function in XPath 2.0 9 * (added by the working groups on 24 August 2004) 10 */ 11 12 public class StaticBaseURI extends CompileTimeFunction { 13 14 /** 15 * Compile time evaluation 16 */ 17 18 public Expression preEvaluate(StaticContext env) throws XPathException { 19 String baseURI = env.getBaseURI(); 20 if (baseURI == null) return null; 21 return new AnyURIValue(baseURI); 22 } 23 24 } 25 26 // 27 // The contents of this file are subject to the Mozilla Public License Version 1.0 (the "License"); 28 // you may not use this file except in compliance with the License. You may obtain a copy of the 29 // License at http://www.mozilla.org/MPL/ 30 // 31 // Software distributed under the License is distributed on an "AS IS" basis, 32 // WITHOUT WARRANTY OF ANY KIND, either express or implied. 33 // See the License for the specific language governing rights and limitations under the License. 34 // 35 // The Original Code is: all this file. 36 // 37 // The Initial Developer of the Original Code is Michael H. Kay. 38 // 39 // Portions created by (your name) are Copyright (C) (your legal entity). All Rights Reserved. 40 // 41 // Contributor(s): none. 42 // 43