1328   Limitation on the size of data type templates identifiers

Created: 12 Nov 2014

Status: In Force (green)

Part: Part 6 (2009-12; Edition 2)

Links:

Page:

Clause: 9.5.2, 9.5.3, 9.5.6

Paragraph:

Category: Issue may impact interoperability of implementations of Edition 2

Issue

All data type template elements (LNodeType, DOType, DAType, EnumType) have an identifier (attribute "id"), which is defined to be a non-empty string (xs:normalizedString).
There is no upper limit on the size of this identifier (xs:normalizedString has no upper-limit).
There should be an upper-limit to guarantee proper and (more) efficient (memory-wise) implementation in tools and IEDs.

Proposal

I propose to limit the identifier of a DTT to max 255 characters (as there are already quite long identifiers out there).

Concrete implementation: modify "tIDNaming" by adding the facet maxLength="255" to the attribute "id".

Discussion Created Status
17 Apr 15 In Force (green)
Accepted to limit the length of all identifiers to 255 characters, if no tighter limits exist already. Further, the syntax shall comply to 'xs:token', i.e. no space, tab and similar characters are allowed. 02 Apr 15 Ballot Period
I think Camille's proposition to use xs:token instead of xs:normalizedString is a good one (the difference is that for a token the leading and trailing spaces are removed, duplicate spaces are replaced by one space).
I do no see any compatibility issues on this change.
26 Mar 15 Ballot Period
This TISSUE is important, but we may go further in the restrictions for the ID. There're some cases which seems not "usefull" for an ID, like " " (a sequence of space characters) which is valid regarding schema but not really useable for an ID.

One solution could be to use a token instead of normalized string.

It could be the good moment to push this change as this tissue already add a new restriction, so with potential backward compatibility issues.
10 Dec 14 Discussion (red)

 

Privacy | Contact | Disclaimer

Tissue DB v. 23.12.13.1