xml不仅要符合xml规范,还要符合dtd规范
xml 可以看成一课书,它有根元素,根元素也叫文档元素
实体可以包含已经分析和未分析的元素
已经分析的内容被称为它的替换文本,
未分析的是一种资源
已经分析的实体用它的名字来引用,为分析的用entities来引用
文档的声明,注释都用显示标记来指明
xml声明
文档类型声明
元素等

xml的声明
<?xml版本信息[编码信息][文档独立性信息]]?>

eg  <?xml version="1.0"?> 不能用空格两边
xml工作组会使用新的版本号,支持的细节也不一样

加上encodin=“gb2312” 显示中文信息
<?xml version="1.0" encoding="gb2312"?>
standalone  用来指明文档的独立
<?xml version="1.0" encodding="gb2312" standalone="yes"?>   这就是一个完整的xml声明了

xml 的声明的前面不可以用任何字符


xml的类型的声明

你可以定义自己的标签,但是别人如何知道你的标签的意义的,比如我用xml信息来记录我的书籍信息,我用标签来描述这些信息

如果你来读我的型号信息不一样同一样的钢材有两种表现方式,那么就会造成数据不能共融。所以我们就需要DTD来规范了

xml从sgml继承dtd机制,xml就有一个好的dtd文件

dtd文件一般用dtd做后醉
<!DOCTYPE greeting SYSTEM"hello.dtd">

第二种方式:
<?xml version="1.0" encodding="gb2312" stadalone="yes"?>

<!DOCTYPE greeting [!ElEMNT greeting(#PCDATA)]> []里面的是标签的定义


元素,在xml中元素有开始+结束标签
元素有属性说明集    命名的时候:名称只能用和C一样的开头
名称不可以包含空格
名称中尽量不要使用到冒号
冒号有特殊的作用

元素的四种形式:
空元素  <student/>  /表示关闭,表示没有任何数据
带有属性的空元素   <student name="aa"/>
带有内容的标签   <student><name> aa</name></student>

带有内容+属性的元素

注意:元素和标签是不一样的,元素是包括开始标签,结束标签和她们之间的属性    和注释等

标签是尖括号和两者之间的内容


子元素是被嵌套的元素 比如
<student>
<student>
<name>aa</name>
</student>
</student>
字符数据不能有&    < ]]