01: package net.sf.saxon.om;
02:
03: /**
04: * This interface is implemented by NodeInfo implementations that act as wrappers
05: * on some underlying tree. It provides a method to access the real node underlying
06: * the virtual node, for use by applications that need to drill down to the
07: * underlying data.
08: */
09:
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: // The contents of this file are subject to the Mozilla Public License Version 1.0 (the "License");
29: // you may not use this file except in compliance with the License. You may obtain a copy of the
30: // License at http://www.mozilla.org/MPL/
31: //
32: // Software distributed under the License is distributed on an "AS IS" basis,
33: // WITHOUT WARRANTY OF ANY KIND, either express or implied.
34: // See the License for the specific language governing rights and limitations under the License.
35: //
36: // The Original Code is: all this file.
37: //
38: // The Initial Developer of the Original Code is Michael H. Kay
39: //
40: // Portions created by (your name) are Copyright (C) (your legal entity). All Rights Reserved.
41: //
42: // Contributor(s): none
43: //
|