Given this limitation on try/catch, seems like the better design for my code would be to return a map with result and errors and check for errors in the updating code.
Cheers,
E.
_____________________________________________ Eliot Kimber Sr Staff Content Engineer O: 512 554 9368 M: 512 554 9368 servicenow.comhttps://www.servicenow.com LinkedInhttps://www.linkedin.com/company/servicenow | Twitterhttps://twitter.com/servicenow | YouTubehttps://www.youtube.com/user/servicenowinc | Facebookhttps://www.facebook.com/servicenow
From: Christian Grün christian.gruen@gmail.com Date: Monday, August 21, 2023 at 9:47 AM To: Eliot Kimber eliot.kimber@servicenow.com Cc: BaseX basex-talk@mailman.uni-konstanz.de Subject: Re: [basex-talk] "Expressions must be all updating" puzzle [External Email]
________________________________ I guess my confusion is why this requirement is imposed in the context of a let expression? It cannot be the case that let expressions must be updating in the context of an updating function. True, there are different checks: The inner check isn't aware of the let context, it merely matches the (non)updating statuses of try and catch. The outer check ensures that the expression defined in the let clause is not updating.
You can disable the strict W3 XQUF semantics by enabling the BaseX-specific MIXUPDATES option.