[Mapnik-de] Fwd: name:en vor name ?

Sven Geggus lists at fuchsschwanzdomain.de
Fr Jul 19 19:42:25 CEST 2013


Josias Polchau <josias at polchau.de> wrote:

> prinzipiell würde ich dir zustimmen, nur ein Problem gibt es: wenn unter
> 'name' der deutsche Name angegeben ist, 'name:en' existier, aber
> kein 'name:de'. Diese Situation ist in Deutschland üblich, weshalb man
> eine eine Gebietsfilterung vornehmen müsste.

Das Problem ist glaube ich auch ohne Gebietsfilterung lösbar. 
Momentan ist die Lokalisierung der deutschen Karte ja noch relativ
doof, das ist einfach "coalesce("name:de",name) as name".

Folgender Pseudocode macht sich zu Nutze, dass innhalb des
deutschsprachigen Raumes name und name:en bzw.  name und int_name ja
immer unterschiedlich sind und könnte funktionieren, wenn man code
für die Erkennung von nicht-latin1 Zeichen hat.

Müsste man dann halt als "stored procedure" in PL/pgsql
(http://de.wikipedia.org/wiki/PL/pgSQL) implementieren.  Falls das
jemand macht, dann baue ich das gerne ein!

Und fragt mich jetzt bitte nicht wie man in PL/pgsql testet, ob alle
Zeichen in einem String europäische Zeichen sind.

function get_germanified_name(name:de,name,int_name,name) {

if (name:de != NULL):
  return name:de
else
  if (int_name == NULL):
    if (name:en == NULL):
      return name *
    else
      if  (name:en != name):
        if name enthält nur latin1 zeichen:
          return name
        else
          return name:en
        endif
      else   
        return name
      endif
  else
    if  (int_name != name):
      if name enthält nur latin1 zeichen:
        return name
      else
        return int_name
      endif
    else
      return name
    endif
  endif
endif

end function
      
* An der Stelle, an der das Sternchen ist könnte man noch
Transliteration einbauen:

if name enthält nur latin1 zeichen:
  return name
else
  return transliterierten namen

Gruss

Sven

-- 
"Der wichtigste Aspekt, den Sie vor der Entscheidung für ein Open
Source-Betriebssystem bedenken sollten, ist, dass Sie kein
Windows-Betriebssystem erhalten." (von http://www.dell.de/ubuntu)
/me is giggls at ircnet, http://sven.gegg.us/ on the Web