以文本方式查看主题

-  中文XML论坛 - 专业的XML技术讨论区  (http://bbs.xml.org.cn/index.asp)
--  『 XML在软件工程中的应用 』  (http://bbs.xml.org.cn/list.asp?boardid=6)
----  请高手解答两个实际应用中的问题(问题涉及到altova XMLSpy, altova StyleVision and altova Authentic的综合运用)。  (http://bbs.xml.org.cn/dispbbs.asp?boardid=6&rootid=&id=18981)


--  作者:dyvrije
--  发布时间:5/30/2005 4:31:00 AM

--  请高手解答两个实际应用中的问题(问题涉及到altova XMLSpy, altova StyleVision and altova Authentic的综合运用)。

背景:

因为公司要提交很多技术性的文件,而且这些文件是由其它公司提交给我们公司的,所以公司希望有一个统一的格式标准。以前只是用MS Word做了文件的模版,然后让其他公司在这个模版的基础上写。但是因为MS Word的版本不同,导致文件收回来时内容格式和设定的不一样,所以花了很长时间去修改文件的格式,费时费力。

目标:

控制文件的格式,不用费很多时间进行文件编辑,文件的最终类型是要PDF。

途径:
用XML写一个模版,然后让其他公司在这个XML模版的基础上写(用Altova Authentic写,因为Altova Authentic给了用户一个直观的界面,就算用户不懂XML的语法,没有任何XML的知识,也可以直接修改XML文件)。文件收回来以后,在XML的代码上加上格式设定好的Stylesheet文件,然后把这个XML文件转换成PDF文件。

软件:
Altova XMLSpy(编写XML模版)
Altova StyleVsion(编写Stylesheet)
Altova Authentic (提供给其他公司编写XML的文件,因为Altova Authentic给了用户一个直观的界面,就算用户不懂XML的语法,没有任何XML的知识,也可以直接修改XML文件)

问题:
1.由于是技术性的文件,所以用DocBook的DTD作为XML模版文件的DTD。但是有一些elements, DocBook里面没有,需要添加。

以下是一个例子我是按照在dbpool.mod文件里的inline element, emphasis的语句,添加bold element的新的DTD

<!ENTITY % gen.char.class "|bold">
<!ENTITY % DocBookDTD PUBLIC "-//OASIS//DTD DocBook V3.1//EN">
%DocBookDTD;
<!ELEMENT bold %ho; (%para.char.mix;)*>
<!ATTLIST emphasis
  %common.attrib;
  %emphasis.role.attrib;
  %local.emphasis.attrib;>

把这个DTD加入XML中,在XMLSpy的grid view的element entry helper里就出现了bold这个element。然后我用这个DTD在StyleVision里做了一个Stylesheet, 接着把这个Stylesheet加入XML中。这时候就有问题了,在grid view的element entry helper里,还是可以看到bold element,但是在authentic view里面,bold element就找不到了。


2.我写了一个简单的XML的文件

<?xml version="1.0" encoding="UTF-8"?>
<!-- edited with XMLSpy v2005 rel. 3 U (http://www.altova.com) by DY (MFEO Consult) -->
<!DOCTYPE set SYSTEM "C:\docbkx412\docbookx.dtd">
<?altova_sps C:\Documents and Settings\Administrator\桌面\test\0529test1.sps?>
<set>
 <book>
  <chapter>
   <title>how a u too</title>
   <para>i am fine</para>
   <sect1>
    <title>how a u</title>
    <para>not bad</para>
   </sect1>
  </chapter>
 </book>
</set>

根据我这个文件的架构,是setàbookàchapteràtitle,para,sect1àtitle,para,在text/grid view底下的chapter的下一个level, 我选择添加一个para element,然后可以看到sect1这个element在element entry helper里,但是我转换authentic view以后,同样是在chapter的下一个level选择添加一个para element,就不能然后可以看到sect1这个element在element entry helper里。同样的情况对于sect2也是一样。在authentic的sect1的这个level里,我不能在element entry helper里找到sect2这个element。

希望有哪位高手能够解答一下。

另外,我的目标就象上面写的那样,有人有其它的建议吗?我所要做的就是控制文件的格式,最终得到RTF或者PDF文件。


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