سؤال

أحتاج إلى تحويل ملف HTML إلى تنسيق Ixbrl. تنسيق Ixbrl هو HTML بشكل أساسي مع بعض العقد المدمجة أو بعض المعلومات عن ملف HTML ملفوف تحت علامات Ixbrl. لهذا ، سأحتاج إلى البحث وإزالة بعض العقد من ملف HTML ولف بعض العقد تحت علامات Ixbrl.

أنا غير قادر على استخدام XML DOM لأنه يطلق النار على استثناء من نوع المحتوى. .NET HTMLDOCUMITY فئة لا تدعم إزالة العقد واستبدالها ، لا يمكنني رؤية خيار الحفظ.

حاولت استخدام حزمة HTML Atgility ، لكن لا يمكن العثور على العقد بسبب مساحات الأسماء في اسم العقدة وليس لديها أي خيار لتحديد مساحات الأسماء (مدير مساحة الاسم في .NET).

هل يمكنني تحديد مساحة الاسم في تعبير XPath؟ كيف؟

هل يمكن لأي شخص مساعدتي في تحرير ملفات HTML (أو XHTML) باستخدام .NET أو أي مكتبة مجانية.

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

المحلول

إذا كنت ترغب في استخدام XPath مع مساحات الأسماء ، فأنت بحاجة فقط إلى بادئة العقد مع مساحة الاسم الصحيحة.

إذا كانت مساحة الاسم تبدو هكذا:

xmlns:xbrli="http://www.xbrl.org/2003/instance"

وعناصرك مثل هذا:

<root>
<xbrli:elementname></xbrli:elementname>
<root>

ثم يمكنك تحديدها في XPath مثل:

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