以文本方式查看主题

-  中文XML论坛 - 专业的XML技术讨论区  (http://bbs.xml.org.cn/index.asp)
--  『 XSL/XSLT/XSL-FO/CSS 』  (http://bbs.xml.org.cn/list.asp?boardid=8)
----  xml,xsd,xsl文件三者同时结合使用的问题,困扰很久了,跪求帮助!  (http://bbs.xml.org.cn/dispbbs.asp?boardid=8&rootid=&id=126159)


--  作者:qxbin8310
--  发布时间:4/17/2013 10:00:00 PM

--  xml,xsd,xsl文件三者同时结合使用的问题,困扰很久了,跪求帮助!

我的需求:
xml文件(简单的几个节点,其余都类似):
<?xml version="1.0" encoding="UTF-8"?>
<KernelConfig  description="MicroKernel Configuration"
     xmlns="http://www.actri.avic/sysconfig"
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xmi:schemaLocation="http://www.actri.avic/sysconfig AMCR_config.xsd">
     <MainArchtecture  description="Main Arch"
            ARCH_ARM="y"/>
</KernelConfig>

对应的样式文件AMCR_config.xsd的头:
<?xml version="1.0" encoding="US-ASCII"?>
<xs:schema
       xmlns="http://www.actri.avic/sysconfig"
       xmlns:xs="http://www.w3.org/2001/XMLSchema"
       targetNamespace="http://www.actri.avic/sysconfig"
       elementFormDefault="qualified"
       attributeFormDefault="unqualified"/>


用于转换xml文件的xsl文件的头:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"  version="1.0">
<xsl:output  method="text"/>
    <xsl:template  match="/">
           <xsl:value-of select="KernelConfig/@description"/>
    <xsl:apply-template>
    <l:template>
<xsl:template  match="KernelConfig">
     <xsl:for-each select="node()">
     <xsl:for-each select=".">
           <xsl:for-each select="@*">
#define Config_<xsl:for-each select="name()"/> 1
            <l:for-each>
       <l:for-each>
    <l:for-each>
<xsl:apply-template/>
<l:template>

问题:现在xsd可以正常约束控制上面的这个xml文件,但是下面的xsl文件无法正常转换为相应的源文件,出现转换异常;但是当把xml文件中的xmlns="http://www.actri.avic/sysconfig"
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xmi:schemaLocation="http://www.actri.avic/sysconfig AMCR_config.xsd"去掉后,可以正常转换,当然,但是那样后,xsd就无法控制约束xml,怎么样才能三者统一结合?即:xsd可以控制约束xml,xsl又可以正常转换xml为源文件;
希望大家帮助我写下三中文件统一的名字空间,多谢
跪求帮助!


W 3 C h i n a ( since 2003 ) 旗 下 站 点
苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
3,406.250ms