--- a/src/lib/graph/ConstantNode.cc
+++ b/src/lib/graph/ConstantNode.cc
@@ -13,8 +13,9 @@
 
 namespace jags {
 
-    ConstantNode::ConstantNode(double value, unsigned int nchain)
-	: Node(vector<unsigned int>(1,1), nchain)
+    ConstantNode::ConstantNode(double value, unsigned int nchain,
+			       bool observed)
+	: Node(vector<unsigned int>(1,1), nchain), _observed(observed)
     {
 	for (unsigned int n = 0; n < nchain; ++n) {
 	    setValue(&value, 1, n);
@@ -23,8 +24,8 @@
 
     ConstantNode::ConstantNode(vector<unsigned int> const &dim, 
 			       vector<double> const &value,
-			       unsigned int nchain)
-	: Node(dim, nchain)
+			       unsigned int nchain, bool observed)
+	: Node(dim, nchain), _observed(observed)
     {
 	if (value.size() != _length) {
 	    throw logic_error("Invalid value in ConstantNode");
@@ -71,4 +72,9 @@
 	return true;
     }
 
+    RVStatus ConstantNode::randomVariableStatus() const
+    {
+	return _observed ? RV_TRUE_OBSERVED :  RV_FALSE;
+    }
+
 } //namespace jags