هذا العرض يتضمن عدة صفحات للطباعة ضمن هذا القسم. اضغط هنا للطباعة.

العودة للعرض العادي.

مشروعات البرمجة

يصدر مشروع قِراب أدوات برمجة مفتوحة المصدر للمساعدة على رقمنة المخطوطات والعناية بها.

1 - أداة البيانات الوصفية من قِرَاب

أداة باللغة العربية لتنسيق البيانات الوصفية وفقًا لمعيار دبلن كور

مقدمة

أداة البيانات الوصفية من قِرَاب عبارة عن صفحة ويب تسمح بتنسيق البيانات الوصفية وفقًا لمعيار دبلن كور باستخدام واجهة مستخدم باللغة العربية.

MetadataTool Screnshot from Github

كيفية الاستخدام

لاستخدام أداة البيانات الوصفية، يمكنك تحميل المجلد الأصلي بأكمله وفتح index.html في متصفح الويب لديك. تعمل الأداة محليًا دون الاتصال بالإنترنت أو عند تحميلها إلى خادم ويب.

التحميل

تتوافر أداة البيانات الوصفية على صفحة قِرَاب على موقع جيت هاب.

المزايا

يعتبر هذا المشروع نسخة مبسطة من منشئ بيانات دبلن كور من nsteffal

الترخيص

تصدر الأداة بموجب رخصة جنو العمومية العامة (الإصدار 2) .

2 - باقِت باش (BagIT Bash)

تنفيذ لمعيار BagIT باستخدام صدفة Bash

BagIT Bash

bagit-bash هو تنفيذ لمعيار BagIT باستخدام صدفة Bash

الهدف من هذا المشروع هو إنشاء تنفيذ كامل لمواصفات BagIT في صدفة Bash. تم تعريف مواصفات BagIT بموجب RFC 8493 ويهدف هذا المشروع إلى تحقيق التكافؤ في الميزات مع تنفيذ BagIT بلغة Python.

المتطلبات

يتطلب Bash 4.0 أو أحدث

التحقق من إصدار Bash

bash --version

المميزات

  • إنشاء حقائب BagIt من مجلد.
  • التحقق من صحة حقائب BagIt الموجودة.
  • دعم مجموعة واسعة من خوارزميات التحقق بما في ذلك MD5، SHA-1، SHA-256، SHA-512، SHAKE-128، SHAKE-256، SHA3-224، SHA3-256، SHA3-384، SHA3-512، BLAKE2b، BLAKE2s، SHA-224، وSHA-384.
  • وضع التحقق السريع للتحقق من payload-oxum فقط.
  • وضع التحقق من الاكتمال فقط للتحقق من اكتمال الحمولة دون التحقق من المجموع الاختباري.
  • حساب المجموع الاختباري بشكل متوازٍ لمعالجة أسرع.
  • دعم إضافة حقول بيانات وصفية اختيارية متنوعة لـ BagIt.

الاستخدام

./bagit.sh [options] <directory>

الخيارات

  • -h, --help: عرض رسالة المساعدة.
  • -v, --version: عرض الإصدار والخروج.
  • -p, --processes PROCESSES: استخدام عمليات متعددة لحساب المجموع الاختباري بشكل أسرع (الافتراضي: 1).
  • -l, --log LOG: اسم ملف السجل (الافتراضي: stdout).
  • -q, --quiet: إخفاء جميع معلومات التقدم باستثناء الأخطاء.
  • -V, --validate: التحقق من صحة الحقائب الموجودة في المجلدات المحددة بدلاً من إنشاء حقائب جديدة.
  • -f, --fast: تعديل سلوك --validate للتحقق فقط مما إذا كان مجلد الحقيبة يحتوي على عدد الملفات والحجم الإجمالي المحدد في Payload-Oxum دون إجراء التحقق من المجموع الاختباري للكشف عن التلف.
  • -c, --completeness-only: تعديل سلوك --validate للتحقق مما إذا كان مجلد الحقيبة يحتوي على الحمولة المتوقعة المحددة في بيانات المجموع الاختباري دون إجراء التحقق من المجموع الاختباري للكشف عن التلف.
  • -t, --localtemp: إنشاء مجلد مؤقت في مجلد الحقيبة بدلاً من مجلد النظام المؤقت. مفيد لمشاركات SMB أو سيناريوهات أنظمة الملفات المتعددة.

خوارزميات المجموع الاختباري

اختر خوارزميات البيان المراد استخدامها عند إنشاء الحقائب (الافتراضي=sha256).

  • --shake_256: إنشاء بيان SHAKE_256 عند إنشاء حقيبة.
  • --sha256: إنشاء بيان SHA-256 عند إنشاء حقيبة.
  • --sha3_512: إنشاء بيان SHA3_512 عند إنشاء حقيبة.
  • --sha1: إنشاء بيان SHA-1 عند إنشاء حقيبة.
  • --shake_128: إنشاء بيان SHAKE_128 عند إنشاء حقيبة.
  • --sha3_224: إنشاء بيان SHA3_224 عند إنشاء حقيبة.
  • --sha3_384: إنشاء بيان SHA3_384 عند إنشاء حقيبة.
  • --blake2s: إنشاء بيان BLAKE2S عند إنشاء حقيبة.
  • --sha3_256: إنشاء بيان SHA3_256 عند إنشاء حقيبة.
  • --sha512: إنشاء بيان SHA-512 عند إنشاء حقيبة.
  • --md5: إنشاء بيان MD-5 عند إنشاء حقيبة.
  • --blake2b: إنشاء بيان BLAKE2B عند إنشاء حقيبة.
  • --sha384: إنشاء بيان SHA-384 عند إنشاء حقيبة.
  • --sha224: إنشاء بيان SHA-224 عند إنشاء حقيبة.

البيانات الوصفية الاختيارية للحقيبة

  • --source-organization SOURCE_ORGANIZATION
  • --organization-address ORGANIZATION_ADDRESS
  • --contact-name CONTACT_NAME
  • --contact-phone CONTACT_PHONE
  • --contact-email CONTACT_EMAIL
  • --external-description EXTERNAL_DESCRIPTION
  • --external-identifier EXTERNAL_IDENTIFIER
  • --bag-size BAG_SIZE
  • --bag-group-identifier BAG_GROUP_IDENTIFIER
  • --bag-count BAG_COUNT
  • --internal-sender-identifier INTERNAL_SENDER_IDENTIFIER
  • --internal-sender-description INTERNAL_SENDER_DESCRIPTION
  • --bagit-profile-identifier BAGIT_PROFILE_IDENTIFIER

التحميل

bagit-bash متاح على صفحة قِرَاب على GitHub.

الترخيص

تم إصدار bagit-bash بموجب رخصة Creative Commons Zero v1.0 Universal.

https://github.com/Qirab/bagit-bash

يستند bagit-bash إلى إصدار bagit-python من مكتبة الكونغرس الموجود في الملكية العامة.

https://github.com/LibraryOfCongress/bagit-python

3 - دبلن كور باش (Dublin Core Bash)

سكريبت bash لقراءة والتحقق من صحة وكتابة البيانات الوصفية وفق معيار دبلن كور

dublincore-bash

سكريبت bash لقراءة والتحقق من صحة وكتابة البيانات الوصفية وفق معيار دبلن كور.

المواصفات

الاستخدام

العمليات الأساسية

# قراءة وعرض البيانات الوصفية
dublincore.sh --read metadata.xml

# التحقق من التوافق مع Dublin Core
dublincore.sh --validate --read metadata.xml

# التحويل بين التنسيقات
dublincore.sh --read metadata.txt --format xml --output metadata.xml
dublincore.sh --read metadata.xml --format html --output metadata.html
dublincore.sh --read metadata.html --format text --output metadata.txt

# استخراج مصطلح محدد
dublincore.sh --term "title" --read metadata.xml
dublincore.sh --term "creator" --read metadata.txt

# استخراج مصطلح مع إخراج نظيف (القيم فقط، مفصولة بفاصلة منقوطة إذا كانت متعددة)
dublincore.sh --term "title" --clean --read metadata.xml
dublincore.sh --term "creator" --clean --read metadata.xml  # قيم متعددة: "Smith, Jane;Johnson, Bob"

# تحديد قيمة مصطلح محددة حسب الموضع (فهرس يبدأ من 1)
dublincore.sh --term "creator" --select 1 --read metadata.xml          # الحصول على قيمة المنشئ الأولى
dublincore.sh --term "creator" --select 2 --read metadata.xml          # الحصول على قيمة المنشئ الثانية
dublincore.sh --term "creator" --select 2 --clean --read metadata.xml  # الحصول على المنشئ الثاني، إخراج نظيف
dublincore.sh --term "identifier" --select 1 --clean --read metadata.xml  # الحصول على المعرف الأول، القيم فقط

# إنشاء ملفات فرعية بمصطلحات متعددة
dublincore.sh --read input.xml --term title --term creator --format xml --output subset.xml
dublincore.sh --read input.xml --term title --term date --term publisher --format text --output subset.txt
dublincore.sh --read input.xml --term abstract --term license --format html --output subset.html

# مصطلحات متعددة مع إخراج مفصل لتصحيح الأخطاء
dublincore.sh --read input.xml --term title --term creator --term subject --format xml --output subset.xml --verbose

# إنشاء ملفات Dublin Core جديدة من الصفر (وضع الإنشاء)
dublincore.sh --create --term title "My Document" --term creator "John Doe" --format xml --output new.xml
dublincore.sh --create --term title "Research Paper" --term date "2024-01-15" --term publisher "Academic Press" --format text --output new.txt
dublincore.sh --create --term title "Web Resource" --term abstract "Summary text" --format html --output new.html

خيارات سطر الأوامر

  • --help - عرض رسالة المساعدة ودليل الاستخدام
  • --read FILE - قراءة وعرض البيانات الوصفية Dublin Core من FILE
  • --validate - التحقق من صحة البيانات الوصفية Dublin Core (استخدم مع –read)
  • --format FORMAT --output FILE - تحويل البيانات الوصفية إلى FORMAT وكتابتها في FILE (xml، text، html)
    • يجب استخدام --format و --output معًا
  • --term TERM - استخراج مصطلح Dublin Core محدد أو تحديد مصطلح لعملية المجموعة الفرعية
    • يمكن استخدامه عدة مرات لإنشاء مجموعة فرعية أو وضع الإنشاء
  • --clean - إخراج قيم المصطلحات فقط، مفصولة بفاصلة منقوطة إذا كانت متعددة (استخدم مع –term واحد)
  • --select N - تحديد القيمة رقم N عندما يكون للمصطلح قيم متعددة (فهرس يبدأ من 1، استخدم مع –term واحد)
    • الصيغة: --term TERM --select N --read FILE
  • --create - إنشاء ملف Dublin Core جديد من علامات –term (لا يتطلب ملف إدخال)
  • --verbose - تمكين الإخراج المفصل
  • --debug - تمكين إخراج تصحيح الأخطاء

أوضاع التشغيل

  1. وضع القراءة - عرض جميع البيانات الوصفية من ملف الإدخال
  2. وضع التحقق - فحص التوافق مع Dublin Core
  3. وضع التحويل - تحويل الملف بالكامل بين التنسيقات
  4. وضع الاستخراج - الحصول على قيم مصطلح واحد (–term واحد فقط)
  5. وضع المجموعة الفرعية - إنشاء ملف جديد بالمصطلحات المحددة فقط (–term متعدد مع –format)
  6. وضع الإنشاء - إنشاء ملف Dublin Core جديد من الصفر (–create مع علامات –term)

مصطلحات Dublin Core المدعومة

عناصر Dublin Core 1.1 (15)

title، creator، subject، description، publisher، contributor، date، type، format، identifier، source، language، relation، coverage، rights

مصطلحات DCMI (العناصر الموسعة)

abstract، accessRights، alternative، audience، available، bibliographicCitation، conformsTo، created، extent، hasVersion، instructionalMethod، issued، license، mediator، medium، modified، provenance، rightsHolder، spatial، tableOfContents، temporal، valid

بادئات مساحة الأسماء

استخدام المصطلحات

  • استخدم أسماء العناصر بدون بادئات في علامات –term (مثل --term title، --term abstract)
  • يكتشف السكريبت تلقائيًا مساحة الأسماء المناسبة (dc: أو dcterms:)
  • تدعم جميع المصطلحات قيمًا متعددة مفصولة بحرف الفاصلة المنقوطة (;)

التنسيقات المدعومة

  • XML - Dublin Core XML مع مساحات الأسماء dc: و dcterms:
  • Text - تنسيق key: value بسيط
  • HTML - علامات Meta مع بادئات DC. و dcterms.

التحميل

dublincore-bash متاح على صفحة قِرَاب على GitHub.

الترخيص

تم إصدار هذا المشروع للملكية العامة بموجب CC0 1.0 Universal.

CC0

إلى أقصى حد يسمح به القانون، تنازل المؤلفون عن جميع حقوق النشر والحقوق المجاورة أو ذات الصلة بهذا العمل. يمكنك نسخ وتعديل وتوزيع وأداء العمل، حتى للأغراض التجارية، كل ذلك دون طلب إذن.