XDS příklad

V našem příkladu vytvoříme ve skupině marketing dokument dopis, který bude marketingovému oddělení sloužit pro komunikaci se subjekty (zákazníci, dodavatelé, partneři) resp. s jejich zástupci.

<DocumentDef>
<label>Dopis</label>
<name>dopis</name>
<group>marketing</group>
<content>
<area label="Příjemce dopisu" name="prijemce_dopisu" short="prij" source="foreign:zastupce_subjektu/jmena_a_adresa"/>
<area label="Hlavička dopisu" name="hlavicka_dopisu" short="hldp">
<element label="Datum" name="datum" short="dtm" based-on="datum"/>
<element label="Věc" name="vec" based-on="kratky_text"/>
<element label="Druh dopisu" name="druh_dopisu" short="drdp" appear-if="input" based-on="seznam">
<select>
<option value="inf">Informace pro zákazníka</option>
<option value="blh">Blahopřání, svátky apod.</option>
<option value="ost">Ostatní důvody</option>
</select>
</element>
</area>
<area label="Obsah dopisu" name="obsah_dopisu" short="obs" based-on="telo_dokumentu"/>
</content>
</DocumentDef>

V tomto dokumentu je odkaz na jméno a adresu zástupce subjektu, přičemž nic z těchto informací není ukládáno do zástupce subjektu, ale do dokumentu člověk (kolonky pro jméno zástupce) a do dokumentu subjekt (kolonky pro adresu vč. obchodního jména a označení provozovny). Odkážeme-li v dopise na segmenty s takovým zdrojem, pak vytváříme pomocí dokumentu dopis vazbu druhé úrovně. Je tomu tak i v případě, že bychom v dopise použili mechanismus initial na místo foreign. Jediný rozdíl bude v tom, že pokud bychom chtěli vytvořit ještě další dokument, který by odkazoval na kolonky příjemce dopisu (například příloha dopisu - i když tu by bylo lepší zahrnout přímo do dopisu), tak bychom v případě mechanismu initial u příjemce v dokumentu dopisu vytvořili vazbu 1. úrovně a v případě mechanismu foreign vazbu 3. úrovně.

Je důležité však doplnit, že je možné vytvořit i daleko více úrovní propojení. Systém bude fungovat i s více úrovněmi, ale je to otázka rychlosti a správnosti návrhu. Pokud bude více úrovní, pak z pozice té poslední již nemusí být tolik patrné, že úpravou dokumentu na této pozici se upraví i několik dokumentů na nižších pozicích (mají shodné úložiště). Z logiky aplikace často sama vyplyne potřeba vytvořit na některé úrovni vlastní zdroj a tím i přerušit narůstání počtu úrovní.


XDS příkladDAD příkladu