Špecifikácia XML dát
Dáta XML súboru je tá časť v štruktúre XML súboru, ktorá obsahuje konfiguráciu objektov systému D2000 alebo jej časti.
Rezervované sekcie XML dát
REFERENCES - obsahuje štruktúry reprezentujúce objektové a stĺpcové referencie objektu
CFGRECORDS - obsahuje štruktúry reprezentujúce dáta objektu
MEMBEROFLOGGROUP - obsahuje za sebou uvedené member elementy, ktoré určujú, do akej logickej skupiny daný objekt patrí
MEMBEROFRESGROUP - obsahuje za sebou uvedené member elementy, ktoré určujú, do akej skupiny objektov daný objekt patrí
CRC - obsahuje MD5 hash dát
OBJLIFELOGS - obsahuje za sebou uvedené logy "života objektu"
Na získanie podrobných informácií o tom, ktorými štruktúrami sú definované objekty systému D2000, aké atribúty tieto štruktúry obsahujú, aké sú typy hodnôt týchto atribútov a aké hodnoty môžu tieto atribúty nadobúdať je možné použiť program pre výpis aktuálnej štruktúry. Súčasne tento výpis obsahuje nepodporované objekty a vymenované typy.
Rezervovaná sekcia REFERENCES
Obsah sekcie z príkladu XML súboru:
<HOBJ_REF>
<uid>A25DED0E4DA94B4895A119370E3AF4FB</uid>
<name>SV.Limits</name>
<objType>D2RECORD</objType>
<valType>Rec</valType>
</HOBJ_REF>
<COL_REF>
<col_idx>1</col_idx>
<col_name>VHL</col_name>
<col_valType>Int</col_valType>
</COL_REF>
<HOBJ_REF>
<uid>USER_VAR</uid>
<name>USER_VAR</name>
<objType>SYSTEM</objType>
<valType>NAN</valType>
</HOBJ_REF>
Obsahuje štruktúry:
HOBJ_REF reprezentujúce objektové referencie objektu
COL_REF reprezentujúce stĺpcové referencie objektu (objekt ich obsahuje, ak je objekt definícia štruktúry alebo na ňu odkazuje)
Popis vlastností objektových referencií:
každá objektová referencia musí mať nastavený minimálne atribút name
atribúty uid, objType a valType v objektovej referencii sú nepovinné
ak je atribút uid v objektovej referencii nastavený, pri párovaní objektových referencií má prioritu pred atribútom name
Popis vlastností stĺpcových referencií:
stĺpcové referencie musia nasledovať za príslušnou objektovou referenciou
každá stĺpcová referencia musí mať nastavený minimálne atribút col_name
atribúty col_idx a col_valType v stĺpcovej referencii sú nepovinné
ak je atribút col_idx v stĺpcovej referencii nastavený, ma párovaní stĺpcových referencií prioritu pred atribútom col_name
Rezervovaná sekcia CFGRECORDS
Obsah sekcie z príkladu XML súboru:
<TObjItemData>
<Id>0</Id>
<Name>U.TimeSlice</Name>
<Descript>Time Slice</Descript>
<Typ>USER_VAR</Typ>
<ParentId>USER_VAR</ParentId>
<Value_Type>TmR</Value_Type>
<CreateTime>08.10.2009 08:10:31.366</CreateTime>
<ModifyTime>08.10.2009 08:18:02.938</ModifyTime>
...
<uuid>5CB809E9342B7A46BD790A8C7D14C69E</uuid>
</TObjItemData>
<tUserVarData_Full>
<tUserVarData>
<MANUAL>True</MANUAL>
<MANUAL_VAL/>
<FLAGS/>
<VALUE_TIME>08.10.2009 08:10:31.379</VALUE_TIME>
<MONITOR>False</MONITOR>
<SAVE_VALUE>True</SAVE_VALUE>
</tUserVarData>
<startVal/>
</tUserVarData_Full>
V tejto sekcii sa musí vždy vyskytovať štruktúra TObjItemData (len jedenkrát) a to hneď na jej začiatku. Jednoznačne identifikuje objekt, ktorého konfigurácia je uložená v XML súbore. Za touto štruktúrou nasledujú štruktúry, ktorých počet a pomenovanie je závislé od konkrétneho typu objektu. Napríklad vyššie uvedený objekt je typu USER_VAR obsahuje ešte štruktúru s názvom tUserVarData_Full.
Popis vlastností identifikačnej šturktúry:
atribút Id reprezentuje Id objektu (údaj, ktorý ma význam pri operácii XML Import)
atribút Name musí byť vždy zadaný
atribút uuid, ak je zadaný, má pri párovaní objektov prioritu pred atribútom Name
Rezervovaná sekcia MEMBEROFLOGGROUP
Obsah sekcie z príkladu XML súboru:
<member>SELT\CD8FD25EF8A690341B111F5274CDB5AB</member>
Popis vlastností hodnoty memeber:
reprezentuje zaradenie objektov do logických skupín
musí obsahovať názov logickej skupiny (pred znakom '\')
môže obsahovať aj uid logickej skupiny (za znakom '\')
Poznámka: Pri operácii XML Import vplýva táto hodnota na členstvo objektu v jednotlivých logických skupinách.
Rezervovaná sekcia MEMBEROFRESGROUP
Obsah sekcie z príkladu XML súboru:
<member>Home_s\04CB44144B2CD8E46955D846D30B0F72</member>
Popis vlastností hodnoty memeber:
reprezentuje zaradenie objektov do skupín objektov
musí obsahovať názov skupiny objektov (pred znakom '\')
môže obsahovať aj uid skupiny objektov (za znakom '\')
ak je názov skupiny objektov uzavretý v '[' a ']', objekt bol pridaný do skupiny s potomkami
Rezervovaná sekcia CRC
Obsah sekcie z príkladu XML súboru:
a7a8bda021932a3547e6553cb8980273
Hodnota CRC predstavuje MD5 hash vytvorený z obsahu XML súboru. Zahŕňa dáta od <ROOT> elementu (včítane <ROOT> elementu) až po riadok pred CRC sekciou (vrátane znakov CR, LF alebo oboch). Vyhodnotenie CRC hodnoty má význam pre XML Import a XML Repository.
Vyhodnotenie CRC hodnoty:
sekcia sa v dátach nachádza
MD5 hash zodpovedá tejto hodnote - dáta neboli modifikované
MD5 hash nezodpovedá tejto hodnote - dáta boli modifikované
sekcia sa v dátach nenachádza - nedá sa určiť, či boli dáta modifikované
Vyhodnotenie tejto CRC hodnoty má zásadný vplyv na platnosť atribútu ModifyTime štruktúry TObjItemData v rezervovanej sekcii <CRGRECORDS>, čo sa prejaví pri operácii XML Import nasledovne:
ak je CRC hodnota platná, potom je čas modifikácie objektu nastavený na hodnotu atribútu ModifyTime z XML súboru
ak je CRC hodnota neplatná, potom je čas modifikácie objektu nastavený na čas XML súboru alebo na aktuálny čas, ak bol čas XML súboru nedefinovaný
ak bola CRC hodnota neplatná, alebo sa nenachádzala v XML súbore a pred operáciou XML Import je čas určený na zmenu rovný pôvodnému času modifikácie objektu, zmení import tento čas modifikácie na aktuálny čas