/*******************************************************************************
 * Copyright (c) 2007 IBM Corporation and Others
 * All rights reserved. This program and the accompanying materials
 * are made available under the terms of the Eclipse Public License v1.0
 * which accompanies this distribution, and is available at
 * http://www.eclipse.org/legal/epl-v10.html
 *
 * Contributors:
 *    Hisashi MIYASHITA - initial API and implementation
 *******************************************************************************/

package org.eclipse.actf.ai.xmlstore;

/**
 * IXMLSelector interface defines the methods to get information for selecting
 * XML files from the IXMLStore.
 */
public interface IXMLSelector {
	/**
	 * @return the name of the XML document element.
	 */
	String getDocumentElementName();

	/**
	 * @return the namespace of the XML document element.
	 */
	String getDocumentElementNS();

	/**
	 * @return the URI to be matched with the pattern declaration in the
	 *         metadata file.
	 */
	String getURI();
}
