I'm getting performance warnings when running lints against eo-runtime:
[WARNING] XSL transformation 'anonymous-objects-inside-formation' took 130ms, whereas threshold is 100ms
What happens: The selector //o[eo:abstract(.) and o[not(@name)]] calls eo:abstract(.) (a user-defined function equivalent to not(exists(@base))) on every <o> element, then checks all their children for not(@name). On large XMIR files with many objects the per-element function call overhead and child scans push the transformation over the threshold.
What should happen: The transformation completes within the 100ms threshold. Inlining eo:abstract as not(@base) and using a cheaper child check would reduce overhead.
I'm getting performance warnings when running lints against
eo-runtime:What happens: The selector
//o[eo:abstract(.) and o[not(@name)]]callseo:abstract(.)(a user-defined function equivalent tonot(exists(@base))) on every<o>element, then checks all their children fornot(@name). On large XMIR files with many objects the per-element function call overhead and child scans push the transformation over the threshold.What should happen: The transformation completes within the 100ms threshold. Inlining
eo:abstractasnot(@base)and using a cheaper child check would reduce overhead.