2012-10-07 135 views
0

我想用雅虎財務來得到股票價格。XSD雅虎財務

雅虎財經webservice返回xml,我想獲得這個xml的xsd來創建代表xml的Java對象。

我沒有找到該表的xsd。

所以我的問題很簡單:你知道我在哪裏可以找到這個xsd(如果存在)嗎?

感謝

+0

您始終可以從Java對象開始,然後使用JAXB的註釋映射到XML,不需要XML模式。如果您需要幫助,您可以更新您的問題,以包含代表您嘗試過的示例XML和Java對象。 –

+0

是的我知道我可以這樣做,但我想自動生成Java對象而不是手動生成(jaxb的語法很糟糕)) – Kiva

+0

JAXB註釋實際上非常易於使用。由於它是通過例外進行配置,因此您只需要註釋映射與默認行爲不同的地方:http://blog.bdoughan.com/2012/07/jaxb-no-annotations-required.html –

回答

0

不幸的是,我沒有雅虎財經XSD你

但是,如果你的開發環境是Windows,我可以提供一種方式,它可以幫助你。

我知道你是Java人,你可能不喜歡Microsoft。在.net我們有xsd.exe工具。 (可能必須有相當於Java這個工具,但我不知道這件事,所以我會用xsd.exe解釋)

在這裏您可以找到詳細的解釋xsd.exe工具

http://msdn.microsoft.com/en-us/library/x6c1kb0s%28v=vs.100%29.aspx

與此工具,您可以從您的示例x​​ml生成xsd文件。後在此XSD文件中的一些小的修改,你可以有兼容xml schema與您xml的

的關鍵點是在生成的XML將定義所有類型的xs:string您需要更改此類型的正確類型或者你可以把它,因爲它是。

第二個重要的點是生成的xml架構可以有maxoccurs="unbounded"。您需要將此值更改爲maxoccurs="1"非重複的節點

您可以下載最新的Microsoft Windows SDK for Windows 7 and .NET Framework 4形式http://www.microsoft.com/en-us/download/details.aspx?id=8279

即使你有這個工具,你可以用它的舊版本。自從xsd.exe啓動以來沒有太多變化