Geoffrey Elgey wrote:
G'day,

Olivier Dubuisson wrote:

The relevant rule is <21> on the next page: "MTSIdentifier" is imported twice, so the only way to reference it is by way of an "ExternalTypeReference" that includes the modulename to avoid ambiguity.
Note that "MTSIdentifier" is not referenced in the body of module "MhsAcctAsn1Module", so there is no problem (it is imported so that it can be re-exported to any other ASN.1 module that imports definitions from module "MhsAcctAsn1Module").

So if a third module has "IMPORTS MTSIdentifier FROM MhsAcctAsn1Module", which MTSIdentifier gets imported?

Good catch! My mistake.
Rule <17> on page 115 of my book (in both English and French versions) states:
Each "Symbol" appearing in "SymbolsFromModule" must be defined in the body or in the IMPORTS clause of the referenced module (in the second case, "Symbol" can appear only once in the IMPORTS clause of the referenced module and should not be defined in the body of that module).


BTW Sebastien Castano who is in charge of the ITU-T module database has kindly checked ITU-T Rec. X.462.
The IMPORTS statement of module "MhsAcctAsn1Module" is as follows:


--  MTS abstract service parameters
        [...]
        MTSIdentifier,
        [...]
FROM MTSAbstractService {joint-iso-itu-t mhs(6) mts(3) modules(0)
mts-abstract-service(1) version-1999(1)  }

--  MTA abstract service parameters
        [...]
        MTSIdentifier,
        [...]
FROM MTAAbstractService {joint-iso-itu-t mhs(6) mts(3) modules(0)
mta-abstract-service(2) version-1999(1) }

"MTSIdentifier" is only defined in module "MTSAbstractService". Module "MTAAbstractService" imports it from module "MTSAbstractService".

We have removed the second importation of "MTSIdentifier" (the ITU-T module database will be soon available -- if not already!). This small change to the approved standard will be reflected in the implementor's guide for the X.400 series (a document that can be downloaded for free from this ITU website).
--
Olivier DUBUISSON
france telecom R&D


DTL/TAL - 22307 Lannion Cedex - France
t: +33 2 96 05 38 50 - f: +33 2 96 05 39 45 - http://asn1.elibel.tm.fr/




Reply via email to