diff --git a/modules/io/src/mol/mmcif_writer.cc b/modules/io/src/mol/mmcif_writer.cc
index b2851b380876bb0ddb9e0a8a2a3d74f10f407bf3..921a13ed05747e57c7620eafe0494c7bef49e39e 100644
--- a/modules/io/src/mol/mmcif_writer.cc
+++ b/modules/io/src/mol/mmcif_writer.cc
@@ -71,13 +71,14 @@ namespace {
   };
 
   void CheckValidEntityPolyType(const String& entity_poly_type) {
-    std::unordered_set<std::string> s = {"other",
+    std::unordered_set<std::string> s = {"cyclic-pseudo-peptide",
+                                         "other",
+                                         "peptide nucleic acid",
                                          "polydeoxyribonucleotide",
+                                         "polydeoxyribonucleotide/polyribonucleotide hybrid",
                                          "polypeptide(D)",
                                          "polypeptide(L)",
-                                         "polyribonucleotide",
-                                         "polysaccharide(D)",
-                                         "polysaccharide(L)"};
+                                         "polyribonucleotide"};
     if(s.find(entity_poly_type) == s.end()) {
       std::stringstream ss;
       ss << "Observed value is no valid entity_poly.type: \"";