Hi, I have been implementing more queries that use the attribute indexes lately. However a lot of my queries require getting values to offer selectable items in user forms (GUI). I have not found a good way to do that. For example, I tried changing : let $account-types := distinct-values(db:open($db-name)//account/@type) to let $account-types := distinct-values(db:attribute-range($db-name, 'a', 'zzzzzzzzzz', 'type')[parent::*/name() = 'account']) I looked for a function that would be more like let $account-types := db:attribute-values($db-name, 'type')[parent::*/name() = 'account] I'm not getting any performance improvements with the db:attribute-range compared to the regular db:open($db-name). and I am assuming that the issue is that since I provide a range, it has to check every value individually as opposed to just grabbing everything in the named attribute. Any chance we can get values at some point? Or do you have a suggestion to improve this type of query? -- France Baril Architecte documentaire / Documentation architect france.baril@architextus.com