【XML】视频总结

标记语言: 用文字做标记,表达一些内容效果,携带一些数据

DTD(Document Type Definition)

1.定义了XML文件的结构,为XML文件提供语法规则
2.既可以定义在XML文件内,也可以定义在XML文件外
3.使用XML进行数据交换的行业或组织可以定义自己的DTD
4.DTD对XML是可选的内容

使用DTD原因

为了正确的交换数据,XML文件需要确定的结构

DTD的2种使用方式

XML内置DTD内容
在这里插入图片描述
DTD内容放到XML外部(专用)
单独写一个dtd文件,单独把规则拿出来
在这里插入图片描述
DTD内容放到XML外部(公用):有权威机构制定,提供给特定行业或公众使用的DTD。关键字public

XML文件构成:元素,属性,实体,PCDATA(文本内容),CDATA(原样输出内容)

元素声明: <!ELEMENT 元素名称 类别>
      <!ELEMENT 元素名称 元素内容>
在这里插入图片描述
元素(文本内容)
元素(其他子元素)

空元素声明:<!ELEMENT 元素名称 EMPTY>
      DTD中:<!ELEMENT br EMPTY>
      XML中:<br/>
带有任务内容的元素声明:<!ELEMENT 元素名称 ANY>
            DTD中:<!ELEMENT student ANY>
            XML中:<student>赵芬<student/> 带有文本内容
                 <student><name>赵芬</name></student> 包含子元素
元素中子元素的个数
只出现一次
   <!ELEMENT 元素名称 (子元素名称)>
例如:<!ELEMENT 书籍列表 (计算机书籍)>

最少出现一次
   <!ELEMENT 元素名称 (子元素名称+)>
例如:<!ELEMENT 书籍列表 (计算机书籍+)>

声明出现零次或多次的元素
   <!ELEMENT 元素名称 (子元素名称*)>
例如:<!ELEMENT 书籍列表 (计算机书籍*)>

声明出现零次或一次的元素
   <!ELEMENT 元素名称 (子元素名称?)>
例如:<!ELEMENT 书籍列表 (计算机书籍?)>

声明或
   <!ELEMENT 元素名称 (子元素名称|子元素名称)>
例如:<!ELEMENT 书籍列表 (计算机书籍|文学书籍)>

声明混合型
   <!ELEMENT 子元素名称 (#PCDATA|子元素名称)*>
例如:<!ELEMENT 书籍列表 (#PCDATA|计算机书籍)*>
在这里插入图片描述
子元素要求顺序
DTD: <!ELEMENT 计算机书籍(书名, 价格)>
     <!ELEMENT 书名(#PCDATA)>
     <!ELEMENT 价格(#PCDATA)>
XML:
  <书籍列表>
   <计算机书籍>
     <书名>J2SE书</书名>
     <价格>100</价格>
   </计算机书籍>
  </书籍列表>
子元素不要求顺序
DTD: <!ELEMENT 计算机书籍(书名| 价格)*>
     <!ELEMENT 书名(#PCDATA)>
     <!ELEMENT 价格(#PCDATA)>
XML:
  <书籍列表>
   <计算机书籍>
    <书名>J2SE书</书名>
    <价格>100</价格>
   </计算机书籍>
  </书籍列表>
重复元素
DTD: <!ELEMENT 计算机书籍(书名| 作者+)>
     <!ELEMENT 书名(#PCDATA)>
     <!ELEMENT 作者(#PCDATA)>
XML:
  <书籍列表>
   <计算机书籍>
     <书名>J2SE书</书名>
    <作者>赵芬</作者>
     <作者>田佳琪</作者>
   </计算机书籍>
  </书籍列表>
成组元素
DTD: <!ELEMENT 计算机书籍(书名| 价格)+>
     <!ELEMENT 书名(#PCDATA)>
     <!ELEMENT 价格(#PCDATA)>
XML:
  <书籍列表>
    <计算机书籍>
     <书名>J2SE书</书名>
     <价格>100</价格>
     <书名>XML书</书名>
     <价格>50</价格>
   </计算机书籍>
  </书籍列表>

XML文件构成:属性(ATTLIST)声明

语法:<!ATTLIST 元素名称 属性名称 属性类型 默认值>
DTD:<!ATTLIST paymetnt type CDATA ""cash">
XML:<payment type="cash"/>
   <payment />
属性的类型
在这里插入图片描述
属性值
在这里插入图片描述
属性默认值例子
DTD:<!ELEMENT payment EMPTY>
    <!ATTLIST payment type CDATA "cash">
XML:<payment type="check"/>

属性不是必须默认值例子

<!ATTLIST 元素名称 属性名称 属性类型 #IMPLIED>

DTD: <!ATTLIST payment type CDATA #IMPLIED>
XML:  <payment type="cash"/>
    <payment/>

属性必须为默认值例子

<!ATTLIST 元素名称 属性名称 属性类型 #REQUIRED>

DTD:  <!ATTLIST payment type CDATA #REQUIRED>
XML: <payment type="cash"/>

DTD实体

内部实体声明:<!ENTITY 实体名称 "实体的值">
DTD:
   <!ENTITY writer "Bill Gates">
   <!ENTITY copyright "Copyright jobedu,com,cn">
XML:
   <author>&writer;&copyright;</quthor>
内部实体声明:<!ENTITY 实体名称 SYSTEM "URI/URL">
DTD:
   <!ENTITY writer SYSTEM "http://www.jobedu.com.cn/dtd/person.dtd">
XML:
   <author>&writer;</quthor>
在一个xml文件中使用多个DTD文件,不同DTD文件中元素冲突,解决方法:命名空间
采用前缀标识发,在元素名和属性名前面增加一个标识,区分当前元素来自于那个DTD
在这里插入图片描述
浏览器是无法检测xml是否符合了DTD规则的。Java代码实现对xml文件的验证,是否符合DTD规则

Schema比DTD

Schema是DTD的plus替代者,用来描述XML文档的结构,被称为XML Schema Definition(XSD)
Schema使用xml语法,使用xml编写Schema不用学习新的语言,可以用XML编辑器解析器来编辑解析Schema文件
Schema作用
1.保护数据通信
2.Schema可以扩展(在其他Schema里使用)
在这里插入图片描述

视频XML播放源码 三层结构之下的文章视频管理系统 对以前的视频XML进行更行,增加了简单视频列表和列表视频管理及部署服务器上FLV不能播放等问题. 视频XML播放可以更快的查看视频 index.htm是视频播放页面 对应的XMLXML文件夹中player.xml 采用VS2008+SQ2005 default.aspx是带列表的视频播放页 目录下的list1.xml 后台功能更新 后台添加admin 密码admin 网站常规管理: 基本设置 管理设置 简单视频列表: 简单视频进行管理 添加简单视频功能 列表视频功能管理: 添加列表视频 修改视频(这个传值过去绑定XML节点有点问题,待解决) 删除视频 栏目分类管理: 大类添加 小类添加 大类列表 小类列表 内容管理: 文章管理 文章添加 解决问题: 国内大多都是Win2003的主机,FLV格式文件上传服务器后不能播放,默认是没有指定输出FLV这种格式的虽然FTP里面可以看见,但无法通过http访问,也就无法播放了。 让IIS支持Flv的详细设置方法: IIS-->网站--->属性--->HTTP性能--->MIME类型--->新建: 扩展名:flv MIME类型:flv-application/octet-stream (我用这个方法就可以正常播放了……) 你必须设置一下内容 1:在“Web服务扩展”中Active Server Pages,Internet 数据连接器,RPC代理服务扩展,以及在服务器端的包含文件都必须置为允许状况 2:“网站”-》属性-》主目录-》配置-》选项-》启动父路径 3:“网站”-》属性-》服务-》在隔离模式中选中“以IIS5.0隔离模式运行WWW服务” 4:开始-》程序-》管理工具-》服务.找到RPC服务,双击-》登录-》允许服务与桌面交互 原来是net默认上传限制是4M, 超过则要在web.config中配置: 需要在web.config 就可以解决
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值