diff --git a/src/encoding/tlv.cpp b/src/encoding/tlv.cpp
index 712291c..c210949 100644
--- a/src/encoding/tlv.cpp
+++ b/src/encoding/tlv.cpp
@@ -1,6 +1,6 @@
 /* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
 /*
- * Copyright (c) 2013-2017 Regents of the University of California.
+ * Copyright (c) 2013-2018 Regents of the University of California.
  *
  * This file is part of ndn-cxx library (NDN C++ library with eXperimental eXtensions).
  *
@@ -25,17 +25,51 @@
 namespace tlv {
 
 std::ostream&
-operator<<(std::ostream& os, SignatureTypeValue signatureType)
+operator<<(std::ostream& os, SignatureTypeValue st)
 {
-  switch (signatureType) {
-    case SignatureTypeValue::DigestSha256:
+  switch (st) {
+    case DigestSha256:
       return os << "DigestSha256";
-    case SignatureTypeValue::SignatureSha256WithRsa:
+    case SignatureSha256WithRsa:
       return os << "SignatureSha256WithRsa";
-    case SignatureTypeValue::SignatureSha256WithEcdsa:
+    case SignatureSha256WithEcdsa:
       return os << "SignatureSha256WithEcdsa";
+    case SignatureHmacWithSha256:
+      return os << "SignatureHmacWithSha256";
   }
-  return os << "Unknown Signature Type";
+  return os << "Unknown(" << static_cast<uint32_t>(st) << ')';
+}
+
+std::ostream&
+operator<<(std::ostream& os, ContentTypeValue ct)
+{
+  switch (ct) {
+    case ContentType_Blob:
+      return os << "Blob";
+    case ContentType_Link:
+      return os << "Link";
+    case ContentType_Key:
+      return os << "Key";
+    case ContentType_Nack:
+      return os << "Nack";
+    case ContentType_Manifest:
+      return os << "Manifest";
+    case ContentType_PrefixAnn:
+      return os << "PrefixAnn";
+    case ContentType_Flic:
+      return os << "FLIC";
+  }
+
+  if (ct >= 6 && ct <= 1023) {
+    os << "Reserved(";
+  }
+  else if (ct >= 9000 && ct <= 9999) {
+    os << "Experimental(";
+  }
+  else {
+    os << "Unknown(";
+  }
+  return os << static_cast<uint32_t>(ct) << ')';
 }
 
 } // namespace tlv
diff --git a/src/encoding/tlv.hpp b/src/encoding/tlv.hpp
index f7b7240..c105b70 100644
--- a/src/encoding/tlv.hpp
+++ b/src/encoding/tlv.hpp
@@ -108,18 +108,33 @@
 [[deprecated("use GenericNameComponent")]]
 constexpr int NameComponent = GenericNameComponent;
 
+/** @brief TLV-TYPE numbers for typed name components.
+ *  @sa https://redmine.named-data.net/projects/ndn-tlv/wiki/NameComponentType
+ */
+enum {
+  KeywordNameComponent     = 32,
+  SegmentNameComponent     = 33,
+  ByteOffsetNameComponent  = 34,
+  VersionNameComponent     = 35,
+  TimestampNameComponent   = 36,
+  SequenceNumNameComponent = 37,
+};
+
+/** @brief SignatureType values
+ *  @sa https://named-data.net/doc/NDN-packet-spec/current/signature.html
+ */
 enum SignatureTypeValue : uint16_t {
-  DigestSha256 = 0,
-  SignatureSha256WithRsa = 1,
-  // <Unassigned> = 2,
-  SignatureSha256WithEcdsa = 3
+  DigestSha256             = 0,
+  SignatureSha256WithRsa   = 1,
+  SignatureSha256WithEcdsa = 3,
+  SignatureHmacWithSha256  = 4,
 };
 
 std::ostream&
-operator<<(std::ostream& os, SignatureTypeValue signatureType);
+operator<<(std::ostream& os, SignatureTypeValue st);
 
 /** @brief TLV-TYPE numbers for SignatureInfo features
- *  @sa docs/tutorials/certificate-format.rst
+ *  @sa docs/specs/certificate-format.rst
  */
 enum {
   ValidityPeriod = 253,
@@ -132,26 +147,22 @@
   DescriptionValue = 514
 };
 
-/** @brief indicates a possible value of ContentType field
+/** @brief ContentType values
+ *  @sa https://redmine.named-data.net/projects/ndn-tlv/wiki/ContentType
  */
-enum ContentTypeValue {
-  /** @brief indicates content is the actual data bits
-   */
-  ContentType_Blob = 0,
-
-  /** @brief indicates content is another name which identifies actual data content
-   */
-  ContentType_Link = 1,
-
-  /** @brief indicates content is a public key
-   */
-  ContentType_Key = 2,
-
-  /** @brief indicates a producer generated NACK
-   */
-  ContentType_Nack = 3
+enum ContentTypeValue : uint32_t {
+  ContentType_Blob      = 0,    ///< payload
+  ContentType_Link      = 1,    ///< another name that identifies the actual data content
+  ContentType_Key       = 2,    ///< public key, certificate
+  ContentType_Nack      = 3,    ///< application-level nack
+  ContentType_Manifest  = 4,
+  ContentType_PrefixAnn = 5,    ///< prefix announcement
+  ContentType_Flic      = 1024, ///< File-Like ICN Collection
 };
 
+std::ostream&
+operator<<(std::ostream& os, ContentTypeValue ct);
+
 /**
  * @brief Determine whether a TLV-TYPE is "critical" for evolvability purpose.
  * @sa https://named-data.net/doc/NDN-packet-spec/0.3/tlv.html#considerations-for-evolvability-of-tlv-based-encoding
diff --git a/src/security/v2/additional-description.hpp b/src/security/v2/additional-description.hpp
index 16281f9..4372807 100644
--- a/src/security/v2/additional-description.hpp
+++ b/src/security/v2/additional-description.hpp
@@ -33,7 +33,7 @@
 
 /**
  * @brief Abstraction of AdditionalDescription
- * @sa docs/tutorials/certificate-format.rst
+ * @sa docs/specs/certificate-format.rst
  */
 class AdditionalDescription
 {
diff --git a/src/security/validity-period.hpp b/src/security/validity-period.hpp
index ee7c602..ba05b7a 100644
--- a/src/security/validity-period.hpp
+++ b/src/security/validity-period.hpp
@@ -32,7 +32,7 @@
 
 
 /** @brief Abstraction of validity period
- *  @sa docs/tutorials/certificate-format.rst
+ *  @sa docs/specs/certificate-format.rst
  */
 class ValidityPeriod
 {
diff --git a/tests/unit-tests/encoding/tlv.t.cpp b/tests/unit-tests/encoding/tlv.t.cpp
index f8e2f9e..a82ffbe 100644
--- a/tests/unit-tests/encoding/tlv.t.cpp
+++ b/tests/unit-tests/encoding/tlv.t.cpp
@@ -486,8 +486,30 @@
 {
   BOOST_CHECK_EQUAL(boost::lexical_cast<std::string>(DigestSha256), "DigestSha256");
   BOOST_CHECK_EQUAL(boost::lexical_cast<std::string>(SignatureSha256WithRsa), "SignatureSha256WithRsa");
+  BOOST_CHECK_EQUAL(boost::lexical_cast<std::string>(static_cast<SignatureTypeValue>(2)), "Unknown(2)");
   BOOST_CHECK_EQUAL(boost::lexical_cast<std::string>(SignatureSha256WithEcdsa), "SignatureSha256WithEcdsa");
-  BOOST_CHECK_EQUAL(boost::lexical_cast<std::string>(static_cast<SignatureTypeValue>(200)), "Unknown Signature Type");
+  BOOST_CHECK_EQUAL(boost::lexical_cast<std::string>(SignatureHmacWithSha256), "SignatureHmacWithSha256");
+  BOOST_CHECK_EQUAL(boost::lexical_cast<std::string>(static_cast<SignatureTypeValue>(5)), "Unknown(5)");
+  BOOST_CHECK_EQUAL(boost::lexical_cast<std::string>(static_cast<SignatureTypeValue>(200)), "Unknown(200)");
+}
+
+BOOST_AUTO_TEST_CASE(PrintContentTypeValue)
+{
+  BOOST_CHECK_EQUAL(boost::lexical_cast<std::string>(ContentType_Blob), "Blob");
+  BOOST_CHECK_EQUAL(boost::lexical_cast<std::string>(ContentType_Link), "Link");
+  BOOST_CHECK_EQUAL(boost::lexical_cast<std::string>(ContentType_Key), "Key");
+  BOOST_CHECK_EQUAL(boost::lexical_cast<std::string>(ContentType_Nack), "Nack");
+  BOOST_CHECK_EQUAL(boost::lexical_cast<std::string>(ContentType_Manifest), "Manifest");
+  BOOST_CHECK_EQUAL(boost::lexical_cast<std::string>(ContentType_PrefixAnn), "PrefixAnn");
+  BOOST_CHECK_EQUAL(boost::lexical_cast<std::string>(static_cast<ContentTypeValue>(6)), "Reserved(6)");
+  BOOST_CHECK_EQUAL(boost::lexical_cast<std::string>(static_cast<ContentTypeValue>(1023)), "Reserved(1023)");
+  BOOST_CHECK_EQUAL(boost::lexical_cast<std::string>(ContentType_Flic), "FLIC");
+  BOOST_CHECK_EQUAL(boost::lexical_cast<std::string>(static_cast<ContentTypeValue>(1025)), "Unknown(1025)");
+  BOOST_CHECK_EQUAL(boost::lexical_cast<std::string>(static_cast<ContentTypeValue>(8999)), "Unknown(8999)");
+  BOOST_CHECK_EQUAL(boost::lexical_cast<std::string>(static_cast<ContentTypeValue>(9000)), "Experimental(9000)");
+  BOOST_CHECK_EQUAL(boost::lexical_cast<std::string>(static_cast<ContentTypeValue>(9999)), "Experimental(9999)");
+  BOOST_CHECK_EQUAL(boost::lexical_cast<std::string>(static_cast<ContentTypeValue>(10000)), "Unknown(10000)");
+  BOOST_CHECK_EQUAL(boost::lexical_cast<std::string>(static_cast<ContentTypeValue>(19910118)), "Unknown(19910118)");
 }
 
 BOOST_AUTO_TEST_SUITE_END() // PrintHelpers
