Necesito insertar contenido HTML en un documento XML, ¿es posible o debería el contenido HTML estar codificado, por ejemplo, en BASE64 o con algo similar?¿Es posible insertar contenido HTML en un documento XML?
Respuesta
Puede incluir contenido HTML. Una posibilidad es codificarlo en BASE64 como lo mencionó.
Otro podría estar utilizando las etiquetas CDATA
.
Ejemplo usando CDATA
:
<xml>
<title>Your HTML title</title>
<htmlData><![CDATA[<html>
<head>
<script/>
</head>
<body>
Your HTML's body
</body>
</html>
]]>
</htmlData>
</xml>
Tenga en cuenta:
secuencia de caracteres de apertura de CDATA: <![CDATA[
secuencia de caracteres de cierre de CDATA: ]]>
El propósito de codificación BASE64 es tomar datos binarios y ser capaz de persistir en una cadena. Ese beneficio tiene un costo, un aumento en el tamaño del resultado (creo que es una proporción de 4 a 3). Hay dos soluciones. Si sabe que los datos estarán bien formados en XML, inclúyalo directamente. La otra, una mejor opción, es incluir el HTML en una sección CDATA dentro de un elemento dentro del XML.
siempre que su contenido html no necesite contener un elemento CDATA
, puede contener el código HTML en un elemento CDATA
; de lo contrario, deberá escapar de las entidades XML.
<element><![CDATA[<p>your html here</p>]]></element>
VS
<element><p>your html here</p></element>
favor ver esto.
El texto dentro de una sección CDATA será ignorado por el analizador.
http://www.w3schools.com/xml/dom_cdatasection.asp
Este es le ayudará a entender los conceptos básicos acerca de XML
- 1. ¿Es posible manipular un documento SVG incrustado en un documento HTML con JavaScript?
- 2. ¿Es posible insertar un formulario dentro de una tabla html?
- 3. ¿Es posible insertar una etiqueta de comentario en un xml usando simplexml?
- 4. Insertar HTML en documento de Word OpenXML (.Net)
- 5. Agregar contenido HTML al documento asociado con JTextPane
- 6. ¿Es posible definir un elemento raíz en un documento XML utilizando Schema?
- 7. ¿Cómo funciona el análisis de un documento HTML/XML?
- 8. Incrustar XML en HTML
- 9. Vídeo HTML5: es posible colocar contenido html regular sobre video
- 10. Cómo insertar HTML en un UIWebView
- 11. Insertar HTML en un div
- 12. Incrustar un documento xml dentro de una cadena xml
- 13. ¿Cómo insertar un elemento en la posición seleccionada en el documento HTML?
- 14. XSLT: ¿Transformando en contenido no xml?
- 15. Insertar HTML en iframe
- 16. error de análisis XML: contenido extra al final del documento
- 17. ¿Cómo programáticamente inspeccionar un documento HTML
- 18. ¿Agregar un documento xml a un nodo xml en C#?
- 19. ¿Qué es un infoset XML y de qué forma es diferente a un documento XML?
- 20. Android: ¿Es posible escalar un xml drawable?
- 21. ¿Es posible insertar imagen en un comentario de código?
- 22. ¿Cómo puedo insertar un comentario xml con Groovy MarkupBuilder?
- 23. Convirtiendo un documento XML a un diccionario
- 24. XML IDREF ¿otro documento XML?
- 25. Insertar nodo XML en una posición específica de un documento existente
- 26. CouchDB: insertar una nueva matriz en un documento
- 27. Android ¿Es posible definir un mapa en un archivo XML?
- 28. Serializar en un fragmento XML - no Documento XML
- 29. XML: para adjuntar documento xml en el nodo de otro documento
- 30. Pregunta doble: ¿es posible escanear solo un documento del alimentador?
1 CDATA es mucho mejor de la OMI, ya que mantiene las cosas legible, y no viene con la base 64 de las inevitables 33% adicional peso –
solo recuerde que XML y CDATA conservan el espacio en blanco. – zzzzBov
Decidí usar BASE64, ya que guardará los datos con un 100% de precisión, cuando CDATA y escaping agregarán espacios en blanco adicionales si están formateados. Además, agregar CDATA agregaría complejidad adicional y requeriría algún tipo de preescaneo de HTML, en caso de que HTML contuviera elementos CDATA ... – newbie