سؤال

لدي XSD. عندما أحاول التحقق منه في biztalk ، فإنه يعطي هذه الأخطاء:

error BEC2009: Node "<Schema>" - Schema reference "http://www.w3.org/2001/xml.xsd" is not a valid reference or does not exist in the current project.

error BEC2009: Node "<Schema>" - Schema reference "http://www.w3.org/2001/xml.xsd" is not a valid reference or does not exist in the current project.

warning BEC999: Cannot resolve the 'schemaLocation' attribute.

error BEC3001: The 'http://www.w3.org/XML/1998/namespace:space' attribute is not declared.

warning BEC999: Cannot resolve the 'schemaLocation' attribute.

warning BEC1007: Node "<Schema>" - Target namespace is empty.

أعتقد أنه يشير إلى مساحات الأسماء التي تبدو هكذا:

<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
    <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="http://www.w3.org/2001/xml.xsd"/>

لست متأكدًا مما إذا كانت هذه معلومات كافية لتستمر ...

تعديل:
لقد وجدت أنه بناءً على البرنامج الذي أستخدمه للتحقق من صحة XML معه يعمل أحيانًا. علي سبيل المثال. إذا قمت بإنشاء بعض رمز .NET للتحقق من صحة XML مقابل المخطط ، فيبدو أنه يقرأ XSD OK ويؤدي التحقق من صحة XML. إذا استخدمت التحقق من صحة XML في Notepad ++ ، فإنه يقول إنه لا يمكن قراءة المخطط. في خريطة أخرى (WTX) يقولون إنه لا يعمل أيضًا.

هل هناك أشياء أخرى يمكنني محاولة تضييق القضايا المحتملة؟

تحرير 2:
بفضل xcut. وجدت أنه إذا قمت بتنزيل المخطط محليًا ووضعته في مشروع BizTalk ، فإن المخطط يتحقق من صحة موافق ، ولكن مع تحذير واحد: تحذير BEC1007: العقدة "" - مساحة الاسم الهدف فارغة.

هل كانت مفيدة؟

المحلول

بصرف النظر عن كونه غريبًا بعض الشيء لاستيراد مخطط مساحة الاسم ، فقد يكون BizTalk ببساطة لا يمكن استيراد مخطط من خلال عنوان URL (في حين يمكن لرمز .NET الخاص بك).

لاستبعاد هذا كمسألة ، قم بتنزيل المخطط من W3.org ، ووضعه في مشروعك واستيراده من هناك بدلاً من HTTP.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top