code: public Set<Property> allProperties() {
          Set<Property> properties = new HashSet<Property>();
          for (Node n : nodes) {
              n.includeProperties(properties);
          }
          return Collections.unmodifiableSet(properties);
      }
docs: This method returns all properties contained in the node hierarchy
  that can be used to search for the trace.
  
  @return Aggregated list of all the properties in the node hierarchy