Происходит пара вещей и несколько возможных решений вашей проблемы.
Решение, которое вы можете использовать, будет зависеть от того, сможете ли вы изменить XML, XSD или оба.
Ниже приведен код XML, который проходит проверку вашей схемы:
<?xml version="1.0"?>
<ns0:KpiReport xmlns:ns0="http://www.me.com/orpm/kpi/automation/report"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.me.com/orpm/kpi/automation/report filename.xsd">
<Name ns0:Pattern="Exact">
<Value>Test</Value>
</Name>
</ns0:KpiReport>
Ключевым отличием является то, что в вашем xsd вы не определили элемент Name в пространстве имен http://www.me.com/orpm/kpi/automation/report. Я не совсем уверен, что происходит, но думаю, что наличие атрибута Pattern на уровне схемы запутало вещи. Используя префикс пространства имен ns0: сообщаем валидатору, что KpiReport и Pattern находятся в этом пространстве имен, а Name - нет.
Это решение может не подходить, поэтому другой вариант - настроить вашу схему, чтобы принять ваш пример XML. Ниже приведена схема, которая работает:
<?xml version="1.0" encoding="utf-16"?>
<xs:schema xmlns:b="http://schemas.microsoft.com/BizTalk/2003" xmlns="http://www.me.com/orpm/kpi/automation/report" targetNamespace="http://www.me.com/orpm/kpi/automation/report" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:complexType name="NameValue">
<xs:all>
<xs:element form="qualified" name="Value" type="xs:string" />
</xs:all>
<xs:attribute name="Pattern">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="Exact" />
<xs:enumeration value="Replace" />
<xs:enumeration value="Regex" />
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
<xs:element name="KpiReport">
<xs:complexType>
<xs:sequence>
<xs:element form="qualified" name="Name" type="NameValue" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
Следует отметить, что атрибут Pattern теперь перемещен в NameValue complexType, и что имя и значение теперь указываются как form = "qualised". Квалифицированный означает, что эти элементы требуют префиксов пространства имен (в этом случае префикс по умолчанию или нет).
Я не уверен на 100%, зачем это нужно - мои знания XSD достаточно хороши, чтобы добраться до этой точки, но я не знаю, что происходит. Обычно я использую инструменты для генерации своих схем, а затем настраиваю их до тех пор, пока у меня не получится.
Надеюсь, это поможет вам, или что кто-то с более острыми рубцами XSD сможет заполнить пробелы.