DTD_XML 使用

xml 文档由以下5部分组成,因此dtd定义中也有以下5部分:

Elements        元素,最主要的组成部分 Attributes       属性 Entities           实体,定义了一些固定的 文本 或 字符,相当于它们的快捷方式;有一些预定义实体,具有某些特殊意义,比如 < > " ' & ,也可以自定义实体 PCDATA          parsed character data ,其中如果包含特殊实体,则被当作特殊实体看待,比如 > 可能被看做 元素结束符号 CDATA            character data ,其中的特殊实体,被当作普通字符看待;

------

Element 子元素个数: + 表示1个或多个,? 表示0个或1个,* 表示 任意个

Element 类型如果是 EMPTY 则表示空元素

------

下面是1个dtd示例,包括 people.dtd 和 people.xml 2个文件:

 

 people.dtd:

<!ENTITY NS "spaceflysky">
<!ENTITY TRUE "true">
<!ENTITY FALSE "false">
<!ENTITY copyright "Copyright@2008">


<!ELEMENT peoplelist (people)>

<!ELEMENT people (baseinfo,forte,will,friend*,tarch,other,test)>

<!ELEMENT baseinf (name+,age,sex,country)>

<!ELEMENT name (#PCDATA)>
<!ELEMENT age (#PCDATA)>
<!ELEMENT sex (#PCDATA)>
<!ELEMENT country (#PCDATA)>

<!ELEMENT forte (#PCDATA)>
<!ELEMENT will (#PCDATA)>
<!ELEMENT friend (#PCDATA)>
 
<!ELEMENT tarch (time?,(tel|qq|address))>
<!ELEMENT tel (#PCDATA)>
<!ELEMENT qq (#PCDATA)>
<!ELEMENT address (#PCDATA)>
 
<!ELEMENT other (#PCDATA)> 

<!ELEMENT test (br)>

<!ELEMENT br EMPTY>


<!ATTLIST peoplelist 
namespace CDATA #FIXED "&NS;" 
copyright CDATA #IMPLIED>


<!ATTLIST people 
enabled (true|false) "&TRUE;"
alive (live|dead) #REQUIRED 
planet CDATA #IMPLIED>

 

people.xml:

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE people SYSTEM "people.dtd">
<peoplelist copyright="©right;">
	<people alive="live" planet="earth">
		<baseinfo>
			<name>space</name>
			<age>21</age>
			<sex>male</sex>
			<country>china</country>
		</baseinfo>
		<forte></forte>
		<will></will>
		<friend></friend>
		<tarch>
			<time>any time</time>
			<qq>123456</qq>
		</tarch>
		<other></other>
		<test>
			<br />
		</test>
	</people>
</peoplelist>

 

------

下面给出一个可以检查 xml 文件语法的html文件,在IE5.5以上浏览器均可使用:

使用前修改一下xml文件的位置

<html>
<body>
<script type="text/javascript">

var xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
xmlDoc.async="false";
xmlDoc.validateOnParse="false";
xmlDoc.load("validation_test.xml");

document.write("<br />Error Code: ");
document.write(xmlDoc.parseError.errorCode);
document.write("<br />Error Reason: ");
document.write(xmlDoc.parseError.reason);
document.write("<br />Error Line: ");
document.write(xmlDoc.parseError.line);

</script>
</body>
</html>

 ------

一个最权威最标准的dtd教程:

http://www.w3schools.com/dtd/   是W3C 官方教程,英文的。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
目标检测(Object Detection)是计算机视觉领域的一个核心问题,其主要任务是找出图像中所有感兴趣的目标(物体),并确定它们的类别和位置。以下是对目标检测的详细阐述: 一、基本概念 目标检测的任务是解决“在哪里?是什么?”的问题,即定位出图像中目标的位置并识别出目标的类别。由于各类物体具有不同的外观、形状和姿态,加上成像时光照、遮挡等因素的干扰,目标检测一直是计算机视觉领域最具挑战性的任务之一。 二、核心问题 目标检测涉及以下几个核心问题: 分类问题:判断图像中的目标属于哪个类别。 定位问题:确定目标在图像中的具体位置。 大小问题:目标可能具有不同的大小。 形状问题:目标可能具有不同的形状。 三、算法分类 基于深度学习的目标检测算法主要分为两大类: Two-stage算法:先进行区域生成(Region Proposal),生成有可能包含待检物体的预选框(Region Proposal),再通过卷积神经网络进行样本分类。常见的Two-stage算法包括R-CNN、Fast R-CNN、Faster R-CNN等。 One-stage算法:不用生成区域提议,直接在网络中提取特征来预测物体分类和位置。常见的One-stage算法包括YOLO系列(YOLOv1、YOLOv2、YOLOv3、YOLOv4、YOLOv5等)、SSD和RetinaNet等。 四、算法原理 以YOLO系列为例,YOLO将目标检测视为回归问题,将输入图像一次性划分为多个区域,直接在输出层预测边界框和类别概率。YOLO采用卷积网络来提取特征,使用全连接层来得到预测值。其网络结构通常包含多个卷积层和全连接层,通过卷积层提取图像特征,通过全连接层输出预测结果。 五、应用领域 目标检测技术已经广泛应用于各个领域,为人们的生活带来了极大的便利。以下是一些主要的应用领域: 安全监控:在商场、银行
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值