簡體   English   中英

php腳本將xml轉換為dtd

[英]php script to convert xml to dtd

是否有任何PHP腳本將XML文件轉換為DTD。

我嘗試了很多。 我能夠找到工具,但不能PHP腳本。

有沒有?

任何幫助都會感激...

FERO

從XML文件生成DTD是我經常看不到的 - 主要原因之一是您無法確定用於生成DTD的XML文件將包含DTD應定義的所有內容

即,生成的DTD將僅包含該特定XML文件中存在的元素和屬性- 這並不一定意味着以后使用時應接受的所有元素和屬性


話雖這么說,我還沒有找到任何PHP工具來從XML文件創建DTD ......

...但我發現了一個JAVA: DTDGenerator - 生成XML DTD的工具 (引用)

DTDGenerator是一個程序, 它將XML文檔作為輸入,並生成文檔類型定義(DTD)作為輸出

該計划的目的是讓您快速開始編寫DTD。
DTD是輸入文檔符合的許多可能的DTD之一。
通常,您需要檢查DTD並對其進行編輯以更精確地描述您的目標文檔。


關於這個DTDGenerator程序的一些DTDGenerator是:

  • 網站上有一些關於其工作原理的基本思路的解釋
  • 提供源代碼
  • 它只有600行長
    • 這意味着一個人應該能夠在沒有太多努力的情況下理解
    • 可能將其移植到PHP
    • 並且源代碼中有一些注釋- 這會有所幫助
  • 它是在MPL下發布的- 這意味着開源; 這很好,如果你想移植它


從該程序的源代碼開始,應該可以編寫一些PHP代碼(如果你不能執行JAVA,並且真的需要用PHP編寫)來做同樣的事情:基本的想法並不那么難:

  • 您必須完成XML結構
  • 在每個起始標簽上構建它的樹形表示
    • 這意味着元素
    • 可以有屬性
  • 而且,當您完成XML文檔的閱讀后,您必須根據文檔的重新表示來構建DTD
    • 這可能是困難的部分 - 看看我鏈接到的JAVA工具的來源,它代表了相當多的代碼行^^

在開始之前看一下這個DTDGenerator是它的作者已經考慮過這個過程 - 並且已經確定了一些你可能沒想過的情況 ;-)

以下是我發現可能有用的內容: http//www.hitsw.com/xml_utilites/

還有一個似乎很有前途的課程: http//phpclasses.2by2host.com/browse/package/250.html

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM