code: public static function validate($name)
      {
          if (self::validateFast($name)) {
              return true;
          }
          
          $utf8Codec  = new \Peach\DF\Utf8Codec();
          $codepoints = $utf8Codec->decode($name);
          if (!count($codepoints)) {
              return false;
          }
          $start = array_shift($codepoints);
          if (!self::validateNameStartChar($start)) {
              return false;
          }
          foreach ($codepoints as $c) {
              if (!self::validateNameChar($c)) {
                  return false;
              }
          }
          return true;
      }
docs: 指定された文字列が XML で定義されている Name のネーミングルールに合致するかどうか調べます.
  
  @param  string $name 検査対象の文字列
  @return bool         指定された文字列が Name として妥当な場合のみ true