# -*- coding: utf-8 -*-
# sh $DILIB_IMPORT/Wicri/buildRegionsCitiesKey.fr.tab.sh | SxmlIndent
(
(
  cat $DILIB_IMPORT/Wicri/Data/Europe/BigCitiesEuropeFr.wiki
  cat $DILIB_IMPORT/Wicri/Data/Amerique/BigCitiesAmeriqueFr.wiki
  cat $DILIB_IMPORT/Wicri/Data/Asie/BigCitiesAsieFr.wiki
  cat $DILIB_IMPORT/Wicri/Data/AmeriqueUsaCitiesFr.wiki
  cat $DILIB_IMPORT/Wicri/Data/EuropeIrlandeCitiesFr.wiki
) |  MediaWikiCleanTable                                  \
  |  MediaWikiTable2SxmlRowCol                            \
  |  MediaWikiTableTransformCol -l1 -T2 -E3               \
  |  TeiTableCityFromWiki                                 \
  |  SgmlSelect -g place/country# -p @1 -p @g1 -g place/placeName/region# -p @g2 -p @2 

cat $DILIB_IMPORT/Wicri/Data/UsaEtatsFr.wiki \
  |  MediaWikiCleanTable                     \
  |  MediaWikiTable2SxmlRowCol               \
  | SxmlCut r/c2 r/c3 r/c6 r/c7              \
  | MediaWikiTableTransformCol -l14 -t5      \
  | SgmlSelect -g r/c5# -g r/c1/p/k# -g r/c4/p/k#   \
     -p @g1 -p "États-Unis" -p @g2                  \
     -p "<place><placeName><settlement type=\"city\">@g3</settlement><region type=\"state\">@g2</region></placeName><country>États-Unis</country></place>"

cat $DILIB_IMPORT/Wicri/Data/UsaEtatsFr.wiki \
  |  MediaWikiCleanTable                     \
  |  MediaWikiTable2SxmlRowCol               \
  | SxmlCut r/c2 r/c3 r/c4 r/c5              \
  | MediaWikiTableTransformCol -l16 -t7      \
  | SgmlSelect -g r/c7# -g r/c1/p/k# -g r/c6/p/k#   \
     -p @g1 -p "États-Unis" -p @g2                  \
     -p "<place><placeName><settlement type=\"city\">@g3</settlement><region type=\"state\">@g2</region></placeName><country>États-Unis</country></place>"

)  |  sort -u                                              \
  |  SxmlGrouping       -I                                \
  |  TeiTableCityFromWiki       -g
