View Javadoc

1   package org.codehaus.xfire.wsdl;
2   
3   import java.util.Set;
4   
5   import javax.xml.namespace.QName;
6   
7   import org.codehaus.yom.Element;
8   
9   
10  /***
11   * An XSD type.
12   * 
13   * @author <a href="mailto:dan@envoisolutions.com">Dan Diephouse</a>
14   */
15  public interface SchemaType
16  {
17      /***
18       * Whether or not this a complex type.  If true then
19       * the schema for this type is written out.
20       * 
21       * @return
22       */
23      boolean isComplex();
24  
25      /***
26       * Whether or not this a complexType or a concrete element.
27       * 
28       * @return
29       */
30      boolean isAbstract();
31      
32      /***
33       * The <code>SchemaType</code>s that this type references.
34       * 
35       * @return
36       */
37      Set getDependencies();
38      
39      /***
40       * Write the type schema (if complex) to the element.
41       * 
42       * @param element
43       */
44      void writeSchema( Element element );
45      
46      /***
47       * The schema type that this SchemaType represents.
48       * 
49       * @return
50       */
51      QName getSchemaType();
52  }