2010-04-27 111 views
4

有沒有人知道用於生成XML的GUI?這意味着用戶將不會得到一個支持XML的IDE供他鍵入XML代碼。這對使用該系統的非技術人員會有幫助。用於生成XML的GUI

我知道這聽起來很容易,因爲許多庫可以幫助生成XML。這裏的問題是,模式真的很靈活,而不是像在圖書館中用他們的屬性表示圖書那樣簡單。想象一下HTML,我們可以在主體,表格,div中創建字體標籤,甚至可以在其內部嵌套字體標籤。該解決方案是一個所見即所得的應用程序,允許用戶生成HTML代碼(XML)。但是,這對於在網頁中應用的XML很有用,因爲它們涉及視覺方面和設計。我的XML應用程序將專注於表示一些概念和計算的定義,很像SQL類語法,但更重要的是。

我實際上是在方法或以前的工作完成或嘗試過,雖然有一個圖書館/工作框架,會更好。順便說一句,我爲這個項目使用Java。目前,我只是想提供元素標籤,用戶可以拖放它們並將它們相互嵌套。或許,通過輸入XML屬性的值來幫助他們。我仍然希望社區有更好的想法。

謝謝。

+2

在我看來,任何旨在「生成XML來表示某些數據」的GUI必然會失敗。相反,您需要設計一個GUI,用於生成關於您所處理的實際業務對象的信息。事後可能保存爲XML是一個技術細節,不應該太多地影響UI。 – 2010-04-27 12:08:52

+0

嗨,謝謝你的評論。我認爲大多數應用程序通常都是如此。但是,我的XML應用程序需要靈活性,因爲它可以定義一些計算。我意識到,它可能看起來很複雜,因爲我的應用程序像使用XML作爲表示的「編程語言」一樣工作。 – 2010-04-28 02:37:16

回答

2

我認爲您需要將提供給用戶的抽象(XML)與最終表示形式(XML)分開。您的信息是否以樹形式呈現給用戶?如果沒有,請爲用戶做便利的事情,並親自出面進行XML轉換。

有許多使用「有意義的瓷磚和圖標」而不是XML的基於樹的編輯器。例如,看看Eclipse的插件編輯器如何擴展現有的點。您會看到一個樹形視圖並可以添加屬性(通常位於單獨的組框中)。但是你可以編寫一個更智能的編輯器,它擁有樹中的所有內容。

另一方面,有時儘管XML表示具有靈活性,但有時候應該隱藏XML表示。一個很好的例子是Eclipse插件的plugin.xml。看看該文件的編輯器如何看起來不像XML。它的邏輯結構符合用戶的需求,後臺代碼生成XML。

+0

謝謝你引用一個應用程序。這是Eclipse PDE(http://www.eclipse.org/pde/)嗎? – 2010-04-28 02:41:22

+0

是的。 PDE是使用XML(以及其他格式)的編輯器的一個很好的例子。你應該能夠找到plugin.xml的語法,如果你有耐心看看他們是如何做的,PDE的源代碼就可以使用。 – Uri 2010-04-28 05:18:12

0

我知道非技術人員有時很難熟悉像eclipse這樣的工具,但它配備了非常好且易於使用的XML編輯器。支持自動完成,驗證,驗證。我不確定是否有預先配置的eclipse衍生物,它着重於xml編輯,但您可以很容易地配置這樣的事情。

+0

我認爲這將是最後和最方便的解決方案,至少對於該程序的開發人員來說,儘可能讓用戶能夠使用XML文件。 – 2010-04-28 02:44:53

2

幾個月前我找到了這個確切的東西。我發現的唯一一個是http://www.jaxfront.org/pages/。它是基於Java的。

請注意,我最終與Actipro Software的SyntaxEditor for .NET WinForms一起使用,它雖然不給我一個GUI,但在編輯XML時爲應用程序提供了類似IntelliSense的提示(源自底層XSD)。

1

W3C對您的問題的回答是XForms。不幸的是XForms沒有直接被瀏覽器支持,儘管有一個Mozilla插件(即使在本地文件中顯示和編輯,但只在Mozilla中)。許多XForms解決方案都可用,XSLTForms(http://sourceforge.net/projects/xsltforms/)是一個有趣且免費的解決方案,它將XForms轉換爲HTML Forms(適用於所有主流瀏覽器,但由於Javascript的限制,本地文件只能顯示,不能編輯)。 還可以看看Altova Authentic。