jsonecho

XML سے Haskell

XML دستاویز پیسٹ کریں اور اس کی ساخت کے مطابق Haskell ٹائپس حاصل کریں۔

ٹول لوڈ ہو رہا ہے...

XML سے Haskell استعمال کرنے کا طریقہ

  1. اپنے ڈیٹا کی نمائندگی کرنے والی XML مثال پیسٹ کریں، بہتر ہے کہ تمام اختیاری فیلڈز بھی بھری ہوں۔
  2. روٹ ٹائپ کا نام دیں اور منتخب کریں کہ مددگار کوڈ بھی چاہیے یا صرف ٹائپس۔
  3. بنایا گیا Haskell کوڈ اپنے پروجیکٹ میں کاپی کریں۔

XML سے Haskell کے بارے میں

بڑے XML ڈیٹا کے لیے ماڈل کلاسز ہاتھ سے لکھنا اکتا دینے والا کام ہے، اور اسی دوران ٹائپنگ کی غلطیاں ہو جاتی ہیں۔ یہاں مثال پیسٹ کریں۔ جنریٹر ساخت پہچان لے گا: کون سی فیلڈز موجود ہیں، کون سی آبجیکٹس یا ارے ہیں، اور ہر ویلیو کی ٹائپ کیا ہے۔ نتیجے میں Aeson کے ToJSON اور FromJSON انسٹینسز کے ساتھ ریکارڈ ٹائپس ملتی ہیں۔

XML پہلے JSON میں تبدیل کیا جاتا ہے اسی طرح ہمارے XML میں JSON کے آلے میں: صفات ایک @_ صفات کے ساتھ پیش وضاحتی اور متن کا مواد کہا جاتا ہے #text. اسی نتیجے سے Haskell ٹائپس بنائی جاتی ہیں۔ ریکارڈ فیلڈز کو ٹائپ کے نام پر مبنی سابقہ ملتا ہے، کیونکہ Haskell ایک ماڈیول میں دو ریکارڈز کو ایک جیسے فیلڈ نام استعمال کرنے نہیں دیتی۔

بنائے گئے کوڈ کا استعمال

استعمال decode مثال کے طور پر Data.Aeson سے decode text :: Maybe Root.

اختیاری فیلڈز Maybe ٹائپ استعمال کرتی ہیں۔

عام سوالات

بنایا گیا Haskell کوڈ کن لائبریریوں یا اجزا کا محتاج ہے؟

نتیجے میں Aeson کے ToJSON اور FromJSON انسٹینسز کے ساتھ ریکارڈ ٹائپس ملتی ہیں۔

میں XML کو نتائج کے ساتھ کیسے تجزیہ کروں؟

سب سے پہلے XML کو JSON میں تبدیل کریں (ہمارا XML سے JSON ٹول اسی طرح کرتا ہے) ، پھر استعمال کریں decode مثال کے طور پر Data.Aeson سے decode text :: Maybe Root.

اختیاری اور غائب فیلڈز کیسے سنبھالی جاتی ہیں؟

اختیاری فیلڈز Maybe ٹائپ استعمال کرتی ہیں۔

کیا جنریٹر ایک سے زیادہ ریکارڈ دیکھتا ہے؟

جنریٹر صرف وہی جانتا ہے جو آپ کی مثال میں موجود ہے۔ جو فیلڈ مثال میں موجود نہیں، وہ بنائی گئی ٹائپس میں بھی نہیں آئے گی۔ اگر کسی ویلیو کی قیمت null ہو تو اس کی ٹائپ معلوم نہیں ہو سکتی۔ ایسی مثال پیسٹ کریں جس میں زیادہ سے زیادہ فیلڈز بھری ہوں، یا کئی مختلف ریکارڈز والا ارے پیسٹ کریں۔

کیا میرا XML ڈیٹا سرور پر بھیجا جاتا ہے؟

نہیں۔ پہلی بار استعمال پر تقریباً 1 MB کا جنریٹر براؤزر میں ڈاؤن لوڈ ہوتا ہے۔ اس کے بعد سب کچھ مقامی طور پر چلتا ہے۔

ڈیٹا سے کلاسز میں مزید ٹولز

تمام ٹولز →