diff --git a/doc/man/asn1c.1 b/doc/man/asn1c.1
index 54c2337..3c58e6c 100644
--- a/doc/man/asn1c.1
+++ b/doc/man/asn1c.1
@@ -1,7 +1,8 @@
-.\" Automatically generated by Pandoc 1.16.0.2
+.\"t
+.\" Automatically generated by Pandoc 1.19.2.1
 .\"
 .ad l
-.TH "asn1c" "1" "2016\-01\-23" "ASN.1 Compiler" "Version 0.9.28"
+.TH "asn1c" "1" "2017\-09\-01" "ASN.1 Compiler" "Version 0.9.29"
 .nh \" Turn off hyphenation by default.
 .SH NAME
 .PP
@@ -30,8 +31,8 @@
 .SH DESCRIPTION
 .PP
 asn1c compiles ASN.1 specifications into a set of target language
-(C/C++) encoders and decoders for BER, DER, PER, XER and other encoding
-rules.
+(C/C++) encoders and decoders for BER, DER, PER, XER, OER and other
+encoding rules.
 .SH OPTIONS
 .SS Stage Selection Options
 .TP
@@ -163,6 +164,11 @@
 .RE
 .SS Codecs Generation Options
 .TP
+.B \-gen\-OER
+Generate the Octet Encoding Rules (OER) support code.
+.RS
+.RE
+.TP
 .B \-gen\-PER
 Generate the Packed Encoding Rules (PER) support code.
 .RS
@@ -192,6 +198,128 @@
 Generate "\f[C]\-\-\ #line\f[]" comments in \f[B]\-E\f[] output.
 .RS
 .RE
+.SH TRANSFER SYNTAXES
+.PP
+The ASN.1 family of standards define a number of ways to encode data,
+including byte\-oriented (e.g., BER), bit\-oriented (e.g., PER), and
+textual (e.g., XER).
+Some encoding variants (e.g., DER) are just stricter variants of the
+more general encodings (e.g., BER).
+.PP
+The interoperability table below specifies which API functions can be
+used to exchange data in a compatible manner.
+If you need to \f[I]produce\f[] data conforming to the standard
+specified in the column 1, use the API function in the column 2.
+If you need to \f[I]process\f[] data conforming to the standard(s)
+specified in the column 3, use the API function specified in column 4.
+See the \f[C]asn1c\-usage.pdf\f[] for details.
+.PP
+.TS
+tab(@);
+lw(14.6n) lw(18.5n) lw(13.6n) lw(13.6n).
+T{
+Encoding
+T}@T{
+API function
+T}@T{
+Understood by
+T}@T{
+API function
+T}
+_
+T{
+BER
+T}@T{
+der_encode()
+T}@T{
+BER
+T}@T{
+ber_decode()
+T}
+T{
+DER
+T}@T{
+der_encode()
+T}@T{
+DER, BER
+T}@T{
+ber_decode()
+T}
+T{
+CER
+T}@T{
+\f[I]not supported\f[]
+T}@T{
+CER, BER
+T}@T{
+ber_decode()
+T}
+T{
+BASIC\-OER
+T}@T{
+oer_encode()
+T}@T{
+*\-OER
+T}@T{
+oer_decode()
+T}
+T{
+CANONICAL\-OER
+T}@T{
+oer_encode()
+T}@T{
+*\-OER
+T}@T{
+oer_decode()
+T}
+T{
+BASIC\-UPER
+T}@T{
+uper_encode()
+T}@T{
+*\-UPER
+T}@T{
+uper_decode()
+T}
+T{
+CANONICAL\-UPER
+T}@T{
+uper_encode()
+T}@T{
+*\-UPER
+T}@T{
+uper_decode()
+T}
+T{
+*\-APER
+T}@T{
+\f[I]not supported\f[]
+T}@T{
+*\-APER
+T}@T{
+\f[I]not supported\f[]
+T}
+T{
+BASIC\-XER
+T}@T{
+xer_encode(...)
+T}@T{
+*\-XER,
+T}@T{
+xer_decode()
+T}
+T{
+CANONICAL\-XER
+T}@T{
+xer_encode (XER_F_CANONICAL)
+T}@T{
+*\-XER,
+T}@T{
+xer_decode()
+T}
+.TE
+.PP
+*) Asterisk means both BASIC and CANONICAL variants.
 .SH SEE ALSO
 .PP
 \f[C]unber\f[](1), \f[C]enber\f[](1).
diff --git a/doc/man/asn1c.man.md b/doc/man/asn1c.man.md
index afec71f..1ad40a6 100644
--- a/doc/man/asn1c.man.md
+++ b/doc/man/asn1c.man.md
@@ -1,6 +1,6 @@
 % asn1c(1) ASN.1 Compiler
 % Lev Walkin <vlm@lionet.info>
-% 2016-01-23
+% 2017-09-01
 
 # NAME
 
@@ -18,7 +18,7 @@
 # DESCRIPTION
 
 asn1c compiles ASN.1 specifications into a set of
-target language (C/C++) encoders and decoders for BER, DER, PER, XER
+target language (C/C++) encoders and decoders for BER, DER, PER, XER, OER
 and other encoding rules.
 
 # OPTIONS
@@ -111,6 +111,9 @@
 
 ## Codecs Generation Options
 
+-gen-OER
+:   Generate the Octet Encoding Rules (OER) support code.
+
 -gen-PER
 :   Generate the Packed Encoding Rules (PER) support code.
 
@@ -134,6 +137,49 @@
 -print-lines
 :   Generate "`-- #line`" comments in **-E** output.
 
+# TRANSFER SYNTAXES
+
+The ASN.1 family of standards define a number of ways to encode data,
+including byte-oriented (e.g., BER), bit-oriented (e.g., PER),
+and textual (e.g., XER). Some encoding variants (e.g., DER) are just stricter
+variants of the more general encodings (e.g., BER).
+
+The interoperability table below specifies which API functions can be used
+to exchange data in a compatible manner. If you need to _produce_ data
+conforming to the standard specified in the column 1,
+use the API function in the column 2.
+If you need to _process_ data conforming to the standard(s) specified in the
+column 3, use the API function specified in column 4.
+See the `asn1c-usage.pdf` for details.
+
+-------------------------------------------------------------
+Encoding       API function       Understood by API function
+-------------- ------------------ ------------- -------------
+BER            der_encode()       BER           ber_decode()
+
+DER            der_encode()       DER, BER      ber_decode()
+
+CER            _not supported_    CER, BER      ber_decode()
+
+BASIC-OER      oer_encode()       *-OER         oer_decode()
+
+CANONICAL-OER  oer_encode()       *-OER         oer_decode()
+
+BASIC-UPER     uper_encode()      *-UPER        uper_decode()
+
+CANONICAL-UPER uper_encode()      *-UPER        uper_decode()
+
+*-APER         _not supported_    *-APER        _not supported_
+
+BASIC-XER      xer_encode(...)    *-XER,        xer_decode()
+
+CANONICAL-XER  xer_encode         *-XER,        xer_decode()
+               (XER_F_CANONICAL)
+-------------------------------------------------------------
+
+*) Asterisk means both BASIC and CANONICAL variants.
+
+
 # SEE ALSO
 
 `unber`(1), `enber`(1).
