WorkflowLab has two unique types of data that must be represented. The first is the workflow data. This is the data that represents a specific workflow that users can create, modify, and open. A workflow is represented by XML, stored as a file on the user's operating system with a .wfx extension. To architect the XML schema, the team needed to consider all the various parts of a workflow. This includes concepts such as rows, tasks, tools, comments, and links. Once the XML schema was defined, the development team could create a code base to write and read the file format.
The second architecture task for data was to create XML schemas for application-specific content. The goal was to create XML files that represented various types of content displayed within WorkflowLab but not modifiable by the user. By externalizing the content, the team could easily update the content from one release to the next. Content included XML files for Adobe tools and custom tool categories, all of which are exposed to the user when creating tasks for a workflow.