jjzjj

elementFormDefault

全部标签

java - 如何在单个类的基础上设置 JAXB 中元素的 elementFormDefault 而不是为整个包设置它?

我知道我可以使用@XmlSchema来做到这一点,但问题是我们在同一个包中有一个类需要其命名空间与package-info.java上定义的不同。所以我们改为在@XmlRootElement中声明命名空间(当然同时仍然有@XmlSchema)。但是这样做将不允许我们设置类的elementFormDefault。将类移动到不同的包不是一种选择。基本上,我只想覆盖这个特定类的命名空间。 最佳答案 长话短说当elementFormDefault=XmlNsForm.QUALIFIED在@XmlSchema上设置时,您可以通过使用@XmlT

xml - 根据 WSDL(xsd 架构)验证 xml 时了解 elementFormDefault 合格/不合格

我正在尝试理解elementFormDefault="qualified/unqualified"的含义在嵌入WSDL(SOAP1.1、WSDL1)的XML模式中。例如,我在WSDL中有这个模式:在纯XML中,这显然是无效的,因为“name”没有指定的命名空间:XMLSchema虽然这显然是有效的,因为所有元素都是合格的:qualifiedxml但令人惊讶的是libxml说以下内容也是有效的:XMLSchema问题1:我假设qualified意味着应该看起来像.但结果似乎表明xmlns属性也一样吗?现在假设上面的XML是SOAP请求的一部分,例如...XMLSchema...问题2:如

xml - XSD 中的 elementFormDefault 有什么作用?

elementFormDefault有什么作用,应该在什么时候使用?所以我找到了elementFormDefault值的一些定义:qualified-elementsandattributesareinthetargetNamespaceoftheschemaunqualified-elementsandattributesdonothaveanamespace因此,根据该定义,我认为如果模式设置为合格,那么为什么必须在类型前加上命名空间?在什么情况下,您甚至会让其中一组不合格?我尝试了谷歌搜索,但我得到的只是几个极难理解的W3C页面。这是我现在正在处理的文件,当我将targetNam