xs:属性ref的XMl验证错误

时间:2014-01-22 21:08:49

标签: java xml xsd

如果我问一个重复的问题,我道歉。我确实尝试在线搜索类似的问题而没有运气。任何帮助将不胜感激。我

我正在尝试使用xsd验证xml。 xsd有多个import语句来引用其他xsd。

我收到任何有ref

的属性的错误

部分xml标记

org.xml.sax.SAXParseException:src-resolve:无法将名称'bme:version'解析为(n)'属性声明'组件。     at org.apache.xerces.util.ErrorHandlerWrapper.createSAXParseException(Unknown Source)     在org.apache.xerces.util.ErrorHandlerWrapper.error(未知来源)     在org.apache.xerces.impl.XMLErrorReporter.reportError(未知来源)     在org.apache.xerces.impl.XMLErrorReporter.reportError(未知来源)     at org.apache.xerces.impl.xs.traversers.XSDHandler.reportSchemaError(未知来源)     在org.apache.xerces.impl.xs.traversers.XSDHandler.getGlobalDecl(未知来源)     at org.apache.xerces.impl.xs.traversers.XSDAttributeTraverser.traverseLocal(未知来源)     at org.apache.xerces.impl.xs.traversers.XSDAbstractTraverser.traverseAttrsAndAttrGrps(Unknown Source)     at org.apache.xerces.impl.xs.traversers.XSDComplexTypeTraverser.processComplexContent(Unknown Source)     at org.apache.xerces.impl.xs.traversers.XSDComplexTypeTraverser.traverseComplexTypeDecl(Unknown Source)     at org.apache.xerces.impl.xs.traversers.XSDComplexTypeTraverser.traverseGlobal(Unknown Source)     在org.apache.xerces.impl.xs.traversers.XSDHandler.getGlobalDecl(未知来源)     at org.apache.xerces.impl.xs.traversers.XSDElementTraverser.traverseNamedElement(Unknown Source)     在org.apache.xerces.impl.xs.traversers.XSDElementTraverser.traverseGlobal(未知来源)     在org.apache.xerces.impl.xs.traversers.XSDHandler.traverseSchemas(未知来源)     在org.apache.xerces.impl.xs.traversers.XSDHandler.parseSchema(未知来源)     在org.apache.xerces.impl.xs.XMLSchemaLoader.loadSchema(未知来源)     在org.apache.xerces.impl.xs.XMLSchemaLoader.loadGrammar(未知来源)     在org.apache.xerces.impl.xs.XMLSchemaLoader.loadGrammar(未知来源)     在org.apache.xerces.jaxp.validation.XMLSchemaFactory.newSchema(未知来源)

2 个答案:

答案 0 :(得分:0)

所有schemaLocation都应指向引用的xsd's。确保给出schemaLocations并且它们是有效的路径。

答案 1 :(得分:0)

我的猜测是错误消息意味着它的含义:你的架构包含一个xs:attribute ref =“X”,其中没有名为X的属性声明。这可能是因为导入架构失败或因为命名空间是错误的。但是,如果没有看到它,我们就无法调试您的架构。