Clause G.2.2 adds this line to ISO 9506-1:
mMSString [16] Integer32 -- MMS String
It results in the following definition of TypeDescription:
TypeDescription ::= CHOICE {
array [1] IMPLICIT SEQUENCE {<..skipped..>},
structure [2] IMPLICIT SEQUENCE {<..skipped..>},
-- Simple Size Class
boolean [3] IMPLICIT NULL, -- BOOLEAN
bit-string [4] IMPLICIT Integer32, -- BIT-STRING
integer [5] IMPLICIT Unsigned8, -- INTEGER
unsigned [6] IMPLICIT Unsigned8, -- UNSIGNED
floating-point [7] IMPLICIT SEQUENCE {<..skipped..>},
-- [8] is reserved
octet-string [9] IMPLICIT Integer32, -- OCTET-STRING
visible-string [10] IMPLICIT Integer32, -- VISIBLE-STRING
generalized-time [11] IMPLICIT NULL, -- GENERALIZED-TIME
binary-time [12] IMPLICIT BOOLEAN, -- BINARY-TIME
bcd [13] IMPLICIT Unsigned8, -- BCD
objId [15] IMPLICIT NULL,
mMSString [16] Integer32, -- MMS String
utc-time [17] IMPLICIT NULL -- from IEC61850 8.1 G.2 --
}
So description of all types except mMSString is IMPLICIT, description of mMSString is EXPLICIT.
I checked the de facto state. IEDScout from Omicron works with IMPLICIT coding and doesn't work with explicit coding. IECBrowser from Siemens has the same behavior.