code: function validate(options, context, reportContext, node) {
      if (node.type === 'tag' && node.attribs['rt-if'] && !node.attribs.key) {
          const loc = rtError.getNodeLoc(context, node)
          reportContext.warn('rt-if without a key', options.fileName, loc.pos.line, loc.pos.col, loc.start, loc.end)
      }
      if (node.type === 'tag' && node.attribs['rt-require'] && (node.attribs.dependency || node.attribs.as)) {
          const loc = rtError.getNodeLoc(context, node)
          reportContext.warn("'rt-require' is obsolete, use 'rt-import' instead", options.fileName, loc.pos.line, loc.pos.col, loc.start, loc.end)
      }
      // TODO check for duplicate import/require
      if (node.children) {
          node.children.forEach(validate.bind(this, options, context, reportContext))
      }
  }
docs: validate rt
  @param options
  @param {*} context
  @param {CONTEXT} reportContext
  @param node