Advanced Customization > Info*Engine User’s Guide > Info*Engine Custom Tag Reference > Info*Engine Tags > Core Library Tags > param
  
param
The param tag defines a parameter for use within webject tags, task tags, and directory service tags:
Webject parameters provide the input criteria for the webject in which they are specified.
Task parameters provide a way to set the following items:
@FORM context group variables so that they are available to the task.
The VDB groups that are available to the task.
The VDB groups that are available when the task finishes.
Directory service parameters provide the names of groups that are used as input to and output from creating, updating, querying, and listing directory service entries.
In each case, the parameter requirements are dictated by the individual webjects, tasks, and directory service actions where they are specified. For additional information, see the description of the specific webject, task, or directory service action you want to accomplish.
You can include expressions as attribute values on a param tag. For more information, see Expressions.
You can nest this tag in the webject, task, createObjects, listObjects, queryObjects, and updateObjects tags.
Syntax
<ie:param name="PARAMETER_NAME"
data="value_list"
delim="delimiter"
default="default_value"
elementSeparator="character"
valueSeparator="character"/>
Attribute Descriptions
Required attributes: name and data.
data
Specifies one or more data values to assign to the parameter named in the name attribute. Include the data values within quotation marks. The number and type of data values that you can assign are determined by the specific parameter.
For parameters that can have multiple data values assigned to them, the most common way to enter multiple data values is by including multiple param tags, all with the same name attribute and different data attributes.
You can also include multiple values in the data attribute by separating the values using a delimiter and including the separator in delim attribute. To use the comma as a value separator, use the following syntax:
data="value1,value2,…,valueN" delim=","
For example, to return multiple groups in the Return-Groups webject, you can include either the following two param tags:
<ie:param name="GROUP_IN" data="employees"/>
<ie:param name="GROUP_IN" data="consultants"/>
or one param tag that includes the delim attribute:
<ie:param name="GROUP_IN" data="employees,consultants" delim=","/>
The data attribute is required.
default
Specifies a literal string, which is the default value that is used if a substitution expression returns no values. When you specify this attribute, you must include the default value within quotation marks.
Whenever you include substitution expressions in the data attribute, you should include a default for the expression. For example, the following param tag sets the default for the ATTRIBUTE parameter to the string “*”:
<ie:param name="ATTRIBUTE" data="$(@FORM[]attr[])" default="*"/>
This attribute is optional.
delim
Defines the delimiting symbol that Info*Engine uses to separate multiple values in the data attribute. When you specify this attribute, you must include the symbol within quotation marks. For example, if you want to use the comma as the delimiter, the syntax for the data and delim attributes is:
data="value1,value2,…,valueN" delim=","
The following param tag example has three values defined in the data attribute and uses the comma as the delimiter:
<ie:param name="ATTRIBUTE" data="ename,phone,title" delim=",">
By using multiple param tags that have only one value in each data attribute, this same parameter could also have been specified as follows:
<ie:param name="ATTRIBUTE" data="ename">
<ie:param name="ATTRIBUTE" data="phone">
<ie:param name="ATTRIBUTE" data="title">
In an actual webject, the resulting parameter in both cases tells the processor that the webject expects to receive employee name (ename), employee telephone number (phone), and employee title (title) information within the group of data returned from the data repository.
This attribute is optional.
elementSeparator
Specifies the element separator that Info*Engine uses when processing substitution expressions that are in the data attribute. The specified character is used when concatenating together attribute values from multiple elements (rows). The selection of multiple elements can occur when the expression contains the asterisk (*) as the element selector.
By default, Info*Engine uses the semicolon as the element separator. For more information about defining substitution expressions, see Dynamic Parameter Value Substitution.
The following param tag includes a substitution expression in the data attribute that has the asterisk as the element selector and sets the element separator to “#”:
<ie:param name="ATTRIBUTE" data="$(grp1[*]attr[0]}" elementSeparator="#"/>
This attribute is optional.
name
Specifies a parameter name to which a data value is assigned. Include the parameter name within quotation marks. The names of the parameters are not case-sensitive, but are documented using upper case characters.
This attribute is required.
valueSeparator
Specifies the value separator that Info*Engine uses when processing substitution expressions that are in the data attribute. The specified character is used when concatenating together multiple values that are contained in one attribute location. The location is defined by an attribute (column) and an element (row) pair that results from processing substitution expressions. Multiple values can occur when the expression contains the asterisk (*) as the value selector.
By default, Info*Engine uses the comma as the value separator. For more information about defining substitution expressions, see Dynamic Parameter Value Substitution.
The following param tag includes a substitution expression in the data attribute that has the asterisk as the value selector and sets the value separator to “|”:
<ie:param name="ATTRIBUTE" data="$(grp1[0]attr[*])" valueSeparator="|"/>
This attribute is optional.
Example
The following example declares that the page or task uses tags from the Info*Engine core tag library and that the tags have the ie prefix. The param tags define two parameters for the Copy-Group webject:
<%@ taglib uri="http://www.ptc.com/infoengine/taglib/core"
prefix="ie" %>

<ie:webject name="Copy-Group" type="GRP">
<ie:param name="GROUP_IN" data="grp1"/>
<ie:param name="GROUP_OUT" data="grp2"/>
</ie:webject>