1 package net.sf.saxon.om; 2 3 /** 4 * This interface is implemented by NodeInfo implementations that act as wrappers 5 * on some underlying tree. It provides a method to access the real node underlying 6 * the virtual node, for use by applications that need to drill down to the 7 * underlying data. 8 */ 9 10 public interface VirtualNode extends NodeInfo { 11 12 /** 13 * Get the real node undelying this virtual node. Note that this may itself be 14 * a VirtualNode; you may have to drill down through several layers of 15 * wrapping. 16 * <p> 17 * In some cases a single VirtualNode may represent an XPath text node that maps to a sequence 18 * of adjacent nodes (for example text nodes and CDATA nodes) in the underlying tree. In this case 19 * the first node in this sequence is returned. 20 * @return The underlying node. 21 */ 22 23 public Object getUnderlyingNode(); 24 25 } 26 27 28 // 29 // The contents of this file are subject to the Mozilla Public License Version 1.0 (the "License"); 30 // you may not use this file except in compliance with the License. You may obtain a copy of the 31 // License at http://www.mozilla.org/MPL/ 32 // 33 // Software distributed under the License is distributed on an "AS IS" basis, 34 // WITHOUT WARRANTY OF ANY KIND, either express or implied. 35 // See the License for the specific language governing rights and limitations under the License. 36 // 37 // The Original Code is: all this file. 38 // 39 // The Initial Developer of the Original Code is Michael H. Kay 40 // 41 // Portions created by (your name) are Copyright (C) (your legal entity). All Rights Reserved. 42 // 43 // Contributor(s): none 44 //