XML Explorer是一个XML和schema编辑器。它简单易用,可以展现多个窗口。可从树状图、列表、表格、
文字模式和跳出式编辑区等方式操作任何XML资料。
3、定义标记
<?xml version="1.0"?>
<book> <title>XML
</title> <author>lisongtao
</author></book>如果文档中包含中文,就要加入编码
<?xml version="1.0" encoding="
GB2312"?>
关于编码,参见“无废话XML”的相关魔鬼教程。。。
4、使用CSS样式<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="1.css"?><lisongtao>
Hello the world!
</lisongtao>
---------------------------------------------
1.CSS
----------------------------------------
lisongtao {display: block; font-size: 48pt; font-weight: bold;}
5、用XSL定义什么叫“XSL”,你可以暂且看作一个类似CSS,但比CSS更强的东西。XML语法参见其它教程,不废话这里。
1.XML
--------------------------------------------
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="2.xsl"?><lisongtao>
Hello the world!
</lisongtao>
---------------------------------------------
2.xsl
----------------------------------------
<?xml version="1.0" encoding="
gb2312"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/TR/WD-xsl"><xsl:template match="/"> <html>
<head>
<title>hello the world</title>
</head>
<body bgcolor="#CCCCFF">
<h1 align="center">
<xsl:value-of select="lisongtao"/></h1>
</body>
</html>
</xsl:template>
</xsl:stylesheet>6、注释没什么好多讲的,和JS一样
<?xml version="1.0" encoding="
gb2312"?>
<!--
这是一些有关书的信息
--><books>
<book>
<name>xml应用</name>
<author>list1</author>
<price>55.00</price>
</book>
</books>
7、节点的属性<?xml version="1.0"?>
<books
title="list">
<book>
<name>xml and asp</name>
<price>45.00</price>
<publisher>tsinghua </publisher>
</book>
</books>
8、特殊标记XML中,< > " ' &特殊标记时,应当用< > "l ' &表示
<?xml version="1.0"?>
<books height="6'5'">
<book width="6"5"">
<name>list &lisongtao</name>
<author>lisongtao <
list@263.net></author>
</book>
</books>
9、中文标记汗。。。。又一个XLTXLM性的自恋狂。。
虽然XML支持中文标签,但不建议使用。
<?xml version="1.0" encoding="
gb2312"?>
<好人 >
<name>小鞋子</name>
</好人>
10、DTD数据格式你可以暂且把DTD看作一种规则,它保证xml按照这些规则来定义数据格式。
1.DTD
=====================
<?xml version="1.0"?>
<!ELEMENT book (price,name)>
<!ELEMENT name (#PCDATA)>
<!ELEMENT price (#PCDATA)>
查资料:如果同一节点含有多个字节点,应该如何定义了?=====================
DTD.XML
==================
<?xml version="1.0"?>
<!DOCTYPE book SYSTEM "1.dtd"><book>
<name>lisongtao</name>
<price>11.2</price>
</book>
11、DTD直接写在XML里面<?xml version="1.0"?>
<!DOCTYPE book [
<!ELEMENT book (price,name)>
<!ELEMENT name (#PCDATA)>
<!ELEMENT price (#PCDATA)>
]><book>
<price>11.2</price>
<name>lisongtao</name>
</book>
12、节点的多属性<?xml version="1.0" encoding="
gb2312"?>
<books>
<book
name=" xml应用" author="list1" price="55.00">
</book>
</books>
13、结束标记另一种方法不推荐。。。
<?xml version="1.0" encoding="
gb2312"?>
<books>
<book name=" xml应用" author="list1" price="55.00"[color]/[/color]>
</books>
14、直接显示包含特殊字符前面我们看到了,< > " ' &等特殊字符须手动修改后才能显示,如果大量了?。。。就用CDATA
<?xml version="1.0" encoding="
gb2312"?>
<books>
<![CDATA[
<book>
<name>xml应用</name>
<author>list1</author>
<price>55.00</price>
</book>
]]> <book>
<name>xml应用</name>
<author>list1</author>
<price>55.00</price>
</book>
</books>
15、小结,一个完整的XML<?xml version="1.0" encoding="
gb2312"?>
<!--这是一个学生选课系统的所有数据-->
<choose_system>
<students>
<student id="984610" lesson_id="11">
<name>咚咚</name>
<age>25</age>
<sex>男</sex>
<department>自动化</department>
</student>
<student id="984611" lesson_id="12">
<name>矿哥</name>
<age>26</age>
<sex>男</sex>
<department>自动化</department>
</student>
<student id="984612" lesson_id="11">
<name>欢迎新村民</name>
<age>23</age>
<sex>男</sex>
<department>自动化</department>
</student>
<student id="984613" lesson_id="12">
<name>张明</name>
<age>25</age>
<sex>男</sex>
<department>自动化</department>
</student>
</students>
<lessons>
<lesson id="11">
<name>控制原理</name>
<num>12</num>
<les_start>99.2</les_start>
<les_end>99.7</les_end>
<end_method>考试</end_method>
</lesson>
<lesson id="12">
<name>网络原理</name>
<num>11</num>
<les_start>99.3</les_start>
<les_end>99.6</les_end>
<end_method>通过</end_method>
</lesson>
</lessons>
<teachers>
<teacher id="1122" lesson_id="11">
<name>开心啊</name>
<age>33</age>
<tea_age>3</tea_age>
<rank>教授</rank>
<publish>控制原理</publish>
<sex>男</sex>
</teacher>
<teacher id="1123" lesson_id="12">
<name>还是开心啊</name>
<age>40</age>
<tea_age>7</tea_age>
<rank>副教授</rank>
<publish>网络原理</publish>
<sex>男</sex>
</teacher>
</teachers>
</choose_system>
代码:
16、CSS样式定义节点<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="1.css"?>
<books> <book> <author>lisongtao</author>
<name>the application of ASP</name>
</book></books>---------------------------------------------------------
1.css
-----------------------------------------------------------
books
{
display:block;
}book
{
display:block;
background-color:#aabbcc
}---------------------------------------------
心得:以上的定义方法和重定义HTML的标签样式一样,如对CSS不熟者,推荐用DW生成后再对应一下效果.很易就可以学会的.
17、样式类定义XML<?xml version="1.0" standalone="yes"?>
<?xml-stylesheet type="text/css" href="3.css"?>
<list
class="listclass">
<sublist
class="listsmall">lisongtao</sublist>
<sublist>zhongguo</sublist>
</list>
----------------------------------------------------------
3.css
.listclass {color: red; font-size:26pt}
.listsmall {color:blue; font-size:15pt}
18、类的ID定义XML<?xml version="1.0" standalone="yes"?>
<?xml-stylesheet type="text/css" href="ID.css"?>
<school>
<class
id="list">lisongtao</class>
<monitor
id="list1">lisongtao</monitor>
</school>
---------------------------------
ID.CSS
--------------------------------------------------
#list {font-size:28pt; color:red; display: block}
#list1 {font-size:14pt; color:blue display: block }
19、XML中直接使用CSS<?xml version="1.0" standalone="yes"?>
<?xml-stylesheet type="text/css" href="sevil.txt"?>
<!--这句一定要有,而SEVIL.TXT可以换别的名字,不过中文好像这里不行.-->
<FOO
STYLE="font-weight: bold;color:red">
Hello XML!
</FOO>
20、在一个样式表中合并引用另一个样式表的方法@import url("sevil.css");
21、用CSS定制个节点的块状显示XML.XML
--------------------------------------------------------------------------------
<?xml version="1.0" encoding="
gb2312"?>
<?xml-stylesheet type="text/css" href="CSS.css"?>
<books xmlns:HTML="http://www.w3.org/Profiles/XHTML-transitional">
<HTML:style>
books
{
display:block;
width:30em;
}
</HTML:style> <book>
<author>list </author>
<name> ASP及其应用</name>
<publisher>Tsinghua University</publisher>
<price>12.30</price>
</book>
<book>
<author>James </author>
<name> XML及其应用</name>
<publisher>Tsinghua University</publisher>
<price>15.30</price>
</book>
<book>
<author>John </author>
<name> CSS及其应用</name>
<publisher>Peiking University</publisher>
<price>16.30</price>
</book>
</books>
---------------------------------------------------------------
CSS.CSS
---------------------------------------------------------------
book
{
display:block;
background-color:#AABBCC;
padding:1.2em;
margin-bottom:1em;
}
author
{
display:block;
font-size:16pt;
color:red;
}
22、在同一个XML文件内引用多个CSS样式表的方法<?xml version="1.0" standalone="yes"?>
<?xml-stylesheet type="text/css" href="1.css"?>
<?xml-stylesheet type="text/css" href="2.css"?>
23、在XML中使用HTML标记的方法,例插入图片<?xml version="1.0" encoding="
gb2312"?>
<?xml-stylesheet type="text/css"?>
<books xmlns:HTML="http://www.w3.org/Profiles/XHTML-transitional">
<book>
<author>list </author>
<name> ASP及其应用</name>
<publisher>Tsinghua University</publisher>
<price>12.30</price>
<HTML:img src="suzh1.jpg" /> </book>
</books>
24、在XML中使用HTML标记的方法(2),使用超连接<?xml version="1.0" encoding="
gb2312"?>
<?xml-stylesheet type="text/css"?>
<books xmlns:HTML="http://www.w3.org/Profiles/XHTML-transitional">
<book>
<author>list </author>
<name> ASP及其应用</name>
<publisher>Tsinghua University</publisher>
<price>12.30</price>
[colorred]<from><HTML:a href="http://www.263.net">263中国在线</HTML:a></from>[/color]
</book>
</books>
25、在XML中使用HTML标记(3),使用<BR><p>等标记
<?xml version="1.0" encoding="
gb2312"?>
<?xml-stylesheet type="text/css"?>
<books xmlns:HTML="http://www.w3.org/Profiles/XHTML-transitional">
<book>
<HTML:P> <author>list </author>
</HTML:P> <name> ASP及其应用</name>
<publisher>Tsinghua University</publisher>
<HTML:br/> <price>12.30</price>
</book>
</books>
26、在XML中使用HTML标记的方法(4),使用表格标签<?xml version="1.0" encoding="
gb2312"?>
<?xml-stylesheet type="text/css"?>
<books xmlns:HTML="http://www.w3.org/Profiles/XHTML-transitional">
<book>
<HTML:TABLE border="1.0" align="center">
<HTML:TR>
<HTML:TD>LIST</HTML:TD>
<HTML:TD>ASP PROGRAMING</HTML:TD>
<HTML:TD>TSINGHUA UNIVERSITY</HTML:TD>
</HTML:TR>
</HTML:TABLE>
</book>
</books>
27、在XML中使用HTML标记的方法(5),使用表单汗。。。。这样子就没意思了,仅供参考
<?xml version="1.0" encoding="
gb2312"?>
<?xml-stylesheet type="text/css"?>
<books xmlns:HTML="http://www.w3.org/Profiles/XHTML-transitional">
<book>
<HTML:TABLE border="0" align="center">
<HTML:TR>
<HTML:TD>NAME</HTML:TD>
<HTML:TD><HTML:INPUT TYPE="TEXT"/></HTML:TD>
</HTML:TR>
<HTML:TR>
<HTML:TD>NAME</HTML:TD>
<HTML:TD><HTML:INPUT TYPE="TEXT"/></HTML:TD>
</HTML:TR>
<HTML:TR>
<HTML:TD>NAME</HTML:TD>
<HTML:TD><HTML:INPUT TYPE="TEXT"/></HTML:TD>
</HTML:TR>
</HTML:TABLE>
<HTML:CENTER>
<HTML:INPUT TYPE="SUBMIT"/><HTML:INPUT TYPE="RESET"/>
</HTML:CENTER>
</book>
</books>
28、在XML中使用HTML标记的方法(6),使用JS脚本<?xml version="1.0" encoding="
gb2312"?>
<?xml-stylesheet type="text/css"?>
<books xmlns:HTML="http://www.w3.org/Profiles/XHTML-transitional">
<HTML:SCRIPT language="javascript">
var fRunning = 0
function startTrans()
{
if (fRunning == 0)
{
fRunning = 1
SampleID.filters.revealTrans.Apply();
SampleID.src = "suzh1.jpg"; SampleID.filters.revealTrans.Play()
}
else
{
fRunning = 0
SampleID.filters.revealTrans.Apply();
SampleID.src = "suzh2.jpg"; SampleID.filters.revealTrans.Play()
}
}
</HTML:SCRIPT>
<HTML:IMG id="SampleID" src="suzh2.jpg" width="200" height="200" style="filter:revealTrans(duration=3)" onclick="startTrans()" />
<HTML:BR />
Click image for Transition Filter: Blend
</books>
29、总结CSS/HTML:其实在XML里面调用CSS来显示统一的样式很简单,主要通过一个
<?xml-stylesheet type="text/css" href="1.css"?>
这样的方法来联系起来.最好能先学学CSS的语法这样对大家很有好处.如果不太会的话,也可以用DW来自动生成CSS样式表后再联起来.呵.
致于调用HTML标记可以用<HTML:标记>这样的方法来实现.但一定要注意记他合乎XML的规则就行了.
30、通过XSL显示XMLXML.XML
----------------------------------------------------------
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="1.xsl"?><!--连接XSL的方法,是不是和连接CSS很像啊??呵.-->
<persons>
<person>
<name> lisongtaow </name>
<age>25</age>
<tel>66666666</tel>
</person>
<person>
<name> lisongtao1</name>
<age>26</age>
<tel>66666667</tel>
</person>
<person>
<name>lisongtao3</name>
<age>28</age>
<tel>66666669</tel>
</person>
</persons>
-----------------------------------------------------------------------
1.xsl
----------------------------------------------------------------------
<?xml version="1.0"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/TR/WD-xsl"><xsl:template match="/"> <html>
<body>
<center>
<h2>the notepad</h2>
<table border="1">
<tr>
<td>name</td>
<td>age</td>
<td>tel</td>
</tr>
<xsl:for-each select="persons/person">
<tr>
<td><xsl:value-of select="name"/></td>
<td><xsl:value-of select="age"/></td>
<td><xsl:value-of select="tel"/></td>
</tr>
</xsl:for-each><!--循环输出语块,其中"persons/person"代表着路径-->
</table>
</center>
</body>
</html>
</xsl:template></xsl:stylesheet>31、XSL小结做完这个例子先总结一下:
在XSL的定义方法其实是一个HTML的全显示格式.我们可以用DW直观的编辑好.再加入代码.
这里XSL我们可以理解成为一个模板.
其主要的定义方法有一个规则:
以后我们再写XSL时就可以把这东东COPY出来了.不用老是对着书打.呵...
(用XML编辑器更快。。。^_^)
--------------------------------------------------------------
<?xml version="1.0"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/TR/WD-xsl">
<xsl:template match="/">
</xsl:template>
</xsl:stylesheet>-----------------------------------------------------------
32、输出某节点下的所有内容..上一例子我们成功地用XSL输出了XML里面数据.
如果我们只要输出某相同节点其下的内容.我们可以这样做.
=======================
1.xml
要求:输出XSL的"persons/person/tel/hometel"下面的所有内容.这里"person"可以是多层
--------------------------------------------------------
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="2.xsl"?>
<persons>
<person>
<name>lisongtao</name>
<age>25</age>
<tel><hometel>
<tel>64456787</tel>
<childhometel>64456785</childhometel>
</hometel>
<offtel>44442222</offtel>
<worktel>3333333</worktel>
</tel>
</person>
<person>
<name>liwei</name>
<age>25</age>
<tel><hometel>
<tel>66545434</tel>
<childhometel>65433333</childhometel>
</hometel>
<offtel>64442222</offtel>
<worktel>6333333</worktel>
</tel>
</person>
<person>
<name>zhangxue</name>
<age>25</age>
<tel><hometel>
<tel>84343434</tel>
<childhometel>8333333</childhometel>
</hometel>
<offtel>84442222</offtel>
<worktel>8333333</worktel>
</tel>
</person>
<person>
<name>wure</name>
<age>26</age>
<tel>66666667</tel>
</person>
</persons>
================================
2.xsl
-----------------------------------------------------------
<?xml version="1.0"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/TR/WD-xsl">
<xsl:template match="/">
<html>
<body>
<center>
<h2>the notepad</h2>
<table border="1">
<tr>
<td>name</td>
</tr>
<xsl:for-each select="
persons/person/tel/hometel/*">
<tr>
<td><xsl:value-of select="
."/></td>
</tr>
</xsl:for-each>
<!--注意FOR-EACH的SELECT路径.然后用value-OF输出全部所要求的节点内容-->
</table>
</center>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
33、用XSL让XML文件使用到节点属性的搜索功能xml.xml
---------------------------------------------------------------------------------------
<?xml version="1.0" encoding="
gb2312"?>
<?xml-stylesheet type="text/xsl" href="xsl.xsl"?>
<students>
<student id="98789">
<name>廖西</name>
<sex>女</sex>
<birthday type="阳历">1987.2</birthday>
<phone>1303456787</phone>
<skill>唱歌</skill>
<dd>asdf
<ee>asdf</ee></dd>
<list>asdf</list>
</student>
<student id="98788">
<name>小记</name>
<sex>女</sex>
<birthday>1975.6</birthday>
<phone>13901145678</phone>
<skill>爬山</skill>
</student>
<student id="98785">
<name>江南</name>
<sex>女</sex>
<birthday>1978.8</birthday>
<phone>64576786</phone>
<skill>网络</skill>
</student>
<student>
<name>小红</name>
<sex>男</sex>
<birthday>1976.2</birthday>
<phone>62775466</phone>
<skill>网络</skill>
<skill>书法</skill>
</student>
</students>
--------------------------------------------------------------------
xsl.xsl
---------------------------------------------------------------
<?xml version="1.0" encoding="
gb2312"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/TR/WD-xsl">
<xsl:template match="/">
<center> <h1>学号是"98789"的学生的生日是:<xsl:value-of select="
/students/student[@id='98789']/birthday"/>
</h1></center>
</xsl:template>
</xsl:stylesheet>