Interface for XML elements. More...
#include <ilog/xml.h>
Public Member Functions | |
| virtual | ~IlXmlElementI () |
| Destructor. More... | |
| virtual void | addAttribute (IlXmlAttributeI *attribute) |
| Adds an attribute to this element. More... | |
| virtual void | addChild (IlXmlNodeI *node) |
| Adds a child node to this element. More... | |
| virtual IlXmlAttributeI * | createAttribute (char *name, char *value) const |
| Creates an attribute for this element. More... | |
| virtual IlXmlNodeIteratorI * | createAttributesIterator () const |
| Creates an iterator for the attributes of this element. More... | |
| virtual IlXmlElementI * | createChildElement (char *tag) const |
| Creates a child element. More... | |
| virtual IlXmlNodeIteratorI * | createChildrenIterator () const |
| Creates an iterator for the child nodes of this element. More... | |
| virtual IlBoolean | doesPreserveWhiteSpaces () const |
| Indicates if non-significant white spaces are kept. More... | |
| virtual IlXmlAttributeI * | getAttribute (const char *name) const |
| Returns the attribute with the specified name. More... | |
| const char * | getAttributeValue (const char *name) const |
| Returns the value of an attribute. More... | |
| virtual const char * | getTag () const =0 |
| Retrieves the tag name of this element. More... | |
| virtual const char * | getText () const |
| Retrieves the content of the first Text node child. More... | |
| virtual Type | getType () const |
| Retrieves the type of this element. More... | |
| virtual void | preserveWhiteSpaces (IlBoolean preserve) |
| Forces non-significant white spaces to be kept or dropped. More... | |
| virtual void | setTag (const char *tag) |
| Sets the tag name of this element. More... | |
| virtual void | storeAttribute (IlXmlDocumentI *document, char *name, char *value) |
| Stores a new attribute that was just read. More... | |
| virtual void | storeTag (char *tag) |
| Sets the tag name of this element. More... | |
| virtual std::ostream & | write (std::ostream &os) const |
| Writes the XML representation of this element. More... | |
| virtual void | writeAttributes (std::ostream &os) const |
| Writes the XML representation of the attributes of this element. More... | |
| virtual IlBoolean | writeChildren (std::ostream &os) const |
| Writes the XML representation of the children of this element. More... | |
Additional Inherited Members | |
Public Types inherited from IlXmlNodeI | |
| enum | Type { Attribute, Element, Text, Comment, CData, PI, CharRef, EntityRef } |
| The different types of XML nodes. More... | |
Interface for XML elements.
Library: ilog
|
virtual |
Destructor.
The destructor must destroy all the attributes and the child nodes of this element. The default implementation does nothing.
|
virtual |
Adds an attribute to this element.
| attribute | The attribute to be added to this element. The node is responsible for the destruction of this attribute when this element is destroyed. The default implementation deletes this attribute. |
Reimplemented in IlXmlElement.
|
virtual |
Adds a child node to this element.
| node | The new node that is added to this element. The default implementation deletes this node. |
Reimplemented in IlXmlElement.
|
virtual |
Creates an attribute for this element.
| name | The name of the new attribute. The string is stored as is, that is, not copied. It is deleted using the delete operator. |
| value | The value for the new attribute. The string is stored as is, that is, not copied. It is deleted using the delete operator. |
0.
|
virtual |
Creates an iterator for the attributes of this element.
0. Reimplemented in IlXmlElement.
|
virtual |
Creates a child element.
This member function is called by the XML parser when a new element, child of this element, is read.
If no element is created (0 is returned), then the method IlvXmlDocumentI::createElement() is called in order to create the child element of this node. The default implementation returns 0.
| tag | The tag name of this new element. |
0 if this creation is to be delegated to the document.
|
virtual |
Creates an iterator for the child nodes of this element.
0. Reimplemented in IlXmlElement.
|
virtual |
Indicates if non-significant white spaces are kept.
IlTrue if the non-significant white spaces (the ones at the beginning or at the end of the element content) are kept in the element, IlFalse otherwise. preserveWhiteSpaces(). Reimplemented in IlXmlElement.
|
virtual |
Returns the attribute with the specified name.
| name | The name of the attribute that is requested. |
strcmp defines) name, or 0 if no attribute has this name. The default implementation scans all the attributes that are accessed by the attributes iterator to find a match. Reimplemented in IlXmlElement.
| const char* IlXmlElementI::getAttributeValue | ( | const char * | name | ) | const |
Returns the value of an attribute.
| name | The name of the attribute for which the value is requested. |
strcmp defines) name, or 0 if no attribute has this name. The default implementation scans all the attributes that are accessed by the attributes iterator to find a match, then returns its value.
|
pure virtual |
Retrieves the tag name of this element.
Implemented in IlXmlElement.
|
virtual |
Retrieves the content of the first Text node child.
0 if there are not any. The user must not modify or delete the returned string. Reimplemented in IlXmlElement.
|
virtual |
|
virtual |
Forces non-significant white spaces to be kept or dropped.
| preserve | If set to IlTrue, even non-significant white spaces will be kept in the element content. |
doesPreserveWhiteSpaces(). Reimplemented in IlXmlElement.
|
virtual |
Sets the tag name of this element.
| tag | The new tag name of this element. The default implementation calls storeTag with a copy of the string tag. |
|
virtual |
Stores a new attribute that was just read.
The default implementation calls addAttribute() with the attribute that is returned by a call to createAttribute().
| document | The document instance that is used to create the attribute. |
| name | The name of the attribute. You are responsible for destroying this string if you do not store it. |
| value | The value of the attribute. You are responsible for destroying this string if you do not store it. |
|
virtual |
Sets the tag name of this element.
| tag | The new tag name of this element. The string is not copied before it is stored, but it is deleted (using delete []) by the destructor. The default implementation deletes this string and does nothing else with it. |
Reimplemented in IlXmlElement.
|
virtual |
Writes the XML representation of this element.
The default implementation writes the number of spaces indicated by getIndent(), then an open square bracket (<) and the tag name.
writeAttributes() is called to save the attributes description.
writeChildren() is called to save the description of the potential children of this element. If writeChildren() returns IlTrue, it indicates that some children were saved, and write() writes the closing tag to the output stream (that is, the closing '/<tag name>' tag). If writeChildren() returns IlFalse it indicates that no child was saved, and write() closes the tag by outputting '/>'.
| os | The output stream to write to. |
Implements IlXmlNodeI.
|
virtual |
Writes the XML representation of the attributes of this element.
For each attribute of this element, the default implementation prints a space character and calls write() on that attribute.
| os | The output stream to write to. |
|
virtual |
Writes the XML representation of the children of this element.
For each child of this element, the default implementation prints a space character and calls write() on that node.
| os | The output stream to write to. |