Đây là phần tiếp theo của xác thực Magento 2 xml :
Tôi đã hiểu cách lập bản đồ xsi:noNamespaceSchemaLocation
trong IDE của mình để tôi có được xác thực thời gian thực cho các xml của mình.
Nhưng nếu tôi phải tạo tệp cấu hình của riêng mình với lược đồ xác thực của riêng nó thì sao?
Tôi nên đặt giá trị xsi:noNamespaceSchemaLocation
gì?
Ngay bây giờ tôi có cái này trong class.xml
:
<?xml version="1.0"?>
<classes xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="class.xsd">
....
</classes>
Điều này hoạt động độc đáo, bởi vì class.xsd
trong cùng một thư mục với của tôi class.xml
.
Nhưng tôi có kế hoạch làm cho mô-đun của tôi có thể mở rộng và thực sự bao gồm từ nhiều mô-đun.
Bây giờ tôi sử dụng trong các mô-đun bổ sung một đường dẫn tương đối đến class.xsd
tệp và điều này hơi sai.
<?xml version="1.0"?>
<classes xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../Base/etc/umc/class.xsd">
....
</classes>
Rõ ràng tôi không thể sử dụng urn:magento:framework...
vì mô-đun của tôi không nằm trong khung và tôi cũng không thể sử dụng urn:magento:module...
vì mô-đun của tôi không phải là mô-đun lõi. Hoặc tôi có thể sử dụng sau này?
Hay tôi nên sử dụng một tùy chỉnh urn
?
Và (lần cuối cùng) nếu tôi sử dụng một tùy chỉnh, urn
điều này sẽ tự động được nhận bởi lệnh bin/magento dev:urn-catalog:generate
hoặc tôi nên sử dụng một cái gì đó đặc biệt?