مون

واجهة مون البرمجية

كل كتاب منشور في فهرس مون، وكل شخص وموضوع ومحور، بيانات BIBFRAME مترابطة لها عنوان دائم على mooon.site. هذه الصفحة تشرح كيف تقرؤها المكتبات والباحثون والبرامج. لا تحتاج إلى مفتاح أو تسجيل دخول: كل ما هنا عام، وتُعرض فيه النسخ المنشورة وحدها.

العناوين الدائمةقائمة السجلاتالبحثملف الاستنادSPARQLالتنزيل الكاملمحركات البحثملاحظات

العناوين الدائمة (Resolvable URIs)

لكل كيان عنوان لا يتغير. يفتحه المتصفح على صفحة الكتاب في الفهرس، وتأخذ منه البرامج البيانات بالصيغة التي تطلبها، إما بلاحقة في العنوان أو بترويسة Accept (content negotiation).

الكيانالعنوان
العمل (Work)https://mooon.site/resource/work/{id}
الطبعة (Instance)https://mooon.site/resource/instance/{id}
النسخة (Item)https://mooon.site/resource/item/{id}
شخص أو هيئةhttps://mooon.site/resource/agent/{id}
مكان / موضوعhttps://mooon.site/resource/place/{id} · /topic/{id}
محور (Hub)https://mooon.site/resource/hub/{id}
الصيغةاللاحقةAccept
صفحة ويب (تحويل 303 إلى الفهرس)—text/html
JSON-LD.jsonldapplication/ld+json
Turtle.ttltext/turtle
N-Triples.ntapplication/n-triples
curl https://mooon.site/resource/work/record-1789649846891.ttl
curl -H "Accept: application/ld+json" https://mooon.site/resource/work/record-1789649846891

السجل المدمج في ملف الاستناد يحوّل بـ301 إلى السجل الذي دُمج فيه. والعنوان الذي لا يقابله سجل منشور يعيد 404.

قائمة السجلات

كل السجلات المنشورة مع عناوين العمل والطبعة: صفحة للقراءة، أو JSON للبرامج.

https://mooon.site/resource/
https://mooon.site/resource/?format=json
{ "count": 21,
  "records": [ { "id": "record-…", "title": "…", "work": "https://mooon.site/resource/work/…",
                 "instance": "https://mooon.site/resource/instance/…", "saved": "2026-11-04T…" } ] }

ملف الاستناد

ملف مون الاستنادي يضم الأشخاص والهيئات والأماكن والموضوعات والمحاور. لكل منها عنوان دائم، مع أشكال الاسم الأخرى، وروابط owl:sameAs إلى مكتبة الكونغرس وVIAF وويكي بيانات.

GET https://mooon.site/resource/authorities?q=الوردي&kind=agent&limit=10
المعاملالمعنى
qالاسم أو جزء منه (يطابق الأشكال الأخرى أيضاً)
kindagent · place · topic · hub
{ "authorities": [ { "id": "ali-al-wardi-3f9a1c2e", "kind": "agent", "label": "الوردي، علي",
    "variants": ["Wardi, Ali al-"], "sameAs": ["https://viaf.org/viaf/…"],
    "uri": "https://mooon.site/resource/agent/ali-al-wardi-3f9a1c2e" } ] }

SPARQL

نقطة SPARQL 1.1 للقراءة فقط، تعمل على كل السجلات المنشورة. فيها SELECT وASK وCONSTRUCT وDESCRIBE، أما أوامر التعديل فمرفوضة. وفي المتصفح صفحة لتجربة الاستعلامات: mooon.site/resource/sparql.

curl -G https://mooon.site/resource/sparql \
  --data-urlencode 'query=PREFIX bf: <http://id.loc.gov/ontologies/bibframe/>
SELECT ?work ?title WHERE { ?work a bf:Work ; bf:title/bf:mainTitle ?title } LIMIT 25'

curl -X POST https://mooon.site/resource/sparql \
  -H "Content-Type: application/sparql-query" -H "Accept: text/csv" \
  --data 'ASK { ?s ?p ?o }'
نوع الاستعلامالصيغ (Accept أو &format=)
SELECT · ASKSPARQL JSON (الافتراضي) · XML · CSV · TSV — json xml csv tsv
CONSTRUCT · DESCRIBETurtle (الافتراضي) · N-Triples · RDF/XML — ttl nt rdfxml

التنزيل الكامل

كل السجلات المنشورة في ملف واحد، محدَّث دائماً ومخزَّن لساعة. العقد الفارغة (blank nodes) لكل سجل تحمل أسماء خاصة به، فلا تختلط بين السجلات.

https://mooon.site/resource/dump.jsonld
https://mooon.site/resource/dump.nt

ويمكن تنزيل كل سجل بصيغ MARC 21 (ISO 2709) وMARCXML و.mrk من صفحته في الفهرس.

سجل التغييرات (Change feed)

ما نشره مون أو عدّله أو سحبه، الأحدث أولاً، بصيغة ActivityStreams 2.0 كما تنشر مكتبة الكونغرس وOCLC سجلَّيهما. كل نشاط Create أو Update أو Delete يسمّي الـ Instance والعمل وروابط تنزيله. تتبَّعه لتحديث نسختك دون تنزيل كل شيء من جديد؛ الصفحة 1 هي الأحدث، 50 نشاطاً في الصفحة.

https://mooon.site/resource/changes
https://mooon.site/resource/changes?page=1

الترخيص: CC0

بيانات فهرس مون مفتوحة بترخيص CC0 1.0 (ملك عام): انسخها وعدّلها وانشرها لأي غرض دون إذن، كما تفعل مكتبة الكونغرس ومعظم المكتبات الوطنية. كل تسجيلة منشورة تذكر ترخيصها في بيانات الإدارة (dcterms:license) ومن أعدّ الوصف. التسجيلة التي جاء وصفها من مصدر لا يسمح بإعادة النشر تبقى خارج التنزيل الشامل وSPARQL وOAI-PMH وسجل التغييرات.

وصف مجموعة البيانات بصيغة VoID:

https://mooon.site/resource/void
https://mooon.site/resource/void.ttl

خادم MCP للوكلاء الذكيين

يستطيع وكيل ذكي (Claude أو أي عميل يدعم Model Context Protocol) أن يبحث في مون ويقرأ التسجيلات ويشغّل SPARQL ويفحص وصفاً قبل نشره. القراءة مفتوحة كالفهرس. الأداة الوحيدة التي تكتب، create_draft، تحتاج جلسة مفهرس مسجّل (X-Moon-Session) ولا تصنع إلا مسودة تنتظر المراجعة، وتحمل اسم الوكيل ومن طلبها وما فعله؛ لا تنشر أي أداة ولا تحذف ولا تعدّل.

https://mooon.site/resource/mcp

الأدوات: search_records · get_record · sparql · validate_record · create_draft

النقل: Streamable HTTP، طلبات JSON-RPC بـ POST وردود JSON. مثال:

claude mcp add --transport http moon https://mooon.site/resource/mcp

أين حقل مارك؟

لكل حقل وحقل فرعي في مارك 21، أين يضعه مون في BIBFRAME، مأخوذاً من محوّل مون نفسه: mooon.site/marc.html. والجدول نفسه بصيغة JSON:

https://mooon.site/marc-where.json

محركات البحث

صفحة كل كتاب في الفهرس تحمل وصفاً بصيغة schema.org/Book بلغة JSON-LD، ورابطاً قانونياً (canonical). وخريطة الموقع تسرد كل الكتب المنشورة:

https://mooon.site/sitemap.xml
https://mooon.site/robots.txt

قوالب الفهرسة (Profiles)

قوالب مون (كتاب، مخطوط، دورية، موسيقى مدونة، خريطة) تحدد حقول كل تسجيلة وأيها إلزامي. تُنشر بثلاث صيغ: صيغة Marva من مكتبة الكونغرس (JSON)، وأشكال SHACL التي تطبقها بوابة النشر، وجدول DCTAP الذي يفتحه محرر القوالب Dancer من مكتبة الكونغرس ويعدّله.

https://gfbagczwhvxxstbfrfhu.supabase.co/functions/v1/make-server-49c0e13c/profiles/monograph
https://gfbagczwhvxxstbfrfhu.supabase.co/functions/v1/make-server-49c0e13c/profiles/monograph/shapes.ttl
https://gfbagczwhvxxstbfrfhu.supabase.co/functions/v1/make-server-49c0e13c/profiles/monograph/dctap.csv

ولتحويل جدول DCTAP معدَّل في Dancer (أو جدول قوالب Marva من مكتبة الكونغرس) إلى صيغة Marva، أرسله في جسم الطلب:

curl -X POST "…/make-server-49c0e13c/profiles/dctap/convert?id=moon:MyProfile&title=My%20profile" \
  -H "Content-Type: text/csv" --data-binary @my-profile.dctap.csv

القوالب المتاحة: monograph · manuscript · serial · music · map.

ملاحظات