Import skončí chybou parsera:
The value of attribute "filter" associated with an element type "faktura-vydana" must not contain the '<' character.
Chyba nepochádza z ABRA Flexi, ale už od XML parsera — znak < nesmie byť v hodnote atribútu uvedený priamo, pretože by v XML začínal nový element.
V XML: entity
V atribútoch aj v texte elementov sa znaky so zvláštnym významom zapisujú entitami:
Znak | Zápis v XML |
|
|
|
|
|
|
|
|
Filter v importnom XML potom vyzerá takto:
<winstrom version="1.0">
<faktura-vydana filter="id < 100">
<popis>hromadná změna</popis>
</faktura-vydana>
</winstrom>
V adrese: percentá
V URL sa naopak entity nepoužívajú — tam sa kóduje percentovým zápisom, teda %3C namiesto < a %20 namiesto medzery. Sú to dva rôzne mechanizmy, ktoré sa nezamieňajú:
URL: /c/{firma}/faktura-vydana/(datSplat%3Enow()).xml
XML: <faktura-vydana filter="datSplat > now()">
💡 Kódovanie si nemusíte robiť ručne — knižnice na prácu s XML entity doplnia samy a pre URL má väčšina jazykov hotovú funkciu. Ručné skladanie reťazcov je najčastejší zdroj týchto chýb.
