persNamer

28 مارس 2025 · 2 دقيقة قراءة
code

persNamer: وصل TEI بالملف الاستنادي الدولي الافتراضي

DOI

persNamer أداة متخصصة بلغة Python تيسّر إدماج بيانات الأشخاص الاستنادية من VIAF (الملف الاستنادي الدولي الافتراضي) في وثائق TEI XML. فهي تحوّل معرّفات VIAF إلى ترميز TEI جاهز للاستعمال، وتوفّر بذلك على المحقّق قسطًا كبيرًا من العمل اليدوي الذي يقتضيه إنشاء مداخل أشخاص مهيكلة في الطبعات العلمية الرقمية.

معضلة ضبط الاستناد في TEI

كثيرًا ما تقتضي الطبعات العلمية الرقمية تعيين الشخصيات التاريخية تعيينًا دقيقًا، بأسمائها المعيارية وتواريخ حياتها. والمحافظة على ضبط استنادي متسق في مشروع بأكمله تستلزم:

  1. تعيين الأشخاص في النصوص التاريخية
  2. العثور على بيانات استنادية عنهم
  3. إنشاء مداخل TEI منسّقة تنسيقًا صحيحًا
  4. ضمان اتساق الإحالات في المشروع كله

وهي خطوات تُنجز عادةً باليد، فتلتهم الوقت وتعرّض العمل للتضارب.

كيف يعمل persNamer

يؤتمت persNamer سير العمل هذا على النحو الآتي:

  1. جلب بيانات VIAF: انطلاقًا من معرّف VIAF، تسترجع الأداة بيانات RDF عبر تفاوض المحتوى في HTTP
  2. استخلاص المعلومات الأساسية: تحلّل RDF لتستخرج الاسم المفضّل وتاريخ الميلاد وتاريخ الوفاة
  3. توليد ترميز TEI: تنشئ مقطعي XML أساسيين:
    • مدخلًا في الملف الاستنادي (عنصر <person> مع xml:id مولَّد، و<persName>، و<birth>، و<death>، و<idno type="VIAF">)
    • وسم تعليق منفصلًا (<persName> مع سمة ref تحيل إلى المدخل الاستنادي)

وبهذا المخرج المزدوج يحتفظ المحقّق بملف استنادي مركزي، ويدرج وسوم التعليق في نصوص TEI بلا عناء.

أبرز الميزات

  • توليد معرّفات معيارية: ينشئ معرّفات XML متسقة على الصيغة pers-[familyname]-[givenname initial] (مثل pers-deteligny-c)
  • تحليل RDF: يستخدم rdflib لاستخراج المعلومات من خصائص RDF المختلفة (مثل rdfs:label وschema:name وviaf:mainHead)
  • واجهة سطر الأوامر: يُشغَّل ببساطة برقم VIAF معاملًا وحيدًا لازمًا
  • مخرجات مفصّلة: يعرض تفاصيل المعالجة إلى جانب مخرج XML النهائي

مثال على الاستخدام

python persNamer.py 314802260

فيُخرج هذا الأمر:

<person xml:id="pers-deteligny-c">
  <persName>Charles deTéligny</persName>
  <birth>1535</birth>
  <death>1572-08-24</death>
  <idno type="VIAF">314802260</idno>
</person>

<persName ref="#pers-deteligny-c">Charles deTéligny</persName>

التطبيق في الإنسانيات الرقمية

يجدي persNamer بوجه خاص في:

  • الطبعات العلمية الرقمية التي تحتاج إلى ضبط استنادي
  • مشاريع الترميز بـTEI التي تتناول شخصيات تاريخية
  • مبادرات البيانات المترابطة التي تصل الوثائق بالتسجيلات الاستنادية
  • ضمان الاتساق في مدونات TEI الكبيرة
  • تدريس مفاهيم ضبط الاستناد في مقررات الإنسانيات الرقمية

التنفيذ

persNamer مكتوب بلغة Python ويعتمد على:

  • requests لطلبات HTTP
  • rdflib لتحليل RDF
  • lxml للتعامل مع XML

تجدون الشيفرة المصدرية والتوثيق في مستودع GitHub.

Clément Godbarge
Authors
محاضر في الإنسانيات الرقمية
كليمان غودبارج محاضر في الإنسانيات الرقمية بجامعة سانت أندروز. تتناول أبحاثه العلاقة بين العلم وفن الحكم في أوروبا في مطلع العصر الحديث. وفي كتابه الذي سيصدر قريبًا، يدرس كيف قدّم الأطباء الملحقون ببلاطات فرنسا وإيطاليا في القرن السادس عشر أنفسهم بوصفهم خبراء سياسيين من نوع جديد. وقد حظيت أبحاثه بدعم مؤسسة أندرو و. ميلون، ولجنة فولبرايت، وجمعية عصر النهضة الأمريكية، وجامعة هارفارد.