xml技术

XML(可扩展标记语言)

XML是一种非常灵活的语言,没有固定的标签,所有的标签都可以自定义。通常,XML被用于信息的传递,因此,XML经常被充当配置文件。

DTD简介

  • 1 DTD,文档类型定义,用于约束xml的文档格式,保证xml是一个有效的xml。
  • 2 DTD分为两种,内部DTD和外部DTD

内部DTD的使用

  • 1 内部DTD的定义,语法如下:
    <!DOCTYPE 根元素 [元素声明]}>
  • 2 元素声明语法:
    <!ELEMENT 元素名 (子元素[, 子元素...]>
  • 3 数量词:
    +:表示出现1次或多次
    ?:表示出现0次或1次
    *:表示出现任意次
  • 4 属性声明语法:
    <!ATTLIST 元素名称 属性名称 属性类型 默认值>
    属性类型:CDATA,表示字符数据(character data)
    默认值:
    • 1 #REQUIRED, 表示必须出现
    • 2 #IMPLIED, 表示不是必须出现
  • 5 有效的DTD文件示例
<?xml version="1.0" encoding="UTF-8"?>
<!--声明内部DTD-->
<!DOCTYPE scores [
    <!ELEMNT scores (student+)>
    <!ELEMNT student (name, course, score)>
    <!ATTLIST student id CDATA #REQUIRED>
    <!ELEMNT name (#PCDATA)>
    <!ELEMNT course (#PCDATA)>
    <!ELEMNT score (#PCDATA)>
]>   
<scores>
    <student id="1">
        <name>李军</name>  
        <course>Python编程</course>
        <score>90</score>
    </student> 
    <student id="2">
        <name>李佳</name>
        <course>Sql编程</course>
        <score>80 </score>
    </student>
</scores>

外部DTD的使用

  • 1 创建一个独立的DTD文件
<?xml version="1.0" encoding="UTF-8"?>
<!ELEMNT scores (student+)>
<!ELEMNT student (name, course, score)>
<!ATTLIST student id CDATA #REQUIRED>
<!ELEMNT name (#PCDATA)>
<!ELEMNT course (#PCDATA)>
<!ELEMNT score (#PCDATA)>
  • 2 在xml种引入外部DTD文件
<!--引入外部DTD文件-->
<!DOCTYPE scores SYSTEM "scores.dtd">
posted @ 2020-05-25 16:01  小他_W  阅读(187)  评论(0编辑  收藏  举报