diff --git a/api/GenerateHtmlDocumentation.cpp b/api/GenerateHtmlDocumentation.cpp
index 359d785..a9e4d43 100644
--- a/api/GenerateHtmlDocumentation.cpp
+++ b/api/GenerateHtmlDocumentation.cpp
@@ -415,10 +415,8 @@
 
     // Write the summary tables.
     // file << "<h2>Summary</h2>\n";
-    const auto& constants = specFile.getConstantsMap();
-    const auto& types = specFile.getTypesMap();
-    const auto& functions = specFile.getFunctionsMap();
-    writeSummaryTables(file, constants, types, functions, false);
+    writeSummaryTables(file, specFile.getDocumentedConstants(), specFile.getDocumentedTypes(),
+                       specFile.getDocumentedFunctions(), false);
     return success;
 }
 
@@ -620,9 +618,9 @@
 
     // Write the summary tables.
     file << "<h2>Summary</h2>\n";
-    const auto& constants = specFile.getConstantsMap();
-    const auto& types = specFile.getTypesMap();
-    const auto& functions = specFile.getFunctionsMap();
+    const auto& constants = specFile.getDocumentedConstants();
+    const auto& types = specFile.getDocumentedTypes();
+    const auto& functions = specFile.getDocumentedFunctions();
     writeSummaryTables(&file, constants, types, functions, false);
 
     // Write the full details of each constant, type, and function.
