You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@velocity.apache.org by li...@relevanz.com on 2004/03/07 06:17:07 UTC

[DVSL] Mixed content rendering

DVSL in CVS currently doesn't handle mixed content.

<foo>
before
<bar>inside</bar>
after
</foo>

always renders as "before after inside", and only with the 
pseudo-code:

$node.value() $context.applyTemplates()

 Especially frustrating when trying to apply formatting ala HTML and 
also inline links.

With 2 minor modifications to DVSLNodeImpl (and perhaps corresponding 
changes to DVSLNode interface) :
1. access of makeDVSLNode from private to public
2. a nodes() method which returns an Iterator that wraps the 
underlying element.nodeIterator

and the attached vm, rendering of mixed content should work. 

Instead of the above code, just use 
#renderMixed($context $node)

But since I'm a DVSL newbie, someone please tell me if all this is 
unnecessary. :-) Otherwise, I'll be happy to submit patches.

Kelvin