bpmn++
A BPMN parser library, written in C++
Loading...
Searching...
No Matches
tArtifact.h
Go to the documentation of this file.
1
#ifndef XML_bpmn_tArtifact_H
2
#define XML_bpmn_tArtifact_H
3
#include <memory>
4
#include <optional>
5
#include <vector>
6
7
#include "../XMLObject.h"
8
#include "
tBaseElement.h
"
9
10
/**
11
* @brief The `XML::bpmn` namespace contains classes from the following XML-schema(s): @ref xsd/DC.xsd, @ref xsd/DI.xsd, @ref xsd/BPMNDI.xsd, @ref xsd/Semantic.xsd, @ref xsd/BPMN20.xsd.
12
*/
13
namespace
XML::bpmn
{
14
15
/**
16
* Overview:
17
* - Element name: tArtifact
18
* - XML-Schema: xsd/Semantic.xsd
19
* - XML-Namespace: http://www.omg.org/spec/BPMN/20100524/MODEL
20
*
21
* Members:
22
* - documentation : tDocumentation [0..*] (from: tBaseElement)
23
* - extensionElements : tExtensionElements [0..1] (from: tBaseElement)
24
* - id : ID [0..1] (from: tBaseElement)
25
*
26
* Automatically generated by schematic++ v0.6.0 (https://github.com/rajgoel/schematicpp)
27
*/
28
class
tArtifact
:
public
tBaseElement
{
29
template
<
typename
T>
friend
XMLObject
*
::XML::createInstance
(
const
Namespace
&
xmlns
,
const
ClassName
&
className
,
const
xercesc::DOMElement* element);
30
private
:
31
static
bool
registerClass() {
32
XMLObject::factory
[
"http://www.omg.org/spec/BPMN/20100524/MODEL:tArtifact"
] = &createInstance<tArtifact>;
// register function in factory
33
return
true
;
34
};
35
inline
static
bool
registered = registerClass();
36
protected
:
37
tArtifact
(
const
Namespace
&
xmlns
,
const
ClassName
&
className
,
const
xercesc::DOMElement* element,
const
Attributes
& defaultAttributes);
38
39
friend
class
tCollaboration
;
40
friend
class
tProcess
;
41
friend
class
tSubChoreography
;
42
friend
class
tSubProcess
;
43
44
public
:
45
/// default attributes to be used if they are not explicitly provided
46
inline
static
const
Attributes
defaults
= {
47
};
48
49
};
50
51
}
// namespace XML::bpmn
52
53
#endif
// XML_bpmn_tArtifact_H
XML::XMLObject
A class representing a node in an XML-tree.
Definition
XMLObject.h:115
XML::XMLObject::className
const ClassName className
Definition
XMLObject.h:243
XML::XMLObject::factory
static Factory factory
Definition
XMLObject.h:155
XML::XMLObject::xmlns
Namespace xmlns
Definition
XMLObject.h:242
XML::bpmn::tArtifact
Definition
tArtifact.h:28
XML::bpmn::tArtifact::defaults
static const Attributes defaults
default attributes to be used if they are not explicitly provided
Definition
tArtifact.h:46
XML::bpmn::tBaseElement
Definition
tBaseElement.h:32
XML::bpmn::tCollaboration
Definition
tCollaboration.h:59
XML::bpmn::tProcess
Definition
tProcess.h:64
XML::bpmn::tSubChoreography
Definition
tSubChoreography.h:45
XML::bpmn::tSubProcess
Definition
tSubProcess.h:55
XML::bpmn
The XML::bpmn namespace contains classes from the following XML-schema(s): xsd/DC....
Definition
adHocSubProcess.h:13
XML::Namespace
std::string Namespace
Definition
XMLObject.h:24
XML::Attributes
std::vector< Attribute > Attributes
Definition
XMLObject.h:80
XML::ClassName
std::string ClassName
Definition
XMLObject.h:21
XML::createInstance
XMLObject * createInstance(const Namespace &xmlns, const ClassName &className, const xercesc::DOMElement *element)
Template function used to store in factory.
Definition
XMLObject.h:84
tBaseElement.h