التكامل بين الموديولز
إصدار JSON-LD mentions
إصدار JSON-LD mentions — التوثيق قيد الإعداد.
كل إشارة cross-module تبعث أيضاً مرجع schema.org Thing في JSON-LD الصفحة. مصفوفة mentions هي ما يجعل رسم الكيانات قابلاً للاستعلام من محرّكات الإجابة و LLM crawlers — إنها النصف الـ AEO من نظام Cross-module.
كيف يتمّ الإصدار
كل صفحة تفاصيل تستدعي `this.jsonLd.set([primarySchema, ...this.ecosystem.buildMentionsJsonLd(this.signalsBlock())])`. الـ helper `buildMentionsJsonLd` يأخذ RelatedSignalsBlock المحلولة ويعيد Thing schema.org واحد لكل إشارة. الصفحة تبعث JSON-LD script واحد بـ N عنصر: الكيان الأساسي + breadcrumb + N mentions.
mapping Thing لكل موديول
- opportunity → BusinessEvent
- BusinessEvent من schema.org. تحمل @id (URL canonical)، name (العنوان)، description (السبب التحريري).
- founder → Person
- Person من schema.org. URL ملف المؤسس يصبح @id. اسم حسب الـ Locale.
- file → CreativeWork
- CreativeWork من schema.org. العنوان يُحلّ من lang object الخاص بالـ Locale.
- event → Event
- Event من schema.org. URL فعالية Calendar يصبح @id.
- startup → Organization
- Organization من schema.org. اسم العلامة محفوظ عبر الـ Locale.
- editorial → Article
- Article من schema.org. الـ Headline من حقل العنوان للـ Locale.
- coverage → NewsArticle
- NewsArticle من schema.org. الفعالية الأمّ Calendar تظهر كـ `about: Event` على schema الأساسي لصفحة التغطية (رابط بنيوي T1).
مثال إصدار صفحة coverage
مقال تغطية يبعث: { @type: NewsArticle, headline: "…", about: { @type: Event, name: "Flat6Labs Demo Day" } }، إضافة إلى mentions[]: [{ @type: Event }، { @type: BusinessEvent }، { @type: Person, name: "أحمد حسن", description: "مؤسس مذكور في هذه التغطية" }، { @type: Organization, name: "Paymob", description: "شركة مميزة" }]. الـ Crawlers تمشي على هذا الرسم: Coverage → about Event → mentions Person+Organization → ملف Person → Organization المرتبطة → mentions الخاصّة بها، إلخ.
