660 likes | 896 Views
EPCglobal Training Suite. Application Level Events (ALE). EPCglobal Architecture Framework. Application Level Events (ALE). Responsibility of ALE Managing Reader operations Filtering and grouping the data collected by Readers Report data collection result in user specified format
E N D
EPCglobal Training Suite Application Level Events (ALE)
Application Level Events (ALE) • Responsibility of ALE • Managing Reader operations • Filtering and grouping the data collected by Readers • Report data collection result in user specified format • Reduce operation overhead of applications
ALE Services • Reader Configuration • Manage ALE readers. • Reading API • Set ECSpec and its operation. • Writing API • Set CCSpec and its operation. • Tag Configuration • Manage tag fields. • Access Control • Manage user permissions.
Reader Configuration • Base Reader • The physical reader that actually communicating with Tags • Composite Reader • The conceptual reader that contain one or more Base Readers and Composite Readers • Logical Reader • The abstract names that a client uses to refer to one or more Readers that have a single logical purpose
ALE Fundamental Concept • Spec • A set of operation rules and data formats specified by ALE Client • Report • A response sent from ALE to client at the conclusion of an event cycle or command cycle
Reading API • Define • Creating a new ECSpec and Storing the ECSpec in ALE for further use • Undefine • Deleting an existing ECSpec from ALE • Subscribe • Send a subscription request to ALE by choosing an ECSpec has defined in ALE • Subscribe once, execution many times • Unsubscribe • Canceling a subscription that has subscribed in ALE
Reading API • Poll • Send a request to ALE by choosing an ECSpec has defined in ALE • Poll once, execution one time • Immediate • Send a request with a ECSpec to ALE • Immediate once, execution one time • The ECSpec used in immediate will vanish after execution
ECSpec • ECSpec • Describes an event cycle and one or more reports that are to be generated from it • Contains … • One or more logical Readers • A boundary spec • One or more report spec
Boundary Spec • Boundary Spec • Specifies how the beginning and end of event cycles are to be determined • Parameters • startTriggerList and stopTriggerList (describes at next page) • repeatPeriod and duration • stableSetInterval • whenDataAvailable
Trigger • Trigger • Syntax • urn:epcglobal:ale:trigger:rtc:period.offset • urn:epcglobal:ale:trigger:rtc:period.offset.timezone • The period, in milliseconds, between consecutive triggers occurring within one day ( 1 period 86400000 ) • The offset, in milliseconds, between midnight and the first trigger delivered after midnight ( 0 offset period ) • The timezone in which to interpret “midnight” in the specification of the trigger timing (+hh:mm, -hh:mm, Z) • Example • urn:epcglobal:ale:trigger:rtc:60000. 0.+08:00 • Start at AM 00:00, repeats every minutes in Taiwan
Report Spec • ReportSpec • Specifies one report to be included in the list of reports that results from executing an event cycle • An ECSpec contains a list of one or more ECReportSpec instances • Fields • reportName, reportSet • filterSpec, groupSpec, output • reportIfEmpty, reportOnlyOnChange • statProfileNames
Report Output Spec • ReportOutputSpec • Specifies how the final set of EPCs is to be reported • includeEPC • The Tag represented in the epc-pure format • includeTag • The Tag represented in the epc-tag format • includeRawHex • The Tag represented in the epc-hex format • includeRawDecimal • The Tag represented in the epc-decimal format • includeCount • Giving the number of Tags in the group • fieldList • An ordered list of fields to include in the result
Filter Spec • FilterSpec • Specifies what Tags are to be included in the final report • includeExclude • Specifies whether the Tags that match designate pattern is inclusive or exclusive • fieldspec • Specifies which field of the Tag is considered in evaluating this filter • patList • An unordered list that specifies the patterns against which the value of the specified Tag field is to be compared
Group Spec • GroupSpec • Defines how filtered EPCs are grouped together for reporting • fieldspec • Specifies which field of the Tag is used for grouping • patternList • An unordered list that specifies the grouping patterns used to generate a group name from the value of the specified Tag field
Grouping • Grouping Pattern • Using for separating Tags into different groups • Only used in epc-pure and epc-tag format • The following field of * or X must also be a * or X • Syntax
Example urn:epc:pat:sgtin-96:*.X.*.*
Exercise • urn:epc:pat:sgtin-96:1.1.1.1 • urn:epc:pat:sgtin-96:2.1.1.2 • urn:epc:pat:sgtin-96:3.1.1.3 • urn:epc:pat:sgtin-96:4.1.1.4 • urn:epc:pat:sgtin-96:5.1.1.5 • urn:epc:pat:sgtin-96:6.1.2.1 • Filter pattern : urn:epc:pat:sgtin-96:*.1.1.* • Filter pattern : urn:epc:pat:sgtin-96:*.1.*.* • Group pattern: urn:epc:pat:sgtin-96:*.X.1.* • Group pattern: urn:epc:pat:sgtin-96:[2-3].X.X.*
ECReport • ECReport • The output from an event cycle
Writing API • Define • Creating a new CCSpec and Storing the CCSpec in ALE for further use • Undefine • Deleting an existing CCSpec from ALE • Subscribe • Send a subscription request to ALE by choosing an CCSpec has defined in ALE • Subscribe once, execution many times • Unsubscribe • Canceling a subscription that has subscribed in ALE
Writing API • Poll • Send a request to ALE by choosing an CCSpec has defined in ALE • Poll once, execution one time • Immediate • Send a request with a CCSpec to ALE • Immediate once, execution one time • The CCSpec used in immediate will vanish after execution
CCSpec • CCSpec • A complex type that describes a command cycle • Contains … • One or more logical Readers • A boundary spec • One or more command spec
Boundary Spec • BoundarySpec • Specifies how the beginning and end of command cycles are to be determined • Parameters • startTriggerList and stopTriggerList (What is Trigger?) • repeatPeriod and duration • noNewTagsInterval • tagsProcessedCount • afterError
Command Spec • CommandSpec (CmdSpec) • Attempts carry out the commands specified by the operation specifications on each of the tags selected by the filter specification • Fields • Name • filterSpec • opSpecs • reportIfEmpty • statProfileNames • FilterSpec • Specifies what Tags are to be processed by a CmdSpec
Operation Spec • OperationSpec (OpSpec) • Specifies an operation to perform on a Tag, such as reading a field, writing a field, or other Tag operation • Fields • opType • fieldspec • dataSpec • opName • The relation of opType, fieldspec, and dataSpec • (See next page)
Operation Type • OpType, Field Spec, and DataSpec
Operation Type • OpType, Field Spec, and DataSpec (cont.)
CCReport • CCReport • The output from a command cycle
Tag Memory API • Define • Creating a new TMSpec and Storing the TMSpec in ALE for further use • Undefine • Deleting an existing TMSpec from ALE
Tag Memory • Concept • The Fieldname, Datatype ,and Format defined by ALE is the way to access tag memory correctly • Fieldname is the name of fields in tag memory • Datatype is the encoding of tag memory fields • Format is the presentation of tag data