In the documentation for XQJ I read that the Full command is used only for the XQJ api as provided by charles Foster and that the use is restricted to XQuery 3.0 Wouldn't it be better to just skip this command. If not, I will code that the Full command returns the server response (with the \ff bytes deleted). Ben Op 10-05-2026 om 22:18 schreef Ben Engbers via BaseX-Talk:
Hi,
When using my library, these lines of code inserts the XML in the testdatabase: Session.Add("Test.xml", "<root/>"); Session.Command("set mixupdates true"); Q_Object = Session.Query( "insert nodes (<Line_1 line='1'>Content 1</Line_1>, <Line_2 line='2'>Content 2</Line_2>) " "into doc('/TestCppClient/Test.xml')/root"); Q_Object -> Execute();
First problem solved! But a new problem was introduced.
I use the 'Full' command to return the reslts from a query. Q_Object = Session.Query("'/TestCppClient/Test.xml'"); Q_Object -> Full(); cout << Session.getResultString(); ==.<Line_1 line="1">Content 1</Line_1>
But when I inspect the response from the server when executing the query with the 'Full' command, I can see that it contains the following content: /TestCppClient/Test.xml�|<Line_1 line="1">Content 1</Line_1>| /TestCppClient/Test.xml�|<Line_2 line="2">Content 2</Line_2>||| The '|' are inserted by my debug_dump function. A second function splits the original vector of bytes into a vector of vector of bytes. The '/TestCppClient/Test.xml' parts are elements 0,2, .. of the splitted vector. |<Line_1 line="1">Content 1</Line_1>| is element 1.
It will be no big problem to adjust my code to get the correct output. But I wonder if the result from the server is in accordance with the documentation for the client server protocol (XDM {item} ... XDM {item} \00). Is the byte in front of |<Line_1 the XDM metadata?
Ben