use setValue instead of directly manipulating the node's value