2011-02-01 73 views
0

我們正在使用IBM公共基本事件規範XSD來監視應用程序運行狀況。但是,我們在extendedDataElementsname標記中定義了自定義屬性。重寫靜態XSD中的屬性以進一步定義自定義需求

我想分發一個包含IBM XSD但具有進一步定義和限制的擴展數據元素的應用程序或特定於情境的XSD。例如,這裏是我們的XML的一個片段:

<situationInformation extensionName="Feed" creationTime="2008-02-08T12:00:00"> 
    <extendedDataElements name="Feed" type="string">  
     <children name="interfaceType" type="string"> 
       <values>ABC</values> 
     </children> 
     <children name="fileName" type="string">  
      <values>file.txt </values> 
     </children> 
     <children name="processedTime" type="dateTime"> 
      <values>2008-02-087T12:10:00</values> 
     </children> 
    </extendedDataElements> 
<situationType category="REPORT" successDisposition="SUCCESSFUL" situationQualifier="File" reasoningScope="INFO"/> 
</situationInformation> 

所以,從以上我想創建一個XSD(?是進口或包括IBM XSD),它定義了必要的應用程序特定的屬性(interfaceType, fileName,processedTime等)以及重寫IBM XSD限制maxLength = 64(使其更具限制性)。

IBM XSD Link

希望我解釋說,嗯......謝謝!

回答

0

如果您還沒有試過,請嘗試使用Trang。根據我的經驗,在將一個或多個XML文件反向工程化爲人類可讀的邏輯XML模式方面做得非常出色。

我也需要從現有的XML文件製作XSD架構。嘗試過Altova XML Spy。它確實產生了一個compilant模式,但它是一團糟。

Trang做得更成功,我對它的製作印象深刻,所以我強烈推薦它。

+0

謝謝,是的,我已經嘗試過像trang這樣的工具。我的問題是,我想重寫一個補充的主xsd中的屬性。例如,這些工具從ibm xsd中提取並生成say fileName屬性作爲通用名稱=「name」type =「type」。我想覆蓋並指定name =「fileName」type =「string」(以及覆蓋任何maxlength或minlength限制) – i850eggs 2011-02-01 19:23:19