jaxp/src/share/classes/org/w3c/dom/xpath/XPathNamespace.java
changeset 12005 a754d69d5e60
equal deleted inserted replaced
11943:16ba58282d11 12005:a754d69d5e60
       
     1 /*
       
     2  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
       
     3  *
       
     4  * This code is free software; you can redistribute it and/or modify it
       
     5  * under the terms of the GNU General Public License version 2 only, as
       
     6  * published by the Free Software Foundation.  Oracle designates this
       
     7  * particular file as subject to the "Classpath" exception as provided
       
     8  * by Oracle in the LICENSE file that accompanied this code.
       
     9  *
       
    10  * This code is distributed in the hope that it will be useful, but WITHOUT
       
    11  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
       
    12  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
       
    13  * version 2 for more details (a copy is included in the LICENSE file that
       
    14  * accompanied this code).
       
    15  *
       
    16  * You should have received a copy of the GNU General Public License version
       
    17  * 2 along with this work; if not, write to the Free Software Foundation,
       
    18  * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
       
    19  *
       
    20  * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
       
    21  * or visit www.oracle.com if you need additional information or have any
       
    22  * questions.
       
    23  */
       
    24 
       
    25 /*
       
    26  * This file is available under and governed by the GNU General Public
       
    27  * License version 2 only, as published by the Free Software Foundation.
       
    28  * However, the following notice accompanied the original version of this
       
    29  * file and, per its terms, should not be removed:
       
    30  *
       
    31  * Copyright (c) 2002 World Wide Web Consortium,
       
    32  * (Massachusetts Institute of Technology, Institut National de
       
    33  * Recherche en Informatique et en Automatique, Keio University). All
       
    34  * Rights Reserved. This program is distributed under the W3C's Software
       
    35  * Intellectual Property License. This program is distributed in the
       
    36  * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
       
    37  * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
       
    38  * PURPOSE.
       
    39  * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
       
    40  */
       
    41 
       
    42 package org.w3c.dom.xpath;
       
    43 
       
    44 
       
    45 import org.w3c.dom.Element;
       
    46 import org.w3c.dom.Node;
       
    47 
       
    48 /**
       
    49  * The <code>XPathNamespace</code> interface is returned by
       
    50  * <code>XPathResult</code> interfaces to represent the XPath namespace node
       
    51  * type that DOM lacks. There is no public constructor for this node type.
       
    52  * Attempts to place it into a hierarchy or a NamedNodeMap result in a
       
    53  * <code>DOMException</code> with the code <code>HIERARCHY_REQUEST_ERR</code>
       
    54  * . This node is read only, so methods or setting of attributes that would
       
    55  * mutate the node result in a DOMException with the code
       
    56  * <code>NO_MODIFICATION_ALLOWED_ERR</code>.
       
    57  * <p>The core specification describes attributes of the <code>Node</code>
       
    58  * interface that are different for different node node types but does not
       
    59  * describe <code>XPATH_NAMESPACE_NODE</code>, so here is a description of
       
    60  * those attributes for this node type. All attributes of <code>Node</code>
       
    61  * not described in this section have a <code>null</code> or
       
    62  * <code>false</code> value.
       
    63  * <p><code>ownerDocument</code> matches the <code>ownerDocument</code> of the
       
    64  * <code>ownerElement</code> even if the element is later adopted.
       
    65  * <p><code>prefix</code> is the prefix of the namespace represented by the
       
    66  * node.
       
    67  * <p><code>nodeName</code> is the same as <code>prefix</code>.
       
    68  * <p><code>nodeType</code> is equal to <code>XPATH_NAMESPACE_NODE</code>.
       
    69  * <p><code>namespaceURI</code> is the namespace URI of the namespace
       
    70  * represented by the node.
       
    71  * <p><code>adoptNode</code>, <code>cloneNode</code>, and
       
    72  * <code>importNode</code> fail on this node type by raising a
       
    73  * <code>DOMException</code> with the code <code>NOT_SUPPORTED_ERR</code>.In
       
    74  * future versions of the XPath specification, the definition of a namespace
       
    75  * node may be changed incomatibly, in which case incompatible changes to
       
    76  * field values may be required to implement versions beyond XPath 1.0.
       
    77  * <p>See also the <a href='http://www.w3.org/2002/08/WD-DOM-Level-3-XPath-20020820'>Document Object Model (DOM) Level 3 XPath Specification</a>.
       
    78  */
       
    79 public interface XPathNamespace extends Node {
       
    80     // XPathNodeType
       
    81     /**
       
    82      * The node is a <code>Namespace</code>.
       
    83      */
       
    84     public static final short XPATH_NAMESPACE_NODE      = 13;
       
    85 
       
    86     /**
       
    87      * The <code>Element</code> on which the namespace was in scope when it
       
    88      * was requested. This does not change on a returned namespace node even
       
    89      * if the document changes such that the namespace goes out of scope on
       
    90      * that element and this node is no longer found there by XPath.
       
    91      */
       
    92     public Element getOwnerElement();
       
    93 
       
    94 }