KaLuoTe  
公告


日历
<2006年3月>
2627281234
567891011
12131415161718
19202122232425
2627282930311
2345678
统计
  • 随笔 - 4
  • 文章 - 0
  • 评论 - 0
  • 引用 - 0

导航

常用链接

留言簿(1)

随笔分类(1)

随笔档案(4)

搜索

  •  

最新随笔

最新评论

阅读排行榜

评论排行榜

 
XML


一>Extensible Markup Language (w3c ---XML标准制订者) 

       XML不是标记语言!       
       XML是用以创造类似于HTML的标记语言的元语言!       
       XML是SGML的子集, 她的出现早于HTML, 体现数据的形式和结构!      
       XML语法非常严格, 其Tag不拘泥于定式; 相对于SGML精简 / 编程简单! 

      优势: 允许不同专业(如音乐、化学、数学等)开发与自己的特定领域有关的标记语言
                更简易的web数据交换和数据生成;
                ............

      具体应用:
              中小型应用程序的数据生成 / 存储 /调度;
              [EG: struts中的struts-config.xml, MVC模式框架cocoon 的实现;]



              ..............

      显示:
       |_> 在Web浏览器中显示的是XML 代码. 
      {  
           使用 <xml datafld=?></xml>  
           使用Script 语言实现 HTML 中的调用和交互! (javascript / vbscript...)  ............ } 



      [XML 语法严谨!] 
      {  
            1. 所有的标记都必须要有一个相应的结束标记;  
            2. 所有的XML标记都必须正确嵌套;  
            3. XML标记大小写敏感;  
            4. 所有标记的属性必须用 "" 括起来;  
            5. XML Document 必须包含根节点; 

            1. 名字中可以包含字母、数字以及其它字母;   
            2. 名字不能以数字或"_" (下划线) 开头;  
            3. 名字不能以字母 xml (或 XML 或 Xml ..) 开头;  
            4. 名字中不能包含空格。 }



二> Concept

       1>Tag

       2>Identifier -----识别文档中的元素;

       3>Language
       4>Structure -----所有信息均体现某种结构;

       5>Metadata -----(Meta标识在HTML中定义网页key/intro...可被搜索但不会显示于页面.) 
       {  
             XML对这一原理进行了深化和扩展,用 XML,   可以描述你的信息在哪里,     
            可以通过meta来验证信息,执行搜索,强制显示,或者处理其他的数据.
            1. 可以验证数字签名,使在线商务的提交动作(submission)有效。    
            2.可以被方便的建立索引和进行更有效搜索。    
            3.可以在不同语言之间传输数据。 
      } 

      6>Display (使用CSS / XSL 显示XML标记创建的文档.) 
     {  
            6.1. XSL全称是Extensible Stylesheet Language(可扩展样式语言), 是将来设计XML文档   显示样 式的主要文件类型。它本身也是基于XML语言的。使用XSL,你可以灵活的设置   文档显示样式,文档将自动适应任何浏览器和PDA(掌上电脑). XSL也可以将XML转化为HTML,那样,老的浏览器也可以浏览XML文档了。  
            6.2. Cascading Style Sheets  6.3. Behaviors 
     } 

     7>Document Object Model(ms 特有的,定义一些动作) 如何使用HTML或者XML对文档这个对象进行操作&控制的标准. {  DOM就是一种详细描述HTML/XML文档对象规则的API。它规定了HTML/XML文档  对象的命名协定,程序模型,沟通规则等。在XML文档中,我们可以将每一个标识元素  看作一个对象---它有自己的名称和属性。  XML创建了标识,而DOM的作用就是告诉script如何在浏览器窗口中操作和显示这些标识 }



三> Speech

XML文档包含三个部分:

1. 一个XML文档声明;
2. 一个关于文档类型的定义;
3. 用XML标识创建的内容。

1>Element (create by yourself)

2>Tag         (use to definition Element) 
     2.1> Attribute (describe tag attr)

3>Declaration    EX: <?xml version="1.0" encoding="gb2312"?>
4>Document Type Definition 

{  通过DTD文件可以检测XML文档的结构是否正确。但建立XML文档并不一定需要DTD文件。 }

5>Well-formed XML {<?xml version="1.0" standalone="yes" encoding="UTF-8"?>}

6>Valid XML (DTD)
<!DOCTYPE type-of-doc SYSTEM/PUBLIC "dtd-name">

DTD是一种保证XML文档格式正确的有效方法,可以比较XML文档和DTD文件来看文档是否符合规范,元素和标签使用是否正确。一个DTD文档包含:元素的定义规则,元素间关系的定义规则,元素可使用的属性,可使用的实体或符号规则。

DTD 文件调用: 
          1>直接包含在XML文档中的DTD; 
          2>调用独立的DTD文件;

DTD
{    
      1.Schema 
       schema是数据规则的描述。schema做两件事:  

               a.它定义元素数据类型和元素之间的关系;  
               b.它定义元素所能包含的内容类型。 DTD就是关于XML文档的一个schema。 

       2.Document Tree 
             "文档树"是文档元素分级结构的形象表示。 一个文档结构树包含根元素,根元素是最顶级的元素。 在XML和DTD文件中,第一个定义的都是根元素。 

       3.Parent Element(父元素)/Child Element(子元素) 
                父元素是指包含有其它元素的元素,被包含的元素称为它的子元素。 没有包含任何子元素的最后一级元素我们也称之为"页元素"。 

       4.Parser 
                Parser是一种检查XML文档是否遵循DTD规范的工具软件。 XML的parser发展为两类:  "非确认类paeser",只检测文档是否遵守XML语法规则,是否用元素标识建立了文档树。  "确认类paeser",它不但检测文档语法,结构树,   而且比较解析你使用的元素标识是否遵守了相应DTD文件的规范。}



四> XML Syntax

OutLine: XML syntax rule / Element / Comment / CDATA / Namespaces /Entity / DTD

(空标识就是标识对之间没有内容的标识。比如<br>,<img>等标识。在XML中,规定所有的标识必须有结束标识,针对这样的空标识,XML中处理的方法是在原标识最后加 / )

character data       {<![CDATA[这里放置需要显示的字符]]>}

Namespaces         { Namespaces同样需要在XML文档的开头部分声明,

Entity:                   类似于 Macro / model in DreamWeaver

DTD syntax:          (在dtd中定义一个元素,在xml文档中使用) 



 <!ELEMENT DESCRIPTION(#PCDATA,DEFINITION)*> 

 #PCDATA
 包含字符或文本数据
 ,
 使用逗号分隔排序  <MYFILE (TITLE,AUTHOR,EMAIL)>      --------- 必须包含;
     
 使用"|"表示或者  <MYFILE (TITLE | AUTHOR | EMAIL)>    --------- 可选;

 name  只能使用一次   <MYFILE (TITLE)>
 
 name?  使用一次或者不使用  <MYFILE (TITLE,AUTHOR?,EMAIL?)>

 name+   使用至少一次或多次  <MYFILE (TITLE+,AUTHOR?,EMAIL)>

 name*  使用一次,多次,或者根本不使用   <MYFILE (TITLE*)>

 ( )   设置组,可以嵌套   <MYFILE(#PCDATA | TITLE)*>
        元素MYFILE包含一个或者更多的文本或者TITLE子元素。
       <MYFILE((TITLE*, AUTHOR?, EMAIL)* | COMMENT)>

 MYFILE元素必须包含一些内容,内容或者是一个注释;也或者是多个组,组里包含:
 一个,多个或者没有TITLE子元素,接着是一个或者没有AUTHOR子元素,
 再接着是一个必须的EMAIL子元素



如果我们想明确地告诉XML程序,标记中的空白有明确的含义,不要随便去掉(如在一些诗中,空格有它具体的意义)则可在标记中加入一个XML内置的属性——xml:space 。如(注意属性名称和值的大小写):
  〈诗歌 xml:space="preserver"〉    祖国啊! 祖国!    我的祖国!    〈/诗歌〉
另外,在XML文件中特殊字符,必须用相应符号代替。 特殊字符    替代符号&&    &amp;<    &it;>    &gt;"    &quot;'    &apos;
〈?xml-stylesheet href="URL" type="text/css"?〉〈?xml-stylesheet href="URL" type="text/xsl"?〉




Information
posted on 2006-03-28 23:56 KaLuoTe 阅读(194) 评论(0)  编辑  收藏

只有注册用户登录后才能发表评论。


网站导航:
 
 
Copyright © KaLuoTe Powered by: 博客园 模板提供:沪江博客