JSON به مبدل XML
JSON را فورا به XML تبدیل کنید. از تگ های ریشه سفارشی و تورفتگی برای خروجی تمیز و ساختار یافته پشتیبانی می کند.
JSON را فورا به XML تبدیل کنید. از تگ های ریشه سفارشی و تورفتگی برای خروجی تمیز و ساختار یافته پشتیبانی می کند.
تبدیل JSON به XML برعکس جهت رایجتر XML به JSON است. تبدیل از نظر روحی ساده است - هر شی JSON را به یک عنصر XML، هر کلید را به یک برچسب فرزند، هر مقدار را به متن عنصر تبدیل کنید - اما XML قوانین ساختاری را تحمیل می کند که JSON ندارد. کلیدهای دارای کاراکترهای خاص نمی توانند به نام عناصر تبدیل شوند. آرایه ها به یک نمایش ثابت نیاز دارند. مقادیری که اشیا هستند به ساختار تودرتو خود نیاز دارند.
این مبدل از قراردادی نزدیک به آنچه بیشتر ابزارهای XML به JSON پیروی میکنند استفاده میکند: کلیدهایی که با پیشوند @ در عنصر والد قرار میگیرند. کلیدی به نام #text محتوای متنی عنصر را تامین می کند. آرایه ها عناصر تکراری را با همان نام تولید می کنند. اگر در ابتدا JSON را از XML تولید کرده باشید، پیروی از این قرارداد، رفت و برگشت را ثابت نگه می دارد.
XML خروجی با ساخت و ساز به خوبی شکل می گیرد: هر عنصر به درستی بسته شده است، مقادیر مشخصه از نقل قول خارج می شوند، و محتوای متن برای کاراکترهای خاص XML (&، <، >) فرار می کند. نتیجه در هر تجزیهکننده XML، اعتبارسنجی یا ابزاری که XML را مصرف میکند، کاملاً باز میشود.
بسیاری از سیستمهای مستقر هنوز انتظار XML را دارند، حتی زمانی که ورودیهای آنها از خطوط لوله مدرن تولید JSON باشد. سرویسهای SOAP، ادغامهای سازمانی، ناشران RSS، دادههای ارسالی دولتی، و دنبالهای طولانی از نرمافزارهای قدیمی XML را میپذیرند و JSON را رد میکنند. این تبدیل تولیدکنندگان مدرن را به مصرف کنندگان قدیمی پل می کند.
XML همچنین از ویژگیهایی پشتیبانی میکند که JSON به صورت بومی ندارد - فضاهای نام، طرحوارهها (XSD)، دستورالعملهای پردازش، و سنت قوی اعتبارسنجی رسمی. برای سیستمهایی که این ویژگیها اهمیت دارند (امضای XML، تبادل دادههای معتبر رسمی، محدودیتهای طرحواره پیچیده)، تولید خروجی XML انتخاب درستی است.
جایگذاری JSON، XML دریافت کنید.
مبدل مقدار JSON را به صورت بازگشتی دنبال می کند. اشیا به عناصر تبدیل می شوند. برای هر کلید در شی، یک پیشوند @ به این معنی است که کلید به یک ویژگی در عنصر والد تبدیل میشود، متن # محتوای متنی عنصر را تامین میکند، و کلیدهای معمولی به عناصر فرزند تبدیل میشوند که مقدار آن به همان تبدیل بازگشته است.
آرایه ها به عناصر خواهر و برادر تکراری تبدیل می شوند. آرایه ای در زیر آیتم های کلیدی در JSON یک عنصر <items> را در هر آیتم آرایه در والد تولید می کند. این با نحوه نمایش مبدلهای XML به JSON مجموعههای چند عنصری مطابقت دارد.
نامهای عناصری که در XML نامعتبر هستند (شامل فاصلهها، نویسههای خاص، یا با اعداد شروع میشوند) پاکسازی میشوند: فاصلهها به زیرخط تبدیل میشوند، نویسههای نامعتبر حذف میشوند و نامهای پیشرو رقم پیشوند میشوند. مقادیر مشخصه و متن به صورت XML-Escape شده (& تبدیل به &، < تبدیل به < و غیره) می شود تا خروجی به خوبی شکل بگیرد.