The EXTERNAL and EmbeddedPDV types are built-in ASN.1 types that make it possible to transfer a value of a different encoding type within an ASN.1 message. These are constructed types built into the ASN.1 standard. An XSD representation of each of these types is available in the asn1.xsd library. The ASN1C compiler generates a reference to the types in the library when it encounters a reference to one of these types.
ASN.1 production:
TypeName ::= EXTERNAL
Generated XSD code:
<xsd:complexType name="TypeName"> <xsd:complexContent> <xsd:extension base="asn1:EXTERNAL"/> </xsd:complexContent> </xsd:complexType>
ASN.1 production:
TypeName ::= EMBEDDED PDV
Generated XSD code:
<xsd:complexType name="TypeName"> <xsd:complexContent> <xsd:extension base="asn1:EmbeddedPDV"/> </xsd:complexContent> </xsd:complexType>