当前位置 : 主页 > 网页制作 > xml >

xml – 元素或属性与QName生成不匹配

来源:互联网 收集:自由互联 发布时间:2021-06-13
我有一个架构,我使用 XML编辑器“扁平化”.在我弄平它后,我得到验证错误.我该怎么办才能解决这个问题? 错误信息: F [Xerces] Element or attribute do not match QName production: QName::=(NCName’:’
我有一个架构,我使用 XML编辑器“扁平化”.在我弄平它后,我得到验证错误.我该怎么办才能解决这个问题?

错误信息:

F [Xerces] Element or attribute do not
match QName production:
QName::=(NCName’:’)?NCName.

码:

<xs:import namespace="http://www.opengis.net/gml"
    schemaLocation="http://schemas.opengis.net/gml/3.1.1/base/gml.xsd"
    xmlns:="http://www.opengis.net/gml/3.1.1" />
<xs:annotation xmlns:="http://www.opengis.net/sps/1.0">
    <xs:documentation>
        <copyright>                 SPS is an OGC Standard.                 Copyright (c)
            2007,2010 Open Geospatial Consortium, Inc. All Rights Reserved.                 To
            obtain additional rights of use, visit http://www.opengeospatial.org/legal/ .
        </copyright>
    </xs:documentation>
</xs:annotation>

这是一个截图,可能更好地说明我的错误:

编辑:

Remove the colon somehow. What exactly
does this “flattening” supposed to do?

xsd的展平需要xsd,其中包含很多包含并将其全部放入一个文件中(没有任何包含).

xmlns:=语法无效.冒号缺少后冒号是额外的或命名空间前缀.正确的语法是xmlns =“http://some.uri”或xmlns:something =“http://some.uri”

请注意,您有2个不需要的冒号:第一个在第1002行(红色箭头指向的位置),第二个在第1003行.这提示可能会有更多的冒号.

“QName”表示“限定名称”,“NCName”表示“非殖民名称”.非殖民名称是不包含冒号字符(:)的XML名称.限定名称是非冒号名称或两个以冒号分隔的非殖民名称的组合.例如“abc:defgh”.冒号前面的部分称为名称空间前缀,冒号后面的部分称为本地名称.如果限定名称具有名称空间前缀,则该前缀必须绑定到带有前缀名称空间声明的名称空间URI,例如xmlns:abc =“http://some.uri”.

网友评论