مقدمه GMAS-000: معماری مرجع GMAS-001: هویت GMAS-002: رابطه GMAS-003: زمان GMAS-004: مکان GMAS-005: روایت GMAS-006: منبع و شاهد GMAS-007: سطح اطمینان GMAS-008: هستی‌شناسی GMAS-009: API GMAS-010: امنیت راهنمای علائم جدول خلاصه

Gostaham Middleware Architecture Standard

استانداردهای GMAS-000 تا GMAS-010 — نسخه ۱.۰ (پیش‌نویس) — تیر ۱۴۰۵

مقدمه

این سند، استانداردهای رسمی معماری Gostaham Middleware را تعریف می‌کند. هر استاندارد (GMAS) یک حوزه مشخص از معماری سامانه را پوشش می‌دهد و شامل الزامات فنی، ساختارهای داده، قواعد اعتبارسنجی و مثال‌های پیاده‌سازی است.

استانداردهای GMAS مکمل Gostaham Middleware Core Specification v1.0 هستند و برای پیاده‌سازی فنی سامانه ضروری می‌باشند.

سطوح الزام

در این استاندارد از سه سطح الزام استفاده می‌شود:

GMAS-000: معماری مرجع و اصول بنیادین

حوزه: کلیات سامانه | ارجاع: فصل ۱، ۱۱، ۱۲

۱. معماری چهارلایه

لایهاجزامسئولیت
زبانواژه‌نامه، هستی‌شناسیتعریف مفاهیم و واژگان مشترک
دانشهویت، رابطه، زمان، مکان، روایت، منبع، شاهد، رسانهمدل‌سازی و ذخیره‌سازی
خردموتور معنا، موتور استنتاج، موتور تمدنتحلیل و فهم
حکمرانیAPI، امنیت، نسخه‌بندیتعامل و کنترل دسترسی

۲. اصول تغییرناپذیر

۳. یادداشت پیاده‌سازی

معماری لایه‌ای سخت‌گیرانه (Strict Layered): هر لایه فقط با لایه زیرین از طریق API رسمی ارتباط دارد.


GMAS-001: استاندارد هویت

حوزه: ساختار IK، انواع هویت، چرخه حیات | ارجاع: فصل ۲، ۱۴

۱. ساختار IK

قالب: IK:{UUID v4} یا IK:{namespace}:{local_id}

[Must] یکتایی IK در کل سامانه.

۲. انواع هویت

Person, Place, Event, Organization, Concept, Artifact, Text, Media, Tradition

۳. چرخه حیات

Draft → Validated → Published → Deprecated → Retired

[Must] انتقال به Deprecated با ثبت دلیل.

[Should] موجودیت Retired از جستجوهای پیش‌فرض خارج می‌شود.

۴. فیلدها

[Must] ik, type, primary_name, created_at, status

[May] alternate_names[], description, valid_from, valid_until, created_by


GMAS-002: استاندارد رابطه

حوزه: انواع رابطه، محدودیت‌ها | ارجاع: فصل ۳، ۶

۱. ساختار RK

قالب: RK:{UUID v4} — هر رابطه یک موجودیت مستقل.

۲. انواع

عمومی: kinship, rulership, enmity, friendship, alliance, succession, mentorship, creation, spatial_dependency, temporal_dependency, conceptual_dependency, citation

روایی: represents, contradiction, motivates, suggestion

۳. محدودیت‌های دامنه

۴. فیلدها

[Must] rk, source_ik, target_ik, relation_type, created_at

[Should] narrative_ik برای روابط وابسته به روایت.


GMAS-003: استاندارد مدل‌سازی زمان

حوزه: انواع زمان، تقویم‌ها | ارجاع: فصل ۴

۱. انواع

exact, approximate, mythological, narrative

۲. ساختار

{
  "time_id": "TK:...",
  "type": "approximate",
  "earliest": "-0500-01-01",
  "latest": "-0400-12-31",
  "calendar": "gregorian",
  "precision": "century",
  "description": "قرن پنجم پیش از میلاد"
}

۳. تقویم‌ها

[Should] gregorian, jalali, hijri, julian

۴. زمان‌های اسطوره‌ای

[Should] فیلد narrative_anchor. مثال: "پس از مرگ جمشید"


GMAS-004: استاندارد مکان

حوزه: سلسله مراتب مکانی، مختصات | ارجاع: فصل ۵

۱. انواع

continent, country, province, city, village, historical_region, mountain, plain, river, sea, cave, forest, fire_temple, palace, fortress, tomb, battlefield, route, bridge, port

۲. مختصات

[Should] coordinates: GeoJSON Point

[May] boundaries: GeoJSON Polygon

[May] historical_boundaries[]

۳. حافظه مکان

[May] اتصال به روایت‌ها از طریق place_memory.


GMAS-005: استاندارد روایت

حوزه: گراف روایت، پل‌های بین‌گرافی | ارجاع: فصل ۶

۱. ساختار NarrativeNode

{
  "ik": "IK:...",
  "type": "NarrativeNode",
  "narrative_type": "mythological|epic|...",
  "title": "روایت ضحاک در شاهنامه",
  "language": "fa",
  "creator_ik": "IK:ferdowsi",
  "source_ik": "IK:shahnameh",
  "represents_ik": "IK:zahhak",
  "contradicts": ["IK:narrative_avestan_zahhak"]
}

۲. پل‌های بین‌گرافی

[Must] رابطه represents میان NarrativeNode و ExistenceNode.

۳. ثبت تعارض

[Must] فیلد contradiction_reason.


GMAS-006: استاندارد منبع و شاهد

حوزه: زنجیره شواهد، شاهد سلبی | ارجاع: فصل ۷، ۸

۱. انواع منبع

book, manuscript, inscription, article, thesis, historical_document, map, photo, video, audio, interview, database, website, archaeological_report

۲. انواع شاهد

text, image, inscription, archaeological_data, genetic_data, linguistic_data, source_as_evidence, negative_evidence, ...

۳. شاهد سلبی

[Must] فیلد expected_claim برای ادعای غایب.

مثال: "در اوستا نامی از هخامنشیان نیامده"

۴. زنجیره ارجاع

[Must] source_ik و source_location.


GMAS-007: استاندارد سطح اطمینان

حوزه: بردار اطمینان، توضیح‌پذیری | ارجاع: فصل ۹

۱. بردار اطمینان

{
  "confidence_vector": {
    "source_reliability": "high|medium|low|unspecified",
    "evidence_convergence": "high|medium|low|unspecified",
    "scholarly_consensus": "high|medium|low|unspecified"
  },
  "explanation": "..."
}

[Must] فیلد explanation برای هر ارزیابی.

[Should] سطح کلی از ترکیب سه بُعد محاسبه شود.


GMAS-008: استاندارد هستی‌شناسی

حوزه: کلاس‌ها، هم‌ترازی CIDOC-CRM | ارجاع: فصل ۱۲

۱. کلاس‌های پایه

ExistenceNode: Person, Place, Event, Organization, Artifact, Concept

NarrativeNode: تمام موجودیت‌های درون روایت

۲. هم‌ترازی

GostahamCIDOC-CRM
Personcrm:E21_Person
Placecrm:E53_Place
Eventcrm:E5_Event
Artifactcrm:E22_Human-Made_Object
NarrativeNodecrm:E33_Linguistic_Object
representscrm:P138_represents

۳. توسعه‌پذیری

[May] زیرکلاس جدید توسط کاربران مجاز.

[Must] اتصال به یکی از کلاس‌های پایه.

[Should] هم‌ترازی با CIDOC-CRM.


GMAS-009: استاندارد API و تبادل داده

حوزه: REST، GraphQL، JSON-LD | ارجاع: فصل ۱۷

۱. قالب‌ها

[Must] JSON

[Should] JSON-LD, GraphQL

[May] RDF/XML

۲. نمونه JSON-LD

{
  "@context": "https://gostaham.org/ns/context.jsonld",
  "@id": "IK:zahhak",
  "@type": "Person",
  "primary_name": "ضحاک"
}

۳. نسخه‌بندی

مسیر: /api/v{major}/{resource}

[Should] پشتیبانی ۱۲ ماهه از نسخه‌های قدیمی.

۴. احراز هویت

[Must] JWT برای درخواست‌های نوشتاری.


GMAS-010: استاندارد امنیت و حکمرانی

حوزه: سطوح دسترسی، حساسیت فرهنگی | ارجاع: فصل ۱۸

۱. سطوح دسترسی

سطحمجوزها
visitorخواندن منابع عمومی
researcher+ ثبت ادعا و شاهد
contributor+ ویرایش پیش‌نویس
editor+ انتشار و تغییر وضعیت
reviewerبررسی علمی
adminمدیریت کامل

۲. حساسیت فرهنگی

مقادیر: none, restricted, sacred, confidential

[Must] دسترسی محدود برای sacred و confidential.

[Must] ثبت دلیل در sensitivity_reason.

۳. ثبت عملیات

[Must] تمام عملیات در audit_log.


پیوست: راهنمای علائم

علامتمعنا
[Must]الزامی و تغییرناپذیر
[Should]توصیه اکید
[May]اختیاری

پیوست: جدول خلاصه

کدعنوانوضعیت
GMAS-000معماری مرجعپیش‌نویس ۱.۰
GMAS-001هویتپیش‌نویس ۱.۰
GMAS-002رابطهپیش‌نویس ۱.۰
GMAS-003زمانپیش‌نویس ۱.۰
GMAS-004مکانپیش‌نویس ۱.۰
GMAS-005روایتپیش‌نویس ۱.۰
GMAS-006منبع و شاهدپیش‌نویس ۱.۰
GMAS-007سطح اطمینانپیش‌نویس ۱.۰
GMAS-008هستی‌شناسیپیش‌نویس ۱.۰
GMAS-009APIپیش‌نویس ۱.۰
GMAS-010امنیتپیش‌نویس ۱.۰

Gostaham Middleware Architecture Standard — GMAS v1.0 (پیش‌نویس)
تدوین: سید ابوالفضل موسوی | تیر ۱۴۰۵
این سند تحت مجوز GOSTAHAM MIDDLEWARE منتشر می‌شود.