Phonétique de Cologne
Müller, Mueller et Muller reçoivent le même code, 657, et Schmidt et Schmied partagent le 862 : les variantes d'un nom allemand se retrouvent ensemble. Idéal pour repérer de probables doublons dans les registres, fichiers clients et arbres généalogiques. Gratuit dans votre navigateur.
- Gratuit
- Fonctionne dans votre navigateur
- Sans inscription
- Vos données restent sur votre appareil
Lancer gratuitement
Exemple résolu
- Texte
- Müller
- Code
- 657
- Longueur
- 3
- Normalisé
- MULLER
- Nombre de lettres
- 6
La phonétique de Cologne, appelée en allemand Kölner Phonetik, convertit noms de famille et prénoms en une courte chaîne de chiffres afin que les variantes au son proche partagent une même clé. Les registres d’état civil, les tâches de déduplication CRM et les outils de généalogie s’en servent lorsque Müller doit correspondre à Mueller, ou Schneider se regrouper avec Schnyder, sans modèle phonétique complet. Vous obtenez un champ code stable et la séquence de lettres normalisée pour auditer pourquoi deux enregistrements sont entrés en collision.
Ce que code la phonétique de Cologne et pourquoi les noms entrent en collision
La phonétique de Cologne a été conçue pour les listes civiles de langue allemande, où la dérive orthographique est fréquente : trémas écrits en digrammes, H muet, C doux contre C dur, et X portant deux codes. L’algorithme ne prétend pas à la précision IPA ; il vise une clé compacte et déterministe qui regroupe des noms que l’on prononce de façon semblable. Les lettres A, E, I, J, O, U et Y se mappent sur zéro puis disparaissent sauf si elles ouvrent le code.
Le H est entièrement ignoré. Les consonnes se mappent de un à huit avec des règles de contexte — par exemple P devant H devient trois comme F ; D ou T devant C, S ou Z devient huit comme S ; et X devient quarante-huit sauf s’il suit C, K ou Q. Après le passage lettre par lettre, les chiffres identiques consécutifs se fusionnent de sorte que Schmidt et Schmied se réduisent tous deux à huit-six-deux, et les zéros restants sont retirés sauf un zéro initial.
C’est pourquoi Müller, Mueller et Muller donnent tous six-cinq-sept, et pourquoi Mayer, Meier, Maier et Mayr partagent six-sept. Les équipes de généalogie et de données de référence traitent des codes égaux comme une correspondance candidate, non comme une preuve d’identité : seconds prénoms, noms d’époux et erreurs de transcription exigent encore une revue humaine ou des contrôles secondaires. Utilisez le champ normalized renvoyé pour voir quelles lettres ont survécu à la suppression des espaces, tirets et chiffres avant l’encodage.
Ce que vous pouvez saisir et ce que vous obtenez
Les collages extrêmement longs au-delà du plafond de caractères publié échouent aussi afin que les workers en bordure restent prévisibles. Les caractères non alphabétiques n’apparaissent jamais dans normalized : ponctuation, espaces et chiffres sont supprimés avant l’encodage. S’il ne reste aucune lettre — par exemple text égal à 12345 ou uniquement des symboles — la tâche échoue avec un message d’entrée vide ou non alphabétique et demande au moins une lettre.
Ces échecs ne sont pas facturés. Il n’y a pas de sens de décodage : les codes de Cologne sont plusieurs-vers-un et avec perte, donc la recherche inverse exigerait un dictionnaire de noms externe que vous maintenez. Associez l’égalité de code à vos propres seuils (même région postale, année de naissance proche) pour construire un score de correspondance ; ce point de terminaison calcule uniquement la clé phonétique.
Exemple : text Müller produit code 657 avec normalized MULLER ; text Schmidt produit 862 ; text Fischer produit 387.
Où la phonétique de Cologne rend service
Les plateformes de données clients utilisent la phonétique de Cologne lors du merge-and-purge à l’onboarding pour que les noms allemands saisis avec ou sans tréma ne créent pas de comptes en double. Les scripts de migration du secteur public ajoutent une colonne de code cologne à côté des colonnes soundex ou metaphone lors de la comparaison d’extraits citoyens multi-sources.
Les modules pédagogiques qui enseignent le rapprochement de noms ont besoin d’un oracle déterministe qui rejette le collage vide au lieu de renvoyer une chaîne vide qu’un correcteur défectueux pourrait traiter comme une correspondance totale. Préférez cet encodeur lorsque le corpus est allemand ou d’Europe centrale ; pour l’épellation radio uniquement en anglais utilisez un outil d’alphabet OTAN, et pour le rapprochement approximatif anglophone comparez les landings soundex ou metaphone plutôt que de forcer Cologne sur des noms anglo-saxons.
Limitez les requêtes à des noms isolés ou de courts jetons, stockez le code à côté de l’orthographe d’origine et réencodez après avoir nettoyé les titres tels que Dr ou Frau dans votre propre pipeline si vous voulez des clés sans titre.
Cas d’usage
CRM et déduplication clients
Attachez un code de Cologne à chaque nom de famille allemand pour que Müller et Mueller se regroupent avant la revue humaine des comptes éventuellement en double.
Indexation généalogique et listes civiles
Indexez des lignes historiques de personnes avec la Kölner Phonetik pour qu’une recherche sur Schneider fasse aussi apparaître des variantes orthographiques proches sans modèle de texte intégral.
Clés de rapprochement ETL pour extraits allemands
Ajoutez une colonne cologne déterministe dans les jobs de migration à côté d’autres clés phonétiques pour des fichiers citoyens ou employés multi-sources.
Questions fréquentes
Qu’est-ce que la phonétique de Cologne (Kölner Phonetik) ?
Un algorithme allemand de rapprochement de noms qui mappe un mot vers une courte chaîne de chiffres avec des règles fixes de lettres, un contexte pour C, D, T, P et X, puis fusionne les chiffres répétés et les zéros intérieurs.
Pourquoi Müller et Mueller obtiennent-ils le même code ?
Les trémas se replient sur les voyelles de base (Ü→U), les voyelles se mappent sur zéro et sont retirées sauf un zéro initial, et les codes de consonnes restants coïncident — les deux se normalisent vers MULLER et code 657.
Que se passe-t-il pour une entrée vide ou uniquement numérique ?
Au moins un caractère alphabétique (y compris trémas allemands ou ß) est requis ; les chaînes vides, seules en espaces et non alphabétiques sont rejetées et non facturées.
Puis-je décoder un code de Cologne en un nom ?
Non. Le mappage est avec perte et plusieurs-vers-un. Cet encodeur ne produit que le code de chiffres ; la recherche inverse nécessite votre propre dictionnaire de noms.
Un même code de Cologne signifie-t-il que deux fiches désignent la même personne ?
Non. Un code identique signale seulement une correspondance possible. Les deuxièmes prénoms, les noms d'épouse et les erreurs de transcription demandent encore un contrôle humain ou un second critère, comme la même région ou une année de naissance proche.
Outils associés
Pour les développeurs — accès API
Tout sur cette page est disponible par programmation. Cette section s'adresse aux équipes qui veulent l'intégrer à leurs systèmes ; les autres peuvent simplement utiliser l'outil ci-dessus.
Endpoint
Authentification par jeton Bearer : un seul POST met la tâche en file d’attente, et le résultat vous parvient par webhook ou lien signé.
Appeler depuis votre stack
curl -X POST https://api.kit.forhosting.com/enc/cologne-phonetic \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"Müller"}'const res = await fetch("https://api.kit.forhosting.com/enc/cologne-phonetic", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "Müller"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/enc/cologne-phonetic",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "Müller"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/enc/cologne-phonetic", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"Müller"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"Müller"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/enc/cologne-phonetic", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemple de requête
{
"text": "Müller"
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "enc.cologne_phonetic",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L’API est asynchrone : chaque appel renvoie un task_id immédiatement, puis vous interrogez l’état à raison d’une requête par seconde.
Tarifs
Le prix est publié, sans tokens ni crédits. Une tâche qui échoue n’est pas facturée.
Erreurs
| HTTP | Code | Signification |
|---|---|---|
401 | unauthorized | Clé API absente ou invalide : vérifiez l’en-tête Authorization. |
402 | insufficient_balance | Solde insuffisant : rechargez votre compte pour lancer cette tâche. |
404 | unknown_type | Type de tâche inconnu : vérifiez le champ type de votre requête. |
429 | rate_limited | Trop de requêtes : ralentissez la cadence, puis réessayez. |
Notes techniques
Cet encodeur applique les règles classiques de Postel dans un Worker pur : majuscules et repli des trémas, correspondance de chaque lettre selon le voisinage, fusion des chiffres identiques consécutifs et suppression des zéros intérieurs. Les chaînes vides et le collage uniquement numérique échouent avec invalid_input au lieu d’inventer un succès vide.
Contrat d’entrée, champs de réponse et cas invalid_input
Envoyez en POST un objet JSON avec la chaîne obligatoire text (alias input, value, name ou s). Un trim est appliqué ; les espaces seuls et les champs manquants échouent avec invalid_input en nommant le problème. En cas de succès le corps renvoie text en écho, code comme chaîne de chiffres, length comme nombre de chiffres, normalized comme la séquence A–Z en majuscules après repli des trémas (Ä Ö Ü vers A O U, ß vers SS), et letter_count pour cette séquence.
Questions techniques
Que coûte l’encodeur phonétique de Cologne ?
L’outil navigateur est gratuit. Les requêtes API utilisent le solde prépayé KIT à $0.002 par appel réussi ; une entrée invalide n’est pas facturée.