新闻中心

DTD中的NOTATION是什么 用于声明非XML数据类型

2025-12-15
浏览次数:
返回列表
NOTATION 是 DTD 中声明外部非 XML 数据类型的机制,仅提供标识名及可选 public/system ID,供属性引用以告知解析器跳过解析、交由外部处理器处理,不包含数据本身也不验证格式。

dtd中的notation是什么 用于声明非xml数据类型

NOTATION 是 DTD(文档类型定义)中用于声明外部非 XML 数据类型的机制,它本身不定义数据内容,而是为外部数据(如图片、音频、PDF 等)提供一个可被元素或属性引用的“标识名”和关联的处理信息。

NOTATION 的作用:标记外部数据类型

XML 解析器默认只处理 XML 格式文本。当文档中需要引用二进制或非 XML 格式的数据(例如 logo.pngreport.pdfaudio.w*)时,NOTATION 就用来告诉解析器:“这是一个特殊类型的数据,别按 XML 解析,交给外部应用或处理器去处理”。

它不包含数据本身,也不验证数据格式,只是注册一个名字 + 可选的公共标识符(public ID)和系统标识符(system ID),供后续在元素或属性声明中引用。

语法格式

基本声明形式如下:

name PUBLIC "public-id" "system-id">

或仅用系统标识符:

name SYSTEM "system-id">

例如:


如何在元素或属性中使用 NOTATION

NOTATION 必须配合 NOTATION 类型的属性来使用,常见于声明能携带外部资源的元素:

  • 声明一个属性,其值必须是已声明的 NOTATION 名
  • 该属性通常与空元素或包含元数据的元素搭配,比如:

示例 DTD 片段:

svg SYSTEM "image/svg+xml">

  type NOTATION (svg | png | pdf) #REQUIRED
  src CDATA #REQUIRED>

这样, 就合法了——解析器知道 type 的取值只能是已声明的 NOTATION 名,且语义上表示“这是 SVG 类型的外部资源”。

注意事项

  • NOTATION 不触发自动加载或解析外部数据;它只是元数据,实际处理由应用程序决定
  • 公共标识符(PUBLIC)用于标准化命名(如 ISO 标准),系统标识符(SYSTEM)通常是 MIME 类型或 URL,但无强制校验
  • XML Schema 中没有直接等价物;类似功能需靠 xsi:type 或自定义 schema 注解模拟,但语义更弱
  • 现代 Web 应用中较少直接用 DTD NOTATION,更多靠 MIME 类型 + HTTP 头或前端 JS 自行识别,但在遗留出版系统、DocBook 或某些嵌入式 XML 场景中仍有实际用途

基本上就这些。NOTATION 是 DTD 中一个轻量但关键的“类型挂钩”,让 XML 文档能安全、可声明地关联外部非 XML 内容。

以上就是DTD中的NOTATION是什么 用于声明非XML数据类型的详细内容,更多请关注其它相关文章!


# 这是一个  # 衡水推广团队招聘网站  # 兴义营销推广团队名单公示  # 今天头条的关键词排名  # 网站建设开发制作  # 前后端分离网站seo  # 温州网站优化哪家效果好  # 网站建设的论文综述  # 珠宝课程推广营销策略  # 求网站建设工作文案  # 宿迁营销推广合作中心  # 自定义  # 中文网  # 相关文章  # js  # 但在  # 这是  # 如何用  # 文档  # 可选  # 也不  # red  # pdf  # 处理器  # svg  # go  # 前端 


相关栏目: 【 科技资讯46185 】 【 网络学院92790


相关推荐: zookeeper 都有哪些功能?  批改网学生版PC登录 批改网官网登录系统入口  Fabric模组开发:自定义物品与物品组的现代管理方法  React Hooks最佳实践:动态组件状态管理的组件化方案  微信商城在哪里打开【步骤】  晋江读书网页版在线登录 晋江读书电脑版官网  绝地鸭卫平a核爆刀流玩法攻略  Win11怎么用U盘重装系统 Win11制作启动盘并重装系统完整教程【详解】  在J*aScript中复现SciPy的B样条拟合与求值:关键考量  mysql如何设置表访问权限_mysql表访问权限配置  Win11怎么查看显卡显存 Win11显示适配器属性及专用视频内存查询  J*a应用程序首次运行自动创建文件与目录的最佳实践  Excel文件在线转换快速入口 Excel在线格式转换网站  html网页设计源代码怎么运行_运行html网页设计源代码步骤【指南】  如何在网页中实现特定地点的随机图片展示  火锅吃太多会怎样 火锅吃太多会上火吗  知音漫客官网漫画下载_知音漫客网页版阅读记录  韩剧圈正版入口页面_韩剧圈官网登录链接  深入理解J*a链表中的IPosition接口与使用  如何在Promise链中有效终止错误处理后的执行  AI抖音网页版免费视频入口 AI抖音网页端最新视频实时观看  火狐浏览器占用内存高卡顿怎么办 火狐浏览器性能优化设置技巧  Surface怎么安装系统 微软Surface Pro U盘重装win11教程  J*aScript实现单选按钮与关联输入框的联动禁用教程  Lar*el用户头像管理:实现图片缩放、存储与旧文件安全删除的最佳实践  XML中包含HTML标签导致解析错误? 正确嵌入非XML数据的两种方法  蛙漫漫画免费阅读入口_蛙漫官方正版无广告纯净版  Angular中单选按钮的正确使用与常见陷阱解析  Go Martini框架:动态服务解码后的图片内容  蛙漫漫画官网在线入口 蛙漫全本漫画免费阅读平台  利用5118提升短视频内容效果_5118短视频关键词优化方法  大麦的“候补”是什么意思 大麦候补购票规则【详解】  python3时间如何用calendar输出?  C++如何生成随机数_C++ random库使用方法与范围设置  如何优雅地解决Livewire文件上传难题?SpatieLivewireFilepond让一切变得简单  J*a编写用户注册与登录功能_掌握字符串与验证逻辑  中兴BladeV30怎样用测距估书架层高_iPhone中兴BladeV30测距估书架层高【家装参考】  Python中如何避免重复条件判断:利用数据结构实现动态逻辑  漫蛙MANWA漫画主页官方入口 漫蛙漫画最新在线阅读地址  Archive of Our Own官网直达 AO3最新可用地址一览  word邮件合并后日期格式不对怎么改_Word邮件合并日期格式修改方法  Golang如何实现容器化日志收集与分析_Golang容器日志收集分析方法  极速漫画官方主页网址 极速漫画漫画在线浏览官网链接  AI泡沫首次被“刺破”:GPU十年都无法存活!  天眼查企业查询官网入口 天眼查官方网页版查询  12306选座怎么选到商务座_12306商务座选择与配置说明  支付宝如何管理隐私设置_支付宝隐私保护的配置技巧  PHP URL参数传递与500错误调试指南  Golang如何使用context实现超时取消_Golang context超时取消模式实践  Go与Ruby之间实现AES加密互通:CFB模式下的密钥长度匹配策略 

搜索