org.exolab.castor.xml.schema

Class RedefineSchema

Implemented Interfaces:
java.io.Serializable

public class RedefineSchema
extends Annotated

This class is a wrapper used to save meta information concerning redefined structures from an XML schema.

This wrapper is identified by:

Version:
$Revision: 6230 $ $Date: 2006-04-13 06:47:36 -0600 (Thu, 13 Apr 2006) $
Author:
Arnaud Blandin
See Also:
Serialized Form

Nested Class Summary

(package private) class
RedefineSchema.EmptyEnumeration

Field Summary

Fields inherited from class org.exolab.castor.xml.schema.Structure

ANNOTATION, ANYTYPE, APPINFO, ATTRIBUTE, ATTRIBUTE_GROUP, COMPLEX_CONTENT, COMPLEX_TYPE, DOCUMENTATION, ELEMENT, FACET, GROUP, IDENTITY_FIELD, IDENTITY_SELECTOR, KEY, KEYREF, LIST, MODELGROUP, MODELGROUP_REF, REDEFINE, SCHEMA, SIMPLE_CONTENT, SIMPLE_TYPE, UNION, UNIQUE, UNKNOWN, WILDCARD

Constructor Summary

RedefineSchema(Schema parentSchema)
Default constructor to create a RedefineSchema that contains only Annotations
RedefineSchema(Schema parentSchema, Schema originalSchema)
Constructs a new RedefineSchema structure

Method Summary

void
addAttributeGroup(AttributeGroupDecl attrGroup)
Adds a AttributeGroup name in the list of redefined attributeGroups.
void
addComplexType(ComplexType complexType)
Adds the given complexType in the list of redefined complexTypes.
void
addGroup(ModelGroup group)
Adds a group name in the list of redefined groups.
void
addSimpleType(SimpleType simpleType)
Adds a simpleType in the list of redefined simpleTypes.
Enumeration
enumerateAttributeGroups()
Enumerates the attributeGroup names.
Enumeration
enumerateComplexTypes()
Enumerates the complexType names.
Enumeration
enumerateGroups()
Enumerates the group names.
Enumeration
enumerateSimpleTypes()
Enumerates the simpleType names.
AttributeGroupDecl
getAttributeGroup(String name)
Returns the AttributeGroup corresponding to the given canonical name (unqualified name).
ComplexType
getComplexType(String name)
Returns the ComplexType corresponding to the given name.
ModelGroup
getModelGroup(String name)
Returns the Model Group of the given name that is contained in this RedefineSchema.
Schema
getOriginalSchema()
Returns the schema imported used for the redefinitions.
Schema
getParentSchema()
Returns the parent schema in which this RedefineSchema is used.
String
getSchemaLocation()
Returns the URI of the imported schema.
SimpleType
getSimpleType(String name)
Returns the SimpleType corresponding to the given name.
short
getStructureType()
Returns the type of this Redefine Structure
boolean
hasAttributeGroupRedefinition(String name)
Returns true if this redefinition contains a redefinition for an AttributeGroup with the given name.
boolean
hasComplexTypeRedefinition(String name)
Returns true if this redefinition contains a redefinition for a complexType with the given name.
boolean
hasGroupRedefinition(String name)
Returns true if this redefinition contains a redefinition for a group with the given name.
boolean
hasRedefinition()
Returns true if at least one structure other than an annotation is present.
boolean
hasSimpleTypeRedefinition(String name)
Returns true if this redefinition contains a redefinition for a simpleType with the given name.
boolean
removeAttributeGroup(AttributeGroupDecl attrGroup)
Removes the attributeGroup with the given name from the redefine structure.
boolean
removeComplexType(ComplexType complexType)
Removes the complexType with the given name from the redefine structure.
boolean
removeGroup(ModelGroup group)
Removes the given ModelGroup from the redefine structure.
boolean
removeSimpleType(SimpleType simpleType)
Removes the given simpleType from the redefine structure.
void
validate()
Checks the validity of this Schema defintion.

Methods inherited from class org.exolab.castor.xml.schema.Annotated

addAnnotation, getAnnotations, removeAnnotation

Methods inherited from class org.exolab.castor.xml.schema.Structure

getStructureType, isValid, validate

Constructor Details

RedefineSchema

public RedefineSchema(Schema parentSchema)
Default constructor to create a RedefineSchema that contains only Annotations

RedefineSchema

public RedefineSchema(Schema parentSchema,
                      Schema originalSchema)
Constructs a new RedefineSchema structure

Method Details

addAttributeGroup

public void addAttributeGroup(AttributeGroupDecl attrGroup)
            throws SchemaException
Adds a AttributeGroup name in the list of redefined attributeGroups.

addComplexType

public void addComplexType(ComplexType complexType)
            throws SchemaException
Adds the given complexType in the list of redefined complexTypes.
Parameters:
complexType - the ComplexType to add.

addGroup

public void addGroup(ModelGroup group)
            throws SchemaException
Adds a group name in the list of redefined groups.

addSimpleType

public void addSimpleType(SimpleType simpleType)
            throws SchemaException
Adds a simpleType in the list of redefined simpleTypes.
Parameters:
simpleType - the SimpleType to add.

enumerateAttributeGroups

public Enumeration enumerateAttributeGroups()
Enumerates the attributeGroup names.
Returns:
an enumeration of the names of the redefined AttributeGroups.

enumerateComplexTypes

public Enumeration enumerateComplexTypes()
Enumerates the complexType names.
Returns:
an enumeration of the names of the redefined ComplexTypes

enumerateGroups

public Enumeration enumerateGroups()
Enumerates the group names.
Returns:
an enumeration of the names of the redefined groups.

enumerateSimpleTypes

public Enumeration enumerateSimpleTypes()
Enumerates the simpleType names.
Returns:
an enumeration of the names of the redefined SimpleTypes.

getAttributeGroup

public AttributeGroupDecl getAttributeGroup(String name)
Returns the AttributeGroup corresponding to the given canonical name (unqualified name).
Returns:
the AttributeGroup corresponding to the given canonical name (unqualified name).

getComplexType

public ComplexType getComplexType(String name)
Returns the ComplexType corresponding to the given name.
Parameters:
name - the name of the ComplexType to look for.
Returns:
the ComplexType corresponding to the gven name.

getModelGroup

public ModelGroup getModelGroup(String name)
Returns the Model Group of the given name that is contained in this RedefineSchema.
Parameters:
name - the name of the ModelGroup to retrieve.
Returns:
the ModelGroup of the given name contained in this RedefineSchema.

getOriginalSchema

public Schema getOriginalSchema()
Returns the schema imported used for the redefinitions.
Returns:
the original schema imported.

getParentSchema

public Schema getParentSchema()
Returns the parent schema in which this RedefineSchema is used.
Returns:
the parent schema in which this Redefined Schema is used.

getSchemaLocation

public String getSchemaLocation()
Returns the URI of the imported schema.
Returns:
the URI of the imported schema.

getSimpleType

public SimpleType getSimpleType(String name)
Returns the SimpleType corresponding to the given name.
Parameters:
name - the name of the SimpleType to look for.
Returns:
the SimpleType corresponding to the gven name.

getStructureType

public short getStructureType()
Returns the type of this Redefine Structure
Overrides:
getStructureType in interface Structure
Returns:
the type of this Redefin Structure

hasAttributeGroupRedefinition

public boolean hasAttributeGroupRedefinition(String name)
Returns true if this redefinition contains a redefinition for an AttributeGroup with the given name.
Parameters:
name - the canonical name of the complexType.

hasComplexTypeRedefinition

public boolean hasComplexTypeRedefinition(String name)
Returns true if this redefinition contains a redefinition for a complexType with the given name.
Parameters:
name - the canonical name of the complexType.

hasGroupRedefinition

public boolean hasGroupRedefinition(String name)
Returns true if this redefinition contains a redefinition for a group with the given name.
Parameters:
name - the canonical name of the complexType.

hasRedefinition

public boolean hasRedefinition()
Returns true if at least one structure other than an annotation is present.
Returns:
true if at least one structure other than an annotation is present.

hasSimpleTypeRedefinition

public boolean hasSimpleTypeRedefinition(String name)
Returns true if this redefinition contains a redefinition for a simpleType with the given name.
Parameters:
name - the canonical name of the simpleType.

removeAttributeGroup

public boolean removeAttributeGroup(AttributeGroupDecl attrGroup)
Removes the attributeGroup with the given name from the redefine structure.
Parameters:
attrGroup - the attributeGroup to be removed from this Redefined Structure.

removeComplexType

public boolean removeComplexType(ComplexType complexType)
Removes the complexType with the given name from the redefine structure.
Parameters:
complexType - The complexType to be removed from this Redefined Structure.

removeGroup

public boolean removeGroup(ModelGroup group)
Removes the given ModelGroup from the redefine structure.
Parameters:
group - the ModelGroup to be removed from this Redefined Structure.

removeSimpleType

public boolean removeSimpleType(SimpleType simpleType)
Removes the given simpleType from the redefine structure.
Parameters:
simpleType - the simpleType to be removed from this Redefined Structure.

validate

public void validate()
            throws ValidationException
Checks the validity of this Schema defintion.
Overrides:
validate in interface Structure
Throws:
ValidationException - when this Schema definition is invalid.

Intalio Inc. (C) 1999-2006. All rights reserved http://www.intalio.com