4D v13.4

XML SET OPTIONS

Inicio

 
4D v13.4
XML
XML SET OPTIONS

XML SET OPTIONS 


 

XML SET OPTIONS ( refElement | document ; selector ; valor {; selector2 ; valor2 ; ... ; selectorN ; valorN} ) 
Parámetro Tipo   Descripción
refElement | document  Texto, DocRef in Referencia del elemento XML raíz o Referencia del documento abierto
selector  Entero largo in Opción a definir
valor  Entero largo in Valor de la opción

El comando XML SET OPTIONS se utiliza para modificar el valor de uno o más parámetros XML para estructura pasada en el primer parámetro. 

Este comando se aplica a las estructuras XML de tipo "árbol" (DOM) o "document" (SAX). En el primer parámetro, puede pasar una referencia del elemento raíz (refElement), o la referencia de un documento SAX abierto (document).

Las opciones definidas por este comando se utilizan únicamente en el sentido 4D a XML (no tiene efecto en la lectura de valores XML en 4D). Los siguientes comandos utilizan las siguientes opciones:

Pase en selector la opción a modificar y en valor el nuevo valor de la opción. Puede pasar tantos pares selector/valor como quiera. 

Debe utilizar las constantes descritas a continuación, ubicadas en el tema "":

Constante Tipo Valor Comentario
XML Binary encoding Entero largo 5 Especifica la manera como se convierten los datos binarios.
Valores posibles:
  • XML Base64 (valor por defecto): los datos binarios se convierten simplemente en base64
  • XML Data URI scheme: los datos binarios se convierten en base64 y se añade el encabezado "data:;base64". Este formato permite principalmente a un navegador decodificar automáticamente una imagen, y también es necesario para insertar imágenes . Para mayor información, consulte http://en.wikipedia.org/wiki/Data_URI_scheme.
XML Date encoding Entero largo 2 Especifica la forma en que se convierten las fechas 4D. Por ejemplo, !01/01/2003! en la zona horaria de Paris.
Valores posibles:
  • XML ISO (valor por defecto): uso del formato xs:datetime sin indicación de la zona horaria. Resultado: "2003-01-01". La parte hora, si está presente en el valor 4D (vía SQL) se pierde.
  • XML Local: uso del formato xs:date con indicación de zona horaria. Resultado: "2003-01-01 +01:00". La parte hora, si está presente en el valor 4D (vía SQL) se pierde.
  • XML Datetime local: uso del formato xs:dateTime (ISO 8601). Indicación de la zona horaria. Este formato permite conservar la parte hora, si está presente en el valor 4D (vía SQL). Resultado: "<Date>2003-01-01T00:00:00 +01:00</Date>".
  • XML UTC: uso del formato xs:date. Resultado: "2003-01-01Z". La parte hora, si está presente en el valor 4D (vía SQL) se pierde.
  • XML Datetime UTC: uso del formato xs:dateTime (ISO 8601). Este formato permite conservar la parte hora, si está presente en el valor 4D (vía SQL). Resultado: "<Date>2003-01-01T00:00:00Z</Date>".
XML Indentation Entero largo 4 Define la indentación del document XML.
Valores posibles:
  • XML With indentation (valor por defecto): el documento está indentado.
  • XML No indentation: el documento no está indentado; su contenido se ubica en una sola línea.
XML Picture encoding Entero largo 6 Especifica la forma en la que las imágenes deben convertirse (antes de codificar en base64).
Valores posibles:
  • XML Convert to PNG (valor por defecto): las imágenes se convierten en PNG antes de ser codificadas en base64.
  • XML Native codec: las imágenes se convierten en su primer CODEC nativo de almacenamiento antes de ser codificadas en base64. Debe utilizar estas opciones para codificar imágenes SVG (ver ejemplo del comando XML SET OPTIONS).
XML String encoding Entero largo 1 Especifica la forma como las cadenas 4D se convierten en valores de elementos. No concierne a las conversiones en  atributos para las cuales XML impone el uso de caracteres de escape.
Valores posibles:
  • XML With escaping (valor por defecto): conversión de las cadenas 4D en valores de elementos XML con reemplazo de caracteres. Los datos de tipo texto son analizados automáticamente de manera que los caracteres prohibidos (<&>’) son reemplazados por las entidades XML (&amp;&lt;&gt; &apos;&quot;).
  • XML Raw data: las cadenas 4D se envían como datos brutos; 4D no efectúa codificación ni análisis. Los valores 4D se convierten si es posible en fragmentos XML y se insertan como hijo del elemento objetivo. Si un valor no puede considerarse como fragmento XML, se inserta en forma de dato bruto en un nuevo nodo CDATA.
XML Time encoding Entero largo 3 Define la forma como las horas 4D se convierten. Por ejemplo, ?02/00/46? (hora de Paris). La codificación difiere dependiendo de si quiere expresar una hora o una duración.
Valores posibles para las horas:
  • XML Datetime UTC: hora expresada en UTC (Universal Time Coordinated). Note que la conversión a UTC es automática. Resultado: "<Duration>0000-00-00T01:00:46Z</Duration>".
  • XML Datetime local: hora expresada con la diferencia horaria de la máquina del motor de 4D. Resultado: "<Duration>0000-00-00T02:00:46+01:00</Duration>".
  • XML Datetime local absolute (valor por defecto): hora expresada sin indicación de la zona horaria. Sin modificación del valor. Resultado: "<Duration>0000-00-00T02:00:46</Duration>".
Valores posibles para las duraciones:
  • XML Seconds: número de segundos desde la media noche; sin modificación del valor porque expresa una duración. Resultado: "<Duration>7246</Duration>".
  • XML Duration: duración expresada conforme a XML Schema Part 2: Datatypes Second Edition. Sin modificación dle valor ya que expresa una duración. Resultado: "<Duration>PT02H00M46S</Duration>".

Notas:

  • Los valores XML Local y XML Datetime local no ofrecen fechas expresadas en UTC (Universal Time Coordinated); se convierten sin modificación pero indican la diferencia horaria. Estos formatos son útiles en el caso de conversiones sucesivas y recíprocas (round tripping).
  • Los valores XML UTC y XML Datetime UTC son equivalentes a los precedentes desde el punto de vista del formato, pero se expresan en UTC. Estos formatos deben tener prioridad para asegurar la interoperabilidad. Los valores no son modificables.

Ejemplo  

Inserción de una imagen SVG:

 XML SET OPTIONS($pictElemRef;XML Binary encoding;XML Data URI scheme)
 XML SET OPTIONS($pictElemRef;XML Picture encoding;XML Native codec)
 DOM SET XML ATTRIBUTE($pictElemRef;"xlink:href";PictVar)

 
PROPIEDADES 

Producto: 4D
Tema: XML
Número 1090

 
INDEX

Lista alfabética de los comandos

 
HISTORIA 

Creado por: 4D v12

 
VER TAMBIÉN 

DOM SET XML ATTRIBUTE
DOM SET XML DECLARATION
DOM SET XML ELEMENT VALUE
SAX ADD XML ELEMENT VALUE
XML GET OPTIONS