Как я могу прочитать несколько строк xsd в xmlschema

Например, в моей программе Python есть несколько строк XSD.

xsd1 = '''<?xml version...
   <xs:schema targetNamespace="...
'''
xsd2 = '''...'''

import xmlschema
schema = xmlschema.XMLSchema([xsd1, xsd2]) # it seems xmlschema does not accept such arguments
# then using schema to validate xml files

У двух XSD разные целевые пространства имен. Как я могу прочитать их в xmlschema и проверить файлы xml?

1 ответ

В идеале конструктор xmlschema.XMLSchema() мог бы принимать список расположений файлов и собирать из них единую модель XSD (модель Eclipse EMF XSD может это сделать). Но похоже, что xmlschema этого не делает.

Обходной путь - создать одну XSD-оболочку, которая импортирует / включает другие XSD, а затем передать XSD-оболочку xmlschema.

Другие вопросы по тегам