org.w3c.dom.DOMImplementationSource Maven / Gradle / Ivy
/*
* Copyright (C) 2005 by Quentin Anciaux
*
* This library is free software; you can redistribute it and/or modify it
* under the terms of the GNU Library General Public License as published by
* the Free Software Foundation; either version 2 of the License, or (at your
* option) any later version.
*
* This library is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public License
* for more details.
*
* You should have received a copy of the GNU Library General Public License
* along with this library; if not, write to the Free Software Foundation,
* Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*
* @author Quentin Anciaux
*/
package org.w3c.dom;
/**
* This interface permits a DOM implementer to supply one or more
* implementations, based upon requested features and versions, as specified
* in . Each implemented DOMImplementationSource
object is listed
* in the binding-specific list of available sources so that its
* DOMImplementation
objects are made available.
*
*
* See also the Document
* Object Model (DOM) Level 3 Core Specification .
*
*
* @since DOM Level 3
*/
public interface DOMImplementationSource {
/**
* A method to request the first DOM implementation that supports the
* specified features.
*
* @param features A string that specifies which features and versions are
* required. This is a space separated list in which each feature
* is specified by its name optionally followed by a space and a
* version number. This method returns the first item of the list
* returned by getDOMImplementationList
. As an
* example, the string "XML 3.0 Traversal +Events 2.0"
* will request a DOM implementation that supports the module "XML"
* for its 3.0 version, a module that support of the "Traversal"
* module for any version, and the module "Events" for its 2.0
* version. The module "Events" must be accessible using the method
* Node.getFeature()
and
* DOMImplementation.getFeature()
.
*
* @return The first DOM implementation that support the desired features,
* or null
if this source has none.
*/
public DOMImplementation getDOMImplementation(String features);
/**
* A method to request a list of DOM implementations that support the
* specified features and versions, as specified in .
*
* @param features A string that specifies which features and versions are
* required. This is a space separated list in which each feature
* is specified by its name optionally followed by a space and a
* version number. This is something like: "XML 3.0 Traversal
* +Events 2.0"
*
* @return A list of DOM implementations that support the desired features.
*/
public DOMImplementationList getDOMImplementationList(String features);
}