操作架构参考 (WorkflowInfo)

上次修改时间: 2011年2月25日

适用范围: SharePoint Foundation 2010

实际上,用于验证自定义 .ACTIONS 文件的 Actions 架构不是以服务器文件系统上的 .xsd 文件形式存在。下面的 XML 只是该架构的表示形式以方便开发。已在适当的位置提供了有效值,并且还提供了表示属性所需的数据类型的字符串。

备注

此架构参考是针对 XML 开发而提供的,并且只应在开发人员环境(而非生产环境)中创建 .ACTIONS 文件时使用。为了便于阅读,此 XML 进行了格式设置。

ACTIONS 架构示例

<?xml version="1.0" encoding="utf-8"?>
<xs:schema elementFormDefault="qualified"  
           xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:element name="WorkflowInfo">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="Conditions">
          <xs:complexType>
            <xs:sequence>
              <xs:choice minOccurs="0" 
                         maxOccurs="unbounded">
                <xs:element name="Default" 
                            type="defaultElementType"
                            maxOccurs="1" 
                            minOccurs="0" />
                <xs:element name="Condition" 
                            minOccurs="0" 
                            maxOccurs="unbounded">
                  <xs:complexType>
                    <xs:sequence>
                      <xs:element name="RuleDesigner" 
                                  type="ruleDesignerType" />
                      <xs:element name="Parameters" 
                                  type="parametersType" />
                    </xs:sequence>
                    <xs:attribute name="Type">
                      <xs:simpleType>
                        <xs:restriction base="xs:string">
                          <xs:enumeration value="Advanced" />
                        </xs:restriction>
                      </xs:simpleType>
                    </xs:attribute>
                    <xs:attribute name="Name">
                      <xs:simpleType>
                        <xs:restriction base="xs:string">
                          <xs:enumeration value="Name 
                                 displayed Workflow editor."/>
                        </xs:restriction>
                      </xs:simpleType>
                    </xs:attribute>
                    <xs:attribute name="AppliesTo" 
                                  type="appliesToTypes" />
                    <xs:attribute name="UsesCurrentItem" 
                                  type="xs:boolean" />
                    <xs:attribute name="FunctionName">
                      <xs:simpleType>
                        <xs:restriction base="xs:string">
                          <xs:enumeration value="Boolean
                                                 method 
                                                 implemented
                                                 in class" />
                        </xs:restriction>
                      </xs:simpleType>
                    </xs:attribute>
                    <xs:attribute name="Assembly">
                      <xs:simpleType>
                        <xs:restriction base="xs:string">
                          <xs:enumeration 
                                   value="Assembly.Name, 
                                   Version=0.0.0.0, 
                                   Culture=neutral, 
                                   PublicKeyToken=PublicKeyToken" />
                        </xs:restriction>
                      </xs:simpleType>
                    </xs:attribute>
                    <xs:attribute name="ClassName">
                      <xs:simpleType>
                        <xs:restriction base="xs:string">
                          <xs:enumeration value="Namespace
                                                 Qualified
                                                 class name"
                                                         />
                        </xs:restriction>
                      </xs:simpleType>
                    </xs:attribute>
                  </xs:complexType>
                </xs:element>
              </xs:choice>
            </xs:sequence>
            <xs:attribute name="And">
              <xs:simpleType>
                <xs:restriction base="xs:string">
                  <xs:enumeration value="and" />
                </xs:restriction>
              </xs:simpleType>
            </xs:attribute>
            <xs:attribute name="Or">
              <xs:simpleType>
                <xs:restriction base="xs:string">
                  <xs:enumeration value="or" />
                </xs:restriction>
              </xs:simpleType>
            </xs:attribute>
            <xs:attribute name="When">
              <xs:simpleType>
                <xs:restriction base="xs:string">
                  <xs:enumeration value="If" />
                </xs:restriction>
              </xs:simpleType>
            </xs:attribute>
            <xs:attribute name="Else">
              <xs:simpleType>
                <xs:restriction base="xs:string">
                  <xs:enumeration value="Else If" />
                </xs:restriction>
              </xs:simpleType>
            </xs:attribute>
            <xs:attribute name="Not" >
              <xs:simpleType>
                <xs:restriction base="xs:string">
                  <xs:enumeration value="not" />
                </xs:restriction>
              </xs:simpleType>
            </xs:attribute>
          </xs:complexType>
        </xs:element>
        <xs:element name="Actions">
          <xs:complexType>
            <xs:sequence>
              <xs:choice minOccurs="0" 
                         maxOccurs="unbounded">
                <xs:element name="Default" 
                            type="defaultElementType" />
                <xs:element name="Action">
                  <xs:complexType>
                    <xs:sequence>
                      <xs:choice minOccurs="0" 
                                 maxOccurs="unbounded">
                        <xs:element name="Parameters" 
                                    type="parametersType" />
                        <xs:element name="RuleDesigner"
                                    type="ruleDesignerType" />
                      </xs:choice>
                    </xs:sequence>
                    <xs:attribute name="Name">
                      <xs:simpleType>
                        <xs:restriction base="xs:string">
                          <xs:enumeration value="Name displayed
                                           in workflow editor" />
                        </xs:restriction>
                      </xs:simpleType>
                    </xs:attribute>
                    <xs:attribute name="ClassName">
                      <xs:simpleType>
                        <xs:restriction base="xs:string">
                          <xs:enumeration value="Namespace qualified 
                                                 class name" />
                        </xs:restriction>
                      </xs:simpleType>
                    </xs:attribute>
                    <xs:attribute name="Assembly">
                      <xs:simpleType>
                        <xs:restriction base="xs:string">
                          <xs:enumeration 
                                 value="Assembly.Name, 
                                 Version=0.0.0.0, 
                                 Culture=neutral, 
                                 PublicKeyToken=PublicKeyToken" />
                        </xs:restriction>
                      </xs:simpleType>
                    </xs:attribute>
                    <xs:attribute name="Category">
                      <xs:simpleType>
                        <xs:restriction base="xs:string">
                          <xs:enumeration value="Filter 
                                                 category" />
                        </xs:restriction>
                      </xs:simpleType>
                    </xs:attribute>
                    <xs:attribute name="CreatesTask" 
                                  type="xs:boolean" />
                    <xs:attribute name="CreatesInList">
                      <xs:simpleType>
                        <xs:restriction base="xs:string">
                          <xs:enumeration value="Parameter name
                                                 containing ID
                                                 of list" />
                        </xs:restriction>
                      </xs:simpleType>
                    </xs:attribute>
                    <xs:attribute name="AppliesTo" 
                                  type="appliesToTypes" />
                    <xs:attribute name="ListModeration" 
                                  type="xs:boolean" />
                    <xs:attribute name="UsesCurrentItem" 
                                  type="xs:boolean" />
                  </xs:complexType>
                </xs:element>
              </xs:choice>
            </xs:sequence>
            <xs:attribute name="Sequential">
              <xs:simpleType>
                <xs:restriction base="xs:string">
                  <xs:enumeration value="then" />
                </xs:restriction>
              </xs:simpleType>
            </xs:attribute>
            <xs:attribute name="Parallel">
              <xs:simpleType>
                <xs:restriction base="xs:string">
                  <xs:enumeration value="and" />
                </xs:restriction>
              </xs:simpleType>
            </xs:attribute>
          </xs:complexType>
        </xs:element>
      </xs:sequence>
      <xs:attribute name="Language">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="en-us" />
          </xs:restriction>
         </xs:simpleType>
      </xs:attribute>
    </xs:complexType>
  </xs:element>
  <xs:complexType name="ruleDesignerType">
   <xs:sequence>
     <xs:element name="FieldBind" minOccurs="0" maxOccurs="unbounded">
       <xs:complexType>
         <xs:sequence>
           <xs:element name="Option" 
                       minOccurs="0" 
                       maxOccurs="unbounded">
             <xs:complexType>
               <xs:sequence>
               </xs:sequence>
               <xs:attribute name="Name" type="xs:string" />
               <xs:attribute name="TypeFilter" 
                             type="xs:string" />
               <xs:attribute name="UnaryHides" 
                             type="xs:string" />
               <xs:attribute name="Value" type="xs:string" />
             </xs:complexType>
           </xs:element>
         </xs:sequence>
         <xs:attribute name="Field">
           <xs:simpleType>
             <xs:restriction base="xs:string">
               <xs:enumeration value="Parameter name that this 
                                      FieldBind maps to" />
             </xs:restriction>
           </xs:simpleType>
         </xs:attribute>
         <xs:attribute name="OperatorTypeFrom">
           <xs:simpleType>
             <xs:restriction base="xs:string">
               <xs:enumeration value="Parameter that an Operator 
                                      derives its type from" />
             </xs:restriction>
           </xs:simpleType>
         </xs:attribute>
         <xs:attribute name="TypeFrom">
           <xs:simpleType>
             <xs:restriction base="xs:string">
               <xs:enumeration value="Parameter that non-
                                      Operator derives its type 
                                      from" />
             </xs:restriction>
           </xs:simpleType>
          </xs:attribute>
          <xs:attribute name="Function" type="xs:boolean" />
            <xs:attribute name="Value">
              <xs:simpleType>
                <xs:restriction base="xs:string">
                  <xs:enumeration value="Reserved for future use" />
                </xs:restriction>
              </xs:simpleType>
            </xs:attribute>
            <xs:attribute name="DesignerType">
              <xs:simpleType>
                <xs:restriction base="xs:string">
                  <xs:enumeration value="Bool" />
                  <xs:enumeration value="ChooseDoclibItem" />
                  <xs:enumeration value="ChooseListItem" />
                  <xs:enumeration value="CreateListItem" />
                  <xs:enumeration value="Date" />
                  <xs:enumeration value="Dropdown" />
                  <xs:enumeration value="Email" />
                  <xs:enumeration value="fieldNames" />
                  <xs:enumeration value="float" />
                  <xs:enumeration value="hyperlink" />
                  <xs:enumeration value="Integer" />
                  <xs:enumeration value="ListNames" />
                  <xs:enumeration value="Operator" />
                  <xs:enumeration value="ParameterNames" />
                  <xs:enumeration value="Person" />
                  <xs:enumeration value="SinglePerson" />
                  <xs:enumeration value="stringbuilder" />
                  <xs:enumeration value="Survey" />
                  <xs:enumeration value="Text" />
                  <xs:enumeration value="TextArea" />
                  <xs:enumeration value="UpdateListItem" />
                  <xs:enumeration value="writablefieldNames" />
                </xs:restriction>
              </xs:simpleType>
            </xs:attribute>
            <xs:attribute name="Id">
              <xs:simpleType>
                <xs:restriction base="xs:string">
                  <xs:enumeration value="Unique positive Integer" />
                </xs:restriction>
              </xs:simpleType>
            </xs:attribute>
            <xs:attribute name="Text">
              <xs:simpleType>
                <xs:restriction base="xs:string">
                  <xs:enumeration value="Text to be displayed 
                                         as a hyperlink" />
                </xs:restriction>
              </xs:simpleType>
            </xs:attribute>
          </xs:complexType>
        </xs:element>
      </xs:sequence>
      <xs:attribute name="Sentence">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="Sentence to be displayed to the 
                                   workflow editor" />
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
    </xs:complexType>
    <xs:complexType name="defaultElementType">
      <xs:sequence>
        <xs:element name="RuleDesigner" type="ruleDesignerType" />
      </xs:sequence>
    </xs:complexType>
    <xs:complexType name="parametersType">
      <xs:sequence>
        <xs:element name="Parameter" 
                    minOccurs="0" 
                    maxOccurs="unbounded">
    <xs:complexType>
    <xs:sequence />
      <xs:attribute name="Type" type="xs:string" />
      <xs:attribute name="Direction">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="In" />
            <xs:enumeration value="Out" />
            <xs:enumeration value="Optional" />
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
    <xs:attribute name="Name">
    <xs:simpleType>
      <xs:restriction base="xs:string">
        <xs:enumeration value="Parameter name referred to in 
                               FieldBind Field attribute" />
      </xs:restriction>
    </xs:simpleType>
  </xs:attribute>
  <xs:attribute name="InitialValue">
    <xs:simpleType>
      <xs:restriction base="xs:string">
        <xs:enumeration value="Initial value displayed 
                               by FieldBind control" />
            </xs:restriction>
          </xs:simpleType>
        </xs:attribute>
      </xs:complexType>
    </xs:element>
  </xs:sequence>
</xs:complexType>
  <xs:simpleType name="appliesToTypes">
    <xs:restriction base="xs:string">
      <xs:enumeration value="list" />
      <xs:enumeration value="doclib" />
      <xs:enumeration value="all" />
    </xs:restriction>
  </xs:simpleType>
</xs:schema>

请参阅

任务

.ACTIONS 文件示例

概念

创建声明性、无代码工作流编辑器

默认工作流操作

默认工作流条件

工作流操作架构概述