是什么?
可扩展标记语言,是一种用于标记电子文件使其具有结构的标记语言。
与我们之前学过的HTML相似,是一种标记语言,HTML主要关注于数据的显示和布局美化,XML可用来传输和包含数据,主要应用可作为系统的配置文件;web services中的传输数据;异构平台的数据交换与整合。结构比较有规律,并且可以传输数据,应用广泛。
注意:1.有且只有一个根元素。2.大小写敏感。3.标签出现必须配对
1.实体引用
标签要<>表示,但有时候也需要显示小于号或大于号,如果直接写“<” “>”是不可以的,会把它识别为标签,要想表示出“>”要用>;“<”用<;表示。
以此类推:
字符 |
@H_301_56@
& |
@H_301_56@
> |
@H_301_56@
< |
@H_301_56@
" |
@H_301_56@
, |
@H_301_56@
如果有这么一种情况:要输出<<<<<哈哈>>>>>写成<<<<<哈哈>>>>>是很麻烦的,可以直接写成:
<![CDATA[<<<<<哈哈>>>>>]]>
2.DTD (1)在DTD中,元素声明使用下面的语法:
<!ELEMENT 元素声明 类别>或者<!ELEMENT 元素名称(元素内容)>
例:
<!ELEMENT 书名(#PCDATA)>
<!ELEMENT 计算机书籍(书名,价格,简要介绍)>
逗号间隔的元素有顺序要求,如下图中,必须按书名、价格、简介:
(2)空元素通过关键字EMPTY进行声明:
<!ELEMENT 元素名称 EMPEY>
(3)表示带有任何内容的元素用ANY声明:
<!ELEMENT 元素名称 ANY>
(4)出现次数的规定:
声明只出现一次的元素():<!ELEMENT 元素名称 (子元素名称)>
声明最少出现一次的元素(+):<!ELEMENT 元素名称 (子元素名称+)>
声明出现0次或多次的元素(*):<!ELEMENT 元素名称 (子元素名称*)>
声明出现0次或1次的元素(?):<!ELEMENT 元素名称 (子元素名称?)>
(5)声明“或”(|):
<!ELEMENT 元素名称 (子元素名称1|子元素名称2)>
声明混合型的内容:
<!ELEMENT 子元素名称 (#PCDATA|子元素名称)*>
(6)常用属性类型:
CDATA : 值为字符数据(character data)
(en1|en2|..): 枚举列表中的一个值
ID : 值为唯一的id
属性的默认值:
IMPLIED : 属性值不是必须的
FIXED value:属性值是固定的
3.schema
是基于xml的DTD替代者,文件扩展名.xsd。可保护数据通信,通过Schema,发送方可以用一种接收方能够明白的方式来描述数据。类似于一种规定。