Anybody can explain %loop% tag with -struct option in DSP ?

Hi, while going thru the DSP documentation, I came across the %loop% tag with the -struct option , but could not understand its implication. Can anybody explain its purpose with a lucid example ?
text.doc (45 KB)

You can think of a document as a list of variable names (keys) and value pairs. Keys are always strings, but values can be null or can contain objects including other documents. The IData interface allows you to get the first key in the document with the IDataCursor.first() methods and then traverse the document using the method.

This form of the %LOOP% tag starts with the root node of the document and returns each name-value (key-value) pair in order.

Without testing, I don’t know whether this tag will traverse values containing other documents recursively in the same way that the pub.flow:tracePipeline built-in service does for the “pipeline” document.

The WmSamples package (available after IS 6.5 only from Advantage) contains an example called WalkAnIData that should be helpful.