Avg. Rating 5.0

Problem

There are no schemas to assist in creating custom or generated workflow documents for WorkflowLab.

Solution

Use this XSD schema to create custom or generated workflows for WorkflowLab Beta 2.

Detailed explanation

The WorkflowLab XSD Schema contains the ruleset for defining a properly formed WFX file for use in WorkflowLab Beta 2. This includes the addition of new Beta 2 features such as:

  • Discipline Map Support
  • Local and Project Links
  • Rows
  • Iterative Workflow Items

For questions or comments, please post to the WorkflowLab forum (  http://forums.adobe.com/community/labs/workflowlab/), or comment on this post:

Contents of workflowLabWFX.xsd:

<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
  <xs:element name="wfx">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="description"/>
        <xs:element ref="duration"/>
        <xs:element ref="categories"/>
        <xs:element ref="customTools"/>
        <xs:element ref="links"/>
        <xs:element ref="rows"/>
      </xs:sequence>
      <xs:attribute name="creationDate" use="required"/>
      <xs:attribute name="name" use="required"/>
      <xs:attribute name="version" use="required" type="xs:NMTOKEN"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="description" type="xs:string"/>
  <xs:element name="duration">
    <xs:complexType>
      <xs:attribute name="spacing" use="required" type="xs:NCName"/>
      <xs:attribute name="type" use="required" type="xs:NCName"/>
      <xs:attribute name="unit" use="required" type="xs:NCName"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="categories">
    <xs:complexType>
      <xs:sequence>
        <xs:element maxOccurs="unbounded" ref="category"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="category">
    <xs:complexType>
      <xs:attribute name="color" use="required" type="xs:NMTOKEN"/>
      <xs:attribute name="id" use="required" type="xs:integer"/>
      <xs:attribute name="label" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="customTools">
    <xs:complexType>
      <xs:sequence>
        <xs:element maxOccurs="unbounded" ref="tool"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="rows">
    <xs:complexType>
      <xs:sequence>
        <xs:element maxOccurs="unbounded" ref="row" minOccurs="0"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="row">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="tasks" maxOccurs="1"/>
      </xs:sequence>
      <xs:attribute name="label" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="tasks">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="task" maxOccurs="unbounded"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="task">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="comments"/>
        <xs:element ref="links"/>
        <xs:element ref="tools"/>
        <xs:element minOccurs="0" ref="disciplineMap"/>
      </xs:sequence>
      <xs:attribute name="category" use="required" type="xs:integer"/>
      <xs:attribute name="name" use="required"/>
      <xs:attribute name="start" use="required" type="xs:integer"/>
      <xs:attribute name="status" use="required" type="xs:NCName"/>
      <xs:attribute name="width" use="required" type="xs:integer"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="comments">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="comment"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="comment" type="xs:string"/>
  <xs:element name="tools">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" maxOccurs="unbounded" ref="tool"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="disciplineMap">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="softwareArchitecture"/>
        <xs:element ref="scriptingAndProgramming"/>
        <xs:element ref="dataOperationsAndModels"/>
        <xs:element ref="contentAndStructure"/>
        <xs:element ref="motionAndAudioVisual"/>
        <xs:element ref="interactionDesign"/>
        <xs:element ref="layoutDesign"/>
        <xs:element ref="visualDesign"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="softwareArchitecture">
    <xs:complexType>
      <xs:attribute name="level" use="required" type="xs:NCName"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="scriptingAndProgramming">
    <xs:complexType>
      <xs:attribute name="level" use="required" type="xs:NCName"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="dataOperationsAndModels">
    <xs:complexType>
      <xs:attribute name="level" use="required" type="xs:NCName"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="contentAndStructure">
    <xs:complexType>
      <xs:attribute name="level" use="required" type="xs:NCName"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="motionAndAudioVisual">
    <xs:complexType>
      <xs:attribute name="level" use="required" type="xs:NCName"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="interactionDesign">
    <xs:complexType>
      <xs:attribute name="level" use="required" type="xs:NCName"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="layoutDesign">
    <xs:complexType>
      <xs:attribute name="level" use="required" type="xs:NCName"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="visualDesign">
    <xs:complexType>
      <xs:attribute name="level" use="required" type="xs:NCName"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="tool">
    <xs:complexType>
      <xs:attribute name="category" use="required"/>
      <xs:attribute name="icon" use="required" type="xs:NCName"/>
      <xs:attribute name="id" use="required" type="xs:integer"/>
      <xs:attribute name="link" type="xs:anyURI"/>
      <xs:attribute name="name" use="required"/>
      <xs:attribute name="type" use="required" type="xs:NCName"/>
      <xs:attribute name="version" type="xs:decimal"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="links">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" maxOccurs="unbounded" ref="link"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="link">
    <xs:complexType>
      <xs:attribute name="id" use="required" type="xs:integer"/>
      <xs:attribute name="isCopy" type="xs:boolean"/>
      <xs:attribute name="isLocal" type="xs:boolean"/>
      <xs:attribute name="name"/>
      <xs:attribute name="path" type="xs:anyURI"/>
    </xs:complexType>
  </xs:element>
</xs:schema>



+
This work is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License. Permissions beyond the scope of this license, pertaining to the examples of code included within this work are available at Adobe.

Report abuse

Related recipes