كل كتاب منشور في فهرس مون، وكل شخص وموضوع ومحور، بيانات BIBFRAME مترابطة لها عنوان دائم على mooon.site. هذه الصفحة تشرح كيف تقرؤها المكتبات والباحثون والبرامج. لا تحتاج إلى مفتاح أو تسجيل دخول: كل ما هنا عام، وتُعرض فيه النسخ المنشورة وحدها.
لكل كيان عنوان لا يتغير. يفتحه المتصفح على صفحة الكتاب في الفهرس، وتأخذ منه البرامج البيانات بالصيغة التي تطلبها، إما بلاحقة في العنوان أو بترويسة 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 | .jsonld | application/ld+json |
| Turtle | .ttl | text/turtle |
| N-Triples | .nt | application/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…" } ] }
بحث في الفهرس المنشور يفهم العربية: يساوي بين أ وإ وآ وا، وبين ة وه، وبين ى وي، ويتجاهل التشكيل. يجب أن تظهر كل كلمات البحث في السجل، بأي ترتيب.
GET https://mooon.site/resource/search?q=بغداد&limit=20&offset=0
| المعامل | المعنى |
|---|---|
q | كلمات البحث (حتى 200 حرف) |
language | رمز اللغة، مثل ara |
limit · offset | حجم الصفحة (حتى 200، والافتراضي 50) وموضع البدء |
{ "total": 3,
"facets": { "language": { "ara": 2, "eng": 1 }, … },
"records": [ { "id": "record-…", "title": "…", "saved": "…", "document": { "@graph": [ … ] } } ] }
يحمل كل سجل في document رسمه البياني BIBFRAME كاملاً بصيغة JSON-LD.
ملف مون الاستنادي يضم الأشخاص والهيئات والأماكن والموضوعات والمحاور. لكل منها عنوان دائم، مع أشكال الاسم الأخرى، وروابط owl:sameAs إلى مكتبة الكونغرس وVIAF وويكي بيانات.
GET https://mooon.site/resource/authorities?q=الوردي&kind=agent&limit=10
| المعامل | المعنى |
|---|---|
q | الاسم أو جزء منه (يطابق الأشكال الأخرى أيضاً) |
kind | agent · 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 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 · ASK | SPARQL JSON (الافتراضي) · XML · CSV · TSV — json xml csv tsv |
| CONSTRUCT · DESCRIBE | Turtle (الافتراضي) · 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 من صفحته في الفهرس.
ما نشره مون أو عدّله أو سحبه، الأحدث أولاً، بصيغة ActivityStreams 2.0 كما تنشر مكتبة الكونغرس وOCLC سجلَّيهما. كل نشاط Create أو Update أو Delete يسمّي الـ Instance والعمل وروابط تنزيله. تتبَّعه لتحديث نسختك دون تنزيل كل شيء من جديد؛ الصفحة 1 هي الأحدث، 50 نشاطاً في الصفحة.
https://mooon.site/resource/changes
https://mooon.site/resource/changes?page=1
بيانات فهرس مون مفتوحة بترخيص CC0 1.0 (ملك عام): انسخها وعدّلها وانشرها لأي غرض دون إذن، كما تفعل مكتبة الكونغرس ومعظم المكتبات الوطنية. كل تسجيلة منشورة تذكر ترخيصها في بيانات الإدارة (dcterms:license) ومن أعدّ الوصف. التسجيلة التي جاء وصفها من مصدر لا يسمح بإعادة النشر تبقى خارج التنزيل الشامل وSPARQL وOAI-PMH وسجل التغييرات.
وصف مجموعة البيانات بصيغة VoID:
https://mooon.site/resource/void
https://mooon.site/resource/void.ttl
يستطيع وكيل ذكي (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
قوالب مون (كتاب، مخطوط، دورية، موسيقى مدونة، خريطة) تحدد حقول كل تسجيلة وأيها إلزامي. تُنشر بثلاث صيغ: صيغة 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.
@ar-Arab وكتابته اللاتينية @ar-Latn، وفئات المحتوى مثل bf:Text.