code: private JMFType findChild(JMFType start, String segment) {
      if (start instanceof JSPrimitive || start instanceof JSDynamic ||
           start instanceof JSEnum)
        return null;
      if (segment.charAt(0) == '[')
        return findChildByIndex(start, Integer.parseInt(segment.substring(1, segment.length() - 1)));
      if (start instanceof JSVariant)
        return findVariantChildByName((JSVariant)start, segment);
      else
        return findTupleChildByName((JSTuple)start, segment);
    }
docs: called on it.