XSD问题-从另一个XSD调用XSD

15 浏览
0 Comments

XSD问题-从另一个XSD调用XSD

我知道我以前在某个地方看到过这个,但我找不到它了。我需要一个在另一个xsd文件中调用xsd文件的例子。当生成了多个xml文件,但这些xml文件之间存在大量共同区域需要验证时,这是非常有用的。在这种情况下,有一个xsd验证所有xml文件共有的部分是有用的,然后针对每个xml文件特定的部分有单独的较小的xsd验证文件。谢谢。

0
0 Comments

在这个问题中,作者提到了在一个XSD文件中引用另一个XSD文件的问题。作者指出,我们应该称之为“引用”另一个XSD文件,而不是“调用”(calling)另一个XSD文件,因为XSD文件并不会被运行或执行。

无论如何,解决这个问题的方法可能是使用importinclude元素。例如:

<?xml version="1.0"?>
<xs:schema elementFormDefault="qualified" targetNamespace="http://www.w3.org/2001/05/XMLInfoset" xmlns="http://www.w3.org/2001/XMLSchema">
  <xs:import namespace="http://www.example.com/IPO" />
  <xs:include schemaLocation="example.xsd" />
</xs:schema>

其中,import用于引用一个不同的命名空间中的声明,而include用于引用一个相同的命名空间中的声明。

通过这种方式,我们可以在一个XSD文件中引用另一个XSD文件的声明。这样可以简化XSD文件的管理,并提高代码的可重用性。

参考链接:What is the difference between import and include?

0