diff --git a/src/path_parser.hpp b/src/path_parser.hpp
index 8129d86..c89b9df 100644
--- a/src/path_parser.hpp
+++ b/src/path_parser.hpp
@@ -145,13 +145,13 @@
                     continue;
             }
             table.add(parseString, out);
-            table.add("..", attribute_type{nodeup_{}});
             if (!child.first) {
                 auto topLevelModule = parserContext.currentSchemaPath().m_nodes.begin()->m_prefix;
                 out.m_prefix = topLevelModule;
                 table.add(topLevelModule->m_name + ":" + parseString, out);
             }
         }
+        table.add("..", attribute_type{nodeup_{}});
         parserContext.m_completionIterator = begin;
 
         if constexpr (PARSER_MODE == NodeParserMode::CompletionsOnly) {
diff --git a/tests/ls.cpp b/tests/ls.cpp
index 83b2d8d..0a91dfb 100644
--- a/tests/ls.cpp
+++ b/tests/ls.cpp
@@ -77,6 +77,18 @@
                 expected.m_path = dataPath_{Scope::Absolute, {}};
             }
 
+            SECTION("going up from a node with no children")
+            {
+                parser.changeNode(dataPath_{Scope::Relative, {dataNode_(module_{"second"}, container_{"a"})}});
+                REQUIRE(schema->availableNodes(parser.currentPath(), Recursion::NonRecursive) == std::set<ModuleNodePair>{});
+                input = "ls ../example:a";
+                expected.m_path = dataPath_{Scope::Relative, {
+                    dataNode_{nodeup_{}},
+                    dataNode_{module_{"example"}, container_{"a"}}
+                }};
+
+            }
+
             SECTION("ls example:a/a2")
             {
                 input = "ls example:a/a2";
