Library: XSD/Types
Package: XSDAttributes
Header: Poco/XSD/Types/AbstractAttributeGroup.h
The base class for all attribute groups.
Direct Base Classes: AttributeContent
All Base Classes: Poco::RefCountedObject, AnnotatedObject, AttributeContent, Visitable
Known Derived Classes: AttributeGroupRef, AttributeGroup
Member Functions: add, getAny, getAttributes, hasAnyAttribute, isAny
Inherited Functions: accept, addAnnotation, duplicate, fixup, getAnnotations, id, isAny, name, referenceCount, release
typedef std::map < std::string, AttributeContent::Ptr > Attributes;
typedef AutoPtr < AbstractAttributeGroup > Ptr;
AbstractAttributeGroup(
const std::string & id,
const std::string & name
);
Creates the AbstractAttributeGroup.
virtual ~AbstractAttributeGroup();
Destroys the AbstractAttributeGroup.
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.
virtual AnyAttribute::Ptr getAny() const = 0;
Returns the any attribute
virtual const AbstractAttributeGroup::Attributes & getAttributes() const = 0;
Returns all the children.
virtual bool hasAnyAttribute() const = 0;
Returns true if the any attribute is set.
bool isAny() const;