[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message]

Re: XML friendly runtime templating languages

  • To: Robert Koberg <rob@k...>
  • Subject: Re: XML friendly runtime templating languages
  • From: "M. David Peterson" <m.david.x2x2x@g...>
  • Date: Mon, 28 Mar 2005 21:40:30 -0700
  • Cc: XML Developers List <xml-dev@l...>
  • Domainkey-signature: a=rsa-sha1; q=dns; c=nofws; s=beta; d=gmail.com; h=received:message-id:date:from:reply-to:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:references; b=a8X/7trmMqdeJDwHmMRUY4il6elcPnGW8BwF3kbLB/Bs0ADa2UZ5O7xK8j8jP9eZ4cEPf9sqsRiAAsHfXrNI/weZuYLPno6HpTvhd3hEDWz/SPJCWkKi2Oqj2tjzmczEOkke1o5TKsj/98cQ/Ooi6/7wyKkVzEfY5ly51Z9jVnc=
  • In-reply-to: <4248B15C.8050204@k...>
  • References: <4248B15C.8050204@k...>
  • Reply-to: "M. David Peterson" <m.david.x2x2x@g...>

velocity xml
Hi Robert...

There are lots of different ways you can hack your XSLT to conform
more to your desired format but probably the easiest is simply:

<input>
<xsl:if test="boolean(@checked)">
<xsl:attribute name="checked">checked</xsl:attribute>
</xsl:if>
</input>

Actually, the boolean function isnt even necessary. I put it there to
better represent the format you suggested.  In reality, no matter its
value (you can extend the test to check for this by simply adding '=
xyz' or whatever you may want to check for) if the checked attribute
exists the test will evaluate to true, if not, false and the contained
xsl:attribute element will not be added to the <input/> element.

Compared to your example obviously this is a lot more code to get the
same functionality but the fact that this will work and the desired
sample will not obviously presents a choice of verbosity over
verbosity/complexity instead of the desired choice of simplicity over
simplicity/verbosity.  Keep in mind that with XPath 2.0 this all
changes to give you exactly what it is you are looking for... well,
not the exact syntax but close enough to put a smile on your face for
sure.

Hope this helps!  BTW... You may find some more ideas over on XSL-List
> http://www.mulberrytech.com/xsl/xsl-list/index.html

Regards,

<M:D/>


On Mon, 28 Mar 2005 17:37:32 -0800, Robert Koberg <rob@k...> wrote:
> Hi,
> 
> I recently did an app that pre-generated out to Jakarta Velocity
> templates. I chose Velocity because I thought it was the most XML
> friendly (and I have a java bias). I posted a minor annoyance about
> still having to do some redundant coding for SGML attribute minimazation
> brought into XML:
> 
> #set ($isChecked = $page.getBoolean("isChecked"))
> #if ($isChecked)
>    <input ... checked="checked"/>
> #else
>    <input .../>
> #end
> 
> I can't write something like:
> 
> <input ... #if($isChecked)checked="checked"#end/>
> 
> becuase the template code must exist in a well formed XML document to be
> used in an XSL transformation.
> 
> Andrew Clover clued me in to PXTL where (from the PXTL spec):
> 
> "If it is a conditional element, it is checked for success. If
> unsuccessful, the element is removed with all its child nodes. If
> successful, the element is replaced by its children."
> 
> Andrew responded to my post with:
> 
> "Well that's a failing of the templating language rather than XHTML as
> such. A templating language that aims at being helpful for XML should
> provide a mechanism for inclusion/exclusion of an attribute.
> 
> For example in PXTL:
> 
>    <input type="radio" checked="checked{?px_if isChecked?}"/>
> 
> *I was wondering if there are other runtime templating languages out
> there that I am missing.* I am not including XSLT for runtime processing
> because of its need to parse the XML source for each transformation.
> 
> best,
> -Rob
> 
> -----------------------------------------------------------------
> The xml-dev list is sponsored by XML.org <http://www.xml.org>, an
> initiative of OASIS <http://www.oasis-open.org>
> 
> The list archives are at http://lists.xml.org/archives/xml-dev/
> 
> To subscribe or unsubscribe from this list use the subscription
> manager: <http://www.oasis-open.org/mlmanage/index.php>
> 
> 


-- 
<M:D/>

:: M. David Peterson ::
XML & XML Transformations, C#, .NET, and Functional Languages Specialist

PURCHASE STYLUS STUDIO ONLINE TODAY!

Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
Email
First Name
Last Name
Company
Subscribe in XML format
RSS 2.0
Atom 0.3
 

Stylus Studio has published XML-DEV in RSS and ATOM formats, enabling users to easily subcribe to the list from their preferred news reader application.


Stylus Studio Sponsored Links are added links designed to provide related and additional information to the visitors of this website. they were not included by the author in the initial post. To view the content without the Sponsor Links please click here.

Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery ™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2011 All Rights Reserved.