如何在XML标记中转义@符号

时间:2018-07-09 15:22:45

标签: xml web-services escaping

我正在使用XML请求来为Web服务的请求生成模式。请求中的标签是<@type>,它会导致

之类的错误
  

无法使用提供的XML输入生成XSD文档。元素的内容必须包含格式正确的字符数据或标记。

我尝试了该符号的十六进制表示,但是它给出了相同的错误。

1 个答案:

答案 0 :(得分:0)

W3C XML BNF for component names在XML名称中不允许SELECT ( DATENAME(dw, CAST(DATEPART(m, priceDate) AS VARCHAR) + '/' + CAST(DATEPART(d, priceDate) AS VARCHAR) + '/' + CAST(DATEPART(yy, priceDate) AS VARCHAR)) + ' '+ FORMAT(priceDate, 'dd MMMM yyyy') )as 'Entering Date', p.Name as 'Person Name', CarName as 'CarName' , REPLACE(ap.priceValue,'.',',') as 'Price' FROM PriceEntry ap LEFT JOIN CarType at ON ap.CarTypeID = at.id -- LEFT JOIN here! LEFT JOIN Person p ON ap.PersonId = p.ID -- LEFT JOIN here! ORDER BY priceDate desc 字符

@

没有可以将NameStartChar ::= ":" | [A-Z] | "_" | [a-z] | [#xC0-#xD6] | [#xD8-#xF6] | [#xF8-#x2FF] | [#x370-#x37D] | [#x37F-#x1FFF] | [#x200C-#x200D] | [#x2070-#x218F] | [#x2C00-#x2FEF] | [#x3001-#xD7FF] | [#xF900-#xFDCF] | [#xFDF0-#xFFFD] | [#x10000-#xEFFFF] NameChar ::= NameStartChar | "-" | "." | [0-9] | #xB7 | [#x0300-#x036F] | [#x203F-#x2040] Name ::= NameStartChar (NameChar)* 添加到XML元素名称的转义机制。如果您希望XML的格式正确(因此可以被诸如解析器之类的标准XML库读取),则必须使用一个或多个其他字符。