001 package org.relaxng.datatype;
002
003 /**
004 * Factory class for the DatatypeLibrary class.
005 *
006 * <p>
007 * The datatype library should provide the implementation of
008 * this interface if it wants to be found by the schema processors.
009 * The implementor also have to place a file in your jar file.
010 * See the reference datatype library implementation for detail.
011 *
012 * @author <a href="mailto:jjc@jclark.com">James Clark</a>
013 * @author <a href="mailto:kohsuke.kawaguchi@sun.com">Kohsuke KAWAGUCHI</a>
014 */
015 public interface DatatypeLibraryFactory
016 {
017 /**
018 * Creates a new instance of a DatatypeLibrary that supports
019 * the specified namespace URI.
020 *
021 * @return
022 * <code>null</code> if the specified namespace URI is not
023 * supported.
024 */
025 DatatypeLibrary createDatatypeLibrary( String namespaceURI );
026 }