public class XsdComplexType extends XsdNamedElements
XsdNamedElements because it's one of the
XsdAbstractElement concrete classes that can have a name attribute.| Modifier and Type | Field | Description |
|---|---|---|
private ComplexTypeBlockEnum |
block |
Prevents a complex type that has a specified type of derivation from being used in place of this complex type.
|
private ReferenceBase |
childElement |
The child element of
XsdComplexType. |
private XsdComplexContent |
complexContent |
A
XsdComplexContent child. |
private boolean |
elementAbstract |
Specifies whether the complex type can be used in an instance document.
|
private FinalEnum |
elementFinal |
Prevents a specified type of derivation of this complex type element.
|
private boolean |
mixed |
Specifies whether character data is allowed to appear between the child elements of this complexType element.
|
private XsdSimpleContent |
simpleContent |
A
XsdSimpleContent child. |
private XsdComplexTypeVisitor |
visitor |
XsdComplexTypeVisitor instance which restricts the children elements to:
* XsdAll, XsdSequence and XsdChoice (represented by their base class
XsdMultipleElements);
* XsdGroup;
* XsdComplexContent;
* XsdSimpleContent;
Can also have XsdAttribute and XsdAttributeGroup children as per inheritance of
AttributesVisitor. |
static String |
XS_TAG |
|
static String |
XSD_TAG |
ABSTRACT_TAG, ATTRIBUTE_FORM_DEFAULT, BASE_TAG, BLOCK_DEFAULT, BLOCK_TAG, DEFAULT_ELEMENT_TAG, DEFAULT_TAG, ELEMENT_FORM_DEFAULT, elementFieldsMap, FINAL_DEFAULT, FINAL_TAG, FIXED_TAG, FORM_TAG, ID_TAG, ITEM_TYPE_TAG, MAX_OCCURS_TAG, MEMBER_TYPES_TAG, MIN_OCCURS_TAG, MIXED_TAG, NAME_TAG, NAMESPACE, NILLABLE_TAG, parent, parser, REF_TAG, SCHEMA_LOCATION, SOURCE_TAG, SUBSTITUTION_GROUP_TAG, TARGET_NAMESPACE, TYPE_TAG, USE_TAG, VALUE_TAG, VERSION, XML_LANG_TAG, XMLNSname| Constructor | Description |
|---|---|
XsdComplexType(XsdParser parser,
Map<String,String> elementFieldsMapParam) |
|
XsdComplexType(XsdAbstractElement parent,
XsdParser parser,
Map<String,String> elementFieldsMapParam) |
| Modifier and Type | Method | Description |
|---|---|---|
void |
accept(XsdAbstractElementVisitor visitorParam) |
Base method for all accept methods.
|
private boolean |
childrenIsMultipleElement() |
|
XsdComplexType |
clone(Map<String,String> placeHolderAttributes) |
Performs a copy of the current object for replacing purposes.
|
(package private) List<ReferenceBase> |
getAttributes() |
|
String |
getBlock() |
|
XsdAll |
getChildAsAll() |
|
XsdChoice |
getChildAsChoice() |
|
XsdGroup |
getChildAsGroup() |
|
XsdSequence |
getChildAsSequence() |
|
XsdComplexContent |
getComplexContent() |
|
List<ReferenceBase> |
getElements() |
|
String |
getFinal() |
|
XsdSimpleContent |
getSimpleContent() |
|
XsdComplexTypeVisitor |
getVisitor() |
Obtains the visitor of a concrete
XsdAbstractElement instance. |
Stream<XsdAttributeGroup> |
getXsdAttributeGroup() |
|
Stream<XsdAttribute> |
getXsdAttributes() |
|
XsdAbstractElement |
getXsdChildElement() |
|
boolean |
isElementAbstract() |
|
boolean |
isMixed() |
|
static ReferenceBase |
parse(XsdParser parser,
Node node) |
|
void |
replaceUnsolvedElements(NamedConcreteElement element) |
This method iterates on the current element children and replaces any
UnsolvedReference object that has a
ref attribute that matches the receiving NamedConcreteElement name attribute. |
private void |
rule2() |
Asserts if the current object has a simpleContent as children and contains a value for the mixed attribute, which isn't allowed throwing
an exception in that case.
|
void |
setChildElement(ReferenceBase childElement) |
|
void |
setComplexContent(XsdComplexContent complexContent) |
|
void |
setFields(Map<String,String> elementFieldsMapParam) |
Extracts the field values from the received Map.
|
void |
setSimpleContent(XsdSimpleContent simpleContent) |
|
void |
validateSchemaRules() |
Runs verifications on each concrete element to ensure that the XSD schema rules are verified.
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitconvertNodeMap, getElementFieldsMap, getParent, getParser, getXsdElements, setParent, xsdParseSkeleton, xsdRawContentParsegetAnnotation, setAnnotationgetIdgetName, getRawName, setNamepublic static final String XSD_TAG
public static final String XS_TAG
private XsdComplexTypeVisitor visitor
XsdComplexTypeVisitor instance which restricts the children elements to:
* XsdAll, XsdSequence and XsdChoice (represented by their base class
XsdMultipleElements);
* XsdGroup;
* XsdComplexContent;
* XsdSimpleContent;
Can also have XsdAttribute and XsdAttributeGroup children as per inheritance of
AttributesVisitor.
Can also have XsdAnnotation children as per inheritance of XsdAnnotatedElementsVisitor.private ReferenceBase childElement
XsdComplexType. Can be either a XsdGroup or a XsdMultipleElements
instance wrapped in a ReferenceBase object.private boolean elementAbstract
private boolean mixed
simpleContent, only one can be present at any given time.private ComplexTypeBlockEnum block
private FinalEnum elementFinal
private XsdComplexContent complexContent
XsdComplexContent child.private XsdSimpleContent simpleContent
XsdSimpleContent child. This element is exclusive with the mixed field, only one
of them should be present in any XsdComplexType element.XsdComplexType(@NotNull
XsdParser parser,
@NotNull
Map<String,String> elementFieldsMapParam)
XsdComplexType(XsdAbstractElement parent, @NotNull XsdParser parser, @NotNull Map<String,String> elementFieldsMapParam)
public void setFields(@NotNull
Map<String,String> elementFieldsMapParam)
elementAbstract and mixed field both have the false as a
default value.setFields in class XsdNamedElementselementFieldsMapParam - The Map object containing the information previously contained by the Node element.public void validateSchemaRules()
validateSchemaRules in class XsdNamedElementsprivate void rule2()
public void accept(XsdAbstractElementVisitor visitorParam)
XsdAbstractElementaccept in class XsdAbstractElementvisitorParam - The visitor that is visiting the current instance.public XsdComplexTypeVisitor getVisitor()
XsdAbstractElementXsdAbstractElement instance.getVisitor in class XsdAbstractElementpublic List<ReferenceBase> getElements()
getElements in class XsdAbstractElementXsdComplexType instance.public XsdComplexType clone(@NotNull Map<String,String> placeHolderAttributes)
UnsolvedReference objects in the reference solving process.clone in class XsdNamedElementsplaceHolderAttributes - The additional attributes to add to the clone.public void replaceUnsolvedElements(NamedConcreteElement element)
XsdAbstractElementUnsolvedReference object that has a
ref attribute that matches the receiving NamedConcreteElement name attribute.replaceUnsolvedElements in class XsdAbstractElementelement - A fully parsed element with a name that will replace an UnsolvedReference object, if a
match between the NamedConcreteElement name attribute and the UnsolvedReference
ref attribute.public XsdAbstractElement getXsdChildElement()
public String getFinal()
List<ReferenceBase> getAttributes()
public Stream<XsdAttribute> getXsdAttributes()
public Stream<XsdAttributeGroup> getXsdAttributeGroup()
public XsdSimpleContent getSimpleContent()
public XsdComplexContent getComplexContent()
public boolean isMixed()
public boolean isElementAbstract()
public static ReferenceBase parse(@NotNull XsdParser parser, Node node)
public void setChildElement(ReferenceBase childElement)
public void setComplexContent(XsdComplexContent complexContent)
public void setSimpleContent(XsdSimpleContent simpleContent)
public String getBlock()
public XsdGroup getChildAsGroup()
public XsdAll getChildAsAll()
public XsdChoice getChildAsChoice()
public XsdSequence getChildAsSequence()
XsdSequence object or null if childElement isn't a XsdSequence instance.private boolean childrenIsMultipleElement()
Copyright © 2018. All rights reserved.