СПРАВКА проверки схемы (преобразована из Biztalk 2004 в 2006 R2) - PullRequest
0 голосов
/ 24 июня 2010

Эта схема работала в нашей среде Biztalk 2004, но выдает ошибку при компиляции в Biztalk 2006 R2.

<?xml version="1.0" encoding="utf-16"?>
<xs:schema xmlns:b="http://schemas.microsoft.com/BizTalk/2003" xmlns="http://Project.Schemas.External.ScheduleRepair" attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:element name="schedulerepair">
    <xs:complexType>
      <xs:complexContent mixed="true">
        <xs:extension base="xs:anyType">
          <xs:sequence>           
            <xs:element name="customerremarks">
              <xs:complexType />
            </xs:element>
          </xs:sequence>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>
</xs:schema>

теперь мы получаем эту ошибку:

Ошибка 54Подстановочный знак «## any» разрешает элемент «customerremarks» и приводит к тому, что модель контента становится неоднозначной.Модель содержимого должна быть сформирована таким образом, чтобы во время проверки последовательности элементов информации об элементе, частица, содержащаяся прямо, косвенно или неявно в ней, с помощью которой можно попытаться проверить каждый элемент в последовательности, в свою очередь, может быть однозначно определена без изучения содержимого или атрибутовэтот элемент, и без какой-либо информации об элементах в оставшейся части последовательности.C: \ Project \ ScheduleRepair.xsd

Я не вижу ничего другого в упомянутом узле.Кроме того, когда я удаляю этот узел, он просто указывает на что-то еще в качестве виновника.Я знаю, что это как-то связано с изменением .NET с 1.1 на 2.0, но нам нужно, чтобы эта схема работала как-то.

ПОЖАЛУЙСТА, ПОМОГИТЕ!

1 Ответ

1 голос
/ 25 июня 2010

Wow StackOverflow, где ваши эксперты? 1 день, 12 просмотров на вопрос и без попытки ответа !!!

Я получил помощь от разработчика на Филиппинах, они определенно первоклассные! Спасибо, Роуз!

Вот ее оригинальное сообщение:

Здравствуйте,

Проверка схемы из BizTalk 2004, Я вижу, что элемент график ремонта в xs: anyType со свойством Derived By установить на расширение. Насколько я помню, мы не можем установить свойство Derived By к расширению, чтобы вывести из xs: anyType, иначе вы указанные ниже будут встречаться. к исправить это, мы можем изменить Получено от свойства к ограничению или изменить свойство базового типа данных от xs: anyType к некоторым другим типам и перестройте схему.

Возникла ошибка, с которой вы столкнулись из-за новой проверки, которая была введен в рамках 2.0 как часть реструктуризации 2.0 Библиотеки XML.

Не могу точно определить, если это на самом деле дело здесь, так как у меня нет Biztalk 2006 R2 для компиляции, но В любом случае, надеюсь, это поможет. 

Спасибо! Rose

У нее даже не было более новой версии Biztalk для тестирования, но ее совет работал на моей машине. Вот новая схема:

<?xml version="1.0" encoding="utf-16"?> 
<xs:schema xmlns:b="http://schemas.microsoft.com/BizTalk/2003" xmlns="http://Project.Schemas.External.ScheduleRepair" attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema"> 
  <xs:element name="schedulerepair"> 
    <xs:complexType> 
      <xs:complexContent mixed="true"> 
        <xs:restriction base="xs:anyType"> 
          <xs:sequence>            
            <xs:element name="customerremarks"> 
              <xs:complexType /> 
            </xs:element> 
          </xs:sequence> 
        </xs:restriction> 
      </xs:complexContent> 
    </xs:complexType> 
  </xs:element> 
</xs:schema> 

Удивительная работа, Роза! Еще раз спасибо!

...