Я работаю над OFMX, форматом обмена XML, основанным на AIXM. Схема корректно проверяет общедоступные файлы, однако, когда OFMX используется для внутреннего использования, используется ряд атрибутов, которые не являются частью схемы.
Вот простой действительный файл OFMX:
<?xml version="1.0" encoding="UTF-8"?>
<OFMX-Snapshot xmlns:xsi="http://schema.openflightmaps.org/0/OFMX-Snapshot.xsd" version="0" origin="rubygem aixm-0.3.9" namespace="daf19610-f43b-4db3-80b7-602d9083dc32" created="2020-03-03T10:25:18+01:00" effective="2020-02-27T00:00:00+01:00">
<Ahp source="LF|AD|AD-2.LFBA|2020-02-27|17">
<AhpUid region="LF">
<codeId>LFBA</codeId>
</AhpUid>
<OrgUid region="LF">
<txtName>FRANCE</txtName>
</OrgUid>
<txtName>AGEN LA GARENNE</txtName>
<codeIcao>LFBA</codeIcao>
<codeType>AD</codeType>
<geoLat>44.17472222N</geoLat>
<geoLong>000.59055556E</geoLong>
<codeDatum>WGE</codeDatum>
<valElev>204</valElev>
<uomDistVer>FT</uomDistVer>
<valMagVar>0.0</valMagVar>
</Ahp>
</OFMX-Snapshot>
Чтобы ускорить процесс, непубличная c (локальная) обработка может добавить такие атрибуты, как dbid
:
<Ahp source="LF|AD|AD-2.LFBA|2020-02-27|17" dbid="1234">
Я не хочу загрязнять схему такими не -publi c определения атрибутов, и поэтому я ищу минимально инвазивный способ их разрешения.
Разрешение любого атрибута с, скажем, префиксом подчеркивания, например _dbid
, будет решением, но AFAIK, это не так возможно определить подстановочные атрибуты в схеме.
Есть ли альтернатива, например, локальное пространство имен, такое как local:dbid
, может быть вместе с anyAttribute
с минимальным количеством модификаций элемента root, насколько это возможно?