PCDATA 和 CDATA

2023-12-04 20:38
文章标签 cdata pcdata

本文主要是介绍PCDATA 和 CDATA,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

PCDATA
  被解析的字符数据
  Parsed Character Data, 表示被解析的字符数据,可理解为应该由XML解析器解析的文本数据

  XML解析器通常会解析XML文档中所有的文本
  当某个XML元素被解析时,其标签之间的文本也会被解析,如:

<message>This text is also parsed</message>

  下例中,<name>元素包含着另外的两个元素first和last,

<name><first>Bill</first><last>Gates</last></name>

  解析器会把它分解为如下这样子:

<name><first>Bill</first><last>Gates</last>
</name>

CDATA

  Character Data, 表示(未解析)字符数据,可以理解为不应该由XML解析器解析的文本数据

  XML文档中的所有文本均会被解析器解析,但CDATA区段中的文本会除外

  像 "<" 和 "&" 字符在 XML 元素中都是非法的
    "<" 会产生错误,因为解析器会把该字符解释为新元素的开始
    "&" 会产生错误,因为解析器会把该字符解释为字符实体的开始
  因此,比如在JavaScript代码中包含了大量 "<" 或 "&" 字符
  为了避免解析错误,可将脚本代码定义为CDATA
  这样的话,CDATA部分中的所有内容都会被解析器忽略

格式:
    CDATA 部分由 "<![CDATA[" 开始,由 "]]>" 结束

    <![CDATA[
      ...
      被解析器忽略的字符
      ...
    ]]>

<script><![CDATA[function matchwo(a,b)  //整个matchwo函数体会被解析器忽略{if (a < b && a < 0) then{return 1;}else{return 0;}}]]>
</script>

关于CDATA部分的注释:
  CDATA部分不能包含字符串 "]]>",也不允许嵌套的CDATA部分
  标记CDATA部分结尾的 "]]>" 不能包含空格或换行

这篇关于PCDATA 和 CDATA的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/454836

相关文章

mybatis 模糊查询和![CDATA[ ]]的作用

1. sql中字符串拼接    SELECT * FROM tableName WHERE name LIKE CONCAT(CONCAT('%', #{text}), '%');   2. 使用 ${...} 代替 #{...} (不能防止sql注入 #{}---> 可以防止sql注入的问题)    SELECT * FROM tableName WHERE name LIKE

Result Maps collection does not contain value for frontpreviewprofitManage.cdata

Result Mapscollection does not contain value for  frontpreviewprofitManage.cdata ssi 出现上述错误主要是因为你的select标签内部的resultMap属性指向的不正确 在sql文件中只要有一个resultMap或resultType属性指向错误,则在这个文件中其余正确的语句也不能执行, 所以在出

!CDATA[]]用法详解

所有 XML 文档中的文本均会被解析器解析。 只有 CDATA 区段(CDATA section)中的文本会被解析器忽略。 PCDATA PCDATA 指的是被解析的字符数据(Parsed Character Data)。 XML 解析器通常会解析 XML 文档中所有的文本。 当某个 XML 元素被解析时,其标签之间的文本也会被解析: <message>此文本也会被解析</m

【XML】XML CDATA

XML CDATA 所有 XML 文档中的文本均会被解析器解析。 只有 CDATA 区段(CDATA section)中的文本会被解析器忽略。 转义字符 非法的 XML 字符必须被替换为实体引用(entity reference)。 假如您在 XML 文档中放置了一个类似 "<" 字符,那么这个文档会产生一个错误,这是因为解析器会把它解释为新元素的开始。因此你不

ibatis学习之道:ibatis的[CDATA]dynamic属性跟#$的应用

ibatis的<![CDATA]>,dynamic属性和#,$的应用 <![CDATA[   ]]>的正确使用 ibatis作为一种半自动化的OR Mapping工具,其灵活性日益体现出来,越来越多的人都倾向于在项目中使用。由于Sql中经常有与xml规范相冲突的字符对xml映射文件的合法性造成影响。许多人都知道使用<![CDATA[   ]]>标记来避免冲突,但是在sql配置中有动态语句

【漏洞复现】CData API Server 路径遍历漏洞(CVE-2024-31849)

0x01 产品简介 CData API Server是CData公司的一个强大的数据连接平台,旨在帮助企业轻松地访问、整合和分析各种数据源。 0x02 漏洞概述 CData API Server 23.4.8846之前版本存在安全漏洞,该漏洞源于存在路径遍历漏洞。攻击者可利用该漏洞获得对应用程序的完全管理访问权限。 0x03 测绘语句 fofa: title="CData" 0x04

[经验总结]XSLT模板中创建普通文本结点及CDATA结点

创建文本结点 (1)直接写入文本: text1   (2)通过<xsl:text>创建文本结点: <xsl:text>text2</xsl:text>   (3)通过<xsl:text>创建CDATA结点: <xsl:text disable-output-escaping="yes">&lt;![CDATA[</xsl:text> <xsl:text  disable-outpu

javascript中的CDATA字段

CDATA 内部的所有东西都会被解析器忽略。 假如文本中包含了大量的 "<" 和 "&" 字符 - 就像编程代码中经常出现的情况一样 - 那么这个 XML 元素就可以被定义为一个 CDATA 部分。 CDATA 区段开始于 "<![CDATA[",结束于 "]]>": <script type="text/javascript"><![CDATA[function compare(a,b

xml简介 以及 CDATA区段的用法说明

Xml(extendsible markup language可扩展性标记语言) 1.可以用来保存数据 2.可以用来做配置文件 3.数据传输的载体 <?xml version="1.0" encoding="utf-8" standalone="no" ?> version:解析这个xml的时候,使用什么版本的解析器解析 encoding:解析xml中的文字的时候,用什么编码来翻译(解码) st

CData Drivers for Avro v22

CData Drivers for Avro v22   从报告工具或数据库加入ApacheAvro。您还可以根据标准通过驱动程序连接到自定义应用程序。   与BI分析、报告、ETL工具和定制解决方案集成。   用于Avro的CData驱动程序功能强大:   BI和分析   我们的驱动程序提供了将实时Avro数据连接到分析、BI、报告和数据可视化技术的最有效和最快速的方式。它们提供无与伦