Klipfolio. The KPI Dashboard - Evolved
The KPI Dashboard – Evolved
1-877-233-6149
Contact Us

Klip Developer Guide

Table of Contents

Appendix B. Supported XML Parameters

This appendix lists all the valid XML parameters in a Klip.

Many of these tags are optional. However, all the tags under <owner>, <identity>, and <locations> give your Klip identifying information and should be included, especially if you intend to upload it to http://downloads.klipfolio.com.

If you are using the File:// or TCP/IP libraries, you must include <scriptmode>extended</scriptmode> inside the <setup> block.

Note that the parameters marked as "Advanced feature" are advanced features that are only available in the licensed, commercial version of Klipfolio Dashboard.

Here is an alphabetical list of the parameters, followed by descriptions and examples. This list does not include any nested parameters that may be available:

assets / author / autodrilldown / autoremove / banner / cache / chart / codepage / columns / connectionstring / content / contentsource / copyright / country / defaultlink / description / email / excel / file / filter New / find / help / icon / iconvisible / identity / keywords / kliplocation / klipscript / language / lastmodified / locations / messages / odbc / owner / purge / query / range / referer / refresh / refreshinseconds / report / scriptmode / setup / sheet / showdaterangemenu New / sort / statusvisible / style / title / uniqueid / version / web / wrap

<!--  

The Klip file format is for use with Klipfolio Dashboard. 
Please note that information you enter here will be available to
the public.

- - - - - - - - - - - - - - - - - - - - - - - - - -
To reduce the size of the file you distribute to your users, 
remove any tags and comments you do not use.
- - - - - - - - - - - - - - - - - - - - - - - - - -

-->

<klip>
   <owner>
      <author>
         <!--
         Your contact or company name
         -->
         Klipfolio Inc.
      </author>

      <copyright>
         <!--
         Your copyright notice
         -->
         Copyright 2001-2012 Klipfolio Inc.
      </copyright>

      <email>
         <!--
         Your contact or company email address.
         -->
         support@klipfolio.com
      </email>

      <web>
         <!--
         Your contact or company web address.
         -->
         http://www.klipfolio.com
      </web>
   </owner>
   
   <identity>
       <description>
         <!--
         A short description of this Klip
         -->
         This is a scripted sample Klip provided by Klipfolio Inc.
      </description>
     
      <keywords>
         <!--
         A space-delimited list of keywords for matching your 
         klip during a search at http://downloads.klipfolio.com. The 
         order of the keywords is relevant, and no more than 
         15 keywords will be processed.
         -->
         sample Klip template XML  
      </keywords>
      
      <lastmodified>
         <!--
         The date this Klip was last modified yyyy.mm.dd:hhmm.
         -->
         2010.09.20
      </lastmodified>
      
      <title>
         <!--
         The title of this Klip to display in Klipfolio Dashboard.
         -->
         Template Klip
      </title>
      
      <uniqueid>
         <!--
         An identifier that is unique to this Klip goes here.
         We suggest you choose some text that is unlikely to be
         used by any other Klip author.
         -->
         template_klip_123456
      </uniqueid>
      
      <version>
         <!--
         A version number to help you keep track of your Klip as it
         changes.  This version is also used when Klipfolio Dashboard 
         checks for updates to the Klip, during which the version of 
         the local Klip is compared to the one at the kliplocation. If they
         differ, the Klip will be updated to the one at the kliplocation.
         -->
         1.0
      </version>
   </identity>
   
   <locations>
      <banner>
         <!--
         A URL pointing to this Klip's 234x60 gif or jpeg banner. 
         -->
         http://www.klipfolio.com/static/klips/klipfolio/sample_banner.png
      </banner>
      
      <contentsource>
         <!--
         A URL pointing to the data source for this Klip
         -->
         http://rss.cbc.ca/lineup/topstories.xml
      
            <excel>
               <!-- ** Advanced feature **
               Specify information about the Excel worksheet in this block.
               
               There are special requirements for the <style> block when using an
               Excel worksheet as content source.
               For examples and tips on how to use an Excel worksheet as
               a data source, refer to:
               http://developer.klipfolio.com/developer/cookbook_item/item-43
               -->         
                      
               <file>
                  <!-- ** Advanced feature **
                  Specify the path to the Excel file and its name.
                    -->
                  \\NetworkPlace\accounting\budget.xls
               </file>
                       
               <sheet>
                  <!-- ** Advanced feature **
                  Optional. Specify the Excel worksheet name. 
                  -->
                  Summary09
               </sheet>
           
               <range>
                  <!-- ** Advanced feature **
                  Optional. Specify the data range that includes the header row
                  in the worksheet. 
                  -->                  
                  E13:J48
               </range>
            </excel>     
      
            <odbc>
               <!-- ** Advanced feature **
               Specify the connection string and query in this block.
               
               For more information about writing an ODBC Klip, see
               http://developer.klipfolio.com/developer/cookbook_item/item-39
               To find out how to extract data from complex XML, see
               http://developer.klipfolio.com/developer/cookbook_item/item-46
               -->
                     
               <connectionstring>
                  <!-- ** Advanced feature **
                  Specify the ODBC connection string. 
                  -->
                  Provider=sqloledb;Data Source=myServerAddress;Initial 
                  Catalog=myDataBase;User Id=myUsername;Password=myPassword
               </connectionstring>
          
               <query>
                  <!-- ** Advanced feature **
                  Specify the ODBC query string.
                  -->                  
                  SELECT * FROM Production.WorkOrder WHERE ProductID < 400
               </query>
            </odbc>            
      </contentsource>
      
      <defaultlink>
         <!--
         A URL pointing to a page relevant to this Klip
         when a user clicks on your Klip (except on an item).
         -->
         http://www.klipfolio.com/
      </defaultlink>

      <help>
         <!--
         A URL pointing to online help specific to this Klip
         -->
      </help>

      <icon>
         <!--
         A URL pointing to this Klip's default 16x16 GIF, PNG or 
         JPEG icon.
         -->
         http://www.klipfolio.com/static/klips/klipfolio/sample_icon.png
      </icon>
      
      <kliplocation>
         <!--
         A URL where new versions of this Klip can be found.
         Klipfolio Dashboard periodically checks for updates
         to your Klip at this URL.
         Also see <version>.
         -->
         http://www.yourserver/klips/klipname.klip
      </kliplocation>   
   </locations>

   <setup>
      <autodrilldown>
        <!-- ** Advanced feature **
          Used in conjunction with the drilldown property
          in the <style> block.
          
          Set to 'true' to display each level of drilldown with 
          that level's enum items grouped together. Provides better 
          usability.
          
          Set to 'false' to display each item individually, with 
          an option in the column header menu to roll up 
          the enum items into groups.
          
          Set to 'deep' to skip the top drilldown levels that have 
          only one item at initial load and go directly to the level
          that has multiple items or the last level, whichever
          comes first.
          
          For examples and tips, refer to the how-to articles on drilldown at
          http://developer.klipfolio.com/developer/cookbook          
        -->
        true
      </autodrilldown>
      
      <autoremove>
        <!-- 
          Set to 'true' or 'false' to specify the Items.autoremove
          setting. 
          'true' will automatically remove items in a Klip 
          according to the user's global Item Management 
          settings.
          'false' will disable the automatic removal of items 
          regardless of the user's global Item Management 
          settings.
          
          For more information and examples, see:
          http://developer.klipfolio.com/developer/cookbook_item/item-45
        -->
        true
      </autoremove>
      
      <cache>
        <!--
        Set it to a positive integer (in seconds) to specify 
        how often Klipfolio Dashboard should cache the content. 
        
        Setting this value in the Klip will override the default 
        caching frequency set by the content server.
        -->      
      </cache>
      
      <chart>
        <!--  ** Advanced feature **
        At a minimum, specify <type>, <categorylabels> and <series> to display 
        the values in the specified column as a chart that fills the entire Klip.
        
        Available types are:
        pie (version 5.3+)
        verticalbar (version 5.4+)
        horizontalbar (version 5.5+)
        line (version 5.5+)     

        See below for additional options.  

        For more information on pie charts, see:
        http://developer.klipfolio.com/developer/cookbook_item/item-47
        
        For more information on vertical bar charts, see:
        http://developer.klipfolio.com/developer/cookbook_item/item-60
        
        For more information on horizontal bar charts, see:
        http://developer.klipfolio.com/developer/cookbook_item/item-73
        
        For more information on line charts, see:
        http://developer.klipfolio.com/developer/cookbook_item/item-74         
        -->
          <type>
            <!--
            Set to pie to display the values in the column as a pie chart. (version 5.3+)
            
            Set to verticalbar to display the values in the column as 
            a vertical bar chart. (version 5.4+)
            
            Set to horizontalbar to display the values in the column as 
            a horizontal bar chart. (version 5.5+)
            
            Set to line to display the values in the column as
            a line chart. (version 5.5+)
            -->
            line
          </type>
          <categorylabels>
            <--
            Specify the name of the column for its values to be used
            as the labels for the data points. 
            In a drilldown Klip, the column that is type: enum; drilldown: 1; 
            should be used.
            -->
            my_category_column
          </categorylabels>
          <series>
            <!--
            Specify the name of the column to be used as the numerical data points 
            in the specified type of chart. 
            The column must be set to type: number in the <style> block.
            
            For the vertical bar, horizontal bar and line charts, 
            multiple column names can be specified to display multiple bars or lines. 
            List the names separated by a comma(s) without spaces.
            e.g. <series>myColumn1,myColumn2</series>
            -->
            my_numbers_column
          </series>
          <format>
            <!-- Available in version 5.5 and later.            
            Optional settings for the line chart:
            area - the space between the line chart and the bottom of the chart is filled
            points - highlights each data point in the chart
            area,points - both the area and points settings are applied     
            For more details, see:
            http://developer.klipfolio.com/developer/cookbook_item/item-74
            
            Optional settings for the vertical bar chart:
            line(my_line_chart_column) - my_line_chart_column is displayed as a 
            line chart overlaid on top of the vertical bar chart. Be sure to include 
            my_line_chart_column in the <series> block also. 
            To specify multiple line chart columns, use line() for each column, e.g.
            <format>line(my_line_chart_column1),line(my_line_chart_column2)</format>.
            For more details, see:
            http://developer.klipfolio.com/developer/cookbook_item/item-60  
            -->
            points
          </format>
           <legend>
            <!--
            Optional for all chart types. Default is true.
            Set to false to prevent the legend from being displayed at the top right corner
            of the chart Klip.
            -->
            true
          </legend>  
          <scaletodata>
            <!-- Available in version 5.5. and later.
            Optional for the horizontal bar, vertical bar and line charts.
            
            Set to true to allow the Klip to automatically adjust the range of the chart to the currently
            available data points. Useful when the values are much larger than zero.
            -->
            true
          </scaletodata>
          <seriestitle>
            <!-- Available in version 5.5 and later.
            Optional for the horizontal bar, vertical bar and line charts.
            Specify the title to display below the x-axis labels in a horizontal bar chart Klip
            or above the y-axis in a line or vertical bar chart Klip.
            -->
            My Series Title
          </seriestitle>
          <truncate>
            <!--
            Optional for the line chart. Default is true.
            Specify false to suppress truncation of the categorylabels.
            -->
            false
          </truncate>
      </chart>
      
      <codepage>
        <!--
        Specify the code page to be used for encoding text 
        for this Klip.
        -->
      </codepage>
      
      <columns truncate="false">
        <!--
        Set to 'true' to display column headers by default.
        
        Add truncate="false" in the opening tag to display the
        full column header labels without truncating.
        No extra spaces should be added in the tag.
        -->
        true
      </columns>
      
      <country>
         <!--
         The two character ISO country code which identifies where
         your Klip comes from.  See the next appendix for a list of 
         codes.
         -->
         ca
      </country>
      
      <find>
         <!--
         Set to 'true' to display the Find field by default.     
         Default is 'false', i.e. the Find field is not opened by 
         default.
         In either case, the Find field can be opened and closed
         using the Klip's context menu.
         
         For details on how to filter the Klip's content using the Find field,
         see http://developer.klipfolio.com/developer/cookbook_item/item-61
         -->
         true
      </find>

      <filter>
         <!--
         Set to 'false' to remove the "Filter..." option from the Klip's menu.
            
         Default is 'true', i.e. the "Filter..." option is included in the Klip's menu.
         -->
         false
      </filter>
 
      <iconvisible>
         <!--
         Set to 'true' (default) to display the Klip icon.
         Set to 'false' to turn off the Klip icon.
         -->
         true
      </iconvisible>

      <language>
         <!--
         The two character ISO language code which identifies what
         language your Klip uses.  See Appendix D for a list 
         of codes.
         -->
         en
      </language>      
      
      <purge>
         <!--
         Set to 'true', 'false', or 'permanent' to specify the 
         purge setting for all items.

         Set to 'true' to delete the item from the Klip when
         it is no longer available in the data source. Note that it
         is stored in the Items.Deleted array, i.e. Klip remembers
         that it has been deleted. If the same item reappears in the
         source, it will not be displayed in the Klip again.
         Set it to 'false' (default) to turn purging off. Items that are 
         no longer in the source remain in the Klip until the user
         deletes them.
         
         Set to 'permanent' to delete the item from the Klip
         when it is no longer available in the data source. Unlike 
         'true', it is not stored in the Items.Deleted array. If the 
         deleted item reappears in the data source, it is added 
         to the Klip as a new item.
         
         Use autoremove and purge together to make a 
         dashboard Klip.
         
         For more information, see:
         http://developer.klipfolio.com/developer/cookbook_item/item-45
         -->
         permanent
      </purge>
      
      <referer>
         <!--
         If required, specify text here to help you track your 
         Klip's usage. This text is sent as an HTTP referer 
         (see RFC 1945 for details).
         -->
      </referer>

      <refresh>
         <!--
         Set to a positive integer (in minutes), 'never', or
         'manual' to specify how often this Klip should 
         check the <contentsource> URL for updates.
         
         Use 'never' to have this Klip never automatically 
         refresh and to remove the Klip menu items that 
         allow a user to refresh the Klip. 
         
         Use 'manual' to have this Klip never automatically 
         refresh, but the user can still manually refresh the 
         Klip through the menu.
         -->
         120
      </refresh>

      <refreshinseconds>
         <!-- **Advanced feature **
         Set to true to have the <refresh> value counted in seconds
         instead of minutes.
         Default is false.
         -->
         true
      </refreshinseconds>
      
      <report>
         <!--
         Set to true to send usage statistics to klipfolio.com.
         -->
         true      
      </report>
      
      <scriptmode>
         <!--
         Set to ‘extended’ to use File:// and TCP/IP libraries.
         -->
      </scriptmode>
      <showdaterangemenu> 
         <!-- Available in version 6.0 and later.
         Set to 'false' to disable the "Select date range" option in the Klip's menu.         
         -->
         false
      </showdaterangemenu>

      <sort>
         <!--
         Set a default sort order for the specified column.
         
         Use reverse="true" in the opening <sort> tag to sort
         the specified column in the opposite order.
         
         Use 'sequence' (without quotes) instead of a column
         name to sort the items in creation order (newest at bottom).
         
         For example:
            <setup>
               <sort reverse="true">
                  oranges
               </sort>
            </setup>
            <style>
               item {
   	       type: item;
               }
               oranges {
                  itemcol: 1;
               }
               apples {
   	       itemcol: 2;
               }
            </style>        
         -->
      </sort>

      <statusvisible>
         <!--
         Set to 'true' (default) to display the number of unread 
         items in the status area.
         
         Set to 'false' to turn off the status area.
         -->
      </statusvisible>
      <wrap>
         <!--
         Sets text wrapping for the entire Klip.
        
         Set to 'true' (default) to allow wrapping of items. 
            Display Settings > Make Items Single-Line is not selected.
        
         Set to 'false' to prevent items from wrapping. 
            Display Settings > Make Items Single-Line is selected.
         
         In both cases, users can turn wrapping on or off through
         the Klip's Display Settings option.
         
         Note that the CSS property "wrap" sets the wrapping of each column
         and has a higher priority than this parameter.
         
         Add lines="false" in the opening tag to hide lines between items.
         -->
      </wrap>
</setup>

   <content>
      <!--
         Store values in blocks of unique tag names, which can be accessible
         through Prefs.getContent("content_tag_name") in the Klip script.
         Useful when using multiple stylesheets, but the use is not limited to this.

         For example:
            <content>
               <style1>
                  ...
               </style1>
               <style2>
                  ...
               </style2>
               <upImage>
                  http://..../up.png
                </upImage>
            </content>
            ...
            <klipscript>
               ...
               Engines.Data.stylesheet = Prefs.getContent("style1");
               var up = Prefs.getContent("upImage");
               ...
            </klipscript>  
      -->
   </content>

   <messages>
      <loading>
         <!-- 
         Loading message displayed when Klip first starts up
         -->
         Loading Klip data ...
      </loading>
      <nodata>
       <!-- 
       Message displayed to user when Klipfolio Dashboard was 
       unable to complete initial refresh of Klip
       -->
       Unable to load data
      </nodata>
   </messages>
   
   <assets>
      <!-- ** Advanced feature **
      Used in conjunction with indicator: asset, indicator: bar or
      format: "bullet", specifies the images or colours to display
      in place of a numerical value and a list of comparisons to
      be performed in order to match the images and colours
      with the value.
      
      In order to use this parameter, the column in which to apply
      the settings here must have the "asset" property defined
      with the matching assetname value. Therefore, be sure to
      specify a unique name to the name of the <asset>, especially
      when defining multiple assets here.
 
      For use with indicator: asset, specify the URLs of the images
      to display in place of the numerical data. For details, see
      http://developer.klipfolio.com/developer/cookbook_item/item-25
      
      For use with indicator: bar or format: "bullet", specify colours
      from the following set:
      violet, blue, turquoise, red, yellow, green, and orange.
      
      For details on its use with indicator: bar, see
      http://developer.klipfolio.com/developer/cookbook_item/item-33
      
      For details on its use with format: bullet, see
      http://developer.klipfolio.com/developer/cookbook_item/item-55
    
      -->
      <state1>URL for image or colour to display for state1</state1>
      <state2>URL for the image or colour to display for state2</state2>
      <asset name="assetname">
         <![CDATA[
         state1: value < 0;
         state2: value == 0;
         ]]>
      </asset>
   </assets>
   
   <style>
      <!-- 
      Instructs Klipfolio Dashboard's XML parser to map XML elements 
      to columns in the Klip and rows in the tooltip.  
      Not needed if your <contentsource>is an RSS/RDS/ATOM 
      feed, as the application includes a default stylesheet.
      -->
   </style>
   
   <!--   
   Uncomment this section to put in your own klipscript, which is optional.  
   
   Note: When you specify your own klipscript, you must, 
   at a minimum, create an onRefresh() function to handle 
   refreshing of the Klip.
   
   <klipscript>
      <![CDATA[
         function onRefresh()
         {
         	return Engines.Data.process(Prefs.contentsource);
         }
       ]]>
   </klipscript>
            
-->
            
</klip>