class ComplexType

Library: XSD/Types
Package: XSDTypes
Header: Poco/XSD/Types/ComplexType.h


This class represents a complexType in an XML Schema.


Direct Base Classes: Type

All Base Classes: Poco::RefCountedObject, AnnotatedObject, Type, Visitable

Member Summary

Member Functions: accept, addAttribute, attributeContent, blockExtension, blockRestriction, createIterator, finalExtension, finalRestriction, fixup, getContent, getParent, hasAnyAttribute, isAbstract, mixed, parents, setContent, setParent

Inherited Functions: accept, addAnnotation, createIterator, duplicate, fixup, getAnnotations, getSchema, id, iterator, iteratorRec, name, parents, referenceCount, release, setName, setSchema



typedef AutoPtr < ComplexType > Ptr;



    const std::string & id,
    const std::string & name,
    bool isAbstract,
    bool blockExtension,
    bool blockRestriction,
    bool finalExtension,
    bool finalRestriction,
    bool mixed

Creates the ComplexType.


~ComplexType virtual

virtual ~ComplexType();

Destroys the ComplexType.

Member Functions

accept virtual

void accept(
    Visitor & v
) const;

addAttribute inline

void addAttribute(
    AttributeContent::Ptr pAttr

Adds the attribute to the set.

attributeContent inline

const std::vector < AttributeContent::Ptr > & attributeContent() const;

Returns the attributes defined for the complex type.

blockExtension inline

bool blockExtension() const;

blockRestriction inline

bool blockRestriction() const;

createIterator virtual

void createIterator(
    std::vector < OrderIterator > & seq
) const;

finalExtension inline

bool finalExtension() const;

finalRestriction inline

bool finalRestriction() const;

fixup virtual

void fixup();

Resolves type references to a parent class.

getContent inline

Content::Ptr getContent() const;

getParent inline

InheritanceInfo::Ptr getParent() const;

hasAnyAttribute inline

bool hasAnyAttribute() const;

Returns true if the any attribute is allowed.

isAbstract inline

bool isAbstract() const;

mixed inline

bool mixed() const;

parents virtual

const std::vector < const Type * > & parents() const;

setContent inline

void setContent(
    Content::Ptr ptr

setParent inline

void setParent(
    InheritanceInfo::Ptr pInh