code: public SpecTopic getClosestTopicByDBId(final Integer DBId, final SpecNode callerNode, final boolean checkParentNode) {
          final SpecTopic retValue = super.getClosestTopicByDBId(DBId, callerNode, checkParentNode);
          if (retValue != null) {
              return retValue;
          } else {
              // Look up the metadata topics
              final ContentSpec contentSpec = getContentSpec();
              for (final Node contentSpecNode : contentSpec.getNodes()) {
                  if (contentSpecNode instanceof KeyValueNode && ((KeyValueNode) contentSpecNode).getValue() instanceof SpecTopic) {
                      final SpecTopic childTopic = (SpecTopic) ((KeyValueNode) contentSpecNode).getValue();
                      if (childTopic.getDBId().equals(DBId)) {
                          return childTopic;
                      }
                  }
              }
  
              return null;
          }
      }
docs: This function checks the levels nodes and child nodes to see if it can match a spec topic for a topic database id.
  
  @param DBId            The topic database id
  @param callerNode      The node that called this function so that it isn't rechecked
  @param checkParentNode If the function should check the levels parents as well
  @return The closest available SpecTopic that matches the DBId otherwise null.