001 /**
002 *
003 * Copyright 2003-2004 The Apache Software Foundation
004 *
005 * Licensed under the Apache License, Version 2.0 (the "License");
006 * you may not use this file except in compliance with the License.
007 * You may obtain a copy of the License at
008 *
009 * http://www.apache.org/licenses/LICENSE-2.0
010 *
011 * Unless required by applicable law or agreed to in writing, software
012 * distributed under the License is distributed on an "AS IS" BASIS,
013 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
014 * See the License for the specific language governing permissions and
015 * limitations under the License.
016 */
017
018 //
019 // This source code implements specifications defined by the Java
020 // Community Process. In order to remain compliant with the specification
021 // DO NOT add / change / or delete method signatures!
022 //
023 package javax.xml.registry.infomodel;
024
025 import java.util.Collection;
026 import javax.xml.registry.JAXRException;
027
028 /**
029 * @version $Revision$ $Date$
030 */
031 public interface ClassificationScheme extends RegistryEntry {
032 public static final int VALUE_TYPE_UNIQUE = 0;
033 public static final int VALUE_TYPE_EMBEDDED_PATH = 1;
034 public static final int VALUE_TYPE_NON_UNIQUE = 2;
035
036 void addChildConcept(Concept concept) throws JAXRException;
037
038 void addChildConcepts(Collection concepts) throws JAXRException;
039
040 int getChildConceptCount() throws JAXRException;
041
042 Collection getChildrenConcepts() throws JAXRException;
043
044 Collection getDescendantConcepts() throws JAXRException;
045
046 int getValueType() throws JAXRException;
047
048 boolean isExternal() throws JAXRException;
049
050 void removeChildConcept(Concept concept) throws JAXRException;
051
052 void removeChildConcepts(Collection concepts) throws JAXRException;
053
054 void setValueType(int valueType) throws JAXRException;
055 }