这是Magento 2 xml验证的后续步骤:
我了解如何xsi:noNamespaceSchemaLocation
在IDE中进行映射,因此可以实时验证xml。
但是,如果我必须使用自己的验证架构来创建自己的配置文件,该怎么办?
我应该为什么值xsi:noNamespaceSchemaLocation
呢?
现在我在class.xml
:
<?xml version="1.0"?>
<classes xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="class.xsd">
....
</classes>
效果很好,因为class.xsd
与my处于同一文件夹中class.xml
。
但是我计划使我的模块可扩展,并实际上由多个模块组成。
现在,我在附加模块中使用了class.xsd
文件的相对路径,这似乎有点错误。
<?xml version="1.0"?>
<classes xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../Base/etc/umc/class.xsd">
....
</classes>
显然我不能使用,urn:magento:framework...
因为我的模块不在框架中,我也不能使用,urn:magento:module...
因为我的模块不是核心模块。或者我可以使用后者?
还是应该使用自定义urn
?
并且(最后一个)如果我使用自定义urn
,命令会自动将其拾取,bin/magento dev:urn-catalog:generate
还是应该做一些特别的事情?