33#ifndef API_MIP_XML_NODE_H_
34#define API_MIP_XML_NODE_H_
108 virtual std::vector<std::pair<std::string, std::string>>
GetAttributes()
const = 0;
177 virtual void AddAttribute(
const std::string& attributeName,
const std::string& attributeValue) = 0;
194 virtual std::shared_ptr<XmlNode>
AddNewChild(
const std::string& name) = 0;
203 virtual std::shared_ptr<XmlNode>
AddNewChild(
const std::string& name,
const std::string& namespaceName) = 0;
brief defines abstraction over XML node.
virtual std::shared_ptr< XmlNode > AddNewChild(const std::string &name)=0
Add a child to this XmlNode.
virtual std::string GetContent() const =0
virtual std::shared_ptr< XmlNode > GetFirstChild() const =0
virtual std::string GetAttributeValue(const std::string &attributeName) const =0
virtual std::vector< std::pair< std::string, std::string > > GetAttributes() const =0
virtual int RemoveAttribute(const std::string &attributeName)=0
Removes a node property by name.
virtual void AddAttribute(const std::string &attributeName, const std::string &attributeValue)=0
Add a property to an existing node.
virtual std::string GetName() const =0
virtual std::shared_ptr< XmlNode > GetNextNode() const =0
virtual bool RemoveNodeFromDocument()=0
Remove this node and children from the xml document.
virtual std::shared_ptr< XmlNode > AddNewChild(const std::string &name, const std::string &namespaceName)=0
Add a child to this XmlNode.
virtual XmlNodeType GetNodeType() const =0
Get the type of node this xml is represented as.
virtual std::string GetInnerText() const =0
virtual bool IsNull() const =0
See if the object has been initialized with an underlying xml node.
virtual XmlNamespace GetNamespace() const =0
virtual bool AddContent(const std::string &content)=0
Add inner text to this xml node.
XmlNodeType
Constants for the different types of xml elements nodes.