Poco::XSD::Types

class AbstractAttributeGroup

File Information

Library: XSD/Types
Package: XSDAttributes
Header: Poco/XSD/Types/AbstractAttributeGroup.h

Description

The base class for all attribute groups.

Inheritance

Direct Base Classes: AttributeContent

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

Known Derived Classes: AttributeGroup, AttributeGroupRef

Member Summary

Member Functions: add, getAny, getAttributes, hasAnyAttribute, isAny

Inherited Functions: accept, addAnnotation, duplicate, fixup, getAnnotations, id, isAny, name, referenceCount, release

Types

Attributes

typedef std::map < std::string, AttributeContent::Ptr > Attributes;

Ptr

typedef AutoPtr < AbstractAttributeGroup > Ptr;

Constructors

AbstractAttributeGroup

AbstractAttributeGroup(
    const std::string & id,
    const std::string & name
);

Creates the AbstractAttributeGroup.

Destructor

~AbstractAttributeGroup virtual

virtual ~AbstractAttributeGroup();

Destroys the AbstractAttributeGroup.

Member Functions

add virtual

virtual void add(
    AttributeContent::Ptr ptr
) = 0;

Adds an attribute content child to the group.

Throws an exception if a child with that name already exists.

getAny virtual

virtual AnyAttribute::Ptr getAny() const = 0;

Returns the any attribute

getAttributes virtual

virtual const AbstractAttributeGroup::Attributes & getAttributes() const = 0;

Returns all the children.

hasAnyAttribute virtual

virtual bool hasAnyAttribute() const = 0;

Returns true if the any attribute is set.

isAny virtual inline

bool isAny() const;