Hello all,
I would like to ask your advice on the best practice to use the IDs in BaseX, somewhat in the classic style of relationships between records in different nodes or documents.
I have not found a simple way to create autoincrement IDs, and indexes generated by BaseX I understand that it's possible to suffer changes in case of optimization actions or database recovery. So I can not count on them.
I try to do it using attributes as unique identifiers in repetitive elements, like:
<products> . . . <product id="123" name="abc" description="xyz"/> <product id="124" name="bbbb" description="xxxxxxx"/>
</products>
<product-template> <product id="" name="" description="" ... /> </product-template>
When adding a new product, I need to calculate the max from products/product/@id, incremented by 1 and replaced with this value (125) the id of the product template. After that, the updated product template should be inserted in the node products. I try to do all this in a single restxq function, in many ways, but fail.
Please give me, first, an general idea of how the problem should be approached in working with BaseX.
Many thanks, Ioan