En este tema se describe la posibilidad del componente Enterprise
Service Tools de generar esquemas XML y estructuras de lenguaje para conversores
XML que implementan el proceso de espacios en blanco que se ajustan a los estándares.
Los asistentes de Enterprise Service Tools generan conversores de estructuras de
lenguaje a XML (LS2XML) en escenarios de desarrollo ascendentes y de encuentro en el
medio cuando se utiliza el enfoque de conversión XML compilada. Los conversores LS2XML generan instancias de documentos XML
a partir de instancias de estructuras de lenguaje. El contenido de los campos de estructuras
de lenguaje se convierten en contenido de elementos XML pero primero pasan por un proceso
para eliminar los caracteres no permitidos, así como los espacios en blanco iniciales y
de cola.
Nota: Las versiones anteriores de los conversores de estructuras de lenguaje a XML implementaban
un proceso de espacios en blanco no estándar. Ahora, con esta posibilidad disponible, se recomienda
seleccionar una de las tres opciones que cumplen con los estándares, aunque el proceso de los
espacios en blanco no estándar esté disponible mediante una opción de compatibilidad.
Las opciones de proceso de espacios en blanco siguientes se definen mediante el esquema XML y se pueden
aplicar datos de lenguaje durante la conversión a XML:
El atributo
whiteSpace tiene los valores siguientes:
Nota: - De forma predeterminada, el conversor LS2XML sustituye todos los caracteres no
permitidos en XML por espacios en blanco antes de realizar el proceso indicado por los
valores del atributo whiteSpace especificado. Este conversor LS2XML se puede configurar en la pestaña “Opciones
avanzadas” de la página “Opciones de generación” para sustituir, informar o pasar por alto
los caracteres no permitidos en XML 1.0 en los campos de estructuras de lenguaje.
- En el escenario Correlacionar una interfaz de servicios existente (encuentro en el medio), la selección de la
opción de proceso de espacios en blanco no está permitida ya que el esquema XML existente dicta la
forma en que se deben manejar los espacios en blanco basándose en la correlación.
Las siguientes observaciones de rendimiento se basan en la cantidad de trabajo que cada opción de
proceso de espacios en blanco hace que el conversor LS2XML lleve a cabo:
- preserve: la selección de esta opción puede aumentar el rendimiento del propio conversor LS2XML,
pero puede reducir el rendimiento global del servicio ya que es necesario enviar más bytes
por la red.
- replace: la selección de esta opción puede reducir el rendimiento del conversor LS2XML
ya que es necesario inspeccionar cada carácter y sustituirlo por un espacio en blanco si es un
tabulador, un salto de línea o un retorno de carro. El rendimiento de la red no se ve afectado
ya que no cambia el tamaño del mensaje.
- collapse: la selección de esta opción puede reducir el rendimiento del conversor LS2XML
porque además del trabajo necesario para "sustituir", se detectan y eliminan las secuencias de espacios en blanco
iniciales, finales y contiguas. El rendimiento de la red puede mejorar ya que se transmiten menos
bytes por la red cuando se reduce el tamaño del documento por la eliminación de espacios en blanco.
La
Tabla 1 contiene ejemplos de
salida del conversor de estructura de lenguaje a XML (LS2XML) para cada opción de proceso
de espacios en blanco.
Tabla 1. Ejemplos de proceso de espacios en blanco| Leyenda/Opción |
Datos (consulte nota) |
| VISUALIZADO COMO: |
Rational
Developer
para System z
|
| CARACTERES SUSTITUIDOS (consulte nota): |
.Rational.....Developer\n.for...System.z.
|
| collapse |
Rational.Developer.for.System.z
|
| replace |
.Rational.....Developer..for...System.z.
|
| preserve |
.Rational.....Developer\n.for...System.z.
|
| VISUALIZADO COMO: |
Brought to you by:
Rational Developer for System z
|
| CARACTERES SUSTITUIDOS (consulte nota): |
\tBrought.to.you.by:\r\t\tRational.Developer.for.System.z\n
|
| collapse |
Brought.to.you.by:Rational.Developer.for.System.z
|
| replace |
.Brought.to.you.by:...Rational.Developer.for.System.z.
|
| preserve |
\tBrought.to.you.by:\r\t\tRational.Developer.for.System.z\n
|
Nota: Los espacios en blanco se indican mediante un punto. Los caracteres son: "\t" para el tabulador, "\n" para salto de línea y "\r" para retorno
de carro.
|