Comparision between "cts.values" and "cts.elementValues"

208 Views Asked by At

I can see that cts.values and cts.elementValues has similar use.

In that case, what is the difference between both of them in terms of performance? Which is more efficient?

1

There are 1 best solutions below

1
On

They should perform the same. Both of those functions provide a way to query lexicons (range indexes).

With cts.values(), the first parameter is a cts.reference[]. So, that means that you can provide any of the cts.reference types: cts.elementReference, cts.elementAttributeReference, cts.fieldReference, cts.jsonPropertyReference, cts.pathReference, as well as cts.collectionReference and cts.uriReference.

With the cts.elementValues() query, the first parameter is an xs.QName[] for the element(s), rather than a cts.reference[].

These other lexicon values functions have a similar difference in the parameters, but are also effectively a different way of invoking cts.values():