একটি XLSB ফাইল কি?
XLSB ফাইল ফরম্যাট এক্সেল বাইনারি ফাইল ফরম্যাট নির্দিষ্ট করে, যা রেকর্ড এবং স্ট্রাকচারের একটি সংগ্রহ যা এক্সেল ওয়ার্কবুকের বিষয়বস্তু নির্দিষ্ট করে। বিষয়বস্তুতে সংখ্যার অসংগঠিত বা আধা-গঠিত সারণী, পাঠ্য, বা উভয় সংখ্যা এবং পাঠ্য, সূত্র, বহিরাগত ডেটা সংযোগ, চার্ট এবং চিত্র অন্তর্ভুক্ত থাকতে পারে। XLSX এর বিপরীতে (যা Open XML ফাইল ফরম্যাটের উপর ভিত্তি করে), XLSB বাইনারি এক্সেল ওয়ার্কবুক ফাইলের প্রতিনিধিত্ব করে। XLSB ফাইলগুলি দ্রুত পড়া এবং লেখা যায় যা তাদের বড় ফাইলগুলির সাথে কাজ করার জন্য উপযোগী করে তোলে। XLSB খুব কমই ওয়ার্কবুক সংরক্ষণ করতে ব্যবহৃত হয় কারণ XLSX (এবং পূর্বে XLS) হল ওয়ার্কবুক সংরক্ষণের জন্য ব্যবহারকারীর নির্বাচিত ফাইল ফরম্যাট। এটি Microsoft Office 2007 এবং তার উপরে খোলা যাবে।
XLSB ফাইল ফরম্যাট স্পেসিফিকেশন
The file format specifications for XLSB file format were made public back in 2008 as version 1.0. তারপর থেকে, স্পেসিফিকেশনগুলি বেশ কয়েকবার সংশোধিত হয়েছে এবং স্পেসিফিকেশনের সর্বশেষ সংস্করণ (v 10.0) এপ্রিল 2018-এ প্রকাশিত হয়েছিল৷ স্পেসিফিকেশনগুলি Microsoft দ্বারা সর্বজনীনভাবে [MS-XLSB] - Excel Binary File Format specifications হিসাবে উপলব্ধ এবং পড়ার জন্য যে কারোর সাথে পরামর্শ করা উচিত বা XLSB ফাইল ফরম্যাটে ফাইল লেখা।
XLSB ফাইল স্ট্রাকচার
একটি XLSB ফাইল একটি প্যাকেজ যা অংশগুলির একটি সংগ্রহ নিয়ে গঠিত। এই অংশগুলিতে ওয়ার্কবুকের ডেটা এবং প্যাকেজের গঠন সহ একটি ওয়ার্কবুকের বিষয়বস্তু সম্পর্কে তথ্য রয়েছে। কিছু অংশে বাইনারি রেকর্ড ব্যবহার করে সংরক্ষিত তথ্য থাকে, কিছুতে XML হিসেবে, অন্যগুলোতে বাইটের বাইনারি স্ট্রীম হিসেবে সংরক্ষিত তথ্য থাকে। প্রতিটি বাইনারি রেকর্ডে শূন্য বা তার বেশি স্ট্রাকচার্ড ফিল্ড থাকে যাতে ওয়ার্কবুকের ডেটা থাকে।
প্যাকেজ
একটি XLSB প্যাকেজ হল একটি ZIP সংরক্ষণাগার যাতে অবশ্যই একটি ওয়ার্কবুকের অংশ থাকতে হবে। এই অংশ এই প্যাকেজ সম্পর্ক অংশ একটি সম্পর্কের লক্ষ্য হতে হবে. ওয়ার্কবুকের অংশটি হল XLSB নথির শুরুর অংশ।
অংশ
একটি অংশ হল বাইটের একটি স্ট্রীম যার একটি সম্পর্কিত বিষয়বস্তুর ধরন রয়েছে যা অংশে সংরক্ষিত বিষয়বস্তুর প্রকৃতি এবং প্রকার নির্দিষ্ট করে। কিছু অংশ বাইনারি ফর্ম্যাটে তথ্য সঞ্চয় করে যখন অন্যরা XML হিসাবে তথ্য সংরক্ষণ করে। স্পেসিফিকেশন ডকুমেন্টের parts enumeration বিভাগটি প্যাকেজের সমস্ত অংশের মধ্যে বৈধ অংশ, বিষয়বস্তুর প্রকার এবং প্রয়োজনীয়/ঐচ্ছিক সম্পর্ক তালিকাভুক্ত করে।
সম্পর্ক
একটি উত্স এবং একটি লক্ষ্য সংস্থান একটি সম্পর্কের দ্বারা সংযুক্ত। একটি সম্পর্ক হতে পারে:
প্যাকেজ সম্পর্ক: যেখানে লক্ষ্যটি একটি অংশ এবং উত্সটি সামগ্রিকভাবে প্যাকেজ
আংশিক-থেকে-অংশ সম্পর্ক: যেখানে লক্ষ্য একটি অংশ এবং উত্সটি প্যাকেজের একটি অংশ
স্পষ্ট সম্পর্ক: যেখানে একটি রিলেশনশিপ এলিমেন্টের আইডি অ্যাট্রিবিউট ভ্যালু রেফারেন্স করে সোর্স অংশের বিষয়বস্তু থেকে রিসোর্স উল্লেখ করা হয়
অন্তর্নিহিত সম্পর্ক এমন একটি সম্পর্ক যা স্পষ্ট নয়
অভ্যন্তরীণ সম্পর্ক: যেখানে লক্ষ্য প্যাকেজের একটি অংশ
বাহ্যিক সম্পর্ক: যেখানে লক্ষ্য হল একটি বাহ্যিক সংস্থান যা প্যাকেজে নেই
রেকর্ড
একটি রেকর্ড হল মৌলিক বিল্ডিং ব্লক যা একটি ওয়ার্কবুকের বৈশিষ্ট্য সম্পর্কে তথ্য সংরক্ষণ করতে ব্যবহৃত হয়। প্রতিটি বাইনারি রেকর্ড বাইটের একটি পরিবর্তনশীল-দৈর্ঘ্যের ক্রম। একটি বাইনারি রেকর্ড তিনটি উপাদান নিয়ে গঠিত:
একটি রেকর্ড টাইপ
একটি রেকর্ড আকার, এবং
রেকর্ড ডেটা যা সেই রেকর্ড প্রকারের জন্য নির্দিষ্ট।
রেকর্ডের ধরন: রেকর্ডের ধরনটি রেকর্ড দ্বারা নির্দিষ্ট করা রেকর্ডের ধরন দেখায়। এটি এই রেকর্ডের জন্য নির্দিষ্ট রেকর্ড ডেটার গঠনও নির্দিষ্ট করে। বৈধ রেকর্ডের প্রকারগুলি নির্দিষ্টকরণ নথির Record Enumeration বিভাগে তালিকাভুক্ত করা হয়েছে৷ রেকর্ডের ধরনটি অবশ্যই এক বা দুটি বাইট হতে হবে এবং অবশ্যই 128 এর চেয়ে বড় বা সমান এবং 16384 এর কম হতে হবে।
রেকর্ড সাইজ: রেকর্ড সাইজ বাইটের সংখ্যা নির্দিষ্ট করে যা রেকর্ড ডেটার মোট সাইজ নির্দিষ্ট করে। এই মান এক থেকে চার বাইট হতে হবে. এই মানটি অবশ্যই একটি বাইট হতে হবে যদি নিম্ন বাইটের উচ্চ বিটটি 0 এর সমান হয়; অন্যথায়, এই মান অবশ্যই এক বাইটের বেশি হতে হবে। বাইট গণনা এক বাইটের বেশি হলে, প্রতিটি পরপর বাইটের উচ্চ বিট একটি অতিরিক্ত বাইট ব্যবহার করা হয়েছে কিনা তা নির্দিষ্ট করে। যদি দ্বিতীয় বাইটের উচ্চ বিট 1 এর সমান হয়, তাহলে এই মানটি একটি অতিরিক্ত তৃতীয় বাইট ব্যবহার করতে হবে। যদি তৃতীয় বাইটের উচ্চ বিট 1 এর সমান হয়, তাহলে এই মানটি অবশ্যই একটি অতিরিক্ত চতুর্থ বাইট ব্যবহার করবে। চতুর্থ বাইটের উচ্চ বিট অবশ্যই উপেক্ষা করা উচিত। মানটিতে প্রতিটি বাইটের সাতটি নিম্ন বিট রয়েছে। কম, ন্যূনতম তাৎপর্যপূর্ণ বিটগুলি প্রথম বাইটের মধ্যে থাকে এবং প্রতিটি পরপর বাইটে পূর্ববর্তী বাইটের চেয়ে উচ্চতর অর্ডার বিট থাকে।
রেকর্ড ডেটা: রেকর্ড ডেটা কম্পোনেন্টে এমন ক্ষেত্র থাকে যা একটি নির্দিষ্ট রেকর্ডের প্রকারের সাথে মিলে যায় এবং রেকর্ডের অবশিষ্ট অংশ থাকে। রেকর্ড গণনায় তালিকাভুক্ত একটি প্রদত্ত রেকর্ড প্রকারের ক্ষেত্রের ক্রম এবং গঠন রেকর্ডের সেই রেকর্ডের প্রকারের জন্য সংশ্লিষ্ট বিভাগে নির্দিষ্ট করা হয়েছে। রেকর্ড ডেটা উপাদানের মোট আকার অবশ্যই রেকর্ড আকারের সমান হতে হবে। রেকর্ড ডেটা উপাদানের ক্ষেত্রগুলিতে সাধারণ মান, মানগুলির অ্যারে, বিভিন্ন ক্ষেত্রের কাঠামো, ক্ষেত্রগুলির অ্যারে এবং কাঠামোর অ্যারে থাকতে পারে।
XLSB রেকর্ডের উদাহরণ
নিম্নলিখিত রেকর্ডের ধরন এবং রেকর্ডের আকার 200 বাইটের আকার সহ একটি BrtCommentText রেকর্ড নির্দিষ্ট করে:
11111101 00000100 11001000 00000001 [রেকর্ড ক্ষেত্রগুলি]
The first byte is 11111101, specifying a low value of 125 and that the record type requires a second byte. The second byte is 00000100, specifying a high value of 4 * 128, যা 512 এর সমান। রেকর্ড প্রকারের মান হল 125 + 512, বা 637, যা একটি BrtCommentText রেকর্ড প্রকারের সাথে মিলে যায়। পরবর্তী বাইটটি হল 11001000, যার একটি কম মান 72 উল্লেখ করা হয়েছে এবং রেকর্ড আকারের জন্য একটি দ্বিতীয় বাইট প্রয়োজন। দ্বিতীয় বাইট হল 00000001, 1 * 128 এর উচ্চতর মান উল্লেখ করে এবং রেকর্ড আকারের জন্য অতিরিক্ত বাইটের প্রয়োজন হয় না। রেকর্ডের আকার হল 72 + 128, বা 200, যা রেকর্ড ডেটা উপাদানের মোট আকার, বাইটে, নির্দিষ্ট করে। রেকর্ড ডেটা উপাদানের ক্ষেত্রগুলি BrtCommentText দ্বারা নির্দিষ্ট করা হয়েছে৷