2016-12-07 75 views
4

使用自定義屬性擴展JSON模式是否有效?JSON模式中的自定義屬性

我問的原因是,因爲我正在使用架構來呈現架構描述的JSON的表單(架構中描述的每個屬性都被用作帶有標籤和某種輸入的表單元素)。

能夠使用我主要用於表單呈現的某些屬性來擴展架構會很有用,但是在使用架構來驗證JSON對象本身時會被忽略。

我可以爲JSON對象提供兩種不同的表示方式(一種是架構,另一種是模式對象,帶有自定義屬性,我只是爲了創建表單,但如果我可以將它們組合在一起,一)。

不幸的是,Google不是很有幫助,我沒有大量的使用JSON模式的經驗,所以如果我錯過了某些明顯的東西,請致歉。

編輯1:
實施例模式片段:

{ "title": "Example Schema", "type": "object", "properties": { "firstName": { "type": "string", "CUSTOM_PROPERTY": "CUSTOM_VALUE" } } }

注意以上僅僅是一個片段,並因此不具有title$schema

+0

可以擴展一個JSON對象,通過添加新的屬性if畢竟JSON仍然有效。你能舉個例子嗎? – PMerlet

+0

@Cubi它更關心JSON模式是否可以通過JSON模式解析器正確解析,如果它包含自定義屬性的話。上面添加了一個例子。 –

回答

4

(如果它是有效JSON)驗證器很可能會忽略您的自定義屬性。但是你要使用什麼驗證器?根據特定的驗證器進行檢查。

這裏有一些在線驗證測試:

此外,您還可以擴展JSON模式,看到http://json-schema.org/latest/json-schema-core.html#rfc.section.6.4

+0

謝謝!這就是我正在尋找的! –