View Issue Details

IDProjectCategoryView StatusLast Update
000221510000-003: Address SpaceSpecpublic2015-01-16 00:01
ReporterPaul Hunkar Assigned ToWolfgang Mahnke  
PrioritynormalSeverityminorReproducibilityalways
Status closedResolutionfixed 
Target Version1.03Fixed in Version1.03 
Summary0002215: Add support for NormalizedString Datatype
Description

Support for a normalized Unicode string is required.

According to MSDN -
Some Unicode characters have multiple equivalent binary representations consisting of sets of combining and/or composite Unicode characters. The Unicode standard defines a process called normalization that returns one binary representation when given any of the equivalent binary representations of a character. Normalization can be performed with several algorithms, called normalization forms, that obey different rules, as described in Using Unicode Normalization to Represent Strings. The Win32 and the .NET Framework currently support normalization forms C, D, KC, and KD, as defined in Unicode Standard Annex #15: Unicode Normalization Forms. Normalized strings are typically evaluated with an ordinal comparison.

According to CCTS
Normalized string is a string that does not contain the carriage return (#xD), line feed(#xA) nor tab (#x9) characters.

From http://unicode.org/reports/tr15/
The W3C Character Model for the World Wide Web, Part II: Normalization [CharNorm] and other W3C Specifications (such as XML 1.0 5th Edition) recommend using Normalization Form C for all content, because this form avoids potential interoperability problems arising from the use of canonically equivalent, yet different, character sequences in document formats on the Web. See the W3C Requirements for String Identity, Matching, and String Indexing [CharReq] for more background.

The normalization standards have nothing to do with control characters – this standard describes them http://unicode.org/reports/tr29/

OPC UA defines a String to be:
Unicode character string that should exclude control characters that are not whitespaces (0x00 - 0x08, 0x0E-0x1F or 0x7F).

Although this definition does not seem to include all of the possible characters and probably requires a seperate mantis issue (or it code be fixed under this one, since it would be just a text clarification not a functional change)

Conclusion – we can pick one of the normalized formats (Form C probably) and make a subtype of string that is NormalizedString, since string already handles the control characters – this is assuming that the list of control characters is expanded for string.

TagsNo tags attached.
Commit Version
Fix Due Date

Relationships

related to 0002943 closedPaul Hunkar 10030: ISA-95 Remove string datatypes that are now defined in Part 3 
related to 0002944 closedWolfgang Mahnke 10000-005: Information Model Add formal description for new added data types in Part 3 

Activities

Jim Luth

2012-10-02 17:17

administrator   ~0004128

Agreed to add NormalizedString in telecon. Also Paul will create a separate Mantis issue to correct the list of control characters for the existing String type.

Jim Luth

2013-08-06 16:57

administrator   ~0004903

Paul Hunkar will provide Wolfgang the writeup for NormalizedString from the S95 spec for inclusion in Part 3.

Wolfgang Mahnke

2015-01-13 10:15

developer   ~0005718

fixed in 1.03 draft 06

Jim Luth

2015-01-16 00:01

administrator   ~0005766

Agreed to text edited in UA Meeting.

Issue History

Date Modified Username Field Change
2012-10-02 07:09 Paul Hunkar New Issue
2012-10-02 17:16 Jim Luth Project Feature Requests => 10000-003: Address Space
2012-10-02 17:16 Jim Luth Status new => assigned
2012-10-02 17:16 Jim Luth Assigned To => Wolfgang Mahnke
2012-10-02 17:17 Jim Luth Note Added: 0004128
2013-08-06 16:57 Jim Luth Note Added: 0004903
2014-08-26 15:41 Jim Luth Target Version => 1.03
2014-08-27 12:25 Karl Deiretsbacher Category (No Category) => Spec
2015-01-13 10:15 Wolfgang Mahnke Note Added: 0005718
2015-01-13 10:15 Wolfgang Mahnke Status assigned => resolved
2015-01-13 10:15 Wolfgang Mahnke Resolution open => fixed
2015-01-15 18:36 Jim Luth Relationship added related to 0002943
2015-01-15 20:30 Wolfgang Mahnke Relationship added related to 0002944
2015-01-16 00:01 Jim Luth Note Added: 0005766
2015-01-16 00:01 Jim Luth Status resolved => closed
2015-01-16 00:01 Jim Luth Fixed in Version => 1.03