草庐IT

java - Xjc 在 xmlns :xsi and xsi:noNamespaceSchemaLocation 的 XSD 属性定义上抛出 "Invalid attribute value, not a valid NCName"

我正在使用xjc创建JAXB类。我正在使用以下命令xjc-dsrc-pcom.abc.projthe-types.xsd我收到以下错误parsingaschema...[ERROR]s4s-att-invalid-value:Invalidattributevaluefor'name'inelement'attribute'.Recordedreason:cvc-datatype-valid.1.2.1:'xmlns:xsi'isnotavalidvaluefor'NCName'.line106offile:/C:/Port/Field/the-types.xsd[ERROR]src-

xml - 启用命名空间时,类型 ID 的属性值 "001"必须是 NCName

所以我正在用我自己的DTD创建一个xml文件。简化后的XML如下:]>1BlueSculpture$200011082014257gGreenAbeutifulGreenSculpture当我尝试通过XML验证器运行它时,我收到错误消息“启用命名空间时,类型ID的属性值“001”必须是NCName。”对于每个id属性。我已经弄乱了一段时间,它似乎不允许使用数字,字母也可以,而且它通过时没有任何问题,但是一旦你设置id="(anynumbers)"它就会给我错误。我是一个完整的XMLNOOB,所以我猜它很简单,我四处搜索但找不到任何确定的东西,这很容易做/undertsand。

java - 在 Java 中验证 XML NCName

我从注释处理器中的Java注释中获取一些值以生成元数据。其中一些值应该指示XML元素或属性名称。根据XML规范,我想验证输入以确定提供的值是否实际上是合法的NCName。在这种情况下只有本地名称很重要,命名空间URI在这里不起作用。是否有一些简单的方法可以查明字符串是否是合法的XML元素或属性名称?我最好使用一些在JavaSE中很容易获得的XMLAPI。我首先做这些事情的原因之一是减少依赖性。我使用的是JDK7,所以我可以访问最新的类/方法。到目前为止,浏览内容处理程序类和SAX/DOM内容没有产生任何结果。 最佳答案 如果您准备好

xml - 什么是 xs :NCName type and when should it be used?

我通过模式生成器运行我的一个xml文件,生成的所有内容都是预期的,除了一个节点:xs:NCName到底是什么?为什么要使用它,而不是xs:string? 最佳答案 @skyl实际上是在激怒我写这个答案,所以请注意冗余。NCName代表“非殖民化名称”。NCName可以定义为XMLSchema正则表达式[\i-[:]][\c-[:]]*...那个正则表达式是什么意思?\i和\c是XMLSchema定义中定义的多字符转义。http://www.w3.org/TR/xmlschema-2/#dt-ccesN\i是初始XML名称字符集的转义