Popis souboru nastavení transfomace settings.mxl
Popis možného obsahu souboru settings.mxl s nastavením pro transformační procesy:
<action-steps - kmenový tag;
notes="{#string}" - popis toho, co transformace provádí;
tf-name="{#string}" - název akce (znaky angl. abecedy, číslice a podtržítka);
version="{#string}" - build string identifikující verzi (datum, čas, kód a id uživatele), zároveň reprezentuje podsložku buildu v podsložce akce;
label="{#string}" - název transformace ve formě pro uživatele;
>
<action-step - krok transformace (zadávací, prováděcí nebo obojí - dle atributů input-only a input-and-apply);
label="{#string}" - název kroku ve formě pro uživatele;
notes="{#string}" - popis kroku transformace; pokud jde o zadání proměnné, zobrazuje se uživateli transformace;
input-only="true|false" - říká, zda jde pouze o zadávací krok (zadání hodnoty dotazem uživatele či načtením ze zprávy);
input-and-apply="true|false" - říká, zda jde o kombinovaný krok, tedy zadávací a zároveň transformační; v nastaveních by se neměl vyskytnout rozpor typu (@input-only='true' and @input-and-apply='false') a pokud ano, má input-only vyšší prioritu - tj. aby proběhla transformace, nesmí existovat nastavení @input-only='true';
var-name="{#name} - jméno proměnné, která má být krokem získána (od uživatele či načtením ze zprávy); využito pouze při zadávacím kroku;
d-type="text|date|time|numb|decn|bool|area|doct|fatt|file" - základní datový typ zadávané proměnné; využito pouze při zadávacím kroku;
temp-name="{#file-name}" - jméno souboru šablony uložené ve složce transformace, která má být pro vlastní transformaci vstupu použita (např. temp.xsl);
form-temp-name="{#file-name}" - jméno souboru šablony uložené ve složce transformace, která má být použita pro transformaci vstupu v prostředí formuláře (např. form-temp.xsl), není-li zadána nebo neběží-li transformace za formulářem, použije se jméno z @temp-name;
save-as="xml|text" - určuje metodu, kterou má být transformace provedena (xml = transformNodeToObject; text = transformNode);
use-in-form="true|false" - indikuje při běhu v prostředí formuláře, že výsledek má být použit jako nové podkladové XML formuláře (true možné pouze při save-as='xml');
sent-to-server="true|false" - indikuje, zda výsledek má být odeslán jako požadavek na server (true možné pouze při save-as='xml');
text-is-error="true|false" - pokud jde o transformaci do textu (@save-as='text'), pak je dotazován tento atribut - je-li true, pak pokud existuje neprázdný výstupní řetězec, je chápán jako popis chyby pro zobrazení uživateli a jako podnět pro přerušení transformace;
skip-empty="true|false" - pokud jde o transformaci do xml (@save-as='xml'), která má být odeslána na server (@sent-to-server='true'), pak je kontrolován výskyt prázdného uzlu save-document či prázdného uzlu [save-draft/]document-set a je-li takový nalezen, je transformace přerušena, pokud tato zásada není vypnuta nastavením @skip-empty='true';
done="false" - pomocný atribut editoru, pro chod transformace nepotřebný;
>
<apply-to - určuje jednu část vstupního xml (jeden potomek kmenového uzlu /input )
type="query-result|pdk-list|last-in|last-out|user-detail|system-query|file|doc-refs" - udává zdroj vstupních xml dat;
query-name="{#xml-name}" - v případě vstupu typu query-result udává hodnotu, která má být nastavena do atributu type uzlu select v požadavku sql-query, který získává podkladová data transformace;
in-file-name="{#file-name}" - v případě vstupu typu file určuje jméno vstupního XML souboru umístěného ve složce work webového sídla, který má být jako uzel načten do vstupního XML;
file-required="true|false" - v případě vstupu typu file udává, zda je soubor pro tranformaci povinný a pokud ano, neexistence platného XML způsobí zastavení transformace;
open-doc-set="{#doc-type}" - pokud je vstup typu query-result nebo pdk-list, pak výskyt neprázdného atributu open-doc-set způsobí načtení celých instancí dokumentů uvedených typů dle uvedených klíčů; atribut může obsahovat i více typů, které jsou pro otevření z jednoho vstupního uzlu požadovány (open-doc-set="typ_a[|typ_b[|typ_c...]]"); otevřením je míněno získání instance dané klíčem z atributu, který je pojmenován v pdk-name, pomocí get-document a vloží je do vstupu jako jeden document-set s atributem type='pdk-list'|{#query-name};
pdk-name="{#attribut-name}" - pokud je uveden neprázdný open-doc-set, je uveden i pdk-name se jménem atributu obsahujícího klíč požadované instance (pdk-name="att-name-a[|att-name-b[|att-name-c...]]");
pdk-list-var="{#name}" - nevyužíváno, u nových nastavení se již nevyskytuje;
/>
</action-step>
</action-steps>