Ceci est un suivi de la validation xml de Magento 2 :
j'ai compris comment mapper xsi:noNamespaceSchemaLocation
dans mon IDE donc je vais obtenir une validation en temps réel de mes xml.
Mais que faire si je dois créer mon propre fichier de configuration avec son propre schéma de validation?
Quelle valeur dois-je mettre xsi:noNamespaceSchemaLocation
?
En ce moment, je l'ai dans class.xml
:
<?xml version="1.0"?>
<classes xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="class.xsd">
....
</classes>
Cela fonctionne bien, car se class.xsd
trouve dans le même dossier que mon class.xml
.
Mais je prévois de rendre mon module extensible et réellement composé de plusieurs modules.
Maintenant, j'utilise dans les modules supplémentaires un chemin relatif vers le class.xsd
fichier et cela semble un peu faux.
<?xml version="1.0"?>
<classes xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../Base/etc/umc/class.xsd">
....
</classes>
Évidemment, je ne peux pas l'utiliser urn:magento:framework...
parce que mon module n'est pas dans le cadre, et je ne peux pas non plus l'utiliser urn:magento:module...
parce que le mien n'est pas un module de base. Ou puis-je utiliser ce dernier?
Ou devrais-je utiliser une coutume urn
?
Et (dernier) si j'utilise une coutume urn
, cela sera-t-il automatiquement détecté par la commande bin/magento dev:urn-catalog:generate
ou devrais-je dos quelque chose de spécial?