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

📄 jpdl-3.2.xsd

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

<xs:schema xmlns=          "urn:jbpm.org:jpdl-3.2" 
           targetNamespace="urn:jbpm.org:jpdl-3.2" 
           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="description" />
        <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="description" />
        <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="description" />
        <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 ref="description" />
        <xs:element name="handler" type="delegation" />
        <xs:element ref="event"/>
        <xs:element ref="exception-handler"/>
        <xs:element ref="transition"/>
      </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:attribute name="binding" type="xs:string" />
    			</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:attribute name="binding" type="bindingType"></xs:attribute>
    </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>

  <xs:element name="mail-node">
    <xs:complexType>
      <xs:choice minOccurs="0" maxOccurs="unbounded">
        <xs:element ref="subject" />
        <xs:element ref="text" />
        <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:attribute name="template" type="xs:string"/>
      <xs:attribute name="actors" type="xs:string"/>
      <xs:attribute name="to" type="xs:string"/>
      <xs:attribute name="subject" type="xs:string"/>
      <xs:attribute name="text" type="xs:string"/>
    </xs:complexType>
  </xs:element>


  <!--  TRANSITION -->
  <!--  ########## -->
  <xs:element name="transition">
    <xs:complexType>
      <xs:choice minOccurs="0" maxOccurs="unbounded">
         <xs:element ref="description" />
         <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>

  <!-- 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" type="xs:string" />
      <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">
    <xs:complexType>
      <xs:attribute name="name" type="xs:string" use="required" />
    </xs:complexType>
  </xs:element>

  <xs:element name="create-timer">
    <xs:complexType>
      <xs:choice  minOccurs="0">
        <xs:element ref="action"/>
        <xs:element ref="script"/>
      </xs:choice>
      <xs:attribute name="duedate" type="xs:string" use="required" />
      <xs:attribute name="name" type="xs:string" />

⌨️ 快捷键说明

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