Tradução da ID do objeto

O Serviço de imagem fornece um mecanismo para traduzir IDs de objetos externos para IDs de objetos (catálogo) específicos da localidade. O aplicativo principal é fornecer conteúdo e conteúdo específicos à localidade compartilhados entre várias localidades, sem que o aplicativo cliente precise conhecer as IDs de objeto específicas à localidade.

O aplicativo pode ser gravado usando apenas IDs de objeto globais e o Serviço de imagem substituirá automaticamente imagens específicas da localidade e outro conteúdo, quando disponível.

O locale é especificado nas solicitações do Servidor de imagens com o comando locale=.

OBSERVAÇÃO

A tradução da ID do objeto só é aplicável para o uso baseado em catálogo do Serviço de imagem. Nomes de arquivo não podem ser convertidos.

Âmbito

Todas as referências a entradas em catálogos de imagem, SVG e conteúdo estático são consideradas para fontes de tradução e referências de perfil ICC não são traduzidas. Além de object no caminho de /is/image e /is/static requests, esses comandos e atributos de catálogo estão sujeitos à tradução da ID: src=, mask=, template=, defaultImage=, attribute::DefaultImage e attribute::Watermark.

O mapa de tradução de ID

attribute::LocaleMap define as regras usadas pelo servidor para determinar a ID do conteúdo localizado, considerando como entradas a ID do objeto genérico e o locale= valor.

attribute::LocaleMap consiste em uma lista de localidades de entrada (correspondendo aos valores especificados com locale=), cada uma com nenhum ou mais sufixos de localidade de saída ( *locSuffixes*).

Por exemplo, attribute::LocaleMap pode ser semelhante a:

en,_E,|en_us,_E,|en_uk,_E,|fr,_F,|de,_D,|de_at,_D,|de_de,_D,|,_E,

A solicitação /is/image/myCat/myImg?locale=de_de retornaria a imagem associada à entrada do catálogo myCat/myImg_D (supondo que tal entrada de catálogo exista).

Consulte a descrição de attribute::LocaleMap para obter detalhes.

O processo de tradução

Dado o exemplo acima, o servidor procura primeiro locale " de_de" no mapa de tradução de ID. Em seguida, ele repete o locSuffixes associado a essa entrada - neste caso, " _D" e "" (sufixo vazio). Para cada repetição, o sufixo é anexado à ID da imagem e a ID resultante testada para a existência no catálogo. Se encontrada, essa entrada de catálogo será usada, caso contrário, a próxima será testada. Neste exemplo, essas entradas são verificadas: myCat/myImg_D e myCat/myImg. Se nenhuma correspondência for encontrada, o servidor retornará um erro ou uma imagem padrão (se configurado).

Códigos de idioma desconhecidos

No exemplo acima, attribute::LocaleMap inclui um locale vazio que define a regra de conversão padrão, usada para valores locale= desconhecidos (ou seja, aqueles não listados explicitamente no mapa de conversão). Se esse mapa de tradução fosse aplicado à solicitação /is/image/myCat/myImg?locale=ja, resolveria para myCat/myImg_E, se existir, ou myCat/myImg.

Se um mapa de tradução não especificar uma regra de conversão padrão, um erro será retornado para todas as solicitações com valores locale= desconhecidos.

Exemplos

Pesquisa em várias camadas

Muitas vezes é desejável agrupar localidades (por exemplo, europeias, do Oriente Médio e norte-americanas) para atender aos padrões regionais. Isso pode ser feito com uma pesquisa em várias camadas.

Neste exemplo, queremos oferecer suporte a coleções para uso no Oriente Médio e Ocidental. Ambas as coleções são baseadas na coleção de imagens genérica e ambas adicionam ou modificam algumas imagens. Ambas as coleções são posteriormente refinadas para localidades específicas ( m1, m2 para duas variantes do Oriente Médio e w1, w2 e w3 para três localidades Ocidentais), exceto que as imagens são compartilhadas para w1 e w3. As localidades desconhecidas são mapeadas apenas para a coleção genérica e não têm acesso a imagens específicas da localidade.

attribute::LocaleMap: w1,-W,|w2,-W2,-W,|w3,-W,|m1,-M1,-M,|m2,-M2,-M,|,

A tabela a seguir ilustra quais entradas de catálogo serão consideradas e a ordem em que serão consideradas para a ID de entrada genérica myImg:

locale IDs de catálogo a serem pesquisadas

w1, w3

myImg-W, myImg

w2

myImg-W2, myImg-W, myImg

m1

myImg-M1, myImg-M, myImg

m2

myImg-M2, myImg-M, myImg

todos os outros

myImg

Procurar IDs específicas

Algumas convenções de nomenclatura de imagem podem não suportar IDs de imagem genéricas internamente. As IDs genéricas da solicitação devem sempre ser mapeadas para uma ID específica no catálogo; geralmente, a ID específica exata pode não ser conhecida.

Neste exemplo, as imagens para todos os idiomas podem ter o sufixo _1, _2 ou _3. As imagens específicas para localidades francesas podem ter o sufixo _22 ou _23, e as imagens específicas para localidades alemãs podem ter o sufixo _470 ou _480.

attribute::LocaleMap: ,_1,_2,_3|fr,_22,_23,_1,_2,_3|de,_470,_480,_1,_2,_3| de_at,_470,_480,_1,_2,_3| de_de,_470,_480,_1,_2,_3

A tabela a seguir ilustra quais entradas de catálogo são consideradas e a ordem em que são consideradas para a ID de entrada genérica myImg:

locale IDs de saída a serem pesquisadas

fr

myImg_22, myImg_23, myImg_1, myImg_2, myImg_3

de , de_at , de_de

myImg_470, myImg_480, myImg_1, myImg_2, myImg_3

todos os outros

myImg_1, myImg_2, myImg_3

Consulte também

atributo::LocaleMap , atributo::DefaultLocale, locale=, req=xlate

Nesta página