BPMN-OS
BPMN for optimization and simulation
Loading...
Searching...
No Matches
XML Namespace Reference

The XML namespace contains classes representing XML-nodes defined in given XML-schema(s).

Namespaces

namespace  bpmn
 The XML::bpmn namespace contains classes from the following XML-schema(s): xsd/DC.xsd, xsd/DI.xsd, xsd/BPMNDI.xsd, xsd/Semantic.xsd, xsd/BPMN20.xsd.
 
namespace  bpmnos
 The XML::bpmnos namespace contains classes from the following XML-schema(s): xsd/BPMNOS.xsd.
 

Classes

struct  Attribute
 A struct representing an attribute of an XML-node. More...
 
struct  Value
 A struct representing the value of an XML-node attribute. More...
 
class  XMLObject
 A class representing a node in an XML-tree. More...
 

Typedefs

typedef std::string ClassName
 
typedef std::string ElementName
 
typedef std::string TextContent
 
typedef std::string Namespace
 
typedef std::string AttributeName
 
typedef std::vector< AttributeAttributes
 
typedef std::vector< std::unique_ptr< XMLObject > > Children
 
typedef std::unordered_map< ElementName, XMLObject *(*)(const Namespace &xmlns, const ClassName &className, const xercesc::DOMElement *element)> Factory
 Factory used to create instance depending on element name.
 

Functions

template<typename T >
XMLObjectcreateInstance (const Namespace &xmlns, const ClassName &className, const xercesc::DOMElement *element)
 Template function used to store in factory.
 
std::ostream & operator<< (std::ostream &os, const XMLObject *obj)
 Allows printing of stringified XML object.
 
std::ostream & operator<< (std::ostream &os, const XMLObject &obj)
 Allows printing of stringified XML object.
 
std::string transcode (const XMLCh *xmlChStr)
 

Typedef Documentation

◆ AttributeName

typedef std::string XML::AttributeName

Definition at line 26 of file bpmn++.h.

◆ Attributes

typedef std::vector< Attribute > XML::Attributes

Definition at line 81 of file bpmn++.h.

◆ Children

typedef std::vector< std::unique_ptr< XMLObject > > XML::Children

Definition at line 82 of file bpmn++.h.

◆ ClassName

typedef std::string XML::ClassName

Definition at line 22 of file bpmn++.h.

◆ ElementName

typedef std::string XML::ElementName

Definition at line 23 of file bpmn++.h.

◆ Factory

typedef std::unordered_map< ElementName, XMLObject *(*)(const Namespace &xmlns, const ClassName &className, const xercesc::DOMElement *element)> XML::Factory

Definition at line 88 of file bpmn++.h.

◆ Namespace

typedef std::string XML::Namespace

Definition at line 25 of file bpmn++.h.

◆ TextContent

typedef std::string XML::TextContent

Definition at line 24 of file bpmn++.h.

Function Documentation

◆ createInstance()

template<typename T >
XMLObject * XML::createInstance ( const Namespace & xmlns,
const ClassName & className,
const xercesc::DOMElement * element )

Definition at line 85 of file bpmn++.h.

◆ operator<<() [1/2]

std::ostream & XML::operator<< ( std::ostream & os,
const XMLObject & obj )

Definition at line 254 of file XMLObject.cpp.

◆ operator<<() [2/2]

std::ostream & XML::operator<< ( std::ostream & os,
const XMLObject * obj )

Definition at line 249 of file XMLObject.cpp.

◆ transcode()

std::string XML::transcode ( const XMLCh * xmlChStr)

Definition at line 36 of file XMLObject.cpp.