$imp_match=array();
foreach($wiki_data["Values"] as $src) {
  $rule=new tags();

  $rule->set("match", parse_to_simple($src['keys']));
  $rule->set("importance", $src['importance']);
  if($src[description])
    $rule->set("display_type", "[{$src['desc']}]");
  if(preg_match("/\[\[Image:(.*)\]\]/", $src['icon'], $m)) {
    $icon=wiki_download_icon($m[1]);
    $rule->set("icon", $icon);

    wiki_download_icon($m[1]);
  }

  $more=parse_src_more($src['more']);
  if($more[tables])
    $rule->set("type", implode(";", explode(",", $more['tables'])));

  if($x=$lang_str["tag_".strtr($rule->get("match"), array("="=>"/"))]) {
    if(is_array($x))
      $x="$x[0];$x[1]";
    $rule->set("name", $x);
  }

  foreach(array("de", "it", "ja") as $lang) {
    if($x=$lang_str_[$lang]["tag_".strtr($rule->get("match"), array("="=>"/"))]) {
      if(is_array($x))
	$x="$x[0];$x[1]";
      if($rule->get("name")!=$x)
	$rule->set("name:$lang", $x);
  foreach($list_columns as $key=>$values) {
    $r1[]="$key='||(CASE WHEN \"$key\" is null THEN '' ELSE \"$key\" END)||'";
  }
  $r.="||".implode(" ", $r1)."'";

  $prior=9;
  if(eregi("\(([0-9]+)\)", $src[overlay], $m))
    $prior=$m[1];

  if($src[importance]=="*") {
    $importance=$list_importance;
  }
  else
    $importance=array($src[importance]);

  $more=parse_src_more($src[more]);
  $tables=array("polygon", "point");
  if($more[tables]) {
    $tables=explode(",", $more[tables]);
  }

  foreach($tables as $t) {
    foreach($importance as $imp)
      if($l)
	$req[$src['category']][$imp][$t]['case'][$prior][]="WHEN $l THEN $r";
      else
	$req[$src['category']][$imp][$t]['case'][$prior][]=1;

    if($src[importance]=="*") {
      if(!$columns_all[$src[category]][$t])
	$columns_all[$src[category]][$t]=array();