code: public Element getElementWithCanonicalName(String canonicalName) {
          if (canonicalName == null || canonicalName.trim().length() == 0) {
              throw new IllegalArgumentException("A canonical name must be specified.");
          }
  
          // canonical names start with a leading slash, so add this if it's missing
          if (!canonicalName.startsWith("/")) {
              canonicalName = "/" + canonicalName;
          }
  
          for (Element element : getElements()) {
              if (element.getCanonicalName().equals(canonicalName)) {
                  return element;
              }
          }
  
          return null;
      }
docs: Gets the element with the specified canonical name.
  
  @param canonicalName the canonical name (e.g. /SoftwareSystem/Container)
  @return the Element with the given canonical name, or null if one doesn't exist
  @throws IllegalArgumentException if the canonical name is null or empty