1 /* 2 * reserved comment block 3 * DO NOT REMOVE OR ALTER! 4 */ 5 /* 6 * Copyright 2003,2004 The Apache Software Foundation. 7 * 8 * Licensed under the Apache License, Version 2.0 (the "License"); 9 * you may not use this file except in compliance with the License. 10 * You may obtain a copy of the License at 11 * 12 * http://www.apache.org/licenses/LICENSE-2.0 13 * 14 * Unless required by applicable law or agreed to in writing, software 15 * distributed under the License is distributed on an "AS IS" BASIS, 16 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 * See the License for the specific language governing permissions and 18 * limitations under the License. 19 */ 20 21 package com.sun.org.apache.xerces.internal.xs; 22 23 /** 24 * The <code>XSObject</code> is a base object for the XML Schema component 25 * model. 26 */ 27 public interface XSObject { 28 /** 29 * The <code>type</code> of this object, i.e. 30 * <code>ELEMENT_DECLARATION</code>. 31 */ 32 public short getType(); 33 34 /** 35 * The name of type <code>NCName</code>, as defined in XML Namespaces, of 36 * this declaration specified in the <code>{name}</code> property of the 37 * component or <code>null</code> if the definition of this component 38 * does not have a <code>{name}</code> property. For anonymous types, 39 * the processor must construct and expose an anonymous type name that 40 * is distinct from the name of every named type and the name of every 41 * other anonymous type. 42 */ 43 public String getName(); 44 45 /** 46 * The [target namespace] of this object, or <code>null</code> if it is 47 * unspecified. 48 */ 49 public String getNamespace(); 50 51 /** 52 * A namespace schema information item corresponding to the target 53 * namespace of the component, if it is globally declared; or 54 * <code>null</code> otherwise. 55 */ 56 public XSNamespaceItem getNamespaceItem(); 57 58 }