المعلومات او الحقول المطلوبة التي تجعل مشروعنا قابلا لان يتحول الى Knowledge Graph

لكي يكون مشروعكم قابلًا للتحول فعليًا إلى Knowledge Graph، يجب ألا تجمعوا “معلومات كثيرة” فقط، بل تجمعوا معلومات قابلة للتمثيل ككيانات وعلاقات وادعاءات موثقة.

المفتاح هنا هو هذا:

لا تخزنوا النص فقط، بل خزنوا: من هو الشيء؟ ما نوعه؟ ما علاقته بغيره؟ من أين جاءت المعلومة؟ وما درجة ثقتها؟

سأعطيك الهيكل الكامل بشكل عملي ومنظم، مع الحقول التي أنصح بها.
وسأقسمه إلى طبقات، لأن المشروع عندكم ليس مجرد أشخاص، بل:

  • أشخاص
  • جماعات
  • علاقات
  • أحداث
  • مصادر
  • أسماء بديلة
  • دعاوى/ادعاءات
  • زمن
  • مكان
  • ثقة
  • ملاحظات تحريرية

1) الفكرة الأساسية قبل الحقول

لكي يتحول المشروع إلى Knowledge Graph، يجب أن تبنوه على هذه الوحدات الأساسية:

الكيانات الرئيسية

  • Person
  • Group / Clan / Tribe
  • Marriage / Union
  • Parent-Child Relation
  • Source
  • Citation / Passage
  • Place
  • Event
  • Name Variant
  • Claim / Assertion

العلاقات الرئيسية

  • father_of
  • mother_of
  • spouse_of
  • child_of
  • member_of
  • branch_of
  • mentioned_in
  • occurred_in
  • lived_in
  • died_in
  • narrated_from
  • same_as
  • disputed_with
  • asserted_by

يعني من البداية لا تفكروا فقط في “صفحة شخص”، بل في طبقات بيانات.


2) أهم شيء: فصل “الشخص” عن “المعلومة عنه”

هذا مهم جدًا.

لا تجعلوا السجل يقول فقط:

  • فلان أمه فلانة

بل الأفضل أن يكون عندكم:

  • شخص: فلان
  • شخص: فلانة
  • ادعاء/علاقة: فلانة هي أم فلان
  • المصدر: كتاب كذا
  • الموضع: ج1 ص45
  • درجة الثقة: عالية
  • ملاحظة: مختلف فيها أو ناقصة

هذا الفصل هو ما يجعل المشروع قابلًا لأن يكون graph علميًا، لا مجرد قاعدة أسماء.


3) الحقول المطلوبة للكيان: Person

هذا هو أهم كيان في المشروع.

الحقول الأساسية

  • person_id
  • canonical_name_ar
  • canonical_name_en
    إن كنتم ستدعمون الإنجليزية
  • gender
  • person_type
    مثل: رجل / امرأة / مجهول / مولى / أم ولد / شخصية محتملة
  • is_historical_person
    نعم / لا / غير مؤكد
  • short_label
  • display_name

الحقول الاسمية

  • ism
    الاسم
  • nasab_full_ar
    النسب الكامل كما يعتمد في العرض
  • kunya
  • laqab
  • nisba
  • tribal_affiliation_text
  • name_normalized
  • name_sort_key

الحقول التعريفية

  • father_known
  • mother_known
  • lineage_status
    مثل: له عقب / لا عقب / انقرض / انقرض إلا من البنات / غير معروف
  • social_status
    حر / أمة / أم ولد / مولى / حليف / غير محدد
  • religious_period
    مثل: جاهلي / مخضرم / صحابي / تابعي / أموي مبكر… حسب مشروعكم
  • notes_summary

الحقول الزمنية

  • birth_year_hijri_est
  • birth_year_ce_est
  • death_year_hijri_est
  • death_year_ce_est
  • generation_index
  • chronology_note
  • period_start_est
  • period_end_est

الحقول الجغرافية

  • birth_place_id
  • death_place_id
  • main_region_id
  • mobility_note

الحقول العلمية/السياقية

هذه ليست ضرورية من أول يوم، لكنها مفيدة جدًا:

  • is_narrator
  • narrator_rank
  • appears_in_biographical_sources
  • appears_in_hadith_sources
  • historical_importance_score
  • data_completeness_score

الحقول الإدارية

  • record_status
    مسودة / مراجعة / معتمد
  • created_at
  • updated_at
  • editor_note
  • public_visibility

4) كيان الأسماء البديلة: NameVariant

هذا كيان مهم جدًا، لأنه بدون الأسماء البديلة سيتحول المشروع إلى حفلة تنكرية.

الحقول

  • name_variant_id
  • person_id
  • name_text_ar
  • name_text_en
  • variant_type
    اسم / كنية / لقب / نسبة / اختصار / تصحيف / صيغة أخرى
  • is_preferred
  • normalization_form
  • source_id
  • citation_id
  • confidence
  • note

هذا يسمح لكم بتخزين:

  • الاسم الكامل
  • الاختصار
  • الكنية
  • شكل آخر في مصدر آخر
  • شكل محرف أو مشكوك

5) كيان الجماعات: Group / Clan / Tribe

لأن المشروع ليس أشخاصًا فقط.

الحقول

  • group_id
  • group_name_ar
  • group_name_en
  • group_type
    قبيلة / بطن / فخذ / بيت / فرع / حلف
  • parent_group_id
  • root_group_id
  • lineage_chain_text
  • description
  • period_note
  • main_region_id
  • notes
  • record_status

لماذا مهم؟

لكي تستطيعوا تمثيل:

  • قريش
  • بني هاشم
  • بني أمية
  • بني مخزوم
  • بيت فلان داخل بطن فلان

6) علاقة الانتماء: Membership

بدل أن تضعوا في الشخص مجرد نص “من بني أمية”، الأفضل جعلها علاقة مستقلة.

الحقول

  • membership_id
  • person_id
  • group_id
  • membership_type
    نسب / ولاء / حلف / انتساب من جهة الأم / انتساب مختلف فيه
  • start_period_est
  • end_period_est
  • source_id
  • citation_id
  • confidence
  • note

هذا مهم جدًا لأن الانتماء قد لا يكون دائمًا بسيطًا أو أحاديًا.


7) علاقة الأبوة/الأمومة: ParentChildRelation

هذه من أهم الجداول أو الكيانات في المشروع.

الحقول

  • relation_id
  • parent_id
  • child_id
  • relation_type
    أب / أم / أب محتمل / أم محتملة / رضاع إن احتجتم لاحقًا
  • biological_status
  • certainty_level
  • source_id
  • citation_id
  • supporting_text_excerpt
  • note
  • is_primary_assertion

حقول إضافية ذكية

  • mother_status_context
    زوجة حرة / أم ولد / أمة / مجهولة
  • lineage_legitimacy_note
  • ordering_among_siblings

8) علاقة الزواج/الاتحاد: Marriage / Union

لا تجعلوا الزواج مجرد حقل نصي داخل الشخص.

الحقول

  • union_id
  • partner1_id
  • partner2_id
  • union_type
    زواج / أم ولد / سرية / علاقة محتملة / خطبة إن احتجتم نادرًا
  • start_period_est
  • end_period_est
  • marriage_order
    إن أمكن
  • children_count_known
  • union_status
  • source_id
  • citation_id
  • confidence
  • note

حقول مهمة جدًا

  • partner2_status_at_union
    حرة / أمة / أم ولد / مجهولة
  • is_endogamous_within_quraysh
  • is_politically_significant
  • union_summary

هذا لاحقًا كنز في التحليل الشبكي.


9) علاقة الإخوة

يمكن اشتقاقها من الأب والأم، لكن أحيانًا يفيد تخزينها مباشرة إذا وردت نصًا.

الحقول

  • sibling_relation_id
  • person1_id
  • person2_id
  • sibling_type
    شقيق / لأب / لأم / غير محدد
  • source_id
  • citation_id
  • confidence
  • note

10) كيان الأماكن: Place

مشروعكم سيقوى كثيرًا إذا لم تتركوا المكان مجرد نص.

الحقول

  • place_id
  • place_name_ar
  • place_name_en
  • place_type
    مدينة / إقليم / وادٍ / موضع / قبيلة-منطقة
  • parent_place_id
  • latitude
  • longitude
  • historical_note
  • modern_equivalent
  • period_note

علاقات ممكنة مع الأشخاص

  • ولد في
  • مات في
  • سكن في
  • ارتبط بـ
  • انتقل إلى

11) كيان الأحداث: Event

هذا ليس ضروريًا في النسخة الأولى، لكنه مهم إذا أردتم مشروعًا قويًا بحق.

الحقول

  • event_id
  • event_name_ar
  • event_name_en
  • event_type
    ولادة / وفاة / زواج / معركة / هجرة / ولاية / خلافة / انتقال
  • start_date_est
  • end_date_est
  • place_id
  • description
  • historical_significance
  • source_id
  • citation_id

ثم جدول ربط الأشخاص بالأحداث

  • event_participation_id
  • event_id
  • person_id
  • role_in_event
  • source_id
  • citation_id
  • confidence
  • note

12) كيان المصادر: Source

هذا حاسم جدًا.

الحقول

  • source_id
  • title_ar
  • title_en
  • author_ar
  • author_en
  • author_death_hijri
  • author_death_ce
  • source_type
    نسب / رجال / تاريخ / طبقات / حديث / دراسة حديثة
  • edition_info
  • editor
  • publisher
  • publication_year
  • volume_info
  • digital_url
  • bibliographic_note
  • priority_level
  • is_core_source

لماذا؟

لكي يكون المشروع قابلًا للمراجعة والوزن العلمي.


13) كيان الموضع النصي: Citation / Passage

هذا أهم من المصدر نفسه.

الحقول

  • citation_id
  • source_id
  • volume
  • page_start
  • page_end
  • section_title
  • entry_title
  • line_ref
  • quoted_text_ar
  • quoted_text_normalized
  • translation_en
  • excerpt_type
    نسب / زواج / أمومة / وفاة / وصف / رواية / مكان
  • note

هذا يسمح بربط كل معلومة بموضعها الحقيقي.


14) كيان الادعاء: Claim / Assertion

هذا هو القلب العلمي الحقيقي للمشروع إذا أردتم Graph ناضجًا.

بدل أن تكون كل معلومة “حقيقة مطلقة”، تكون ادعاءً مصدره نص.

الحقول

  • claim_id
  • subject_entity_type
  • subject_entity_id
  • predicate
  • object_entity_type
  • object_entity_id
  • object_literal_text
  • claim_type
    نسب / زواج / أمومة / انتماء / لقب / وفاة / مكان / تقدير زمني
  • source_id
  • citation_id
  • confidence_score
  • certainty_label
    مؤكد / راجح / محتمل / ضعيف / مختلف فيه
  • is_disputed
  • editorial_decision
  • preferred_for_display
  • note

لماذا هذا مهم جدًا؟

لأن الـ Knowledge Graph الحقيقي لا يقول فقط:

  • X هو أب Y

بل يمكنه أن يقول:

  • المصدر 1 يدعي أن X أب Y
  • المصدر 2 يسكت
  • المصدر 3 يخالف
  • المحرر اعتمد هذا الادعاء بدرجة عالية

وهنا يدخل المشروع منطقة الكبار.


15) كيان الخلاف: Dispute / Alternative Assertion

يمكن تمثيله داخل Claim، لكن أحيانًا يفيد فصله.

الحقول

  • dispute_id
  • topic_type
  • entity_id
  • claim_id_1
  • claim_id_2
  • dispute_reason
  • editorial_summary
  • preferred_resolution
  • note

16) الحقول الخاصة بالنساء والأمهات

هذا باب يجب أن يكون قويًا عندكم لأن كثيرًا من المشاريع تظلم هذا القسم.

حقول إضافية مهمة في Person أو Claims

  • mother_named_explicitly
  • mother_free_or_slave_status
  • is_umm_walad
  • maternal_line_known
  • maternal_group_id
  • female_visibility_level
  • daughter_named_or_unnamed
  • women_count_note

لماذا؟

لأن النصوص كثيرًا ما تقول:

  • “وأمه أم ولد”
  • “وله نسوة”
  • “انقرض إلا من البنات”
  • “بنت فلان”
    وهذه تحتاج تمثيلًا خاصًا، لا مجرد فراغات.

17) الحقول الخاصة بحالة النسل

هذا باب مهم جدًا في الأنساب.

الحقول

  • offspring_status
    • له عقب
    • لا عقب
    • انقرض
    • انقرض إلا من البنات
    • غير معروف
  • male_line_continuity
  • female_line_continuity
  • descendance_note
  • descendance_source_id
  • descendance_citation_id

18) الحقول الزمنية التقديرية

لأنكم غالبًا لن تملكون تاريخًا دقيقًا دائمًا.

الحقول

  • date_precision
    • exact
    • approximate
    • generation-based
    • relative
  • relative_to_person_id
  • relative_to_event_id
  • before_after_label
  • chronological_band
  • generation_distance_from_qusay
  • estimated_active_period

هذه الحقول ممتازة جدًا لمشروعكم.


19) الحقول الخاصة بالربط مع كتب الرجال والإسناد

حتى لو لم تستخدموها الآن، ضعوا مكانًا لها.

الحقول في Person

  • rijal_presence
  • rijal_primary_entry_name
  • hadith_activity_level
  • narration_role
  • teachers_count_est
  • students_count_est
  • hadith_corpus_note

جدول مستقل إن أحببتم

PersonHadithProfile

  • profile_id
  • person_id
  • is_narrator
  • appears_in_bukhari
  • appears_in_muslim
  • appears_in_rijal_sources
  • narration_notes
  • source_id
  • citation_id

20) الحقول الخاصة بالجودة والمراجعة

هذه لا تبدو مثيرة، لكنها ما يجعل المشروع قابلًا للنمو بدل الانفجار.

الحقول

  • quality_score
  • verification_status
  • reviewed_by
  • review_date
  • needs_manual_check
  • duplication_risk
  • ambiguity_flag
  • merge_candidate_ids
  • data_origin
  • editorial_comments

21) ما أقل مجموعة حقول يجب أن تبدأوا بها؟

لو أردتم بداية ذكية، لا تبدأوا بكل شيء مرة واحدة.
ابدؤوا بالحد الأدنى الذي يسمح لاحقًا بالتحول إلى Graph.

الحد الأدنى الضروري جدًا

للأشخاص

  • person_id
  • canonical_name_ar
  • gender
  • short_label
  • lineage_status
  • notes_summary

للأسماء البديلة

  • person_id
  • name_text_ar
  • variant_type
  • is_preferred

للعلاقات

  • relation_id
  • subject_id
  • predicate
  • object_id
  • source_id
  • citation_id
  • confidence

للمصادر

  • source_id
  • title_ar
  • author_ar
  • source_type

للمواضع

  • citation_id
  • source_id
  • volume
  • page_start
  • quoted_text_ar

للجماعات

  • group_id
  • group_name_ar
  • group_type
  • parent_group_id

هذا يكفي كبداية قوية.


22) ما البنية المثالية على مستوى الجداول؟

لو أردت شكلًا شبه نهائي:

جداول أساسية

  • persons
  • person_name_variants
  • groups
  • person_group_memberships
  • parent_child_relations
  • unions
  • places
  • events
  • event_participants
  • sources
  • citations
  • claims
  • disputes
  • person_hadith_profiles
  • editorial_logs

23) كيف يتحول هذا فعليًا إلى Knowledge Graph؟

عندما يكون عندكم:

عقد Nodes

  • Person
  • Group
  • Place
  • Event
  • Source

روابط Edges

  • father_of
  • mother_of
  • spouse_of
  • member_of
  • lived_in
  • died_in
  • mentioned_in
  • asserted_by
  • same_as

خصائص Properties

  • confidence
  • date_estimate
  • source_ref
  • certainty
  • status

فيمكن تصديره بسهولة إلى:

  • Neo4j
  • RDF
  • JSON-LD
  • APIs graph-ready

24) الحقول التي كثير من الناس ينسونها وهي حاسمة

هذه بالذات لا أنصح بإهمالها:

أ) confidence / certainty

بدونها ستضطرون لاحقًا لتقديم كل شيء كأنه يقين.

ب) citation granularity

لا يكفي “المصدر: نسب قريش”.
لازم موضع أدق.

ج) name variants

بدونها ستضيع نصف حياتكم في من هو هذا.

د) editorial notes

لأن بعض القرارات ستكون بشرية وتأويلية.

هـ) claim layer

هذه أهم نقطة تجعل المشروع بالغًا علميًا.


25) الترتيب المنهجي الذي أنصح به لكم

ابدؤوا بهذا التسلسل:

المرحلة الأولى

  • Persons
  • Groups
  • Parent-child
  • Unions
  • Sources
  • Citations

المرحلة الثانية

  • Name variants
  • Confidence
  • Lineage status
  • Maternal details
  • Places

المرحلة الثالثة

  • Claims
  • Disputes
  • Events
  • Hadith/rijal linkage
  • Analytical scores

هذا أفضل من محاولة حمل الفيل من أذنه في أول يوم.


26) الخلاصة المكثفة

لكي يكون مشروعكم قابلًا للتحول إلى Knowledge Graph، لا بد أن يحتوي على الحقول التي تسمح لكم بتخزين:

من هو الشخص؟
بأي أسماء يُعرف؟
إلى أي جماعة ينتمي؟
من أبوه وأمه وزوجه وأولاده؟
ما طبيعة كل علاقة؟
من أين جاءت المعلومة؟
أين وردت بالنص؟
ما درجة الثقة فيها؟
هل هي محل خلاف؟
ما زمنها التقريبي؟
ما مكانها؟
وما القرار التحريري المعتمد بشأنها؟

إذا وفّرتم هذه الطبقات، فأنتم لا تبنون قاعدة بيانات فقط، بل تبنون بنية معرفية قابلة للتحليل، والعرض، والربط، والتوسع، والبيع، والترخيص، والبحث الأكاديمي.

الخطوة المنطقية التالية الآن هي أن أحوّل هذا كله إلى Schema عملي نهائي لمشروعكم على شكل:

  • الجداول
  • الحقول
  • أنواع القيم
  • والعلاقات الأساسية بين الجداول.

Comments

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *