01: package net.sf.saxon.dom;
02:
03: import org.w3c.dom.DOMException;
04: import org.w3c.dom.DOMImplementation;
05: import org.w3c.dom.Document;
06: import org.w3c.dom.DocumentType;
07:
08: /**
09: * A simple implementation of the DOMImplementation interface, for use when accessing
10: * Saxon tree structure using the DOM API.
11: */
12:
13: class DOMImplementationImpl implements DOMImplementation {
14:
15: /**
16: * Test if the DOM implementation implements a specific feature.
17: * @param feature The name of the feature to test (case-insensitive).
18: * @param version This is the version number of the feature to test.
19: * @return <code>true</code> if the feature is implemented in the
20: * specified version, <code>false</code> otherwise.
21: */
22:
23: public boolean hasFeature(String feature, String version) {
24: return false;
25: }
26:
27: /**
28: * Return the value of a specific feature.
29: * DOM level 3 method.
30: * @param feature The name of the feature to test (case-insensitive).
31: * @param version This is the version number of the feature to test.
32: * @return the value of the feature. Always null in this implementation.
33: */
34:
35: public Object getFeature(String feature, String version) {
36: return null;
37: }
38:
39: /**
40: * Creates an empty <code>DocumentType</code> node.
41: * @param qualifiedName The qualified name of the document type to be
42: * created.
43: * @param publicId The external subset public identifier.
44: * @param systemId The external subset system identifier.
45: * @return A new <code>DocumentType</code> node with
46: * <code>Node.ownerDocument</code> set to <code>null</code> .
47: * @exception org.w3c.dom.DOMException
48: * INVALID_CHARACTER_ERR: Raised if the specified qualified name
49: * contains an illegal character.
50: * <br> NAMESPACE_ERR: Raised if the <code>qualifiedName</code> is
51: * malformed.
52: * @since DOM Level 2
53: */
54:
55: public DocumentType createDocumentType(String qualifiedName,
56: String publicId, String systemId) throws DOMException {
57: NodeOverNodeInfo.disallowUpdate();
58: return null;
59: }
60:
61: /**
62: * Creates an XML <code>Document</code> object of the specified type with
63: * its document element.
64: * @param namespaceURI The namespace URI of the document element to
65: * create.
66: * @param qualifiedName The qualified name of the document element to be
67: * created.
68: * @param doctype The type of document to be created or <code>null</code>.
69: * @return A new <code>Document</code> object.
70: * @exception org.w3c.dom.DOMException
71: * @since DOM Level 2
72: */
73: public Document createDocument(String namespaceURI,
74: String qualifiedName, DocumentType doctype)
75: throws DOMException {
76: NodeOverNodeInfo.disallowUpdate();
77: return null;
78: }
79:
80: }
81:
82: //
83: // The contents of this file are subject to the Mozilla Public License Version 1.0 (the "License");
84: // you may not use this file except in compliance with the License. You may obtain a copy of the
85: // License at http://www.mozilla.org/MPL/
86: //
87: // Software distributed under the License is distributed on an "AS IS" basis,
88: // WITHOUT WARRANTY OF ANY KIND, either express or implied.
89: // See the License for the specific language governing rights and limitations under the License.
90: //
91: // The Original Code is: all this file.
92: //
93: // The Initial Developer of the Original Code is Michael H. Kay.
94: //
95: // Portions created by (your name) are Copyright (C) (your legal entity). All Rights Reserved.
96: //
97: // Contributor(s): none.
98: //
|