Přejít na obsah
Skip to main content

Požadavek save-draft

Účel a dopady​

Uloží libovolný XML obsah jako rozpracovaný draft volajícího uživatele pod klíčem dkey a invaliduje jeho cachovaný seznam draftů.

Dostupnost, kontext, oprávnění apod.​

Dostupné každému přihlášenému uživateli, vždy jen pro jeho vlastní drafty – server sám dosazuje ID volajícího uživatele.

XML požadavek (syntax + popis)​

<request>
<save-draft
type="{string}"
dkey="{string}"
label="{string}"
type-label="{string}"
>
{libovolný XML obsah}
</save-draft>
</request>

Parametry a pravidla (atributy, potomci)​

  • type - Typ dokumentu - Volný popisný text, server jej neinterpretuje ani nevaliduje proti XDS. (typ: string; nepovinný)
  • dkey - Klíč draftu - Klíč, pod kterým se draft uloží; omezen na 32 znaků. (typ: string; nepovinný – chybí-li, ukládá se pod prázdný klíč)
  • label - Štítek - Volný popisný text. (typ: string; nepovinný)
  • type-label - Typový štítek - Volný popisný text. (typ: string; nepovinný)

Atribut user uváděný v dosavadní dokumentaci se při zpracování požadavku nečte – draft se vždy ukládá pod ID přihlášeného uživatele.

Potomek: libovolný vnořený XML obsah uzlu <save-draft> je serverem vzat doslovně a uložen jako obsah draftu – konvenčně bývá zabalen do document-set, server to ale nevyžaduje ani nekontroluje.

Význam prázdné a chybějící hodnoty​

Je-li <save-draft> prázdný nebo sebeuzavírající, ukládá se NULL obsah namísto prázdného řetězce (stejný mechanismus jako u save-settings).

Příklady požadavku​

(Zatím bez ověřeného příkladu.)

Zpracování a vedlejší účinky​

Volá se uložená procedura pro zápis draftu; při úspěchu se invaliduje cache seznamu draftů daného uživatele (dotčen get-draft-list).

XML odpověď (syntax + popis)​

<response>
<save-draft
type="ok|error"
user="{number}"
dkey="{string}"
detail="{string}"
/>
</response>

Příklady odpovědi​

(Zatím bez ověřeného příkladu.)

Chyby a reakce​

  • type="error" detail="Draft se nepodarilo ulozit" – uložená procedura vrátila neúspěch.
  • type="error" detail="Pri provadeni doslo k chybe" – selhání na úrovni volání databáze; tato konkrétní chybová větev na rozdíl od ostatních dvou není sebeuzavírající – pokud se před chybou nashromáždily i jiné diagnostické zprávy, mohou se do odpovědi vypsat jako vnořené uzly error.

Atribut chybové odpovědi je detail. Dosavadní dokumentace chybně uváděla kořenový element odpovědi jako get-draft – ve skutečnosti je to save-draft.

Související požadavky​