Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/134.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ XSD并集上的QXmlSchemaValidator segfaults_C++_Qt_Xsd - Fatal编程技术网

C++ XSD并集上的QXmlSchemaValidator segfaults

C++ XSD并集上的QXmlSchemaValidator segfaults,c++,qt,xsd,C++,Qt,Xsd,为清楚起见,以下内容影响Qt4.7。我不知道Qt5是否受到影响 使用验证XML时,我发现Qt segfaults在 例如: 该结构在其他应用中得到了很好的验证。例如,我使用Notepad++和XML工具插件 但是与QXmlSchemaValidator一起使用的XSD导致我的应用程序崩溃 这给我留下了一个问题: 在XSD中,这样的属性的并集可以通过其他方式实现吗?这里有一种解决并集的方法: 为了获得额外积分,甚至可以限制整数版本: 。。。 链接到正则表达式测试器 (注意:在XSD中,您

为清楚起见,以下内容影响Qt4.7。我不知道Qt5是否受到影响

使用验证XML时,我发现Qt segfaults在

例如:


该结构在其他应用中得到了很好的验证。例如,我使用Notepad++和XML工具插件

但是与QXmlSchemaValidator一起使用的XSD导致我的应用程序崩溃

这给我留下了一个问题:


在XSD中,这样的属性的并集可以通过其他方式实现吗?

这里有一种解决并集的方法:


为了获得额外积分,甚至可以限制整数版本:

。。。
链接到正则表达式测试器

(注意:在XSD中,您必须删除锚点,因为这是隐含的(如我上面的解决方案所示)。请参阅文章。)


在我的问题陈述中,我认为这甚至可能比工会更好?

以下是一种解决工会问题的方法:


为了获得额外积分,甚至可以限制整数版本:

。。。
链接到正则表达式测试器

(注意:在XSD中,您必须删除锚点,因为这是隐含的(如我上面的解决方案所示)。请参阅文章。)


我认为这甚至可能比我的问题陈述中的联盟更好?

如果它也影响到更新的Qt版本,我会提交一份Qt大报告,无论有效性如何,验证器都不应该崩溃。是联盟导致它崩溃吗?为什么不将值1-7作为字符串添加到DayaString.Qt中,只支持XML1.0(?)也尝试验证模式:QXmlSchema;load(schemaFile.readAll());如果(!schema.isValid()){…@Deep-Yup,代码已经完成了,并且通过了检查。@FrankOsterfeld我想是一个错误报告(QTBUG-77620)最新于今年8月提交。我不会屏息以待任何人拒绝移植它。如果它也影响到更新的Qt版本,我会提交一份Qt大报告,无论其有效性如何,验证器都不会崩溃。是工会导致它崩溃吗?为什么不将值1-7作为字符串添加到DayaString.Qt仅支持xml 1.0y(?)也尝试验证架构:QXmlSchema schema;schema.load(schemaFile.readAll());如果(!schema.isValid()){…@Deep-Yup,代码已经完全验证了,并且通过了检查。@FrankOsterfeld我想有一个错误报告(QTBUG-77620)最新于今年8月提交。我不会屏息以待任何人拒绝移植它。此解决方案有一个缺点。联合由其他基类型组成。架构的其他部分可以引用这些基类型,但正则表达式解决方案不能。这些基类型可能有一些重复I.o.w。这有一个缺点此解决方案。联合由其他基类型组成。架构的其他部分可以引用这些基类型,但正则表达式解决方案不能。这些基类型可能存在一些重复i.o.w。