static joins vs dynamic joins (XQuery)

Hello everyone

I have a question regarding static joins and dynamic ones.

I know that static joins are implemented using the objRef in TSD4 schemas, and that dynamic joins are implemented using XQuery.

The static joins interest me and I guess I’d like to use a hybrid of both, depending on the scenario.

However, I wonder just how does the static joins affect performance. Specifically: If I make a query (XQuery or X-Query) to a node that is the parent node of a objRef node, will Tamino have executeds the join?

Even if I am just retrieving and ID of the parent node?
When exactly will the join occur?

If the joins occur pretty much all the time, I would rather use XQuery instead, and have the control when to do the join and when not.

Thank you for clarifying


Hello Peter,
the objectReference mapping (static join) has no performance advantages compared to the XQuery dynamic joins, as it is only evaluated at runtime. It was of help for X-Query before
the join capabilities of XQuery existed.
As it is combined with some very special Tamino
specific XPath semantics (e.g. trailing /)
together with several restrictions it is not
supported by XQuery 4.

Best regards
Tamino R&D