diff --git a/modules/io/src/mol/mmcif_reader.cc b/modules/io/src/mol/mmcif_reader.cc
index b6446f6664f22eee8baeac49ae1a6d31ef59dc4d..96e6c483918b873c435d61e2f8f849ebebb0e777 100644
--- a/modules/io/src/mol/mmcif_reader.cc
+++ b/modules/io/src/mol/mmcif_reader.cc
@@ -656,7 +656,9 @@ void MMCifParser::ParseCitation(const std::vector<StringRef>& columns)
     }
   }
   if (indices_[YEAR] != -1) {
-    cit.SetPubMed(this->TryGetInt(columns[indices_[YEAR]], "citation.year"));
+    if (columns[indices_[YEAR]][0]!='?') {
+      cit.SetPubMed(this->TryGetInt(columns[indices_[YEAR]], "citation.year"));
+    }
   }
   if (indices_[TITLE] != -1) {
     cit.SetTitle(columns[indices_[TITLE]].str());