我在定义Raml for Xml输入时遇到此错误但是我得到了这个错误,我已经知道这个问题是针对xsd的,但我在Raml中没有xsd
任何人都可以建议如何在xml设计中定义数组的解决方案 因为我已经通过了下面的Url
https://github.com/raml-org/raml-spec/blob/master/versions/raml-10/raml-10.md/#array-type
输入:
_
输出:
<numbers>
<value>3</value>
<value>2</value>
<value>1</value>
</numbers>
#%RAML 1.0
title: Claim Request
version: 0.1
baseUri: http://localhost:8767/claim
mediaType: [ application/xml ]
protocols: HTTP
types:
value:
type: string
numbers:
type: value[]
uniqueItems: true
/claimDemo:
post:
body:
type : numbers
responses:
200:
body:
application/json:
example: |
{
"message" : "Hello World"
}
答案 0 :(得分:0)
尝试这样的事情:
#%RAML 1.0
title: Claim Request
version: 0.1
baseUri: http://localhost:8767/claim
mediaType: [ application/xml ]
protocols: HTTP
types:
value:
type: string
numbers:
type: value[]
maxItems: 3
uniqueItems: true
/claimDemo:
post:
body:
type : numbers
responses:
200:
body:
application/xml:
example: |
{
"message" : "Hello World"
}
答案 1 :(得分:0)
根据https://github.com/raml-org/raml-spec/blob/master/versions/raml-10/raml-10.md/#xml-serialization-of-type-instances中的文档,您可以使用wrapped
选项,这样您就可以避免使用此处定义时遇到的问题。
参见下面的示例
#%RAML 1.0
title: Claim Request
version: 0.1
baseUri: http://localhost:8767/claim
mediaType: [ application/xml ]
protocols: HTTP
types:
value: string
numbers:
type: value[]
xml:
wrapped: true
/claimDemo:
post:
body:
type: numbers
responses:
200:
body:
application/json:
example: |
{
"message" : "Hello World"
}
作为附加说明,要说明初始示例中的错误来源,如果删除了数组定义,即:已更改:
numbers:
type: value[]
uniqueItems: true
到
numbers:
type: value
然后你就可以使用如下输入:
<numbers value="a">