This section describes reference information for the WebLogic RFID Edge Server edgeflow modules.
You may notice similarities across modules. Each module requires parameters for operation (which can include information such as timing data and EPCIS data) and parameters that allow it to connect to other modules and send data to outside destinations.
You configure edgeflow modules using the RFID Edge Server Administration Console. See Configuring Workflow Modules in Using the Administration Console.
Note:
In version 3.0 of WebLogic RFID Edge Server, workflow modules supported in previous releases are supported in a limited manner. See Workflow Module Reference for Versions Prior to 3.0 for more information.
An Aggregation Reconciler module receives an aggregation event and sends to an external sender to request the manifest for the aggregation.
The Aggregation Reconciler module can be used to find out if an aggregation has the expected items or not. The Aggregation Reconciler module compares an aggregation with its manifest (expected elements in an aggregation). The comparison result is based on the properties such as percentage of children-match required.
Consider the following usage:
An EPCIS Aggregation Event Generator creates an aggregation for the tags it receives from a Tag Accumulator module or a Tag List Filter module.
An Aggregation Reconciler module receives the aggregation from the EPCIS Aggregation Event Generator module and sends to an EPCIS Manifest Query module or a custom module that generates the manifest for the query.
The Aggregation Reconciler receives the manifest and performs the reconciliation.
The Aggregation Reconciler module fields are shown in Table 3-1.
Table 3-1 Aggregation Reconciler Module
Field Name
Value/Type
Description
Module Name
String
Unique user-defined identifier for this module.
Module Type
Aggregation Reconciler.
Type of module. Values are chosen from a list of module types.
Acceptable Children Match %
Percentage (Decimal)
Specifies what percentage of children must be matched to produce a "true" matched-children result.
Enter a value between 0 and 100 to specify the match percentage required.
Allow Extra Children
True/False
Determines whether extra children are allowed when deciding if there is a match. If this is true, extra children produce true for the matched children result. If this is false, detection of extra children produces false for the matched children result.
Match Parent
Never If EPC If Not EPC Always
Specifies whether the parent must be matched when the expected parent is, or is not, an EPC URI.
Module Outputs
Manifest Request
EPCIS Document
Required. This is the output port through which the request for the manifest is sent.
For example, in this field you might specify an EPCIS Manifest Query module or a custom module that generates the manifest for the query.
Parent Matched
Boolean
Specify the location to send a Boolean indicating whether the parent matched.
Children Matched
Boolean
Specify the location to send a Boolean indicating whether the required percentage of children IDs was found.
Missing Entries
Manifest
Specify the location to send an Aggregation manifest containing IDs indicating which entries were missing.
For example, reconciliation-result-missing-sender:Input
Extra Entries
Manifest
Specify the location to send an Aggregation Manifest with the IDs that were in the aggregation, but not expected.
For example, reconciliation-result-extra-sender:Input
Error
Error
Specify the error message destination.
For example, my-error-sender: Input.
This port will send an output if an error occurs in the module processing. This port may be used to indicate any kind of error in an edgeflow.
Module Inputs
Aggregation
EPCIS Document
The aggregation received from another module. This is the aggregation that is to be reconciled.
For example, the EPCIS Aggregation Event Generator might create an aggregation for the tags it receives. It could then send the aggregation to an Aggregation Reconciler module.
Manifest
Manifest
Manifest that is compared against the aggregation.
This module takes in a bar code string or bar code Tag List and converts it to an EPC ID or EPC ID pattern.
For example, you might use an HTTP Receiver (One Way) module to receive bar codes from an external source, or you might receive a bar code tag list from a Tag List Filter module that itself receives ECReports for an ECSpec configured to read from a bar code reader.
This module supports the following bar code types:
UCC12
UCC13
SSCC
GTIN
GLN
GRAI
GIAI
Note:
Symbology character decoding is not supported; SSCC and SGTIN barcode with AI fields are not supported.
Table 3-2 describes how bar codes are processed based on the number of digits in the bar code.
Table 3-2 How Bar Codes Are Processed
Number of Characters in Bar Code
How Processed
12
Padded to 14 characters by prepending zeroes
Check if it is GTIN/UCC12
If not, check if it is GIAI
13
Padded to 14 characters by prepending zeroes
Check if it is GTIN/UCC13
If not, check if it is GIAI
14
Check if it is GTIN
If not, check if it is GIAI
16
Check if is GLN
If not, check if it is GIAI
18
Check if it is SSCC
If not, check if it is GRAI
If not, check if it is GIAI
The Bar Code Decoder module fields are shown in Table 3-3.
Table 3-3 Bar Code Decoder
Field Name
Value/Type
Description
Module Name
String
Unique user-defined identifier for this module.
Module Type
Bar Code Decoder
Type of module. Values are chosen from a list of module types.
Module Outputs
Decoded ID or Pattern
URI String
Specifies the destination for the decoded bar code.
For example, you might send the bar code to the Write input of a Write Tag module: tag-commissioning-write:Write
For bar codes that already contain a serial number reference (SSCC) the EPC id is generated. Otherwise, the EPC id pattern is generated.
Error
Error
Specify the error message destination.
For example, my-error-sender: Input.
This port will send an output if an error occurs in the module processing. This port may be used to indicate any kind of error in an edgeflow.
Module Inputs
Bar Code
Bar Code String/TagList
String type (complying with barcode EPC tag data) or tag list representing barcode data.
Counter
This module is used to display a count, or similar information on a numeric display device.
For example, you can use the output of a Tag Accumulator module with a Counter module to get a count of EPCs seen.
Type of module. Values are chosen from a list of module types.
Always Counting
True/False
Specifies if the module is counting on active startup.
Reset on Start
True/False
Specifies if the module resets the count to initial input message on every startup.
Initial Count
Number
Specifies the initial value for the module. This value is used when the module starts and when it is reset.
Count Duration
Milliseconds
Specifies the timeout period for sending output. Must be greater than, or equal to, zero. Zero means infinite time, which means that final count output is sent only on finish message.
Module Outputs
Final Count
Number
On a finish request or send timeout, specifies where to send the final count. For example, smart-shelf-final-count-sender:Input
Running Count
Number
Specifies where to send the current count. For example, smart-shelf-count-sender:Input
This count is sent for every add, subtract, increment, or decrement input.
Module State
Working or Idle
Specifies where to send the module state:
Working - sent when the module starts processing in response to Start input.
Idle - sent when the module stops processing in response to finish input.
Error
Error
Specify the error message destination.
For example, my-error-sender: Input.
This port will send an output if an error occurs in the module processing. This port may be used to indicate any kind of error in an edgeflow.
Module Inputs
Add
Number
This port accepts a count (integer) and adds it to the current count.
Subtract
Number
This port accepts a count (integer) and decrements it from the current count.
Increment
Any Message Type
This port takes in any message type and increments the count by one on every message.
Decrement
Any Message Type
This port accepts any message type and decrements the count by one on every message.
Start
Any Message Type
This message starts the count. This port accepts messages of any type.
Finish
Any Message Type
This message triggers the module to send the final count. The count value will be reset to the configured initial count value. If it is configured to be "always count," it will be in count mode. If not, it will wait for a start message to start counting again.
Directional Filter
You can use this module to determine the direction in which an EPC is moving. Specifically, the module is used to determine the direction between two points.
This module is similar to the Directional Filter (Auto Configuration) module. However, in this module the user is responsible for defining the ECSpec and its subscriptions.
The Directional Filter module fields are shown in Table 3-5.
Table 3-5 Directional Filter Module
Name
Type/Value
Description
Module Name
String
Unique user-defined identifier for this module.
Module Type
Directional Filter
Type of module. Values are chosen from a list of module types.
Initial State
Started/Stopped
Specify if the module is started or stopped at startup. The default is stopped.
Stale Tag Timeout
Time in milliseconds. Must be greater than zero.
Required. Determines how long a tag is kept active after it is not detected at the second read point. Defaults to 180,000.
A-side Addition Report Names
ECReport name
ECReport name that states "I see (add) the tag at position A."
A-side Deletion Report Names
ECReport name
ECReport name that states "I no longer see (delete) the tag at position A."
B-side Addition Report Names
ECReport name
ECReport name that states "I see (add) the tag at position B."
B-side Deletion Report Names
ECReport name
ECReport name that states "I no longer see (delete) the tag at position B."
Module Outputs
A to B Tag List
Specifies where to send the list of tags that passed from side A to B.
For example, interior-door-observeA2B:Tag List
B to A Tag List
Specifies where to send the list of tags that passed from side B to A. For example, interior-door-observeA2B:Tag List.
Module State
Working Idle
Specifies where to send the module status:
Working - sent when the module starts processing messages in response to Start input.
Idle - sent when the module stops processing messages in response to Stop input.
Error
Error
Specify the error message destination.
For example, my-error-sender: Input.
This port will send an output if an error occurs in the module processing. This port may be used to indicate any kind of error in an edgeflow.
Module Inputs
ECReports
ECReports
Receives all add/delete reports indicating tags were added/deleted at point A or B. Typically, either this input or the specific addition/deletion inputs are used, but not both.
A-side Additions
Tag List
To notify module that tags were added at point A
A-side Deletions
Tag List
To notify module that tags were deleted at point A
B-side Additions
Tag List
To notify module that tags were added at point B
B-side Deletions
Tag List
To notify module that tags were deleted at point A
Start
Any Message Type
Start processing input messages to determine direction.
Stop
Any Message Type
Stop processing input messages to determine direction.
Directional Filter (Auto Configuration)
Use this module to determine the direction in which an EPC is moving. The module can be used to determine the direction between two points.
The module creates an ECSpec for the read points and subscribes itself to receive notifications of EPC sightings. Logical reader names are required to be configured for each side.
The Directional Filter module fields are shown in Table 3-6.
Type of module. Values are chosen from a list of module types.
Initial State
Started/Stopped
Specify if the module is started or stopped at startup. The default is stopped.
Stale Tag Timeout
Time in milliseconds. Must be greater than zero.
Required. Determines how long a tag is kept active after it is not detected at the second read point. Defaults to 180,000.
A-side Logical Reader Names
Logical Reader Name
Required. Logical reader names for side A.
B-side Logical Reader Names
Logical Reader Name
Required. Logical reader names for side B.
Include Filters
EPC patterns
EPC ID
EPC patterns. Or, if specified, direction will be calculated only for EPCs that match EPC ID patterns.
Exclude Filters
EPC patterns
EPC ID
EPC patterns. Or, if specified, direction will be excluded only for EPCs that match EPC ID patterns.
Module Outputs
A to B Tag List
Tag List
Specifies where to send the tag list that passed from point A to point B during the current event cycle.
For example, interior-door-observeA2B:Tag List
B to A Tag List
Tag List
Specifies where to send the tag list that passed from point B to point A during the current event cycle.
For example, interior-door-observeB2A:Tag List
Module State
Working Idle
Specifies where to send the following states:
Working - sent when the module starts processing messages as a result of Start input.
Idle - sent when the module stops processing messages as a result of Stop input.
Error
Error
Specify the error message destination.
For example, my-error-sender: Input.
This port will send an output if an error occurs in the module processing. This port may be used to indicate any kind of error in an edgeflow.
Module Inputs
Start
Any Message Type
Start looking for EPCs to determine direction.
Stop
Any Message Type
Stop looking for EPCs to determine direction.
ECSpec Subscriber
Use this module to subscribe to ECSpecs only when needed: ECSpecs do not stay active.
The ECSpec names parameter allows you to specify from which ECSpecs this module should get ECReports.
A subscribe request adds a subscription for itself for an ECSpec; an unsubscribe request removes the subscription from the ECSpec.
The ECSpec Subscriber module fields are shown in Table 3-7.
Table 3-7 ECSpec Subscriber Module
Name
Type/Value
Description
Module Name
String
Unique user-defined identifier for this module.
Module Type
ECSpec Subscriber
Type of module. Values are chosen from a list of module types.
Initial State
Subscribed/Unsubscribed
Specify if the module is subscribed or unsubscribed at startup. The default value is unsubscribed.
ECSpec Names
EPSpec Name
Required. Specify the name of the ECSpec to which to subscribe.
Module Outputs
ECReports
ECReports
ECReports derived from the subscribed ECSpec
Error
Error
Specify the error message destination.
For example, my-error-sender: Input.
This port will send an output if an error occurs in the module processing. This port may be used to indicate any kind of error in an edgeflow.
Module Inputs
Subscribe
Message of any type
Subscribe to ECSpec.
Unsubscribe
Message of any type
Unsubscribe from ECSpec.
EPC Cache Manager
An EPC cache is an ordered list of EPC values used in sequence to program tags. An EPC cache allows a series of tags to be programmed without application intervention or extra tag programming to supply new EPC codes.
You can use this module to create and manage a cache. The configuration values are specific to the caches managed by this module. This module will:
Send the Replenishment Request output of the EPC Cache Manager module to the Replenishment Request input of a Serial Number Replenisher (Static) module.
Send the resulting Replenishment output from a Serial Number Replenisher (Static) module to the Replenishment input of the EPC Cache Manager module.
The EPC Cache Manager module fields are shown in Table 3-8.
Table 3-8 EPC Cache Manager Module
Name
Type/Value
Description
Module Name
String
Unique user-defined identifier for this module.
Module Type
EPC Cache Manager
Type of module. Values are chosen from a list of module types.
Cache Name Prefix
String
Specify a unique, identifying prefix for the cache name. For example, tag-commissioning-sample-
Either the Cache Name Prefix or Cache Name Suffix is required.
Cache Name Suffix
String
Specify a unique, identifying suffix for the cache name.
Either the Cache Name Prefix or Cache Name Suffix is required.
EPC Length
64-bits/96-bits
Select 64 bit or 96 bit EPCs.
EPC Filter Value
Required. Specify the EPC filter value between 0 and 7.
PCSpec Request Timeout
Milliseconds
Required. Time to wait for PCSpec. Must be greater than or equal to zero. This is the amount of time it will wait to receive EPCs for the cache it creates to define a PCSpec with the cache.
Auto Replenish
True/False
Replenish the cache when necessary.
Cache Low Threshold
Integer.
When this number of EPC's remain in the cache, replenish it.
Specifies where to send requests to fill the cache. For example, tag-commissioning-static-replenisher:Replenishment Request
PCSpec
PCSpec
Specifies where to send the PCSpec with the created cache.
Error
Error
Specify the error message destination.
For example, my-error-sender: Input.
This port will send an output if an error occurs in the module processing. This port may be used to indicate any kind of error in an edgeflow.
Module Inputs
PCSpec Request
URI String
Request for the PCSpec with the appropriate cache name in it.
Replenishment
URI String List
This port receives EPCs. When it receives EPCs, it checks to see if it is waiting for this response (initiated because of cache low notification or because of cache setup request).
If it is waiting for the response, it creates or replenishes the cache.
EPCIS Aggregation Event Generator
You can use this module to generate an EPCIS aggregation event for a given set of EPCs.
An EPCIS event is an observation of EPC-related activity, expressed at the business level. EPCIS events typically have four informational aspects: what (which EPCs or other entities participated in the event), when (the date and time of the event), where (the location where the event took place and where the entities are expected to be afterward), and why (what business transaction was taking place and what is the business condition of the entities afterward).
Consider the following usage:
A Tag List Filter module takes the ECReports produced by the ECSpec, extracts the tag information and sends it to the TagList port of an EPCIS Aggregation Event Generator module.
The EPCIS Aggregation Event Generator creates an aggregation for the tags it receives from the Tag List Filter. The aggregation event may be sent to an EPCIS system.
Note:
As described in the EPCglobal EPCIS (Electronic Product Code Information Service) Frequently Asked Questions document, the EPCIS Data Model specifies a standard way to represent visibility information about physical objects, including descriptions of product movements in a supply chain. See that document for information about the Business Step, Disposition, Read Point, Business Location, and Business Transaction fields.
The EPCIS Aggregation Event Generator module fields are shown in Table 3-9.
Type of module. Values are chosen from a list of module types.
Initial State
Started/Stopped
Specify the state of the module at startup. The default is Started.
Parent Include Patterns
EPC EPC Pattern
Any URI
Required for add or delete action on the aggregation event.
The module looks for EPCs matching these patterns in the input it receives and use the EPC that matches as the parent id. EPC patterns, EPC ID patterns, EPC, or any URI may be specified.
For example, urn:epc:pat:gid-64-i:*.*.1
If a non-EPC URI is specified, it should be the only value specified and it is used as the parent id field in the generated aggregation event.
Parent Exclude Patterns
EPC Patterns
Valid EPC patterns or EPC identity patterns must be specified. EPCs matching these patterns will be excluded from being the parent ID.
Children Include Patterns
EPC patterns EPC ID Patterns EPC
If specified, only EPCs matching these patterns will be used as child EPCs in the aggregation event.
Children Exclude Patterns
EPC patterns EPC ID Patterns EPC
EPC's that match the patterns will be excluded from the child EPCs list.
EPCIS Event Fields
Action
ADD DELETE OBSERVE
Required. Specify ADD, DELETE, or OBSERVE for an event action.
Read Point
URI
Read point URI that is used in the generated Aggregation Event.
Business Location
URI
Business location URI that is used in the generated Aggregation Event. For example, urn:acmecorp:bizLocation:store1.salesfloor
Business Step
URI
The business process step that was occurring when the event was captured.
Disposition
URI
Disposition URI that is used in the generated Object Event.
Business Transactions
Transaction Type/Transaction ID
Business transaction type and ID.
Event Extensions
Namespace/Name/Value
List of namespace-name-value tuples included as extensions in the object event.
Module Outputs
EPCIS Event
EPCIS Document
Specifies where to send the EPCIS aggregation event.
For example, it might send the aggregation to an Aggregation Reconciler module Aggregation input.
Template Event
EPCIS Document
The template event received on the Template Event input (and then applied) is sent out from this port.
The template event is sent as an acknowledgement to a template event message.
This may be used by other modules or external applications to make sure that the template is applied before starting to send tags to the module.
Module State
Working Idle
Specify where to send an output string representing status of the module.
There are two possible states:
Working: Sent every time the module moves into the state where it is processing messages.
Idle: Send every time the modules moves into the state where it is not processing messages.
Error
Error
Specify the error message destination.
For example, my-error-sender: Input.
This port will send an output if an error occurs in the module processing. This port may be used to indicate any kind of error in an edgeflow.
Module Inputs
Tag List
Tag List
List of tags used to generate aggregation events.
For example, the Tag List might be sent by a Tag List Filter module.
Template Event
EPCIS Document
This port accepts an EPCIS Document with an aggregation event. This port may be used to dynamically change the parameters for generating an aggregation event. The values specified through the template override those specified as configuration on the module. EPC values and action on the template event is ignored.
If values are null on the template event, the values configured on the module are used. If the fields Read Point, Business Location, Business Step, and Disposition are non-null on the template event, they override the values specified at module configuration.
Business Transactions and Event Extensions specified on the template event are added to those specified as part of the module configuration.
The Template Event is typically generated by an external source.
Start
Any Message Type
Indicates that the module should start processing messages it receives at the Tag List input port.
If the module did not come up in started mode (initial state), the module will ignore messages on the Tag List port until it gets start message. This port accepts any message type.
A message on this port changes the module state from Idle to Working.
Stop
Any Message Type
Indicates that the module should start processing messages it receives at the Tag List input port.
After it receives a stop message, the module ignores messages on the Tag List port until it receives a start message again. A message on this port changes the module state from Working to Idle.
EPCIS Manifest Query
This module gets a manifest, which specifies what the content of an aggregation should be, from an EPCIS repository. It determines the manifest based on the latest ADD and DELETE aggregation event for the parent ID on the input aggregation.
When the exact IDs expected in an aggregation are known, the URI is the EPC ID. If only the item type is known, the URI is an EPC ID Pattern identifying the type. The module produces an error if the (input) aggregation does not have a parent ID.
The EPCIS Manifest Query module fields are shown in Table 3-10. The generated manifest is a map from URI to the expected-count for the URI.
Table 3-10 EPCIS Manifest Query Module
Name
Type/Value
Description
Module Name
String
Unique user-defined identifier for this module.
Module Type
EPCIS Manifest Query
Type of module. Values are chosen from a list of module types.
EPCIS WSDL URL
URL
Required. The WSDL URL to connect to the EPCIS.
The default is http://localhost:7001/epcis/EPCIS?WSDL
Username
Username required to access the EPCIS database.
Password
Password required to access the EPCIS database.
Connection Timeout
Milliseconds
Required. Time, in milliseconds, to wait for response from EPCIS. Must be greater than zero.
Module Outputs
Manifest
Manifest
The generated manifest is sent through this port.
Error
Error
Specify the error message destination.
For example, my-error-sender: Input.
This port will send an output if an error occurs in the module processing. This port may be used to indicate any kind of error in an edgeflow.
Module Inputs
Aggregation
EPCIS Document
Aggregation for which manifest is to be calculated. Possibly output from an EPCIS Aggregation Event Generator module.
EPCIS Object Event Generator
This module is used to generate an EPCIS Object Event from a given list of EPCs.
An EPCIS event is an observation of EPC-related activity, expressed at the business level. EPCIS events typically have four informational aspects: what (which EPCs or other entities participated in the event), when (the date and time of the event), where (the location where the event took place and where the entities are expected to be afterward), and why (what business transaction was taking place and what is the business condition of the entities afterward).
You might use a Directional Filter module or output from a Tag List Filter module to send the A to B Tag List to the Object Event Generator module. The generated EPCIS object event may be sent to an EPCIS system.
Note:
As described in the EPCglobal EPCIS (Electronic Product Code Information Service) Frequently Asked Questions document, the EPCIS Data Model specifies a standard way to represent visibility information about physical objects, including descriptions of product movements in a supply chain. See that document for information about the Business Step, Disposition, Read Point, Business Location, and Business Transaction fields.
The EPCIS Object Event Generator module fields are shown in Table 3-11.
Table 3-11 EPCIS Object Event Generator Module
Name
Type/Value
Description
Module Name
String
Unique user-defined identifier for this module.
Module Type
EPCIS Object Event Generator
Type of module. Values are chosen from a list of module types.
Initial State
Started/Stopped
Specify the state of the module when started.
EPCIS Event Fields
Action
ADD DELETE OBSERVE
Required. Specify ADD, DELETE, or OBSERVE for an action.
Read Point
URI
Read point URI that is used in the generated Aggregation Event.
Business Location
URI
Business location URI that is used in the generated Aggregation Event.
For example, urn:acmecorp:bizLocation:store1.salesfloor
Business Step
URI
The business process step that was occurring when the event was captured.
Disposition
URI
Disposition URI that is used in the generated Object Event.
Business Transactions
Name/Value
Business transaction type and ID.
Event Extensions
Namespace/Name/Value
List of namespace-name-value tuples that is included as extensions in the object event.
Module Outputs
EPCIS Event
EPCIS Document
Specifies where to send the generated event. For example, you might use an External Sender module to send the event to an EPCIS system.
Template Event
EPCIS Document
The template event received on the Template Event input (and then applied) is sent out from this port.
The template event is sent as an acknowledgement to a template event message.
This may be used by other modules or external applications to make sure that the template is applied before starting to send tags to the module.
Module State
Working Idle
Specify where to send an output string representing status of the module.
For example, my-module-accumulator: Finish.
There are two possible states:
Working: Sent every time the module moves into the state where it is processing messages as a result of a Start input.
Idle: Send every time the modules moves into the state where it is not processing messages as a result of a Stop input.
Error
Error
Specify the error message destination.
For example, my-error-sender: Input.
This port will send an output if an error occurs in the module processing. This port may be used to indicate any kind of error in an edgeflow.
Module Inputs
Tag List
Tag List
List of tags used to generate object events, such as an A to B Tag List output by the Directional Filter module.
Template Event
EPCIS Document
This port accepts an EPCIS Document with an object event. This is used to dynamically change the parameters for generating an object event.
The values specified through the template override most of the ones specified as configuration on the module. EPC values and action on the template event is ignored. If values are null on the template event, the values configured on the module are used.
If the fields Read Point, Business Location, Business Step, and Disposition are non-null on the template event, they override those specified in the module configuration.
Business Transaction and Event Extensions specified on the template event are added to those specified in the module configuration.
Start
Any Message Type
A message to this port is a signal to the module to start generating object events. Depending on how the module is configured, the module will ignore messages on the Tag List port until it gets start message. This port accepts any message type. A message on this port changes the module state from Idle to Working.
Stop
Any Message Type
A message to this port signals the module to stop generating object events. The module ignores messages on the Tag List port until it receives a start message again. A message on this port changes the module state from Working to Idle.
External Sender
This module is used to send a message from edgeflow modules to external destinations.
This module has one input port, Input, which takes messages of any type and processes them as follows:
If it receives an XML input, it will apply the XSLT transformation and send the result to the output.
If it receives String input, it will send it as-is to the output.
If it receives other types, it will try to serialize it. If it serializes successfully, it applies any XSLT transformation and sends the XML to the output port. If an error occurs trying to serialize, error details are sent on the error port.
The External Sender module fields are shown in Table 3-12.
Table 3-12 External Sender Module
Name
Type/Value
Description
Module Name
String
Unique user-defined identifier for this module.
Module Type
External Sender
Type of module. Values are chosen from a list of module types.
XSLT File
Path of File Containing Stylesheet
Stylesheet to transform message. The file that contains the stylesheet must be on the Edge Server system, and the path must be absolute path.
Destination URI's
URI
Required. The external destination to which to send the message.
For example, in the case of an error message: console:PALLET-STATION-ERROR
You could instead configure this output to use HTTP or JMS to send the events, using the appropriate format.
Module Outputs
Error
Error
Specify the error message destination.
For example, my-error-sender: Input.
This port will send an output if an error occurs in the module processing. This port may be used to indicate any kind of error in an edgeflow.
Module Inputs
Input
Any message type
The message to send to the external destination.
HTTP Receiver (One Way)
You use the HTTP Receiver (One Way) module to send messages from external systems to edgeflow modules. The full URL specifies the target module and input port. The HTTP client will receive a response whether the message was delivered to the target module or not.
The HTTP Receiver module fields are shown in Table 3-13.
Table 3-13 HTTP Receiver (One Way) Module
Name
Type/Value
Description
Module Name
String
Unique user-defined identifier for this module.
Module Type
HTTP Receiver (One Way)
Type of module. Values are chosen from a list of module types.
TCP Port
Port number between 1 and 65535, inclusive.
Required. The TCP port the module listens on.
URL Suffix
Unique identifier for this HTTP Receiver
Required. The unique URL suffix to be used with this HTTP Receiver. For example, if the URL suffix is specified as tag-commissioning, HTTP messages to URL http://<link>:<port>/ tag-commissioning will be sent.
Parse Request XML
True False
This parameter indicates whether input XML should be parsed or not. When True, output is an object. When false, output is XML.
Request XSLT File
XSLT
Style sheet to apply to XML. Specify the full path to the file on the Edge Server with the XSLT.
Module Outputs
Output
Specifies where to send the message. For example, if the message is a bar code, you might want to send it to the Bar Code input of a Bar Code Decoder module, such as tag-commissioning-barcode:Bar Code
Error
Specify the error message destination.
For example, my-error-sender: Input.
This port will send an output if an error occurs in the module processing. This port may be used to indicate any kind of error in an edgeflow.
HTTP Receiver (Request Response)
You can use the HTTP Receiver (Request Response) module to send a message to any module port and return the output from that module (or another module) in the response. The HTTP client will receive a response whether the message was delivered to the target module or not.
The HTTP Receiver (Request Response) module fields are shown in Table 3-14.
Type of module. Values are chosen from a list of module types.
TCP Port
Port number between 1 and 65535, inclusive.
Required. The TCP port the module listens on.
URL Suffix
Unique identifier for this HTTP Receiver
Required. The unique URL suffix to be used with this HTTP Receiver.
For example, tag-commissioning.
Parse Request XML
True False
When True, output is an object. When false, output is XML.
Request XSLT File
XSLT
Style sheet to apply to XML.
Response Timeout
Milliseconds
Required. The amount of time to wait to receive the response message that is to be sent back to the HTTP client. The default is 500. Must be greater than zero.
Response XSLT File
XSLT
XSLT file to apply to response XML.
Module Outputs
Output
Specifies where to send the message.
For example, if the message is a bar code, you might want to send it to the Bar Code input of a Bar Code Decoder module, such as tag-commissioning-barcode:Bar Code.
Error
Specify the error message destination.
For example, my-error-sender: Input.
This port will send an output if an error occurs in the module processing. This port may be used to indicate any kind of error in an edgeflow. .
Module Inputs
Response
Any message type
The input port can receive any type of message to send as the response to the HTTP client, and it uses the type to determine what to send:
If it receives an object of type java.lang.String, it sends the string as the response.
If it receives a message of type XMLDocument, it sends the XML as the output.
If it receives any other type, it will make a best effort to serialize, and sends the result of the serialization as the result.
Numeric Display (EDI111 LED)
You can use the Numeric Display module to display a count or similar information on a device.
The Numeric Display module fields are shown in Table 3-15.
Table 3-15 Numeric Display (EDI111 LED) Module
Name
Type/Value
Description
Module Name
String
Unique user-defined identifier for this module.
Module Type
Numeric Display EDI111 LED
Type of module. Values are chosen from a list of module types.
Device Host
Required. The host name for the device.
Device Port
Port number between 0 and 65535, inclusive.
Required. The TCP port used by the device.
Initial Message
Characters
Character value displayed on the LED when the module is initially started. Can be empty.
Display Duration
Milliseconds. Greater than or equal to zero.
Time that the message will be displayed on the LED. The default is 0, which indicates infinite time.
Flash Period
Milliseconds. Greater than or equal to zero.
Time period for which messages will be on or off in flash mode. The message will flash for "display duration" time with an on and off period defined by "flash period." The default is 500.
Module Outputs
Error
Error
Specify the error message destination.
For example, my-error-sender: Input.
This port will send an output if an error occurs in the module processing. This port may be used to indicate any kind of error in an edgeflow.
Module Inputs
Steady Message
Number
Display the input message in steady mode for time defined by display duration.
Flash Message
Number
Display the input message in flash mode for time defined by display duration.
Reset
Any message type
Clear the display.
Preset Message (Dynamic)
You can use the Preset Message module to to send a preset message to its destination. The message sending activity may be because of a trigger activation or other event. The message to be sent is preset through the message content input port. Note the following:
If the send message is received but there is no preset message, the module generates an error message to declare that the message was not set.
If a clear message is received, the existing preset message is cleared.
The Preset Message (Dynamic) module fields are shown in Table 3-16.
Table 3-16 Preset Message (Dynamic) Module
Name
Type/Value
Description
Module Name
String
Unique user-defined identifier for this module.
Module Type
Preset Message (Dynamic)
Type of module. Values are chosen from a list of module types.
Module Outputs
Message
Any message type
Specify the destination module and port.
Error
Error
Specify the error message destination.
For example, my-error-sender: Input.
This port will send an output if an error occurs in the module processing. This port may be used to indicate any kind of error in an edgeflow.
Module Inputs
Message Content
Any message type.
Sets the content of the message to be sent on a "send" input.
Clear
Any message type.
Clear signal clears the message content.
Send
Any message type.
Send signal sends the message content.
Preset Message (Static)
You can use the Preset Message module to to send a preset, static message to its destination. The message sending activity may be because of a trigger activation or other event.
If the send message is received but there is no static message, an empty string is sent.
The Preset Message (Static) module fields are shown in Table 3-17.
Table 3-17 Preset Message (Static) Module
Name
Type/Value
Description
Module Name
String
Unique user-defined identifier for this module.
Module Type
Preset Message (Static)
Type of module. Values are chosen from a list of module types.
Message Content
String
Required. User-defined message content.
Module Outputs
Message
String
Specify the message destination.
Module Inputs
Send
Any message type
A message on this port sends the configured message.
Serial Number Replenisher (BEA Service)
You can use the Serial Number Replenisher (BEA Service) module to contact the RFID Enterprise Server Serial Number Assignment Service to get unique EPC's.
As a possible use, you might use the EPC Cache Manager together with the Serial Number Replenisher (Static) module or a Serial Number Replenisher (BEA Service) module as follows:
Send the Replenishment Request output of the EPC Cache Manager module to the Replenishment Request input of a Serial Number Replenisher (BEA Service) module.
Send the resulting Replenishment output from a Serial Number Replenisher module to the Replenishment input of the EPC Cache Manager module.
The Serial Number Replenisher module fields are shown in Table 3-18.
Table 3-18 Serial Number Replenisher (BEA Service) Module
Name
Type/Value
Description
Module Name
String
Unique user-defined identifier for this module.
Module Type
Serial Number Replenisher (BEA Service)
Type of module. Values are chosen from a list of module types.
BEA Service URL
URL
Required. URL of the Serial Number Assignment Service
Username
User name for the Serial Number Assignment Service.
Password
Password for the Serial Number Assignment Service
Replenishment Size
Number. Must be greater than zero.
Required. The number of EPCs to check out of the Serial Number Assignment Service.
You use this together with the Cache Low Threshold field of the EPC Cache Manager module to manage the cache.
Range Selection Criteria
Name/Value
Additional range criteria can be specified here.
Module Outputs
Replenishment
URI String
Specifies where to send the serial numbers to satisfy the replenishment request. For example. tag-commissioning-cachemgr:Replenishment
The EPCs checked out from the serial number assignment service will be sent out on this port. This is a list of Strings representing the EPC range.
Error
Error
Specify the error message destination.
For example, my-error-sender: Input.
This port will send an output if an error occurs in the module processing. This port may be used to indicate any kind of error in an edgeflow.
Module Inputs
Replenishment Request
URI String
This port accepts EPC pattern as input. The EPC pattern must have the fields to identify the EPC class. Since this module uses the serial number assignment service, it handles only types supported by that service (SSCC and GTIN).
Serial Number Replenisher (Static)
You can use the Serial Number Replenisher (Static) module to set a fixed range of serial numbers of any EPC type.
As a possible use, you might use the EPC Cache Manager together with the Serial Number Replenisher (Static) module or a Serial Number Replenisher (BEA Service) module as follows:
Send the Replenishment Request output of the EPC Cache Manager module to the Replenishment Request input of a Serial Number Replenisher (Static) module.
Send the resulting Replenishment output from a Serial Number Replenisher module to the Replenishment input of the EPC Cache Manager module.
The Serial Number Replenisher (Static) module fields are shown in Table 3-19.
Table 3-19 Serial Number Replenisher (Static) Module
Name
Type/Value
Description
Module Name
String
Unique user-defined identifier for this module.
Module Type
Serial Number Replenisher (Static)
Type of module. Values are chosen from a list of module types.
Serial Range Start
Number. Must be greater than or equal to zero.
Required. EPC start range of serial numbers.
You use this together with the Cache Low Threshold field of the EPC Cache Manager module to manage the cache.
Serial Range End
Number. Must be greater than or equal to zero.
Required. EPC end range of serial numbers.
You use this together with the Cache Low Threshold field of the EPC Cache Manager module to manage the cache.
Module Outputs
Replenishment
URI String
Specifies where to send the serial numbers to satisfy the replenishment request. For example, tag-commissioning-cachemgr:Replenishment
Error
Error
Specify the error message destination. For example, my-error-sender: Input.
This port will send an output if an error occurs in the module processing. This port may be used to indicate any kind of error in an edgeflow.
Module Inputs
Replenishment Request
URI String
Message requesting cache replenishment. This might typically come from the Replenishment Request output of the EPC Cache Manager module
Stack Light
You can use the Stack Light module to turn the lights on a stack light on or off.
Note:
The implementation of the Stack Light module in this release is significantly enhanced from the
Stack Light Module of previous versions.
The Stack Light module fields are shown in Table 3-20.
Table 3-20 Stack Light Module
Name
Type/Value
Description
Module Name
String
Unique user-defined identifier for this module.
Module Type
Stack Light
Type of module. Values are chosen from a list of module types.
Logical Reader Name
Reader Name
Required. The logical name for the stack light device.
Turn Other Colors Off
True/False
Required. Specifies whether other colors should be turned off on an input message to turn on one color.
Red Duration
Milliseconds
The time in milliseconds for which the light should be lit. The default is zero, which turns the light on indefinitely. Available values increment by 5000 milliseconds, from zero to 40,000.
Amber Duration
Milliseconds
The time in milliseconds for which the light should be lit. The default is zero, which turns the light on indefinitely. Available values increment by 5000 milliseconds, from zero to 40,000.
Green Duration
Milliseconds
The time in milliseconds for which the light should be lit. The default is zero, which turns the light on indefinitely. Available values increment by 5000 milliseconds, from zero to 40,000.
Blue Duration
Milliseconds
The time in milliseconds for which the light should be lit. The default is zero, which turns the light on indefinitely. Available values increment by 5000 milliseconds, from zero to 40,000.
White Duration
Milliseconds
The time in milliseconds for which the light should be lit. The default is zero, which turns the light on indefinitely. Available values increment by 5000 milliseconds, from zero to 40,000.
Module Outputs
Error
Error
Specify the error message destination.
For example, my-error-sender: Input.
This port will send an output if an error occurs in the module processing. This port may be used to indicate any kind of error in an edgeflow.
Module Inputs
Red On
Any message type
Turn red on.
Red Off
Any message type
Turn red off.
Amber On
Any message type
Turn amber on.
Amber Off
Any message type
Turn amber off.
Green On
Any message type
Turn green on.
Green Off
Any message type
Turn green off.
Blue On
Any message type
Turn blue on.
Blue Off
Any message type
Turn blue off.
White On
Any message type
Turn white on.
White Off
Any message type
Turn white off.
Multi-light Control
URI String
This port is used to specify a complex pattern for turning on multiple color lights. This will take in URI string of the same format as expected by ALEPC API: urn:connecterra:stacklight:update=<update value>.
<update value> is a string consisting of 5 digits [0 - 9]. Each digit corresponds to one color. The order of colors in the string is as following: WHITE-BLUE-GREEN-AMBER-RED. The values are:
0 - turn off the light
9 - turn on indefinitely, until a different value is written.
X in [1 - 8] - turn on the light for 5 seconds times X.
For example, 01119:
Turns white off.
Turns blue, green, and amber on for 5 seconds each.
Turns red on indefinitely.
State Filter
You can use the State Filter module split the Working State output of other modules into distinct Working and Idle outputs.
For example, consider the Module State output of the EPCIS Object Event Generator module. The state for this module can be either Working or Idle, and it is up to the destination to parse the string to determine what the actual current state is.
The State Filter module provides this service for you: it receives the generic Module State as input, parses it, and splits in into distinct Working and Idle outputs.
The State Filter module fields are shown in Table 3-21.
Table 3-21 State Filter Module
Name
Type/Value
Description
Module Name
String
Unique user-defined identifier for this module.
Module Type
State Filter
Type of module. Values are chosen from a list of module types.
Module Outputs
Working State
Working/Idle
Specifies the destination of the working message.
Idle State
Working/Idle
Specifies the destination of the Idle message.
Error
Specify the error message destination.
For example, my-error-sender: Input.
This port will send an output if an error occurs in the module processing. This port may be used to indicate any kind of error in an edgeflow.
Module Inputs
State
Working/Idle
Receives a Working or Idle message from another module.
Tag Accumulator
You can use the Tag Accumulator module to accumulate tags for a period of time, or for a period of time delineated by start and end messages. The module starts collecting and keeping track of tags seen on a start message or at start-up time. The module sends the collected tags on a message to the send port, or after a configured amount of time.
The Tag Accumulator module fields are shown in Table 3-22.
Table 3-22 Tag Accumulator Module
Name
Type/Value
Description
Module Name
String
Unique user-defined identifier for this module.
Module Type
Stack Light
Type of module. Values are chosen from a list of module types.
Always Accumulating
True/False
Specify if accumulation starts when the module is started. The default is false.
Reset on Start
True/False
Specifies if the accumulated tags should be reset to empty on every start input message. The default is true.
Suppress Empty Result
True/False
Specify whether empty results are reported; that is, sent to the Final Tag List output destination. The default is true.
Finish When
Duration Elapses
Milliseconds
Sends out the final tag list when the specified duration elapses. Must be greater than or equal to zero. The default is zero, which is infinite time.
Stable Set
Milliseconds
If the accumulated list does not change in the time specified, the list is considered final and sent out. Must be greater than or equal to zero. The default is zero, which is infinite time.
Stable Set Count
Milliseconds
If the current count did not change for the Stable Set duration, and the current accumulation count is greater than or equal to this count, then final tag list is sent.
A zero value (the default) means disregard the count value and apply the stable set timeout for any count. Must be greater than or equal to zero.
Module Outputs
Final Tag List
Tag List
The final Tag List is sent when the module receives a send request or when the configured time has expired.
Running Tag List
Tag List
This outputs the Tag List accumulated to this point. Input on the add or delete port will cause this output to be sent out.
Module State
Working/Idle
Specify where to send an output string representing status of the module. For example, my-module-accumulator: Finish.
The status may be:
Working: This is sent every time the module moves into accumulating state.
Idle: This is sent every time the module moves into non-accumulating state.
Error
Error
Specify the error message destination.
For example, my-error-sender: Input.
This port will send an output if an error occurs in the module processing. This port may be used to indicate any kind of error in an edgeflow.
Module Inputs
Add
Tag List
This port accepts a Tag List and adds them to the list of collected tags. It will ignore messages that are not of this type.
Delete
Tag List
This port accepts a Tag List and deletes those from the list of collected tags. It will ignore messages that are not of this type
Start
Any message type
A message on this port enables the module to accumulate tags. Any message type is accepted
Finish
Any message type
A message on this port triggers the module to output final tags and reset the list. If the module is configured with "Always Accumulating" set to false, the send message will also put the module back to the state where it will not be accumulating Tags. This port accepts messages of any type.
Tag Counter
The Tag Counter module accepts an ECReport, a PCWriteReport, or tag list and outputs a count of the tags in the input.
For example, a Tag Counter module can take the ECReports produced by an ECSpec and output the number of tags in the input.
The Tag Counter module fields are shown in Table 3-23.
Table 3-23 Tag Counter Module
Name
Type/Value
Description
Module Name
String
Unique user-defined identifier for this module.
Module Type
Tag Counter
Type of module. Values are chosen from a list of module types.
ECSpec Report Names
ECSpec Report Names
If specified, tags are counted only from ECReports with the specified name. If nothing is specified here, tags from all reports will be counted.
Module Outputs
Count
Number
Specify the location to send the tag count.
For example, smart-shelf-counter:Add
Error
Error
Specify the error message destination.
For example, my-error-sender: Input.
This port will send an output if an error occurs in the module processing. This port may be used to indicate any kind of error in an edgeflow.
Module Inputs
Input
The module accepts ECReports, PCWriteReport, and tag lists.
If the ECSpec Report Names configuration field is supplied, it identifies the particular report name (from the ECReport) from which to get input.
Tag List Filter
The Tag List Filter module extracts tag information from ECReports, or PCWriteReports and creates a tag list.
For example, a Tag List Filter module can take the ECReports produced by the ECSpec, extract the tag information and send it to the Add port of a Tag Accumulator module.
The Tag List Filter module fields are shown in Table 3-24.
Table 3-24 Tag List Filter Module
Name
Type/Value
Description
Module Name
String
Unique user-defined identifier for this module.
Module Type
Tag List Filter
Type of module. Values are chosen from a list of module types.
ECSpec Report Names
ECSpec Report Name
If specified, tags are counted only from ECReports with the specified name. If nothing is specified here, tags from all reports will be counted.
Module Outputs
Tag List
Tag List
Specify the destination for the tag list generated by the module.
For example, pallet-station-accumulator:Add
Error
Error
Specify the error message destination.
For example, my-error-sender: Input.
This port will send an output if an error occurs in the module processing. This port may be used to indicate any kind of error in an edgeflow.
Module Inputs
Input
ECSpecReport or PCWriteReport
The module accepts ECReports, PCWriteReport, and tag lists.
If the ECSpec Report Names configuration field is supplied, it identifies the particular report name (from the ECReport) from which to get input.
Tag Verifier
You can use the Tag Verifier module to verify that tags are readable. It takes in tags to be verified and tags read, and produces a list of verified tags, missing tags, extra tags, and a Boolean indicating whether the verification was successful.
The Tag Verifier module fields are shown in Table 3-25.
Table 3-25 Tag Verifier Module
Name
Type/Value
Description
Module Name
String
Unique user-defined identifier for this module.
Module Type
Tag Verifier
Type of module. Values are chosen from a list of module types.
Message Pattern
One Actual Per Expected/ Multiple Actual Per Expected
Specifies how to match actual tags input with expected tags input. "One" indicates that for every expected input there will be one actual input. Multiple indicates that it will look in subsequent actual messages for tags in the expected input.
Verification Timeout
Milliseconds. Greater than or equal to zero.
Time to wait for verification. If time elapses, an error message is generated.
Module Outputs
All Expected Verified
Boolean
Boolean indicating whether all tags were verified or not.
Verified Tags
Tag List
Tag list of verified tags.
Missing Tags
Tag List
Tag list of missing tags
Extra Tags
Tag List
Tag list of extra tags.
Error
Error
Specify the error message destination.
For example, my-error-sender: Input.
This port will send an output if an error occurs in the module processing. This port may be used to indicate any kind of error in an edgeflow.
Module Inputs
Expected
Tag List
Tag list of expected tags.
Actual
Tag List
Tag list of actual tags.
Trigger Receiver
You can use Trigger Receiver modules to configure an edgeflow module to receive a trigger. Triggers are typically used by counted input ports, such as start, stop, clear, and send.
The Trigger Receiver module fields are shown in Table 3-26.
Table 3-26 Trigger Receiver Module
Name
Type/Value
Description
Module Name
String
Unique user-defined identifier for this module.
Module Type
Trigger Receiver
Type of module. Values are chosen from a list of module types.
Initial State
Started/Stopped
Specify if the module accepts triggers (started) or not. The default is started.
Trigger URI
URI
Required. URI for a trigger configured within the Edge Server. See Triggers for additional information.
Module Outputs
Trigger
Trigger
Specifies where to send the trigger.
Module Inputs
Start
Any message type.
Accepts any type message and subscribes the module to the trigger.
Stop
Any message type.
Accepts any type message and causes the module to unsubscribe from the trigger.
Wait For Time
You can use the Wait For Time module to hold (queue) input before sending it. It will discard the first message on the hold queue if a discard message is received.
The size of the queue is configurable.
The Wait For Time module fields are shown in Table 3-27.
Table 3-27 Wait For Time Module
Name
Type/Value
Description
Module Name
String
Unique user-defined identifier for this module.
Module Type
Wait For Time
Type of module. Values are chosen from a list of module types.
Wait Duration
Milliseconds
Required. The amount of time to wait before sending message. Must be greater than zero.
Queue Size
Number of messages
Required. Message queue size. Must be greater than zero.
Module Outputs
Message
The triggered message.
Error
Error
Specify the error message destination.
For example, my-error-sender: Input.
Module Inputs
Message
Any message type.
Message to be added to the queue.
Discard
Any message type.
Message to discard first message in queue.
Wait For Trigger
You can use the Wait For Trigger module to hold (queue) input until a send or discard trigger is received. If there is no message on the queue and a send trigger is received, an error is generated.
The Wait For Trigger module fields are shown in Table 3-28.
Table 3-28 Wait For Trigger Module
Name
Type/Value
Description
Module Name
String
Unique user-defined identifier for this module.
Module Type
Wait For Trigger
Type of module. Values are chosen from a list of module types.
Queue Size
Number of messages
Required. Size of the message queue. Must be greater than zero.
Timeout
Milliseconds
Time to wait before a discard or send of the message is received. When this time elapses, message is discarded and error is sent. Must be greater than or equal to zero. Default is zero, which means infinite time.
Module Outputs
Message
Any message type.
The generated message.
Error
Error
Specify the error message destination.
For example, my-error-sender: Input.
This port will send an output if an error occurs in the module processing. This port may be used to indicate any kind of error in an edgeflow.
Module Inputs
Message
Any message type.
The message to be sent on "send" input message.
Send
Any message type.
The command to send message. If no message is present when the send message is received, an error is generated.
Discard
Any message type.
Clears the first message in the queue.
Write Tag
This port accepts an EPC or EPC Pattern. If it receives an EPC on this port, it will program a tag with that EPC and output the PCWriteReport.
If the module receives an EPC pattern as input, it will send that to other modules (such as EPC Cache Manager) through the PCspec request output port to construct the PCSpec required to program a tag for the input item type. It will then program a tag using that PCSpec and output the PCWriteReport.
For example, in the case of EPC pattern you might use the Write Tag module together with the EPC Cache Manager module as follows:
The Write Tag module sends the PCSpec Request output to the EPC Cache Manager module PCSpec Request input.
The EPC Cache Manager module then returns the PCSpec, with the appropriate cache name specified in it, to the PCSpec input of the Write Tag module via the PCSpec output.
The write tag module uses the PCSpec to write the tag, and then generates the PCWriteReport.
The Write Tag module fields are shown in Table 3-29.
Table 3-29 Write Tag Module
Name
Type/Value
Description
Module Name
String
Unique user-defined identifier for this module.
Module Type
Write Tag
Type of module. Values are chosen from a list of module types.
Logical Reader Name
Reader Name
Required. Name of printer performing the write operation.
PCSpec Request Timeout
Milliseconds
Required. Time to wait for the PCSpec. Must be greater than or equal to zero. Default is zero.
Module Outputs
PCSpec Request
URI String
Specifies where to send the PCSpec Request.
If the module receives an EPC pattern as input, it will send that to other modules (such as EPC Cache Manager) through the PCspec request output port to construct the PCSpec required to program a tag for the input item type.
PCWriteReport
PCWriteReport
PCWriteReport produced by the print request.
Error
Error
Specify the error message destination.
For example, my-error-sender: Input.
Module Inputs
Write
URI String
This port accepts an EPC or EPC Pattern. If it receives an EPC on this port, it will program a tag with that EPC and output the PCWriteReport.
If it receives a pattern, it will send that to other modules (such as the EPC Cache Manager Module) through the PCspec request output port to construct the PCSpec required to program a tag for the input item type.
Setup
URI String
This port accepts EPCs or an EPC Pattern and creates and defines the PCSpec for the EPC Class of the input.
After being set up, the module is ready for further writes and those write operations for the same EPC class will be fast.
This is useful for high speed conveyor-type scenarios, where you want to set everything up before starting the operation.
You can use the XML Generator module to accept any input type (except Lists) and generate XML output. The Input port takes messages of Any (excluding Lists), String List, or Tag List.
The XML Generator module fields are shown in Table 3-30.
Table 3-30 XML Generator Module
Name
Type/Value
Description
Module Name
String
Unique user-defined identifier for this module.
Module Type
XML Generator
Type of module. Values are chosen from a list of module types.
Input Type
Any (Excluding Lists) String List Tag List
Specify the input type from the drop-down list.
Module Outputs
XML
XML
Specify the destination for the generated XML.
Error
Error
Specify the error message destination.
For example, my-error-sender: Input.
This port will send an output if an error occurs in the module processing. This port may be used to indicate any kind of error in an edgeflow.
Module Inputs
Input
Any message type
The input from which to generate XML.
XML Parser
You can use the XML Parser module to convert XML to a Java object. This module supports all of the object types known to the edgeflow framework or registered with the naming service.
The XML Parser module fields are shown in Table 3-31.
Table 3-31 XML Parser Module
Name
Type/Value
Description
Module Name
String
Unique user-defined identifier for this module.
Module Type
XML Parser
Type of module. Values are chosen from a list of module types.
Module Outputs
Output
Based on Input
Specifies where to send the output.
Error
Error
Specify the error message destination.
For example, my-error-sender: Input.
Module Inputs
Input
XML
XML input.
XML Transformer
This module takes XML as input and applies an XSLT to it to create transformed XML output.
The XML Transformer module fields are shown in Table 3-32.
Table 3-32 XML Transformer Module
Name
Type/Value
Description
Module Name
String
Unique user-defined identifier for this module.
Module Type
XML Transformer
Type of module. Values are chosen from a list of module types.
XSLT File
Required. The style sheet that is applied to the input XML file. The fully specified path to the file on the Edge Server with the XSLT must be specified here.
Module Outputs
XML
XML
The transformed XML file.
Error
Error
Specify the error message destination.
For example, my-error-sender: Input.
Module Inputs
Input
XML
The XML file to be transformed by the style sheet.