Information & Database System Laboratory EPCglobal Tag Data Translation - RFID Team 컴퓨터멀티미디어공학과 김성진
IDS Lab2 Contents Tag Data Translation (TDT) TDT Concept TDT Process TDT Process step Tag Data Standards TDT Markup API Examples SGTIN-96 ( Legacy -> Pure Identity )
IDS Lab3 TDT Concept The Tag Data Translation process translates one representation of EPC into another representation, within a particular coding scheme.
IDS Lab4 TDT Process (1) The fundamental concept of TDT is to automatically convert one representation of an EPC or a serialized legacy code and convert it into another representation as required.
IDS Lab5 TDT Process (2)
IDS Lab6 TDT Process (3)
IDS Lab7 TDT Process step (1) There are five fundamental steps to a translation 1. Use of the prefix matches and regular expression patterns to automatically detect the inbound representation and coding scheme of the supplied input value 2. Using the regular expression pattern to extract values of field from the input value 3. Manipulation of values of those fields in order to translate from the inbound representation to the outbound representation 4. Using the rules to calculate any additional fields required for the output 5. Using the ABNF grammar to format the required fields in the appropriate output representation
IDS Lab8 TDT Process step (2)
IDS Lab9 Tag Data Standards EPC Tag Data Standards specifications GID ( General Identifier ) SGTIN ( Serialized Global Trade Item Number ) SSCC ( Serial Shipping Container Code ) SGLN ( Serialized Global Location Number ) GRAI ( Global Returnable Asset Identifier ) GIAI ( Global Individual Asset Identifier ) DOD ( Department Of Defense )
IDS Lab10 TDT Markup (1) The key elements of the TDT markup
IDS Lab11 TDT Markup (2) TDT Markup used… Definition of Formats via Regular Expression Patterns and ABNF Grammar Determination of the inbound representation Specification of the outbound representation Specifying supplied parameter values Validation of values for fields and fields derived via rules Restricting and checking decimal ranges for values of fields Restricting and checking character ranges for values of fields Padding of fields Compaction and Compression of fields Names of fields used within the TDSv1.1r1.27 schemes Rules and Derived Fields Core Functions
IDS Lab12 API API Essentially two interfaces to consider for TDT software, Namely a client-side interface and maintenance interface Client API public String translate( String epcIdentifier, String parameterList, String outputFormat ) Throws : TDTFileNotFound, TDTFieldBelowMinimum etc. Maintenance API public void refreshTranslations()
IDS Lab13 Examples (1) SGTIN-96 ( Legacy -> Pure Identity ) SGTIN-96 Legacy Level grammar “’gtin=‘ indicatordigit companyprefix itemrefremainder checkdigit ‘;serial=‘ serial” Ex) gtin= ;serial= SGTIN-96 Pure Identity Level grammar “’urn:epc:id:sgtin:’ companyprefix ‘.’ itemref ‘.’ serial” Ex) urn:epc:id:sgtin:
IDS Lab14 Examples (2) SGTIN-96 Rules ( EXTRACT and FORMAT ) EXTRACT gtinprefixremainder <- SUBSTR( gtin, 1, 12 ) indicatordigit <- SUBSTR( gtin, 0, 1 ) itemrefremainder <- SUBSTR( gtinprefixremainder, companyprefixlength ) itemref <- CONCAT( indicatordigit, itemrefremainder ) companyprefix <- SUBSTR( gtinprefixremainder, 0, companyprefixlength ) FORMAT indicatordigit <- SUBSTR( itemref, 0, 1 ) itemrefremainder <- SUBSTR( itemref, 1 ) gtinprefix <- CONCAT( indicatordigit, companyprefix, itemrefremainder) checkdigit <- GS1CHECKSUM( gtinprefix )
IDS Lab15 Examples (3) Translation Process (1) Input : “ gtin= ;serial= ” (SGTIN- 96 Legacy) ParamList : “filter=0;companyprefixlength=7;taglength=96” Output : “PURE IDENTITY” ex) translate( Input, ParamList, Output );
IDS Lab16 Examples (4) Translation Process (2) 1. Read and parse the supplied parameters to extract the value ( filter = 0, companyprefix = 7, taglength = 96 ) 2. Detect the input scheme and level from the input value ( SGTIN-96 scheme and Legacy level ) 3. Determine the appropriate option by pattern matching on the input value or filter value ( option 12 )
IDS Lab17 Examples (5) Translation Process (3) 4. Run the sequence of rules denoted ‘EXTRACT’ for the inbound level gtinprefixremainder = SUBSTR(gtin, 1, 12 ) = indicatordigit = SUBSTR(gtin, 0, 1 ) = 0 itemrefremainder = SUBSTR(gtinprefixremainder, 7) = itemref = CONCAT(indicatordigit, itemrefremainder) = companyprefix = SUBSTR(gtinprefixremainder, 0, companyprefixlength) = 5. If the appropriate option is unknown, it should now be possible to set this from the definition of ‘optionkey’ and the values from the ‘extract’ definitions We selected option already.
IDS Lab18 Examples (6) Translation Process (4) 6. Determine the non-binary encoding for each field from the compaction attribute of the field elements and convert between binary, decimal, alphanumeric, ASCII etc. as required do not needed in this example 7. Run the sequence of rules denoted ‘format’ for the outbound level do not needed in this example 8. Format the outbound representation and return this urn:epc:id:sgtin:
IDS Lab19 수고하셨습니다.