diff --git a/ndn-cpp/Interest.hpp b/ndn-cpp/Interest.hpp
index 1d63db8..ab94f99 100644
--- a/ndn-cpp/Interest.hpp
+++ b/ndn-cpp/Interest.hpp
@@ -51,8 +51,20 @@
   int getMinSuffixComponents() const { return minSuffixComponents_; }
   
   int getMaxSuffixComponents() const { return maxSuffixComponents_; }
+  
+  const std::vector<unsigned char> getPublisherPublicKeyDigest() const { return publisherPublicKeyDigest_; }
+
+  // TODO: Implement getExclude().)
+  
+  int getChildSelector() const { return childSelector_; }
+
+  int getAnswerOriginKind() const { return answerOriginKind_; }
+
+  int getScope() const { return scope_; }
 
   int getInterestLifetime() const { return interestLifetime_; }
+
+  const std::vector<unsigned char> getNonce() const { return nonce_; }
   
   /**
    * Clear this interest, and set the values by copying from the interest struct.
