Templates and the Pipeline Dictionary

When a controller or a pipeline is processed, the Pipeline Dictionary accepts and stores parameters in key-value pairs. A template can show only the dynamic information that is stored in the Pipeline Dictionary at the time the template is called. The value of a key-value pair stored in the Pipeline Dictionary can be:

	<isprint value = "${pdict.ProductID}"> 
	<isprint value = "${pdict.Buyer.dataSheet.firstName}"> 

Pipeline Dictionary and Controllers

Controllers do not manipulate the Pipeline Dictionary directly; instead, they construct an object that is passed to a template. This object consists of name-value pairs.

You can use the UX Studio debugger to view the contents of the object before it is passed into a template. Within the template context, the variable pdict is used to reference this object.

Pipeline Dictionary and Pipelets

Information on available key-value pairs in the Pipeline Dictionary can be found in the Properties editor of the pipelet that produces the appropriate key as an output parameter and puts it in the Pipeline Dictionary.

If the value of a key-value pair is a complex object, you need to know the name of its attributes that contain the values you want to appear in a template.

  1. Open UX Studio.
  2. Select the pipelet.
  3. Look in the Properties editor.
  4. Observe the Dictionary Input and Output keys, which are the key-value pairs.

    For example, for AddGiftCertificateToBasket (bc_api) it would be:

Dictionary Key Value
Input Amount CurrrentForms.giftcert.purchase.​amount.value
  Basket Basket
  Message CurrrentForms.giftcert.purchase.​message.value
  ProductListItem ProductListItem
  RecipientEmail CurrrentForms.giftcert.purchase.​email.​value
  RecipientName CurrrentForms.giftcert.purchase.​recipient.​value
  SenderName CurrrentForms.giftcert.purchase.​from.​value
  Shipment Shipment
Output AddGCErrorMessage null
  GiftCertificateLineItem GiftCertificateLineItem

The available key-value pairs of the selected attribute appear.