references in XPath not loaded via XQuery

I have a tsd:nodeRef in the Schema and if i make a normal X-Query via TII direct to the referenced object or a subnode it shows correctly, but i’ve to load the full tree with all referenced objects via an xquery to display in the xapplication.


X-Application Version: 4.1.1
Tamino Version :
Platform : Linux
WebContainer : Tomcat 4.1.18, Struts
JDK Version : 1.4.1_02-b06


Since I never used the nodeRef within my schemas, I asked one of our Tamino XQuery experts about the support of this schema feature.

His answer was that nodeRef is supported only by X-Query. XQuery has the possibility of building joins independed of schema definitions instead.

Therefore, I think there is currently no other way than to rebuild the node references with XQuery joins or to switch to X-Query for your X-Application.



I was under the impression from the Tamino documentation (section: Advanced Concepts/Document Composition/Composition by object refence) that Tamino supports two methods of document composition.
1. Dynamic Joins using X-Query4 and
2. Static Joins using composition by "object reference"

therefore if a document is already staticly composed in the database it shouldnt matter which query language is used to retrive the document since the pointer to the remote document should be derefenced at the database level not by the query language.
atleast thats what i would think.

could you please find out for sure if this is realy the case. My project heavily depends on being able to compose documents statically through static object refences.



Hello Joey,
I can confirm that Tamino XQuery does not
interpret the object reference feature in the
Tamino schema definition.
A reason is that the object reference support
in X-Query contains very special semantics like
that of a trailing slash, which is not compatible to the standard XQuery semantic.

I do not completely understand your heavy
dependance on that static object reference.
The workaround to formulate a dynamic join in
each query just means that the anyway needed query formulation is more complex. You could even formulate the dynamic join formulation as an isolated sub-expression in brackets in your query.
If you need the full functionality of the static join you can use queries like in
However if your query needs only parts of the static join much simpler formulations are possible.

Best regards

Best regards