UltKit
ছবি11
PDF13
ডকুমেন্ট ও ডেটা7
ভিডিও6
অডিও4
আরও টুল22

XML থেকে JSON কনভার্টার

SOAP রেসপন্স, RSS ফিড, কনফিগ ফাইল বা পুরোনো সিস্টেমের এক্সপোর্ট থেকে ডেটা সরাসরি এমন JSON-এ নিয়ে আসুন, যা আপনার JavaScript, Python বা নো-কোড টুল নিজে থেকেই পড়তে পারে। হাতে পার্সার লেখার দরকার নেই।

ডেটা কনভার্টার

অথবা CSV, TSV, TXT … ফাইল এখানে ড্রop করুন ·

প্রতি ফাইল সর্বোচ্চ 95 MB· সর্বোচ্চ 20টি ফাইল· 30 মিনিট পরে মুছে ফেলা হয়

আউটপুট

ফাইল আমাদের সার্ভারে প্রসেস করা হয় এবং 30 মিনিট পরে মুছে ফেলা হয়।

এই টুল কীভাবে ব্যবহার করবেন

  1. 1

    XML আপলোড করুন

    আপলোড এলাকায় .xml ফাইল ফেলুন, প্রতি ব্যাচে সর্বোচ্চ ২০টি এবং প্রতিটি ৯৫ MB পর্যন্ত। প্রতিটি ফাইল আলাদাভাবে কনভার্ট হয়।

  2. 2

    পড়ার উপযোগী না কমপ্যাক্ট, বেছে নিন

    সাজানো ফরম্যাটে লিখুন চালু থাকে, ফলে পড়া ও কোড রিভিউয়ের জন্য JSON ইনডেন্ট করা হয়। API payload-এর জন্য সবচেয়ে ছোট এক লাইনের আউটপুট চাইলে উন্নত সেটিংস-এ এটি বন্ধ করুন।

  3. 3

    কনভার্ট করে JSON ব্যবহার করুন

    JSON-এ কনভার্ট করুন চাপুন, .json ফাইল ডাউনলোড করুন এবং আপনার কোড বা টুলে লোড করুন।

XML আপলোড করে JSON-এ কনভার্ট করুন চাপুন: এলিমেন্ট হয় key, পুনরাবৃত্ত এলিমেন্ট হয় অ্যারে, আর অ্যাট্রিবিউট থাকে @ দিয়ে শুরু হওয়া key হিসেবে, ফলে ট্যাগের কোনো তথ্য হারায় না।

XML থেকে JSON কনভার্টার কাদের দরকার

XML 1.0 ১৯৯৮ সালের ফেব্রুয়ারিতে W3C Recommendation হয় এবং পরের এক দশক এটিই ছিল সিস্টেমগুলোর যোগাযোগের ভাষা: SOAP ওয়েব সার্ভিস, RSS ও Atom ফিড, Office ডকুমেন্ট, ব্যাংকিং বার্তা, পণ্যের ক্যাটালগ। এর অনেক সিস্টেম এখনও চলছে। RFC 8259-এ নির্দিষ্ট করা JSON নতুন ওয়েব API-তে জায়গা নিয়েছে, কারণ JavaScript লাইব্রেরি ছাড়াই এটি পড়তে পারে এবং প্রায় সব ভাষার লিস্ট ও dictionary-র সঙ্গে সরাসরি মেলে।

তাই যাঁরা কনভার্ট করেন, তাঁরা সাধারণত দুই যুগের মধ্যে সেতু বাঁধছেন। একজন ফ্রন্ট-এন্ড ডেভেলপার পেমেন্ট বা শিপিং প্রোভাইডারের SOAP রেসপন্স পান এবং সাধারণ অবজেক্ট চান। Zapier বা Make-এর একজন অটোমেশন নির্মাতা সরবরাহকারীর XML ফিড এমন ফ্লোতে আনেন যা JSON-এ ভালো চলে। একজন ডেটা ইঞ্জিনিয়ার পুরনো Java অ্যাপের কনফিগ ফাইল মাইগ্রেট করেন, অথবা একজন শিক্ষার্থীর ক্লাস প্রজেক্টের জন্য RSS ফিড JSON-এ দরকার হয়। সবাই অ্যাঙ্গেল ব্র্যাকেট ছাড়া একই কাঠামো চান।

XML থেকে JSON কনভার্ট: ট্যাগ, অ্যাট্রিবিউট ও লেখা কীভাবে মেলে

XML ইনপুট: একটি অ্যাট্রিবিউট, একজন গ্রাহক ও দুটি আইটেমসহ একটি অর্ডার
<order id="A-77">
  <customer>Lena Ortiz</customer>
  <total currency="EUR">59.90</total>
  <item sku="0042">ডেস্ক ল্যাম্প</item>
  <item sku="0108">LED বাল্ব</item>
</order>
উপরের অর্ডারের প্রতিটি অংশ JSON-এ কেমন দেখায়
XML গঠনউদাহরণJSON ফলাফল
রুট এলিমেন্ট<order>শীর্ষস্তরের key order
অ্যাট্রিবিউটid="A-77""@id": "A-77"
শুধু টেক্সটসহ এলিমেন্ট<customer>"customer": "Lena Ortiz"
টেক্সট ও অ্যাট্রিবিউট একসাথে<total currency="EUR"> ট্যাগ{"@currency": "EUR", "#text": "59.90"}
পুনরাবৃত্ত এলিমেন্টদুটি <item> ট্যাগ"item": [ … , … ] অ্যারে
মন্তব্য<!-- note -->বাদ যায়; JSON-এ মন্তব্য নেই

XML

Extensible Markup Language

XML হলো কাঠামোবদ্ধ ডেটার জন্য একটি মার্কআপ ল্যাঙ্গুয়েজ, যা ১৯৯৮ সালে W3C প্রকাশ করে। এটি অ্যাট্রিবিউটসহ নেস্টেড ট্যাগ ব্যবহার করে এবং স্কিমা, নেমস্পেস ও ভ্যালিডেশন সাপোর্ট করে, ফলে জটিল ডকুমেন্টের জন্য মজবুত। RSS ফিড, SVG, Office ডকুমেন্ট, সাইটম্যাপ এবং অনেক এন্টারপ্রাইজ ও সরকারি ডেটা আদান-প্রদানের ভিত্তি এটি। JSON-এর তুলনায় XML বেশি দীর্ঘ, তবে প্রতিটি প্রোগ্রামিং ল্যাঙ্গুয়েজ ও অনেক স্প্রেডশিট টুল এটি পড়তে পারে।

কম্প্রেশন
–
স্বচ্ছতা (ট্রান্সপারেন্সি)
–
অ্যানিমেশন
–
প্রবর্তনের সাল
1998 · W3C
XML কনভার্টার

JSON

জাভাস্ক্রিপ্ট অবজেক্ট নোটেশন

JSON হলো কাঠামোবদ্ধ ডেটার জন্য হালকা টেক্সট ফরম্যাট, যা ২০০০-এর দশকের শুরুতে Douglas Crockford জনপ্রিয় করেন এবং RFC 8259 ও ECMA-404 হিসেবে মানসম্মত হয়। সহজ ও পাঠযোগ্য সিনট্যাক্সে এটি অবজেক্ট, অ্যারে, স্ট্রিং, সংখ্যা, বুলিয়ান ও null প্রকাশ করে। প্রায় সব প্রোগ্রামিং ভাষায় ওয়েব API, কনফিগারেশন ফাইল ও অ্যাপের মধ্যে ডেটা আদান-প্রদানের ডিফল্ট ফরম্যাট এটি। এতে কমেন্ট, তারিখ বা স্কিমা বিল্ট-ইন নেই, এবং বড় নেস্টেড ফাইল ভিউয়ার ছাড়া পড়া কঠিন।

কম্প্রেশন
–
স্বচ্ছতা (ট্রান্সপারেন্সি)
–
অ্যানিমেশন
–
প্রবর্তনের সাল
2001 · Douglas Crockford
JSON কনভার্টার

পুরনো বা এন্টারপ্রাইজ সিস্টেমের ডেটা ওয়েব অ্যাপ, স্ক্রিপ্ট বা অটোমেশন টুলে পৌঁছাতে হলে XML থেকে JSON করা হয়: JavaScript-এ JSON সরাসরি পার্স হয় এবং Python dictionary-তে সরাসরি মেলে।

XML-এর যে বৈশিষ্ট্যগুলোর জায়গা JSON-এ নেই

দুটি ফরম্যাটই ট্রি বর্ণনা করে, কিন্তু XML-এ এমন বাড়তি জিনিস আছে যা JSON-এ কখনো ছিল না। ১৯৯৯ সালে W3C-র সংজ্ঞায়িত namespace এক ডকুমেন্টে soap: ও xsi:-এর মতো একাধিক ভোকাবুলারি মেশাতে দেয়; JSON-এ সেগুলো শুধু key নামের অংশ হিসেবে টিকে থাকে। মন্তব্য ও প্রসেসিং ইনস্ট্রাকশনের যাওয়ার জায়গা নেই, তাই বাদ যায়। মিশ্র কন্টেন্ট, অর্থাৎ চাইল্ড ট্যাগের সঙ্গে মেশানো টেক্সট (যেমন XHTML অনুচ্ছেদে একটি বোল্ড শব্দ), বৈধ XML কিন্তু JSON-এ জটিল হয়ে যায়, তাই ডকুমেন্ট ধরনের XML JSON-এর চেয়ে HTML বা Markdown-এ কনভার্ট করা ভালো।

ক্রম একটু সূক্ষ্ম বিষয়। XML সহোদর এলিমেন্টগুলোকে ক্রমে রাখে এবং স্কিমা তার ওপর নির্ভর করতে পারে; স্ট্যান্ডার্ড অনুযায়ী JSON অবজেক্টের key-র কোনো ক্রম নেই। পুনরাবৃত্ত এলিমেন্ট অ্যারের ভেতরে ক্রম ধরে রাখে, যা বেশিরভাগ বাস্তব ডেটার জন্য যথেষ্ট। XML যদি রেকর্ডের সমতল তালিকা হয় যা কোডে নয়, স্প্রেডশিটে যাবে, তাহলে XML থেকে Excel সরাসরি সারি-কলাম দেয়, আর XML থেকে CSV ডেটাবেস ইমপোর্টের জন্য ফাইল বানায়।

XML থেকে JSON কনভার্টার নিয়ে প্রশ্ন

একই এলিমেন্ট এক ফাইলে অ্যারে আর অন্য ফাইলে অবজেক্ট হয় কেন?

কনভার্টার শুধু ডকুমেন্টে যা আছে তাই দেখে। অর্ডারে তিনটি item ট্যাগ থাকলে items একটি অ্যারে হয়; একটি থাকলে পুনরাবৃত্তি করার কিছু নেই, তাই সেটি একক অবজেক্ট হয়। JSON পড়ার কোডে দুই ধরনই গ্রহণ করা উচিত, অথবা লুপের আগে একক অবজেক্টকে অ্যারেতে মুড়ে নিন।

XML অ্যাট্রিবিউট JSON-এ কীভাবে লেখা হয়?

প্রতিটি অ্যাট্রিবিউট নামের আগে @ দিয়ে একটি key হয়, যেমন currency="EUR" হয়ে যায় "@currency": "EUR"। কোনো এলিমেন্টে অ্যাট্রিবিউট ও টেক্সট দুটোই থাকলে টেক্সট পাশের #text key-তে যায়। এই রীতিতে অ্যাট্রিবিউট ও চাইল্ড এলিমেন্টের নাম এক হলেও সংঘর্ষ হয় না।

XML-এর সংখ্যা কি JSON সংখ্যায় রূপান্তরিত হয়?

XML-এর নিজস্ব ডেটা টাইপ নেই; ট্যাগের ভেতরে 42 ও "42" একই দেখায়। তাই মানগুলো স্ট্রিং হিসেবে আসে, যা ZIP কোড এবং 007-এর মতো ID নিরাপদ রাখে। পার্স করার পর যে ফিল্ডগুলো সংখ্যা দরকার, কোডে সেগুলো সংখ্যায় বদলে নিন।

soap:Envelope-এর মতো নেমস্পেস প্রিফিক্সের কী হয়?

প্রিফিক্স key নামের অংশ থাকে, তাই envelope দেখা যায় soap:Envelope হিসেবে এবং namespace ঘোষণা @xmlns:soap key হিসেবে। এতে ভিন্ন ভোকাবুলারির এলিমেন্ট আলাদা থাকে; শুধু একটি নিয়ে কাজ করলে কোডে প্রিফিক্স বাদ দিন।

পরে কি JSON আবার XML-এ কনভার্ট করা যায়?

হ্যাঁ, JSON থেকে XML দিয়ে। একই @ ও #text রীতি মেনে অ্যাট্রিবিউট আবার অ্যাট্রিবিউট হয়ে ফেরে। মন্তব্য ও আসল ইনডেন্টেশন ফেরে না, কারণ JSON-এ সেগুলো কখনো ছিল না।