In a comment of this question,David Carlisle wrote:
[l3keys2e] should be considerd legacy now, the new built in option code is based on the same core expl3 code but extended and improved so hopefully all packages using l3keys2e will switch
I learnt the l3keys2e approach last year from a few questions on this site. Now that there is a new approach, is there some guides or examples demonstrating how to make the transition from the legacy l3keys2e approach to the new expl3 approach?

l3keysand a dedicated command instead. Never seen this "officially", or even if the comment was meant to be somewhat "tongue-in-cheek". Still something to think about, it makes sense. (I'd love to see an update onclsguidewith this kind of thing, it would have spared me some tough learning. ;-) – gusbrs Jun 22 '22 at 10:08\DeclareKeys[mypkg], and then use the\ProcessKeyOptionsyou mentioned. Is it the same to use\keys_define:nn { mypkg }and then\ProcessKeyOptionsor\ProcessKeyOptions [ mypkg ]? – Jinwen Jun 22 '22 at 10:09clsguide. – gusbrs Jun 22 '22 at 16:49