У меня есть XML-схема и экземпляр XML, который подходит для этой схемы.
Этот экземпляр XML содержит некоторые данные.
Я хотел бы расширить экземпляр XML дополнительными данными (мои собственные метаданные для каждого элемента XML в экземпляре XML), сохранив при этом их действительность для предоставленной схемы.
Реальный вариант использования состоит в том, что у меня есть собственный элемент управления, который получает данные через XML, и я хотел бы сгенерировать новый XML, который каким-то образом хранит дополнительные метаданные, связанные с сериализацией элемента управления.
Пара моих решений заключалась в том, чтобы сохранить другой документ со списком «XPath, Mode, Color», который я загружаю на втором проходе после загрузки XML.
Другое решение заключалось в том, чтобы добавить идентификаторы к узлам XML и таким образом ссылаться на узлы из другого документа (вместо использования XPath).
И еще одна идея заключалась в том, чтобы каким-то образом добавить атрибуты (которые находятся в моем пространстве имен для каждого элемента) к экземпляру XML данных, но проблема в том, что у меня, вероятно, возникнут проблемы с проверкой XML с новыми атрибутами позже, когда я попытаюсь загрузить его снова. (потому что атрибуты, которые я добавляю в XML, не определены в его схеме)
У вас есть лучшее решение этой проблемы? За какое из решений вы бы проголосовали? (Пожалуйста, объясни.)
Спасибо!