Skip to content

atom-in-atom XSL transformation exceeds 100ms threshold on large XMIR files #991

Description

@volodya-lombrozo

I'm getting performance warnings when running lints against eo-runtime:

[WARNING] XSL transformation 'atom-in-atom' took 120ms, whereas threshold is 100ms

What happens: The selector //o[eo:atom(.) and o[eo:atom(.)]] calls eo:atom(.) on every <o> in the document and then again on each of their children. eo:atom(.) = exists($o/o[@name=$eo:lambda]) performs a child element lookup each time. The effective cost is O(n × degree), which on large XMIR files with many objects and children exceeds the threshold.

What should happen: The transformation completes within the 100ms threshold for typical XMIR files.

Metadata

Metadata

Labels

bugSomething isn't workinggood-titleThe title was checked and improved by ChatGPT

Type

Fields

No fields configured for Bug.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions