diff --git a/reclass_tools/helpers.py b/reclass_tools/helpers.py
index 7ba9d2b..5c3ea92 100644
--- a/reclass_tools/helpers.py
+++ b/reclass_tools/helpers.py
@@ -22,7 +22,7 @@
         raise("Use 'list' object with key names for 'path'")
     for key in path:
         value = data.get(key, None)
-        if value:
+        if value is not None:
             data = value
         else:
             return None
@@ -52,7 +52,7 @@
     # Clear parent keys if empty
     while path:
         val = get_nested_key(data, path)
-        if val:
+        if val is not None:
             # Non-empty value, nothing to do
             return
         else:
diff --git a/reclass_tools/walk_models.py b/reclass_tools/walk_models.py
index 41b24f4..beeb27c 100644
--- a/reclass_tools/walk_models.py
+++ b/reclass_tools/walk_models.py
@@ -171,7 +171,7 @@
 
                     nested_key = helpers.get_nested_key(model, add_key)
 
-                    if nested_key:
+                    if nested_key is not None:
                         if merge is False:
                             nested_key = value
                         else:
@@ -220,7 +220,7 @@
                 if model is not None:
                     # Clear linux.network.interfaces
                     nested_key = helpers.get_nested_key(model, remove_key)
-                    if nested_key:
+                    if nested_key is not None:
                         # found_keys[fyml.fname] = copy.deepcopy(nested_key)
                         if pretend:
                             print("\n---\n# Found {0} in {1}"
