Дублируйте некоторые части XML, не переписывая их - PullRequest
0 голосов
/ 04 мая 2018

У меня есть XML-файл с повторяющимися частями, такими как:

<argument name="create">
    <argument name="user" type="text"></argument>
    <argument name="password" type="password"></argument>
    (and so on)
</argument>

<argument name="update">
    <argument name="user" type="text"></argument>
    <argument name="password" type="password"></argument>
    (and so on)
</argument>

Я бы хотел, чтобы часть между create и update была объявлена ​​один раз, а затем добавляла ее между create и update с помощью одной строки. Это спасло бы меня много строк.

Есть ли способ сделать это в XML?

1 Ответ

0 голосов
/ 05 мая 2018

Для этого вы можете использовать «сущности» SGML / XML, которые могут содержать замещающий текст или разметку для повторного использования в нескольких местах:

<!DOCTYPE arguments [
  <!ENTITY user-and-password
   '<argument name="user" type="text"/>
    <argument name="password" type="password"/>'>
]>
<arguments>
  <argument name="create">
    &user-and-password;
  </argument>
  <argument name="update">
    &user-and-password;
  </argument>
</arguments>

Обратите внимание, что вы должны адаптировать DOCTYPE: он должен соответствовать элементу документа вашего XML.

См. Также Наследование конфигурации XML, избегайте дублирования

...