رقم تحقق ISBN-10
تأخذ الأرقام التسعة 030640615 رقم التحقق 2، فيصبح رقم ISBN-10 الكامل 0306406152. أكمل رمزًا من عشرة أحرف أو افحص رمزًا من فهرس قديم أو فاتورة أو قائمة تبرعات قبل أن يفسد خطأ واحد عملية البحث. مجاني في متصفحك.
- مجاني
- يعمل في متصفحك
- دون تسجيل
- بياناتك لا تغادر جهازك
شغّل الأداة مجانًا
مثال محلول
- العدد
- 030640615
- وضع الحساب
- Compute
- المُدخَل
- 030640615
- رقم التحقق
- 2
- مع رقم التحقق
- 0306406152
ما زالت معرّفات الكتب القديمة تظهر على الأغلفة والفواتير وفهارس المكتبات وقواعد بيانات الناشرين كرموز ISBN-10 من عشرة أحرف. الحرف الأخير ليس زخرفة: إنه رقم تحقق modulo 11 يُختار بحيث تفشل مجموعات التسجيل أو رموز الناشر أو أرقام العناوين المكتوبة خطأ في مجموع مرجّح بسيط. تحسب هذه القدرة ذلك الرقم من أي جسم من تسعة أرقام خالصة — فتعيد 0 إلى 9 أو الحرف X عندما يكون الباقي عشرة — أو تتحقق من ISBN-10 كامل لديكم، بما في ذلك الأشكال ذات الشرطات بعد إزالة الفواصل.
ما رقم تحقق ISBN-10 ولماذا يظهر الحرف X
ISBN-10 معرّف من عشرة أحرف لطبعة كتاب وفق مخطط ISO 2108 الأقدم. الأحرف التسعة الأولى أرقام عشرية ترمّز مجموعة التسجيل والناشر والعنوان؛ والعاشر حرف تحقق مشتق من تلك التسعة حتى تكسر أخطاء النسخ شرطًا معيارياً. يضرب المعيار الأرقام بأوزان تنازلية من عشرة إلى اثنين، ويجمع النواتج، ويختار قيمة تحقق من صفر إلى عشرة بحيث يكون المجموع المرجّح الكامل بوزن واحد على التحقق قابلاً للقسمة على أحد عشر.
عندما تكون تلك القيمة عشرة يُطبع الحرف X بدل سلسلة من رقمين — ومن هنا رموز صحيحة مثل 080442957X. تنفّذ هذه الأداة قاعدة modulo 11 نفسها: وضع compute يعيد حرف التحقق لجسم من تسعة أرقام؛ ووضع validate يعيد حساب الحرف المتوقع ويُبلغ إن كانت السلسلة الكاملة متطابقة مع صفر modulo أحد عشر. لا تحوّل إلى ISBN-13 ولا تستعلم قاعدة عناوين ولا تعامل باركودات EAN-13 للتجزئة كبدائل دون توسيع البادئة 978/979 الذي تجرونه في موضع آخر.
معرفة أن ISBN-10 معرّف كتاب بطول ثابت وخوارزمية تختلف عن فحص Luhn modulo 10 للبطاقات أو أرقام EAN-13 للتجزئة تساعدكم على اختيار الأداة الصحيحة: استخدموا هذه الصفحة عندما تكون السلسلة المعنية جسم ISBN-10 أو رمزاً كاملاً من عشرة أحرف مع X اختيارية.
كيف تحسبون رقم تحقق أو تتحققون من ISBN-10 كامل
أرسلوا حقل number يحوي الأرقام (وللتحقق حرف التحقق الختامي). تُزال المسافات البادئة واللاحقة؛ وتُحذف الشرطات والمسافات الداخلية حتى يمكن التحقق من أشكال الناشرين الشائعة مثل 0-306-40615-2 دون منظّف منفصل. وضع compute هو الافتراضي: قدّموا تسعة أرقام بالضبط بعد التنظيف.
يتوقع وضع validate ISBN-10 كاملاً من عشرة أحرف بعد التنظيف — تسعة أرقام يليها 0-9 أو X (X بلا حساسية لحالة الأحرف وتُحوَّل إلى أحرف كبيرة). يدعم هذا الشكل رسائل مثل «أدخلتم X والمتوقع Y» في النماذج دون استدعاء ثانٍ. تفشل السلاسل الفارغة والأطوال الخاطئة والحروف غير X الختامية وقيم mode غير الصالحة قبل أي جمع ولا تُحاسب.
فضّلوا compute عند إنشاء أرقام جزئية أو إكمالها؛ وفضّلوا validate عندما يقدّم مستخدم أو ملف شريك أو ماسح ISBN-10 كاملاً وتحتاجون بوابة منطقية قبل البحث.
أين يناسب رقم تحقق ISBN-10 الأنظمة الحقيقية
ما زال الناشرون والتعبئة يصدرون ISBN-10 على المخزون القديم وقوائم البواقي وجداول الحقوق حتى بعد أن صار ISBN-13 معيار التجزئة. تتلقى تدفقات المكتبات والمستعمل قوائم متبرعين مكتوبة من صفحات عنوان متربة؛ يجب أن تفشل خانة واحدة مبدّلة في التحقق قبل بحث OPAC فاشل. يلصق بائعو الأسواق أعمدة مختلطة من ISBN-10 وISBN-13 في أدوات المخزون — توجيه صفوف العشرة أحرف عبر هذا الفاحص وصفوف الثلاثة عشر رقماً عبر مسار على نمط EAN يُبقي كل عائلة صادقة.
النجاح في الفحص لا يثبت وجود الكتاب أو توافره أو مطابقته لعنوان — يثبت فقط أن السلسلة سليمة الشكل وفق خوارزمية رقم تحقق ISBN-10، وهو معيار الصدق نفسه الذي تطبقونه على أي مجموع تحقق.
حالات الاستخدام
تدقيق أعمدة كتالوج قديمة
تحققوا دفعة واحدة من كل حقل ISBN-10 في تصدير مكتبة أو حقوق واعزلوا الصفوف التي لم يعد حرف تحققها يطابق القيمة المتوقعة المعاد حسابها.
الأسئلة الشائعة
ما رقم تحقق ISBN-10؟
هو الحرف العاشر من ISBN-10، يُحسب بمجموع مرجّح modulo 11 على الأرقام التسعة الأولى بحيث يكون الرمز الكامل متطابقاً مع صفر modulo أحد عشر. عندما يتطلب الباقي القيمة عشرة يُكتب الحرف X.
لماذا يظهر رقم التحقق أحياناً كـ X؟
يستخدم ISBN-10 الأساس أحد عشر لقيمة التحقق. عندما تكون القيمة المطلوبة عشرة، يطبع المعيار X بدل رقم حتى يبقى الرمز بطول عشرة أحرف.
كيف يُحسب رقم التحقق في ISBN-10؟
اضرب الأرقام التسعة في 10 و9 و8 وهكذا حتى 2، ثم اجمع النواتج. رقم التحقق هو القيمة من 0 إلى 10 التي تجعل المجموع، مع احتساب رقم التحقق مرة واحدة، قابلًا للقسمة على 11، ويُكتب 10 على شكل X.
هل يثبت رقم ISBN-10 الصحيح أن الكتاب موجود؟
لا. يدل نجاح الفحص فقط على أن الأحرف العشرة سليمة وفق قاعدة ISBN-10. لا تُراجع أي قاعدة بيانات للعناوين، لذا لا يخبرك هل الكتاب موجود أو متاح للبيع أو يطابق عنوانًا ما.
هل تحوّل الأداة ISBN-10 إلى ISBN-13؟
لا، تعمل هذه الأداة مع رموز ISBN-10 ذات الأحرف العشرة فقط. أما الرموز ذات الأرقام الثلاثة عشر التي تبدأ بالبادئة 978 أو 979 فتحتاج إلى أداة ISBN-13 أو أداة تحويل منفصلة.
أدوات ذات صلة
للمطوّرين — الوصول عبر API
كل ما في هذه الصفحة متاح برمجيًا. هذا القسم موجّه للفرق التقنية التي تريد ربط الأداة بأنظمتها الخاصة؛ بقية المستخدمين يمكنهم استخدام الأداة أعلاه مباشرة دون الحاجة لقراءة ما يلي.
الـEndpoint
صادِق على طلبك بترويسة Bearer، وأرسل طلب POST واحدًا لتدخل مهمتك قائمة التنفيذ فورًا؛ ثم تستلم النتيجة عبر webhook أو رابط موقّع.
استدعِ الخدمة من بيئتك
curl -X POST https://api.kit.forhosting.com/enc/isbn10 \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"number":"030640615"}'const res = await fetch("https://api.kit.forhosting.com/enc/isbn10", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"number": "030640615"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/enc/isbn10",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"number": "030640615"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/enc/isbn10", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"number":"030640615"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"number":"030640615"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/enc/isbn10", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)مثال على الطلب
{
"number": "030640615"
}مثال على الاستجابة
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "enc.isbn10",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}الواجهة غير متزامنة: تستلم task_id فور الإرسال، ويمكنك الاستعلام عن الحالة بمعدل طلب واحد في الثانية.
الأسعار
السعر معلن كما تراه: لا tokens ولا نظام نقاط؛ وإن فشلت المهمة فلن تُحاسَب عليها.
الأخطاء
| HTTP | الرمز | المعنى |
|---|---|---|
401 | unauthorized | مفتاح الوصول مفقود أو غير صالح؛ تحقق من ترويسة Bearer في طلبك. |
402 | insufficient_balance | رصيدك لا يكفي لتنفيذ هذه المهمة؛ أعد شحن الرصيد ثم أعد المحاولة. |
404 | unknown_type | نوع المهمة المطلوب غير موجود في الكتالوج — راجع الاسم المرسل في الطلب. |
429 | rate_limited | تجاوزت الحد المسموح من الطلبات؛ انتظر قليلًا ثم أعد المحاولة. |
ملاحظات تقنية
ترفض الحروف غير X الختامية والأطوال الخاطئة والمدخلات الفارغة بخطأ invalid_input واضح دون تخمين. استخدموها مجانًا في المتصفح أو استدعوا واجهة KIT API بالسعر المنشور؛ المساران ينفّذان الحساب الحتمي نفسه دون شبكة ودون استعلام كتالوج مخزّن.
كيف تحسبون رقم تحقق أو تتحققون من ISBN-10 كامل
تتضمن الاستجابة check_digit كسلسلة من حرف واحد (0-9 أو X)، وwith_check كالأرقام التسعة مع ذلك الحرف، والمدخل المطبّع من تسعة أرقام، وlength عشرة، وalgorithm isbn10. تُبلغ الاستجابة valid true عندما يكون المجموع المرجّح قابلاً للقسمة على أحد عشر، وتشمل دائماً check_digit المقدَّم وexpected_check_digit المعاد حسابه من الأرقام التسعة الأولى وحدها وpayload ذي التسعة أرقام وlength عشرة. لأن المسار parse خالص بلا ساعة أو عشوائية أو شبكة، يعطي المدخل نفسه دائماً نفس JSON على أداة المتصفح المجانية وعلى API. بسعر $0.002 لكل طلب ناجح تحمون استيراد الكتالوج بالجملة ونماذج التسجيل وطابعات الملصقات دون التفاوض على شريحة مخصصة.
أين يناسب رقم تحقق ISBN-10 الأنظمة الحقيقية
يمكن للمطابع التي ما زالت تنتج باركودات ISBN-10 أو سطوراً مقروءة بشرياً استدعاء وضع compute بعد تعيين جسم التسعة أرقام وطباعة with_check دون حساب حالات X يدوياً.
حالات التكامل
إكمال رقم كتاب من تسعة أرقام
بعد تعيين مجموعة التسجيل والناشر وجسم العنوان، استدعوا وضع compute واحفظوا أو اطبعوا with_check حتى يحمل كل ISBN-10 الرقم الختامي أو X الصحيح.
التحقق من رموز ISBN-10 مكتوبة أو ملصوقة
عندما يقدّم نموذج أو CSV رمزاً كاملاً من عشرة أحرف (تُسمح الشرطات)، استدعوا وضع validate وامنعوا البحث عندما يكون valid false، مع إظهار expected_check_digit للمساعدة على تصحيح خطأ الكتابة.
أسئلة تقنية
كيف أحسب رقم تحقق ISBN-10 عبر هذه API؟
أرسلوا POST مع number مضبوطاً على تسعة أرقام وmode compute (أو احذفوا mode). تتضمن الاستجابة check_digit (0-9 أو X) وwith_check (ISBN-10 الكامل من عشرة أحرف).
كيف أتحقق من ISBN-10 كامل؟
أرسلوا POST بالرمز الكامل من عشرة أحرف (شرطات اختيارية) وmode validate. تتضمن الاستجابة valid وcheck_digit وexpected_check_digit وpayload (الأرقام التسعة الأولى).
هل أداة رقم تحقق ISBN-10 مجانية؟
أداة المتصفح مجانية وتعمل محلياً. تستعمل استدعاءات API رصيد KIT المدفوع مسبقاً بالسعر الأساسي المنشور $0.002؛ والمدخل غير الصالح لا يُحاسب أبداً.