入门问题,急!!XML文件不能正确解析。代码很少!

xieyuanmin 2004-04-08 03:17:51
我照着例子写了以下3个xml、schema、xsl文件,均放在C:\inetpub\wwwroot\fc\目录下,但通过IE6(WIN2K)浏览client.xml时显示乱码,把client.xsd改成相应的DTD文件后,就能按照mystyle.xsl定义的格式显示client.xml里的内容。
请大家看看我的client.xml和client.xsd哪个地方没有关联好?谢谢各位了!
我的client.xml、client.xsd、mystyle.xsl文件分别如下:

client.xml文件:

<?xml version="1.0" encoding="utf-8" ?>
<linkmanlist xmlns="x-schema:client.xsd">
<?xml-stylesheet type="text/xsl" href="mystyle.xsl"?>
<linkman>
<name>ZhangSan</name>
<company>A Company</company>
<ID>001</ID>
<EMAIL>kefei@hotmail.com</EMAIL>
<telephone>010-86352332</telephone>
<address>
<street>ZhongGuan Street</street>
<city>BeiJing City</city>
<state>BeiJing City</state>
<ZIP>100023</ZIP>
</address>
</linkman>
</linkmanlist>

我的client.xsd文件代码如下:

<?xml version="1.0" encoding="utf-8" ?>
<xs:schema id="linkmanlist" targetNamespace="http://tempuri.org/~vsB3.xsd" xmlns:mstns="http://tempuri.org/~vsB3.xsd" xmlns="http://tempuri.org/~vsB3.xsd" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" attributeFormDefault="qualified" elementFormDefault="qualified">
<xs:element name="linkmanlist" msdata:IsDataSet="true" msdata:Locale="zh-CN" msdata:EnforceConstraints="False">
<xs:complexType>
<xs:choice maxOccurs="unbounded">
<xs:element name="linkman">
<xs:complexType>
<xs:sequence>
<xs:element name="name" type="xs:string" minOccurs="0" />
<xs:element name="company" type="xs:string" minOccurs="0" />
<xs:element name="ID" type="xs:string" minOccurs="0" />
<xs:element name="EMAIL" type="xs:string" minOccurs="0" />
<xs:element name="telephone" type="xs:string" minOccurs="0" />
<xs:element name="address">
<xs:complexType>
<xs:sequence>
<xs:element name="street" type="xs:string" minOccurs="0" />
<xs:element name="city" type="xs:string" minOccurs="0" />
<xs:element name="state" type="xs:string" minOccurs="0" />
<xs:element name="ZIP" type="xs:string" minOccurs="0" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:choice>
</xs:complexType>
</xs:element>
</xs:schema>


我的mystyle.xsl 代码如下:

<?xml version="1.0" encoding="GB2312"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/TR/WD-xsl"
xmlns="http://www.w3.org/TR/REC-html40"
result-ns="">
<xsl:template><xsl:apply-templates/></xsl:template>

<xsl:template match = "/">
<HTML>
<HEAD>
<TITLE>F Company Information</TITLE>
</HEAD>
<BODY>
<xsl:apply-templates select="linkmanlist"/>
</BODY>
</HTML>
</xsl:template>

<xsl:template match = "linkmanlist">
<xsl:for-each select="linkman">
<UL>
<LI><xsl:value-of select="name"/></LI>
<UL>
<LI>ID:<xsl:value-of select="ID"/></LI>
<LI>COMPANY: <xsl:value-of select="company"/></LI>
<LI>EMAIL: <xsl:value-of select="EMAIL"/></LI>
<LI>TEL: <xsl:value-of select="telephone"/></LI>
<LI>STREET: <xsl:value-of select="address/street"/></LI>
<LI>CITY: <xsl:value-of select="address/city"/></LI>
<LI>STATE: <xsl:value-of select="address/state"/></LI>
<LI>ZIP: <xsl:value-of select="address/ZIP"/></LI>
</UL>
</UL>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>

这3个文件单个都是没有语法错误的,我在.net 编辑器里写的。相互关联后,在IE6里解析client.xml就出现乱码了,而且没有按正确格式解析。因为是乱码,错误信息也看不懂,请各位帮帮忙啦!
...全文
69 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
chengyayu9929 2004-04-08
  • 打赏
  • 举报
回复
client.xml文件:

<?xml version="1.0" encoding="utf-8" ?>
<linkmanlist xmlns="x-schema:client.xsd">
<?xml-stylesheet type="text/xsl" href="mystyle.xsl"?>

最后一行改为:

<?xml:stylesheet type="text/xsl" href="mystyle.xsl"?>

楼主好象对语法不是很熟啊。
xieyuanmin 2004-04-08
  • 打赏
  • 举报
回复
楼上的大侠,照您的一改,IE6就能正常解析出client.xml文件了,谢谢大侠。

但只是显示成代码树,没有按照 mystyle.xsl的定义来解析,我再检查一下mystyle.xsl。

您能解释一下xmlns="client.xsd" 和 xmlns="x-schema:client.xsd" 的区别吗?
ssm1226 2004-04-08
  • 打赏
  • 举报
回复
<?xml version="1.0" encoding="utf-8" ?>
<?xml-stylesheet type="text/xsl" href="mystyle.xsl"?>
<linkmanlist xmlns="client.xsd">
<linkman>
<name>ZhangSan</name>
<company>A Company</company>
<ID>001</ID>
<EMAIL>kefei@hotmail.com</EMAIL>
<telephone>010-86352332</telephone>
<address>
<street>ZhongGuan Street</street>
<city>BeiJing City</city>
<state>BeiJing City</state>
<ZIP>100023</ZIP>
</address>
</linkman>
</linkmanlist>
内容概要:本文系统研究了基于交替方向乘子法(ADMM)的多主体综合能源系统分布式协同优化方法,旨在实现多个能源主体之间的高效、隐私保护的能量协同管理。通过建立各主体的局部优化模型,并引入一致性约束条件,利用ADMM算法将集中式优化问题分解为多个分布式子问题进行迭代求解,从而在保证各主体数据隐私的同时达成全局协同优化目标。研究涵盖了模型构建、算法实现、收敛性分析及数值仿真全过程,并提供了完整的Matlab代码实现,有效复现了相关学术成果,具有较强的可验证性与可拓展性。; 适合人群:具备一定数学建模能力与优化理论基础,熟悉Matlab编程,从事综合能源系统、分布式优化算法、电力系统调度等相关方向研究的研究生、科研人员及工程技术人员。; 使用场景及目标:① 掌握ADMM算法在多主体能源系统协同优化中的建模与实现方法;② 构建支持隐私保护的分布式能源调度系统;③ 利用开源代码开展算法改进、性能测试或应用于实际系统的二次开发与科研论文复现; 阅读建议:建议结合凸优化与分布式计算的基础知识,深入理解增广拉格朗日函数构造、对偶更新与收敛判据的设计原理,在代码调试过程中重点关注惩罚参数选取、变量分裂策略及通信机制的实现细节,以全面掌握算法的核心机制与工程应用要点。

8,906

社区成员

发帖
与我相关
我的任务
社区描述
XML/XSL相关问题讨论专区
社区管理员
  • XML/XSL社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧