===== The data file ===== The data file is an XML file containing at least one table, which records can refer to records in other table, like a relational database. The content of such a data file is like this : Table1Field1Data1 Table1Field2Data1 ... Table1Field1Data2 Table1Field2Data2 ... ... Table2Field1Data1 Table2Field2Data1 ... Table2Field1Data2 Table2Field2Data2 ... ... ... The ''dpk:'' prefixed tags or attributes, or the attributes in a ''dpk:'' prefixed tag are keywords recognized by ''dpkq'' and had to be written as is. However, it is possible to use another namespace as ''dpk'' (see ''dpkq %%--%%help'' for details). The ''DefaultRecordLabelTag'' attribute is optional, and allows to specify the tag which value is used for each record as its label. This can be supersede by putting a ''dpk:label'' attribute to the concerned record. The ''dpk:aliases'' tag can be used to define aliases for records or for tables. When the ''label'' attribute is defined, its value is used to generate an alias for each record of the table which label is given in the ''TableLabel'' attribute, or alias with the ''TableAlias'' attribute. The ''label'' attribute can contain following markers (and should, at least, contain the ''%RI%'' or ''%RL%'' marker): * ''%RI%'': index of the record, * ''%RL%'': label of the record, * ''%TI%'': index of the table, * ''%TL%'': label of the table, * ''%%%%%%'': the ''%'' character. You can specify an alias for a table with the ''dpk:alias'' tag (which have to be enclosed by a ''dpk:aliases'' tag). The ''label'' attribute specifies the alias label, the ''TableLabel'' attribute the label of the table to which the alias is affected. The same ''dpk:alias'' tag can be used to explicitly specify a record alias, or supersede record aliases defined with the ''dpk:aliases'' tag. The ''label'' attribute contains the record alias label, and the table owning the record has to be specified by its label or alias by defining a ''TableLabel'' attribute or a ''TableAlias'' attribute. The table related attribute is not needed if the table is specified by its label or alias in the enclosing ''dpk:aliases'' tag. A ''dpk:table'' can contain several (or no) ''dpk:aliases'' tags, which can contain several (or no) ''dpk:alias'' tag. In addition of the optional ''dpk:label'' attribute, each record can have a ''dpk:Handling'' attribute, which can contain following values : * ''Skip'' : the record is skipped, i. e. never picked, * ''Ignore'' : the record is ignored, as it does not exists. You can insert in a record the content of the record of another table by using the ''dpk:insert'' tag. The record is specified by its alias with the ''RecordAlias'' attribute, or by its label by the ''RecordLabel'' attribute. When using this latter, you have to specify the owning table by its label or alias by defining the ''TableLabel'' attribute, or the ''TableAliase'' attribute. There can be several (or no) ''dpk:insert'' tag in a record.