我從.sgm文件下面的示例SGML的數據,我想這個轉換中XMLSGML到XML皈依
<?dtd name="viewed">
<?XMLDOC>
<viewed >xyz
<cite>
<yr>2010
<pno cite="2010 abc 1188">10
<?/XMLDOC>
<?XMLDOC>
<viewed>abc.
<cite>
<yr>2010
<pno cite="2010 xyz 5133">9
<?/XMLDOC>
輸出應該是這樣的:
<index1>
<num viewed="xyz"/>
<heading>xyz</heading>
<index-refs>
<link caseno="2010 abc 1188</link>
</index-refs>
</index-1>
<index1>
<num viewed="abc"/>
<heading>abc</heading>
<index-refs>
<link caseno="2010 xyz 5133</link>
</index-refs>
</index-1>
可這是在C#中完成,或者我們可以使用xslt 2.0來做這種轉換?
你需要一個SGML解析器做這適當。 XSLT 2.0不提供這樣的解析器;理論上你可以在XSLT 2.0中編寫一個,但這將是一個巨大的痛苦。我不知道在C#中解析SGML有什麼支持。 – LarsH 2010-12-15 17:00:16