⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 jpdl-3.1.xsd

📁 workflow first jbpm
💻 XSD
📖 第 1 页 / 共 2 页
字号:
<?xml version="1.0" encoding="UTF-8"?>

<xs:schema xmlns=          "urn:jbpm.org:jpdl-3.1" 
           targetNamespace="urn:jbpm.org:jpdl-3.1" 
           xmlns:xs="http://www.w3.org/2001/XMLSchema"
           elementFormDefault="qualified">

  <!--  PROCESS-DEFINITION -->
  <!--  ################## -->
  <xs:element name="process-definition">
    <xs:complexType>
      <xs:choice minOccurs="0" maxOccurs="unbounded">
        <xs:element ref="swimlane" />
        <xs:element ref="start-state" />
        <xs:group   ref="node-elements"/>
        <xs:group   ref="action-elements" />
        <xs:element ref="event" />
        <xs:element ref="exception-handler" />
        <xs:element ref="task" />
      </xs:choice>
      <xs:attribute name="name" type="xs:string" use="required" />
    </xs:complexType>
  </xs:element>

  <!--  SWIMLANE -->
  <!--  ######## -->
  <xs:element name="swimlane">
    <xs:complexType>
      <xs:sequence minOccurs="0" maxOccurs="1">
        <xs:element ref="assignment"/>
      </xs:sequence>
      <xs:attribute name="name" type="xs:string" use="required" />
    </xs:complexType>
  </xs:element>

  <!--  NODES -->
  <!--  ##### -->
  <xs:element name="start-state">
    <xs:complexType>
      <xs:choice minOccurs="0" maxOccurs="unbounded">
        <xs:element ref="task"/>
        <xs:element ref="transition"/>
        <xs:element ref="event"/>
        <xs:element ref="exception-handler"/>
      </xs:choice>
      <xs:attribute name="name" type="xs:string"/>
    </xs:complexType>
  </xs:element>

  <xs:element name="end-state">
    <xs:complexType>
      <xs:choice minOccurs="0" maxOccurs="unbounded">
        <xs:element ref="event"/>
        <xs:element ref="exception-handler"/>
      </xs:choice>
      <xs:attribute name="name" type="xs:string" use="required"/>
    </xs:complexType>
  </xs:element>

  <xs:element name="decision">
    <xs:complexType>
      <xs:choice minOccurs="0" maxOccurs="unbounded">
        <xs:element name="handler" type="delegation" />
        <xs:element ref="event"/>
        <xs:element ref="exception-handler"/>
        <xs:element name="transition">
          <xs:complexType>
            <xs:choice minOccurs="0" maxOccurs="unbounded">
              <xs:element name="condition">
                <xs:complexType mixed="true">
                  <xs:sequence minOccurs="0" maxOccurs="unbounded">
                    <xs:any processContents="lax" minOccurs="0" maxOccurs="unbounded" />
                  </xs:sequence>
                  <xs:attribute name="expression" type="xs:string" />
                </xs:complexType>
              </xs:element>
              <xs:group ref="action-elements"/>
              <xs:element ref="exception-handler"/>
            </xs:choice>
            <xs:attribute name="to" type="xs:string" use="required" />
            <xs:attribute name="name" type="xs:string" />
          </xs:complexType>
        </xs:element>
      </xs:choice>
      <xs:attribute name="name" type="xs:string" use="required"/>
      <xs:attribute name="expression" type="xs:string" />
      <xs:attribute name="async" type="xs:string" default="false" />
    </xs:complexType>
  </xs:element>

  <xs:element name="fork">
    <xs:complexType>
      <xs:choice minOccurs="0" maxOccurs="unbounded">
        <xs:element ref="script" />
        <xs:group ref="node-content-elements" />
      </xs:choice>
      <xs:attribute name="name" type="xs:string" use="required"/>
      <xs:attribute name="async" type="xs:string" default="false" />
    </xs:complexType>
  </xs:element>
  
  <xs:element name="join">
    <xs:complexType>
      <xs:choice minOccurs="0" maxOccurs="unbounded">
        <xs:group ref="node-content-elements" />
      </xs:choice>
      <xs:attribute name="name" type="xs:string" use="required"/>
      <xs:attribute name="async" type="xs:string" default="false" />
    </xs:complexType>
  </xs:element>

  <xs:element name="node">
    <xs:complexType>
      <xs:sequence>
        <xs:choice minOccurs="0">
          <xs:group ref="action-elements" />
        </xs:choice>
        <xs:choice minOccurs="0" maxOccurs="unbounded">
          <xs:group ref="node-content-elements" />
        </xs:choice>
      </xs:sequence>
      <xs:attribute name="name" type="xs:string" use="required"/>
      <xs:attribute name="async" type="xs:string" default="false" />
    </xs:complexType>
  </xs:element>

  <xs:element name="process-state">
    <xs:complexType>
      <xs:choice minOccurs="0" maxOccurs="unbounded">
        <xs:element name="sub-process">
          <xs:complexType>
            <xs:attribute name="name" type="xs:string" use="required" />
            <xs:attribute name="version" type="xs:integer" />
          </xs:complexType>
        </xs:element>
        <xs:element ref="variable" />
        <xs:group ref="node-content-elements" />
      </xs:choice>
      <xs:attribute name="name" type="xs:string" use="required"/>
      <xs:attribute name="async" type="xs:string" default="false" />
    </xs:complexType>
  </xs:element>

  <xs:element name="state">
    <xs:complexType>
      <xs:choice minOccurs="0" maxOccurs="unbounded">
        <xs:group ref="node-content-elements"/>
      </xs:choice>
      <xs:attribute name="name" type="xs:string" use="required"/>
      <xs:attribute name="async" type="xs:string" default="false" />
    </xs:complexType>
  </xs:element>

  <xs:element name="super-state">
    <xs:complexType>
      <xs:choice minOccurs="0" maxOccurs="unbounded">
        <xs:group ref="node-elements"/>
        <xs:group ref="node-content-elements"/>
      </xs:choice>
      <xs:attribute name="name" type="xs:string" use="required"/>
      <xs:attribute name="async" type="xs:string" default="false" />
    </xs:complexType>
  </xs:element>

  <xs:element name="task-node">
    <xs:complexType>
      <xs:choice minOccurs="0" maxOccurs="unbounded">
        <xs:element ref="task" />
        <xs:group ref="node-content-elements" />
      </xs:choice>
      <xs:attribute name="name" type="xs:string" use="required"/>
      <xs:attribute name="create-tasks" type="booleanType" default="true" />
      <xs:attribute name="end-tasks" type="booleanType" default="false" />
      <xs:attribute name="signal" default="last">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="unsynchronized"/>
            <xs:enumeration value="never"/>
            <xs:enumeration value="first"/>
            <xs:enumeration value="first-wait"/>
            <xs:enumeration value="last"/>
            <xs:enumeration value="last-wait"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
      <xs:attribute name="async" type="xs:string" default="false" />
    </xs:complexType>
  </xs:element>

  <!--  TRANSITION -->
  <!--  ########## -->
  <xs:element name="transition">
    <xs:complexType>
      <xs:choice minOccurs="0" maxOccurs="unbounded">
        <xs:group ref="action-elements"/>
        <xs:element ref="exception-handler" />
      </xs:choice>
      <xs:attribute name="to" type="xs:string" use="required" />
      <xs:attribute name="name" type="xs:string" />
    </xs:complexType>
  </xs:element>

  <!-- ACTIONS -->
  <!-- ####### -->
  <xs:element name="action">
    <xs:complexType mixed="true">
      <xs:sequence>
        <xs:any processContents="lax" minOccurs="0" maxOccurs="unbounded" />
      </xs:sequence>
      <xs:attribute name="class" type="xs:string" />
      <xs:attribute name="config-type" default="field">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="field"/>
            <xs:enumeration value="bean"/>
            <xs:enumeration value="constructor"/>
            <xs:enumeration value="configuration-property"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
      <xs:attribute name="name" type="xs:string" />
      <xs:attribute name="ref-name" type="xs:string" />
      <xs:attribute name="accept-propagated-events" type="booleanType" default="true" />
      <xs:attribute name="expression" type="xs:string" />
      <xs:attribute name="async" type="xs:string" />
    </xs:complexType>
  </xs:element>

  <xs:element name="cancel-timer">

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -