Mashup Macro - Fusion Chart Formatter

Posted 08/05/2009 - 14:47 by Blythe

This Mashup Macro takes repeating data from any service and produces a standard format that can be instantantly visualized in all (single series) Fusion Charts. 

<!-- Create Single Series-->

        <macro name="XMLSingleSeries4FC">

        <input name="xmlDoc" type="document"/>

                               <input name="items" type="string"/>

                               <presto-meta name="type" variable="items" reference="xmlDoc">datapath</presto-meta>

                               <presto-meta name="label" variable="items">Repeated Elements </presto-meta>

                               <input name="label_node" type="string"/>    

                               <presto-meta name="type" variable="label_node" reference="xmlDoc">template</presto-meta>

        <presto-meta name="label" variable="label_node">Label</presto-meta>

                               <input name="value_node" type="string"/>   

                               <presto-meta name="type" variable="value_node" reference="xmlDoc">template</presto-meta>

        <presto-meta name="label" variable="value_node">Value</presto-meta>                          

        <output name="result" type="document"/>

        <presto-meta name="macrotype">user</presto-meta>

                               <variable name="dynamicExpr" type="string"/>

                               <constructor outputvariable="result">

                                               <chart/>             

                               </constructor>

                               <template outputvariable="dynamicExpr" expr="$xmlDoc{$items}"/>

                               <foreach items='{$dynamicExpr}' variable='item'>

                                               <appendresult outputvariable="result">

                                                               <set label='{$item/child::*[local-name()=$label_node]/string()}'

                                                                               value='{$item/child::*[local-name()=$value_node]/string()}' />                          

                                               </appendresult>                           

                               </foreach>

</macro>

 

 

 

 

 

 

0
Your rating: None