2012-05-04 12 views
1

SWI-Prologには、一般化されたXMLプロセッサとして十分な機能があります。読み取り/書き込みXML構造化されたフォーマット、ナビゲーションなどのためのlibrary(xpath)ためXMLベースのDSLを処理する

library(sgml) ...しかし、私はそれが有効なXMLであることを、SVGを読み取ろうとすると、私はメッセージを取得:

ERROR: SGML2PL(xml): ...my_file...svg:2: file "...myfile.path.../http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" does not exist 

偽。

誰もがこのヒントを持っていますか?もちろん、最終的に変更されたファイルコンテンツを書き換えて、もちろん固有のDTDを残したいと思うでしょう。

答えて

0

私はカールを持っているDTDファイルをローカルに保存して解決策を見つけました。私はそれを使用するためにSGMLライブラリに要求することができます。私が言ったように

... 
    new_dtd(svg, DTD), 
    path(Dir, 'svg11.dtd', DtdFile), 
    load_dtd(DTD, DtdFile), 

    path(Dir, 'html_labels.svg', SvgFile), 
    load_structure(SvgFile, [Svg], svg:[dtd(DTD), dialect(xmlns), xml_no_ns(quiet)]), 
... 

は、私がこのよう

$ curl http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd > svg11.dtd 
svg11.dtdを得ました
関連する問題