/*******************************************************************************
 * Copyright (c) 2001, 2004 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:
 * IBM Corporation - initial API and implementation
 *******************************************************************************/
package org.eclipse.jst.j2ee.webservice.jaxrpcmap;

import org.eclipse.jst.j2ee.common.QName;

/**
 * <!-- begin-user-doc -->
 * A representation of the model object '<em><b>Root Type Qname</b></em>'.
 * <!-- end-user-doc -->
 *
 * <!-- begin-model-doc -->
 * The root-type-qname identifies the WSDL QName of an XML type.
 * 
 * Used in: java-xml-type-mapping
 * <!-- end-model-doc -->
 *
 *
 * @see org.eclipse.jst.j2ee.webservice.jaxrpcmap.JaxrpcmapPackage#getRootTypeQname()
 * @model
 * @generated
 */
public interface RootTypeQname extends QName{
// RootTypeQname
}
