code: public boolean isValid (Object target)
      {
          TileSet set = (TileSet)target;
          boolean valid = true;
  
          // check for the 'name' attribute
          if (StringUtil.isBlank(set.getName())) {
              log.warning("Tile set definition missing 'name' attribute " +
                          "[set=" + set + "].");
              valid = false;
          }
  
          // check for an <imagePath> element
          if (StringUtil.isBlank(set.getImagePath())) {
              log.warning("Tile set definition missing <imagePath> element " +
                          "[set=" + set + "].");
              valid = false;
          }
  
          return valid;
      }
docs: The ruleset can be provided to a {@link ValidatedSetNextRule} to ensure that the tileset
  was fully parsed before doing something with it.