Package org.jibx.schema.elements
Class SchemaElement
- java.lang.Object
-
- org.jibx.schema.elements.SchemaBase
-
- org.jibx.schema.elements.OpenAttrBase
-
- org.jibx.schema.elements.SchemaElement
-
- All Implemented Interfaces:
IComponent
public class SchemaElement extends OpenAttrBase
Model component for schema element.- Author:
- Dennis M. Sosnoski
-
-
Field Summary
Fields Modifier and Type Field Description private intm_attributeFormDefaultType'attributeFormDefault' attribute value (-1if not set).private AllEnumSetm_blockDefault'blockDefault' attribute value.private LazyListm_dependentSchemasSchemas which directly reference this schema.private java.lang.Stringm_effectiveNamespaceEffective namespace overriding the target namespace (nullif unused).private intm_elementFormDefaultType'elementFormDefault' attribute value (-1if not set).private AllEnumSetm_finalDefault'finalDefault' attribute value.private java.lang.Stringm_id"id" attribute value.private NameRegisterm_registerRegister for names from this context.private ISchemaResolverm_resolverResolver for this schema.private FilteredSegmentListm_schemaChildrenFiltered list of schema reference child elements.private java.lang.Stringm_targetNamespace'targetNamespace' attribute value.private FilteredSegmentListm_topLevelChildrenFiltered list of top-level definition child elements.private java.lang.Stringm_version'version' attribute value.static StringArrays_allowedAttributesList of allowed attribute namesprivate static Loggers_loggerLogger for class.private static longSCHEMA_REFERENCE_MASKMask bits for schema reference child elements.private static longTOP_LEVEL_DEFINITION_MASKMask bits for top-level definition child elements.-
Fields inherited from class org.jibx.schema.elements.SchemaBase
ALL_TYPE, ANNOTATION_TYPE, ANY_TYPE, ANYATTRIBUTE_TYPE, APPINFO_TYPE, ATTRIBUTE_TYPE, ATTRIBUTEGROUP_TYPE, CHOICE_TYPE, COMPLEXCONTENT_TYPE, COMPLEXTYPE_TYPE, DOCUMENTATION_TYPE, ELEMENT_MASKS, ELEMENT_NAMES, ELEMENT_TYPE, ENUMERATION_TYPE, EXTENSION_TYPE, FIELD_TYPE, FRACTIONDIGITS_TYPE, GROUP_TYPE, IMPORT_TYPE, INCLUDE_TYPE, KEY_TYPE, KEYREF_TYPE, LENGTH_TYPE, LIST_TYPE, MAXEXCLUSIVE_TYPE, MAXINCLUSIVE_TYPE, MAXLENGTH_TYPE, MINEXCLUSIVE_TYPE, MININCLUSIVE_TYPE, MINLENGTH_TYPE, NOTATION_TYPE, PATTERN_TYPE, REDEFINE_TYPE, RESTRICTION_TYPE, SCHEMA_TYPE, SELECTOR_TYPE, SEQUENCE_TYPE, SIMPLECONTENT_TYPE, SIMPLETYPE_TYPE, TOTALDIGITS_TYPE, UNION_TYPE, UNIQUE_TYPE, WHITESPACE_TYPE
-
Fields inherited from interface org.jibx.schema.IComponent
SCHEMA_NAMESPACE
-
-
Constructor Summary
Constructors Constructor Description SchemaElement()Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description intgetAttributeFormDefault()Get 'attributeFormDefault' attribute type code.java.lang.StringgetAttributeFormDefaultText()Get 'attributeFormDefault' attribute text.AllEnumSetgetBlock()Get 'blockDefault' attribute.java.lang.StringgetEffectiveNamespace()Get the effective namespace which applies to this schema.intgetElementFormDefault()Get 'elementFormDefault' attribute type code.java.lang.StringgetElementFormDefaultText()Get 'elementFormDefault' attribute text.AllEnumSetgetFinal()Get 'finalDefault' attribute.private java.lang.StringgetName()Get the schema name for logging validation.NameRegistergetRegister()Get register for named components of schema.ISchemaResolvergetResolver()Get resolver.FilteredSegmentListgetSchemaChildren()Get list of schema-related child elements.java.lang.StringgetTargetNamespace()Get 'targetNamespace' attribute.FilteredSegmentListgetTopLevelChildren()Get list of top-level definition child elements.java.lang.StringgetVersion()Get 'version' attribute.booleanisAttributeQualifiedDefault()Check if attributes are qualified by default.booleanisElementQualifiedDefault()Check if elements are qualified by default.protected voidpreset(IUnmarshallingContext ictx)Pre-set method to be called by data binding while parsing element start tag.voidprevalidate(ValidationContext vctx)Prevalidate component information.voidsetAttributeFormDefault(int type)Set 'attributeFormDefault' attribute type code.private voidsetAttributeFormDefaultText(java.lang.String text, IUnmarshallingContext ictx)Set 'attributeFormDefault' attribute text.voidsetEffectiveNamespace(java.lang.String ens)Set the effective namespace to be applied to this schema.voidsetElementFormDefault(int type)Set 'elementFormDefault' attribute type code.private voidsetElementFormDefaultText(java.lang.String text, IUnmarshallingContext ictx)Set 'elementFormDefault' attribute text.voidsetResolver(ISchemaResolver resolver)Set resolver.voidsetTargetNamespace(java.lang.String tns)Set 'targetNamespace' attribute.voidsetVersion(java.lang.String version)Set 'version' attribute.voidvalidate(ValidationContext vctx)Validate component information.-
Methods inherited from class org.jibx.schema.elements.OpenAttrBase
addExtraAttribute, clearExtraAttributes, compactChildren, detachChild, getChild, getChildCount, getChildIterator, getChildrenWritable, getExtraAttributes, preget, replaceChild, validateAttributes
-
Methods inherited from class org.jibx.schema.elements.SchemaBase
addNamespaceDeclaration, bit, clearNamespaceDeclarations, getExtension, getNamespaceDeclarations, getParent, getSchema, isGlobal, name, readNamespaces, setExtension, setParent, type, validateAttributes, writeNamespaces
-
-
-
-
Field Detail
-
s_logger
private static final Logger s_logger
Logger for class.
-
s_allowedAttributes
public static final StringArray s_allowedAttributes
List of allowed attribute names
-
SCHEMA_REFERENCE_MASK
private static final long SCHEMA_REFERENCE_MASK
Mask bits for schema reference child elements.
-
TOP_LEVEL_DEFINITION_MASK
private static final long TOP_LEVEL_DEFINITION_MASK
Mask bits for top-level definition child elements.
-
m_schemaChildren
private final FilteredSegmentList m_schemaChildren
Filtered list of schema reference child elements.
-
m_topLevelChildren
private final FilteredSegmentList m_topLevelChildren
Filtered list of top-level definition child elements.
-
m_dependentSchemas
private final LazyList m_dependentSchemas
Schemas which directly reference this schema.
-
m_attributeFormDefaultType
private int m_attributeFormDefaultType
'attributeFormDefault' attribute value (-1if not set).
-
m_elementFormDefaultType
private int m_elementFormDefaultType
'elementFormDefault' attribute value (-1if not set).
-
m_blockDefault
private AllEnumSet m_blockDefault
'blockDefault' attribute value.
-
m_finalDefault
private AllEnumSet m_finalDefault
'finalDefault' attribute value.
-
m_id
private java.lang.String m_id
"id" attribute value.
-
m_targetNamespace
private java.lang.String m_targetNamespace
'targetNamespace' attribute value.
-
m_effectiveNamespace
private java.lang.String m_effectiveNamespace
Effective namespace overriding the target namespace (nullif unused).
-
m_version
private java.lang.String m_version
'version' attribute value.
-
m_resolver
private ISchemaResolver m_resolver
Resolver for this schema.
-
m_register
private NameRegister m_register
Register for names from this context.
-
-
Method Detail
-
preset
protected void preset(IUnmarshallingContext ictx) throws JiBXException
Description copied from class:SchemaBasePre-set method to be called by data binding while parsing element start tag. The base class implementation just sets the parent element link and reads in any extra namespaces defined on the element. Subclasses which override this implementation must call the base implementation during their processing.- Overrides:
presetin classSchemaBase- Parameters:
ictx- unmarshalling context- Throws:
JiBXException- on error
-
getSchemaChildren
public FilteredSegmentList getSchemaChildren()
Get list of schema-related child elements.- Returns:
- child list
-
getTopLevelChildren
public FilteredSegmentList getTopLevelChildren()
Get list of top-level definition child elements.- Returns:
- child list
-
getAttributeFormDefault
public int getAttributeFormDefault()
Get 'attributeFormDefault' attribute type code.- Returns:
- type
-
setAttributeFormDefault
public void setAttributeFormDefault(int type)
Set 'attributeFormDefault' attribute type code.- Parameters:
type-
-
getAttributeFormDefaultText
public java.lang.String getAttributeFormDefaultText()
Get 'attributeFormDefault' attribute text.- Returns:
- text (
nullif not set)
-
setAttributeFormDefaultText
private void setAttributeFormDefaultText(java.lang.String text, IUnmarshallingContext ictx)Set 'attributeFormDefault' attribute text. This method is provided only for use when unmarshalling.- Parameters:
text-ictx-
-
getElementFormDefault
public int getElementFormDefault()
Get 'elementFormDefault' attribute type code.- Returns:
- type
-
setElementFormDefault
public void setElementFormDefault(int type)
Set 'elementFormDefault' attribute type code.- Parameters:
type-
-
getElementFormDefaultText
public java.lang.String getElementFormDefaultText()
Get 'elementFormDefault' attribute text.- Returns:
- text (
nullif not set)
-
setElementFormDefaultText
private void setElementFormDefaultText(java.lang.String text, IUnmarshallingContext ictx)Set 'elementFormDefault' attribute text. This method is provided only for use when unmarshalling.- Parameters:
text-ictx-
-
getBlock
public AllEnumSet getBlock()
Get 'blockDefault' attribute.- Returns:
- block default
-
getFinal
public AllEnumSet getFinal()
Get 'finalDefault' attribute.- Returns:
- final default
-
getTargetNamespace
public java.lang.String getTargetNamespace()
Get 'targetNamespace' attribute. Note that for most purposes thegetEffectiveNamespace()method should be used instead, since that method returns the namespace which should be used for definitions within this schema.- Returns:
- target namespace (
nullif none)
-
setTargetNamespace
public void setTargetNamespace(java.lang.String tns)
Set 'targetNamespace' attribute.- Parameters:
tns- target namespace (nullif none)
-
getEffectiveNamespace
public java.lang.String getEffectiveNamespace()
Get the effective namespace which applies to this schema. This will differ from the 'targetNamespace' attribute in the case where a no-namespace schema is included (directly or indirectly) into a namespaced schema.- Returns:
- effective namespace (
nullif none)
-
setEffectiveNamespace
public void setEffectiveNamespace(java.lang.String ens)
Set the effective namespace to be applied to this schema.- Parameters:
ens- effective namespace (nullif the same as 'targetNamespace' attribute)
-
getVersion
public java.lang.String getVersion()
Get 'version' attribute.- Returns:
- version
-
setVersion
public void setVersion(java.lang.String version)
Set 'version' attribute.- Parameters:
version-
-
getResolver
public ISchemaResolver getResolver()
Get resolver.- Returns:
- resolver
-
setResolver
public void setResolver(ISchemaResolver resolver)
Set resolver.- Parameters:
resolver-
-
getRegister
public NameRegister getRegister()
Get register for named components of schema.- Returns:
- register
-
isElementQualifiedDefault
public boolean isElementQualifiedDefault()
Check if elements are qualified by default.- Returns:
trueif qualified,falseif not
-
isAttributeQualifiedDefault
public boolean isAttributeQualifiedDefault()
Check if attributes are qualified by default.- Returns:
trueif qualified,falseif not
-
getName
private java.lang.String getName()
Get the schema name for logging validation.- Returns:
- name
-
validate
public void validate(ValidationContext vctx)
Description copied from class:SchemaBaseValidate component information. The validation step is used for checking the interactions between components, such as name references to other components. TheSchemaBase.prevalidate(org.jibx.schema.validation.ValidationContext)method will always be called for every component in the schema definition before this method is called for any component. This empty base class implementation should be overridden by each subclass that requires validation handling.- Specified by:
validatein interfaceIComponent- Overrides:
validatein classSchemaBase- Parameters:
vctx- validation context
-
prevalidate
public void prevalidate(ValidationContext vctx)
Description copied from class:SchemaBasePrevalidate component information. The prevalidation step is used to check isolated aspects of a component, such as the settings for enumerated values. This empty base class implementation should be overridden by each subclass that requires prevalidation handling.- Specified by:
prevalidatein interfaceIComponent- Overrides:
prevalidatein classSchemaBase- Parameters:
vctx- validation context
-
-