bpmn++
A BPMN parser library, written in C++
BPMNDI.xsd
Go to the documentation of this file.
1 <?xml version="1.0" encoding="UTF-8"?>
2 <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" targetNamespace="http://www.omg.org/spec/BPMN/20100524/DI" elementFormDefault="qualified" attributeFormDefault="unqualified">
3 
4  <xsd:import namespace="http://www.omg.org/spec/DD/20100524/DC" schemaLocation="DC.xsd" />
5  <xsd:import namespace="http://www.omg.org/spec/DD/20100524/DI" schemaLocation="DI.xsd" />
6 
7  <xsd:element name="BPMNDiagram" type="bpmndi:BPMNDiagram" />
8  <xsd:element name="BPMNPlane" type="bpmndi:BPMNPlane" />
9  <xsd:element name="BPMNLabelStyle" type="bpmndi:BPMNLabelStyle" />
10  <xsd:element name="BPMNShape" type="bpmndi:BPMNShape" substitutionGroup="di:DiagramElement" />
11  <xsd:element name="BPMNLabel" type="bpmndi:BPMNLabel" />
12  <xsd:element name="BPMNEdge" type="bpmndi:BPMNEdge" substitutionGroup="di:DiagramElement" />
13 
14  <xsd:complexType name="BPMNDiagram">
15  <xsd:complexContent>
16  <xsd:extension base="di:Diagram">
17  <xsd:sequence>
18  <xsd:element ref="bpmndi:BPMNPlane" />
19  <xsd:element ref="bpmndi:BPMNLabelStyle" maxOccurs="unbounded" minOccurs="0" />
20  </xsd:sequence>
21  </xsd:extension>
22  </xsd:complexContent>
23  </xsd:complexType>
24 
25  <xsd:complexType name="BPMNPlane">
26  <xsd:complexContent>
27  <xsd:extension base="di:Plane">
28  <xsd:attribute name="bpmnElement" type="xsd:QName" />
29  </xsd:extension>
30  </xsd:complexContent>
31  </xsd:complexType>
32 
33  <xsd:complexType name="BPMNEdge">
34  <xsd:complexContent>
35  <xsd:extension base="di:LabeledEdge">
36  <xsd:sequence>
37  <xsd:element ref="bpmndi:BPMNLabel" minOccurs="0" />
38  </xsd:sequence>
39  <xsd:attribute name="bpmnElement" type="xsd:QName" />
40  <xsd:attribute name="sourceElement" type="xsd:QName" />
41  <xsd:attribute name="targetElement" type="xsd:QName" />
42  <xsd:attribute name="messageVisibleKind" type="bpmndi:MessageVisibleKind" />
43  </xsd:extension>
44  </xsd:complexContent>
45  </xsd:complexType>
46 
47  <xsd:complexType name="BPMNShape">
48  <xsd:complexContent>
49  <xsd:extension base="di:LabeledShape">
50  <xsd:sequence>
51  <xsd:element ref="bpmndi:BPMNLabel" minOccurs="0" />
52  </xsd:sequence>
53  <xsd:attribute name="bpmnElement" type="xsd:QName" />
54  <xsd:attribute name="isHorizontal" type="xsd:boolean" />
55  <xsd:attribute name="isExpanded" type="xsd:boolean" />
56  <xsd:attribute name="isMarkerVisible" type="xsd:boolean" />
57  <xsd:attribute name="isMessageVisible" type="xsd:boolean" />
58  <xsd:attribute name="participantBandKind" type="bpmndi:ParticipantBandKind" />
59  <xsd:attribute name="choreographyActivityShape" type="xsd:QName"/>
60  </xsd:extension>
61  </xsd:complexContent>
62  </xsd:complexType>
63 
64  <xsd:complexType name="BPMNLabel">
65  <xsd:complexContent>
66  <xsd:extension base="di:Label">
67  <xsd:attribute name="labelStyle" type="xsd:QName" />
68  </xsd:extension>
69  </xsd:complexContent>
70  </xsd:complexType>
71 
72  <xsd:complexType name="BPMNLabelStyle">
73  <xsd:complexContent>
74  <xsd:extension base="di:Style">
75  <xsd:sequence>
76  <xsd:element ref="dc:Font" />
77  </xsd:sequence>
78  </xsd:extension>
79  </xsd:complexContent>
80  </xsd:complexType>
81 
82  <xsd:simpleType name="ParticipantBandKind">
83  <xsd:restriction base="xsd:string">
84  <xsd:enumeration value="top_initiating" />
85  <xsd:enumeration value="middle_initiating" />
86  <xsd:enumeration value="bottom_initiating" />
87  <xsd:enumeration value="top_non_initiating" />
88  <xsd:enumeration value="middle_non_initiating" />
89  <xsd:enumeration value="bottom_non_initiating" />
90  </xsd:restriction>
91  </xsd:simpleType>
92 
93  <xsd:simpleType name="MessageVisibleKind">
94  <xsd:restriction base="xsd:string">
95  <xsd:enumeration value="initiating" />
96  <xsd:enumeration value="non_initiating" />
97  </xsd:restriction>
98  </xsd:simpleType>
99 
100 </xsd:schema>