Traducción de ID de objeto

Última actualización: 2023-11-04
  • Creado para:
  • Developer
    User

El servicio de imágenes proporciona un mecanismo para traducir los ID de objeto externos a ID de objeto (catálogo) específicos de la configuración regional. La aplicación principal se utiliza para proporcionar contenido específico de la configuración regional y contenido compartido entre varias configuraciones regionales sin que la aplicación cliente necesite conocer los ID de objeto específicos de la configuración regional.

La aplicación se puede escribir utilizando únicamente ID de objeto globales y el servicio de imágenes sustituye automáticamente las imágenes específicas de la configuración regional y otro contenido cuando está disponible.

El locale se especifica en las solicitudes del servicio de imágenes con locale= comando.

NOTA

La traducción del ID de objeto solo es aplicable para el uso basado en catálogos del servicio de imágenes. Los nombres de archivo no se pueden traducir.

Ámbito

Todas las referencias a entradas en los catálogos de imagen, SVG y contenido estático se tienen en cuenta para las fuentes de traducción y las referencias de perfil ICC no se traducen. Además de las object en la ruta de /is/image y /is/static requestsSin embargo, estos comandos y atributos de catálogo están sujetos a la traducción de ID: src=, mask=, template=, defaultImage=, attribute::DefaultImage, y attribute::Watermark.

Mapa de traducción de ID

attribute::LocaleMap define las reglas utilizadas por el servidor para determinar el ID del contenido localizado, dado que, como entradas, el ID de objeto genérico y el locale= valor.

attribute::LocaleMap consiste en una lista de entradas Configuraciones regionales (que coinciden con los valores especificados por locale=), cada uno con ninguno o más sufijos de configuración regional de salida ( *locSuffixes*).

Por ejemplo, attribute::LocaleMap puede tener este aspecto:

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

La solicitud /is/image/myCat/myImg?locale=de_de devolvería la imagen asociada con la entrada de catálogo myCat/myImg_D (suponiendo que exista dicha entrada de catálogo).

Consulte la descripción de attribute::LocaleMap para obtener más información.

El proceso de traducción

En el ejemplo anterior, el servidor busca primero la variable locale " de_de" en el mapa de traducción de ID. A continuación, se repite en el locSuffixes asociado con esta entrada en este caso " _D" y "" (sufijo vacío). Para cada iteración, el sufijo se anexa al ID de imagen y se comprueba la existencia del ID resultante en el catálogo. Si se encuentra, se utiliza esa entrada de catálogo; de lo contrario, se prueba la siguiente. Para este ejemplo, se comprueban estas entradas: myCat/myImg_D, y myCat/myImg. Si no se encuentra ninguna coincidencia, el servidor devuelve un error o una imagen predeterminada (si así se ha configurado).

Configuraciones regionales desconocidas

En el ejemplo anterior, attribute::LocaleMap incluye un vacío locale que define la regla de traducción predeterminada, utilizada para desconocido locale= valores (es decir, los que no estén enumerados explícitamente en el mapa de traducción). Si este mapa de traducción se aplicó a la solicitud /is/image/myCat/myImg?locale=ja, se resolvería en myCat/myImg_E, si existe, o de otro modo myCat/myImg.

Si una asignación de traducción no especifica una regla de traducción predeterminada, se devuelve un error para todas las solicitudes con desconocido locale= valores.

Ejemplos

Búsqueda de varios niveles

A menudo es deseable agrupar las configuraciones regionales (por ejemplo, Europa, Oriente Medio y América del Norte) para abordar los estándares regionales. Esto se puede lograr con una búsqueda de varios niveles.

Para este ejemplo, queremos admitir colecciones para uso occidental y de Oriente Medio. Ambas colecciones se basan en la colección de imágenes genéricas y ambas añaden o modifican ciertas imágenes. Ambas colecciones se refinan aún más para configuraciones regionales específicas ( m1, m2 para dos variantes de Oriente Medio, y w1, w2, y w3 para tres configuraciones regionales occidentales), excepto que las imágenes se comparten para w1 y w3. Las configuraciones regionales desconocidas solo se asignan a la colección genérica y no tienen acceso a las imágenes específicas de configuración regional.

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

La siguiente tabla ilustra qué entradas del catálogo se tienen en cuenta y el orden en que se tienen en cuenta para el ID de entrada genérico myImg:

locale ID de catálogo que buscar

w1, w3

myImg-W, myImg

w2

myImg-W2, myImg-W, myImg

m1

myImg-M1, myImg-M, myImg

m2

myImg-M2, myImg-M, myImg

todos los demás

myImg

Buscar ID específicos

Es posible que algunas convenciones de nomenclatura de imágenes no admitan internamente ID de imagen genéricos. Los ID genéricos de la solicitud siempre deben asignarse a un ID específico en el catálogo; a menudo, es posible que no se conozca el ID específico exacto.

Para este ejemplo, las imágenes de todos los idiomas pueden tener _1, _2, o _3 sufijo. Las imágenes específicas de las configuraciones regionales en francés pueden tener _22 o _23 sufijo y las imágenes específicas de las configuraciones regionales en alemán pueden tener _470 o _480 sufijo.

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

La siguiente tabla ilustra qué entradas del catálogo se tienen en cuenta y el orden en que se tienen en cuenta para el ID de entrada genérico myImg:

locale ID de salida que buscar

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 los demás

myImg_1, myImg_2, myImg_3

Véase también

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

En esta página