Požadavek get-key
Rezervace identity
Slouží k získání nové identity a zároveň její rezervace pro pozdější použití.
<request>
<get-key
doc="{string}"
xdsid="{number}"
field="{string}"
/>
</request>
Atributy

doc - Typový název - Název bez mezer a diakritiky s možností pomlček a podrtřítek sloužící pro identifikaci položky.(typ: string)

xdsid - Jedinečný identifikátor segmentu informační struktury v její definici.(typ: number)

field - Typový název - Název bez mezer a diakritiky s možností pomlček a podrtřítek sloužící pro identifikaci položky.(typ: string)
Potomci
Požadavek get-key neobsahuje žádné další elementy, ani žádné jiné číselné či řetězcové hodnoty. Uzel nemá povolen prázdný obsah.
Odpověď
Struktura odpovědi na požadavek get-key vrácená v obálce response:
<response>
<get-key
status="ok|error"
doc="{string}"
value="{string}"
>
<error ... /> ?
</get-key>
</response>
Atributy

status - Obsahuje hodnoty ok nebo error
Možnosti obsahu:
» ok ~ Požadavek proveden bez chyb.
» error ~ Při provádění požadavku došlo k chybě.

doc - Typový název - Název bez mezer a diakritiky s možností pomlček a podrtřítek sloužící pro identifikaci položky.(typ: string)

value - klíč dokumentu - Celočíselný klíč dokumentu nebo řetězec se znakem '#' pro nové instance.(typ: string)
Potomci
Uzel error
Popis uzlu error, který je potomkem uzlu get-key je umístěn v popisu typových uzlů.
Bližší popis viz. error.
Výraz pro identifikaci chyb v odpovědi serveru: get-key[@status='error'] (odkaz na popis detailu: @details).
Další info
Timto pozadavkem si muzes dopredu ziskat identitu, kterou muzes nasledne pouzit pri ukladani dokumentu. Bude to ta identita, kterou bys dostal, kdybys jej v tu chvili ulozil. Ale, lze si zadat pouze o pole identit a to pouze takovych, kde mas (prihlaseny uzivatel) pravo je menit. Nelze si zadat o primarni klice. Pokud si identitu vyzadas, nebude pouzita novym dokumentem, je tedy tvoje. Pokud jej nepouzijes, tak pokud je pole nespojite, vznikne dira. Pokud je pole spojite, pak se casem dira zaplni. Takze si tu identitu neschovavej dlouho (max hodinu). Lepsi by bylo pouzivat tuhle funkci pouze u poli, ktere jsou unikatni, aby nedoslo k nejakemu problemu - identita se nahradi a ty ji pouzijes az pak. Identitu samozrejme musis do prislusneho pole vlozit, nedoplni se sama - pokud ji nevlozis, vygeneruje se nova (proto se testuje pravo do prislusneho pole vkladat). Atributy xdsid a field jsou variantni (ten nebo ten). Lepsi (rychlejsi) je pouzivat XDSID, ale netusim, jestli jej mas k dispozici. Timto zpusobem lze ziskat i identitu pole v podrizene opakovane oblasti, nebo v cizi oblasti.