I'm getting performance warnings when running lints against eo-runtime:
[WARNING] XSL transformation 'compound-name' took 124ms, whereas threshold is 100ms
What happens: The selector //o[@base and @name and not(eo:special(@name)) and eo:compound(@name) and not(eo:idiomatic(@name))] invokes three user-defined XSLT functions per element. eo:compound calls contains() twice and matches(); eo:idiomatic calls starts-with() and ends-with(). On large XMIR files with thousands of named objects the accumulated function-call overhead exceeds the threshold.
What should happen: The transformation completes within the 100ms threshold for typical XMIR files. Inlining the predicate functions or reordering to fail-fast on the cheapest checks first could help.
I'm getting performance warnings when running lints against
eo-runtime:What happens: The selector
//o[@base and @name and not(eo:special(@name)) and eo:compound(@name) and not(eo:idiomatic(@name))]invokes three user-defined XSLT functions per element.eo:compoundcallscontains()twice andmatches();eo:idiomaticcallsstarts-with()andends-with(). On large XMIR files with thousands of named objects the accumulated function-call overhead exceeds the threshold.What should happen: The transformation completes within the 100ms threshold for typical XMIR files. Inlining the predicate functions or reordering to fail-fast on the cheapest checks first could help.