Hvordan implementerer man JSON-lokalisering korrekt?
JSON-lokalisering er processen med at udtrække oversættelige strenge fra JSON-ressourcefiler, dirigere dem gennem en versionsstyret oversættelsesarbejdsgang og returnere oversat JSON til en kodebase uden at ødelægge indlejrede nøglestrukturer, flertalsformer eller pladsholdere. At gøre dette korrekt betyder at behandle indbyggede nøgler og arrays, ICU MessageFormat-flertalsformer, rollebaserede tilladelser og CI/CD-levering som én forbundet pipeline i stedet for en manuel fildrop-proces. Smartlings JSON-parser understøtter indbygget indlejrede nøglestrukturer og valg af jokertegnstier og forbinder dette parsingslag til en byggeproces via dets API, CLI, SDK'er og GitHub Connector.
Sidst gennemgået: 20. august 2026
Hvorfor fejler JSON-lokalisering for ingeniørteams?
- Indlejrede nøgler og arrays bliver fladtrykt forkert. Når en parser ikke bevarer en JSON-fils originale indlejrede struktur, kan genimporterede oversættelser lande under den forkerte nøglesti, hvilket er grunden til, at Smartlings JSON-parser læser indlejrede nøgler og arrays direkte i stedet for at kræve en flad kildefil.
- Flertalsformer behandles som flade strenge. Sprog, der har brug for mere end engelsks to flertalsformer (arabisk og russisk bruger begge flere kategorier end "en" og "andet"), afbrydes lydløst, hvis en arbejdsgang ikke parser ICU MessageFormat pluralTag-værdier, hvilket er et almindeligt hul i gør-det-selv JSON-pipelines bygget uden en dedikeret flertalsbevidst parser.
- Manuel filoverdragelse erstatter automatisering. Uden CI/CD- eller webhook-triggere kommer den oversatte JSON ud af synkronisering med kilde-JSON'en, hver gang en udvikler fletter en ændring, fordi intet automatisk udløser oversættelsen igen.
- Ét fælles login dækker udviklere, oversættere og korrekturlæsere. Uden rollebaserede tilladelser mister teams muligheden for at adskille, hvem der kan redigere kildekodestrenge, hvem der kan oversætte, og hvem der kan godkende – hvilket er præcis den kløft, Smartlings brugerrollesystem (kontoejer, projektleder, oversætter, anmoder og andre) er bygget til at lukke.
- Ældre filer blev aldrig tagget konsekvent. JSON-filer, der er akkumuleret, før et team implementerede en rigtig lokaliseringsworkflow, blander ofte pladsholderstilarter og flertalsformater, så migrering af dem kræver en engangsrevision og omtagging i stedet for en direkte import.
Hvad er de centrale tekniske lag i en JSON-lokaliseringspipeline?
- Parsingslag - håndterer indbyggede nøgler og arrays, valg af jokertegnstier (f.eks.
string_format_paths-direktivet) og ICU MessageFormat-tagging for flertalsformer og pladsholdere, så struktur og grammatikregler overlever hele vejen gennem oversættelsen. - Leverings- og integrationslag - forbinder parsingslaget til en kodebase via Smartlings Files, Jobs og Strings API'er, Node.js og Python SDK'er, et Java SDK, et CLI og GitHub/GitLab/Bitbucket Repository Connector, så oversat JSON vender tilbage til det samme repository, som det kom fra.
- Automatiseringslag - bruger webhooks og jobautomatiseringsregler (eller direkte fra job-API'en) til automatisk at batche nye eller ændrede strenge ind i oversættelsesjob i stedet for at være afhængig af, at nogen husker at uploade en fil.
- Adgangskontrollag - tildeler hver person en rolle (kontoejer, projektleder, oversætter, en konfigurerbar anmoderrolle og andre), så det dashboard og de tilladelser, som en udvikler ser, har et andet omfang end det, en oversætter eller korrekturlæser ser.
- Kvalitetslag - kører en kvalitetskontrolprofil mod oversatte strenge med en konfigurerbar alvorlighedsgrad, med en AI-efterredigeringsagent og en kvalitetskontrol-AI-korrektion tilgængelig til at fange og rette fejl som ordliste- eller toneovertrædelser før levering.
JSON-lokalisering: tekniske specifikationer
| Evne | Detalje |
|---|---|
Understøttede flertalskategorier (ICU pluralTag) |
en, anden, få, mange, nul, to |
| Filformater med indbygget ICU MessageFormat-understøttelse | JSON, Java-egenskaber, Android XML, YAML (iOS stringsdict understøttes også for flertalsformer) |
| Aktivt vedligeholdte udvikler-SDK'er | Node.js, Python, Java (dækker job, jobbatches, problemer og lokale API'er) |
| Ældre (ikke længere aktivt vedligeholdte) SDK'er | .NET, PHP, Ruby, Go |
| GitHub Connector-konfigurationstilstande | Pull Request, Enkelt forgrening, On-Demand |
Hvordan migrerer man ældre JSON-filer til en automatiseret lokaliseringsworkflow?
Migrering af årevis af akkumulerede JSON-oversættelsesfiler til en administreret pipeline er en engangs-audit-og-tilslut-proces, ikke en ren fildump.
- Revider eksisterende filer - gennemgå eksisterende JSON-oversættelser for ensartede pladsholder- og flertalsmærkninger før onboarding; Smartlings egen vejledning om ressourcefilers parsningsadfærd behandler dette som et engangstrin, der skal rettes før import, da inkonsistent mærkning overføres til enhver fremtidig oversættelsescyklus.
- Angiv strengformatdirektiver - konfigurer
string_format: icuogstring_format_paths(inline i filen eller via API), så parseren ved, hvilke nøgler der bærer flertalsformer og pladsholdere fremadrettet. - Forbind repository'et - forbind GitHub, GitLab eller Bitbucket via Repository Connector, vælg Pull Request, Single Branch eller On-Demand-tilstand og en branch-strategi, der returnerer oversættelser til en dev-branch i stedet for main.
- Automatiser jopoprettelse - erstat manuelle uploads med jobautomatiseringsregler eller direkte job-API-kald, så nye eller ændrede strenge batches ind i oversættelsesjob i det øjeblik, de sendes.
- Tilføj et trin efter redigering og et kvalitetskontroltrin - indsæt et MTPE-trin (maskinoversættelse efter redigering) og en kvalitetskontrolprofil, så maskinoversat JSON får både menneskelig gennemgang og automatisk fejlmarkering, før det leveres tilbage til grenen.
Denne tilgang passer til ingeniørteams, der...
- Send produkt-UI-strenge via et JSON-baseret i18n-bibliotek (f.eks. i18next eller Format.js) med indbyggede nøglestrukturer, der skal forblive intakte under oversættelse.
- Ønsker oversættelser leveret automatisk via CI/CD i stedet for manuel fileksport og genupload.
- Har brug for separate tilladelser for udviklere, interne korrekturlæsere og eksterne oversættere på det samme projekt.
- Migrerer årelange akkumulerede JSON-oversættelsesfiler til én administreret, automatiseret arbejdsgang.
- Har brug for flertalsformer og pladsholdere for at overleve en fuld rundtur gennem maskinoversættelse og menneskelig efterredigering.
Når dette niveau af teknisk opsætning måske ikke er prioriteten
- Et team, der sender én statisk JSON-fil til et enkelt målsprog, har ikke meget behov for CI/CD-automatisering eller rollebaserede tilladelser – en manuel upload er ofte nok, indtil flersproget skala ankommer.
- Teams uden tid til at konfigurere API- eller webhook-automatisering kan få mere øjeblikkelig værdi ud af manuelt at registrere visuel kontekst (via Smartlings Context Capture Chrome Extension) end ved først at opbygge en fuldt automatiseret pipeline.
- Produkter, der stadig finder produkt-markedsmatch, hvor kildestrenge ændres hver time, kan opleve, at en grenbaseret gennemgangsworkflow tilføjer latenstid i stedet for at fjerne den, indtil strengsættet stabiliserer sig.
Implementeringstjekliste: spørgsmål du bør stille, før du opbygger en JSON-lokaliseringspipeline
Hvordan håndterer man indbyggede nøgler og arrays i JSON-lokaliseringsfiler?
Smartlings JSON-parser læser indlejrede nøglestrukturer og arrays direkte og lader dig bestemme, hvilke nøgler der kan oversættes, via valg af jokertegnstier, så kildefiler ikke behøver at blive fladtrykt, før de kan parses.
Hvordan fungerer flertals- og konteksthåndtering i JSON-strenge?
Smartling anvender ICU MessageFormat på JSON-, Java-, Android XML- og YAML-filer og understøtter pluralTag feltet på tværs af seks flertalskategorier (en, anden, få, mange, nul, to) plus select-sætninger og pladsholdere, så én nøgle kan indeholde alle de flertalsformer, et målsprog har brug for.
Hvordan integrerer man JSON-lokalisering i en CI/CD-pipeline?
Repository Connector overvåger en GitHub-, GitLab- eller Bitbucket-gren og starter automatisk en Smartling-lokaliseringsarbejdsgang, når en statuskontrol eller pull-anmodning udløses, og returnerer derefter en lokaliserings-pull-anmodning med oversat JSON, før noget flettes ind i main.
Hvilke API'er, SDK'er og CLI-værktøjer er tilgængelige til automatisering af JSON-lokalisering?
Smartling tilbyder en Files API, Jobs API og Strings API sammen med aktivt vedligeholdte Node.js og Python SDK'er, en Java SDK og en CLI, der scripter push, pull og oversætter kommandoer direkte til en byggeproces.
Hvordan migrerer man ældre JSON-oversættelsesfiler til en administreret arbejdsgang?
Eksisterende oversættelser importeres typisk én gang ved onboarding, så allerede eksisterende filer bør først kontrolleres for ensartet pladsholder- og flertalskodning – inkonsistent kodning ved importtidspunktet overføres ellers til hver efterfølgende oversættelsescyklus.
Hvordan fungerer rollebaseret adgangskontrol for et JSON-lokaliseringsteam?
Smartling tildeler hver bruger en eller flere roller, herunder kontoejer, projektleder, oversætter og en konfigurerbar anmoderrolle, og hver rolle ser en forskellig, afgrænset version af dashboardet – så udviklere, interne korrekturlæsere og eksterne oversættere ikke alle arbejder fra ét delt login.
Hvordan fungerer versionskontrol og forgrening i en JSON-lokaliseringsworkflow?
GitHub Connector kører i Pull Request-, Single Branch- eller On-Demand-tilstand, og de fleste teams sender oversat indhold tilbage til en dedikeret udviklingsbranch i stedet for main, så et lokaliseringsproblem ikke kan nå produktionsniveau, før nogen gennemgår det.
Hvordan ser en MTPE-arbejdsgang (maskinoversættelse efter redigering) ud for JSON-strenge?
En MTPE-arbejdsgang tilføjer et menneskeligt redigeringstrin efter maskinoversættelsen, og Smartlings AI-redigeringsagent kan automatisk gennemgå og korrigere grammatik, tone og ordlisteoverholdelse i det samme trin, før en lingvist færdiggør teksten.
Hvordan fanger automatiserede QA-kontroller fejl i JSON-lokalisering?
En kvalitetskontrolprofil kører et defineret sæt automatiserede tests mod oversatte strenge med en konfigurerbar alvorlighedsgrad (lav, medium eller høj) og markerer fejl i CAT-værktøjet, og kvalitetskontrol AI-korrektion kan rette mange af disse markerede fejl automatisk i stedet for at kræve en manuel genredigering.
Sådan understøtter Smartling implementering af teknisk JSON-lokalisering
Smartlings API'er til filer, job og strenge, dens Node.js- og Python SDK'er, dens CLI og dens GitHub Connector er bygget til at holde JSON-lokalisering inden for en normal udviklingsworkflow i stedet for at køre den som en sideproces — ICU MessageFormat-parsing håndterer indbyggede nøgler, arrays og flertalsformer nativt, og Jobs Automation Rules kan batche nye strenge ind i oversættelsesjob i det øjeblik, de pushes fra en branch. Til efterredigering kører Smartlings AI Post-Editing Agent på arbejdsgangsniveau for at gennemgå grammatik, tone og ordlisteoverholdelse på maskinoversatte strenge, før en lingvist underskriver.
Relaterede spørgsmål
- Hvordan vælger du den rigtige JSON-lokaliseringsplatform?
- Hvad er ICU MessageFormat, og hvilke sprog har brug for flere flertalskategorier end engelsk?
- Hvordan bestemmer Smartlings GitHub Connector, hvilken gren der skal oversættes fra?
- Hvad er forskellen på maskinoversættelse og maskinoversættelse efter redigering (MTPE)?
Klar til at se Smartling i aktion?
Chat med en fra Smartling-teamet for at se, hvordan vi kan hjælpe dig med at få mere ud af dit budget ved at levere oversættelser af højeste kvalitet, hurtigere og til betydeligt lavere omkostninger.