2010-07-29 73 views
1

所以在任何人告訴我之前我不應該這樣做,我完全同意。不過,我有一個來自第三方的xml DataFeed。我已經向他們伸出手來看看他們是否可以改變它,但我認爲我最好從雙方進攻。是否可以創建一個支持具有相同名稱的父節點和子節點的xsd?

XML中的違規標籤如下:

<Tags> 
     <TagDimension id="Topic"> 
     <ExternalId>Topic</ExternalId> 
     <Tags> 
      <Tag> 
      <Label>awesome</Label> 
      </Tag> 
     </Tags> 
     </TagDimension> 
    </Tags> 

我決不是一個XML/XSD颼颼。我的技能包括從給我帶來VS從命令行運行XSD.EXE的:

C:\ TEMP> XSD sample.xml中 微軟(R)的XML架構/數據類型的支持實用 [微軟(R).NET Framework,Version 2.0.50727.3038] 版權(C)Microsoft Corporation。版權所有。 錯誤:處理'sample.xml'時發生錯誤。 - 表(標籤)不能是嵌套關係中的子表本身。

處理這個問題的最佳方法是什麼?

回答

1

嗯,我發現「一種方式」,雖然我不知道這是一種好方法。它看起來像一個XSD文件與遞歸命名節點沒有任何問題。這只是xsd.exe工具。我所做的是將內部<Tag>節點重命名爲<Tag2>,這使我可以生成xsd文件。然後我在Visual Studio中打開了xsd,並將其重命名爲<Tag>

看起來這更像是我對工具的依賴以及對XSD/XML缺乏認識的結果,但如果有人對此有更深入的瞭解,我會喜歡它。

相關問題