Docflow. Schema

The Schema node is comprised of the following nodes:

  • DocumentLinks: provides links to other Schemas or other documents. They can be used for creating subordinate documents.
  • Properties: provides access to the Document Properties collection.
  • Tasks: provides access to the Task Groups or links to Groups in the repository templates.


The DocumentLinks node provides access to the collection of links to other documents (and Schemas). If current Schema needs a subordinate document, then the appropriate link must be added to the DocumentLinks node.

Any item of the DocumentLinks node exposes two properties:

  • Document: specifies the Document type for the document to be created.
  • DocumentSchema: specifies the Schema for the document type.



The Properties node contains all document details (Document Properties), that will be used in the described Schema. The Document Properties are displayed in the Properties tab of the Schema pane in the UI. There are three types of document details:


  • Property: simple document detail.
  • BindingProperty: reference to the document field.
  • CollectionProperty: collection of document details.


The simple document detail exposes the following properties:

  • IsCalculated: a boolean value indicating whether or not the property is calculated
  • IsInput: a boolean value; if it is True, then the user is prompted to input a value when creating a document.
  • IsRequired: a boolean value, if it is True, then the value must be set (as a mandatory requirement).
  • ReadOnly: a boolean value indicating whether the user can edit the value or not.
  • Value: specifies the default value or expression to calculate the default value.
  • Term: specifies the value type, it has effect on the displaying or editing the value.

The figure below demonstrates a simple document detail node in the Application Model.


Binding Property

The BindingProperty node exposes a number of properties that have predefined values. They are listed below:

  •   IsCalculated is True.
  •   IsInput is False.
  •   IsRequired is False.
  •   Value is always a document field name.

Additionally the BindingProperty node exposes the FieldName property. It specifies the document field name that is referred in the BindingProperty.


Collection Property

The CollectionProperty node exposes a number of properties that predefined values. They are listed below:

  •   IsCalculated is True.
  •   IsInput is False.
  •   IsRequired is False.
  •   ReadOnly is True.
  •   Value is a document field name.

Additionally the CollectionProperty node exposes the following properties:

  • CollectionName: specifies CollectionProperty name in the document.
  • FiledInCollection: specifies the field in the objects in the collection, that is used to create a new collection.
  • ValueExpression: an expression that can be applied to objects in the collection to calculate a new value.



Task Groups and Links are added to the Tasks node.



The Link is a reference to a Task Group that was created and stored in the Docflow|SchemasRepository node. It  allows to use the repository template, to reuse the Task Group in various Sсhemas.

The Link node exposes the following properties:

  • Index: specifies the task group index.
  • RepositoryItem: specifies the template.



The Group node is comprised of the LocalProperties and Tasks subnodes.


LocalProperties является коллекцией ссылок на реквизиты Регламента. Значения этих реквизитов в группе работ могут быть отличными от таких же реквизитов документа.

The LocalProperties node contains a collection of links to Document Properties (document details). Values in the LocalProperties collection can differ from the value of the respective Document Property.

Each item of the LocalProperties node exposes the Property property, which specifies a link to some Document Property.

Each specific Task also has its own LocalProperties node.

The Tasks node contains the list of tasks that must be completed, as a group. Specifically, the Tasks node is a collection of Tasks, Task Groups, and links to templates.


The types of Task that can be included in the Tasks node, are explained in the Tasks topic.

The Tasks Group node exposes the following specific properties:

  • TasksGroupName: specifies the name of the Tasks Group object
  • TasksGroupType: specifies the type of the Tasks Group. It can be sequential, parallel, or rollback.

The Tasks Group and the certain Task have some common properties. These common properties are explained in theTasks topic.