XML چیست؟
زبان نشانهگذاری توسعهپذیر (XML) به شما امکان میدهد دادهها را به روشی قابل اشتراک تعریف و ذخیره کنید. XML از تبادل اطلاعات بین سیستمهای کامپیوتری مانند وبسایتها، پایگاههای داده و برنامههای کاربردی شخص ثالث پشتیبانی میکند. قوانین از پیش تعریفشده، انتقال دادهها به عنوان فایلهای XML را از طریق هر شبکه آسان میکند، زیرا گیرنده میتواند از این قوانین برای خواندن دقیق و کارآمد دادهها استفاده کند.
چرا XML مهم است؟
زبان نشانهگذاری توسعهپذیر (XML) یک زبان نشانهگذاری است که قوانینی را برای تعریف هر دادهای ارائه میدهد. برخلاف سایر زبانهای برنامهنویسی، XML نمیتواند به تنهایی عملیات محاسباتی را انجام دهد. در عوض، هر زبان برنامهنویسی یا نرمافزاری میتواند برای مدیریت دادههای ساختاریافته پیادهسازی شود.
به عنوان مثال، یک سند متنی با نظرات روی آن را در نظر بگیرید. نظرات ممکن است پیشنهادات زیر را ارائه دهند:
- عنوان را ضخیم کنید
- این جمله یک سربرگ است
- این کلمه نویسنده است
چنین نظراتی قابلیت استفاده از سند را بدون تأثیر بر محتوای آن بهبود میبخشد. به طور مشابه، XML از نمادهای نشانهگذاری برای ارائه اطلاعات بیشتر در مورد هر دادهای استفاده میکند. نرمافزارهای دیگر، مانند مرورگرها و برنامههای کاربردی پردازش داده، از این اطلاعات برای پردازش کارآمدتر دادههای ساختاریافته استفاده میکنند.
برچسبهای XML
شما از نمادهای نشانهگذاری، که در XML برچسب نامیده میشوند، برای تعریف دادهها استفاده میکنید. به عنوان مثال، برای نمایش دادههای یک کتابفروشی، میتوانید برچسبهایی مانند <book>، <title> و <author> ایجاد کنید. سند XML شما برای یک کتاب واحد محتوایی مانند این خواهد داشت:
XML
<book>
<title> یادگیری آمازون وب سرویس </title>
<author> مارک ویلکینز </author>
</book>
برچسبها کدگذاری پیچیده داده را برای ادغام جریانهای اطلاعات در سیستمهای مختلف به ارمغان میآورند.
مزایای استفاده از XML چیست؟
- پشتیبانی از تراکنشهای بین کسبوکارها:
- وقتی شرکتی کالا یا خدماتی را به شرکت دیگری میفروشد، دو کسبوکار باید اطلاعاتی مانند هزینه، مشخصات و برنامههای تحویل را تبادل کنند. با زبان نشانهگذاری توسعهپذیر (XML)، آنها میتوانند تمام اطلاعات لازم را به صورت الکترونیکی به اشتراک بگذارند و معاملات پیچیده را به صورت خودکار، بدون دخالت انسان، نهایی کنند.
- حفظ یکپارچگی دادهها:
- XML به شما امکان میدهد دادهها را همراه با توضیحات داده منتقل کنید و از از دست رفتن یکپارچگی دادهها جلوگیری کنید. میتوانید از این اطلاعات توصیفی برای انجام موارد زیر استفاده کنید:
- تأیید صحت دادهها
- سفارشیسازی خودکار ارائه دادهها برای کاربران مختلف
- ذخیره مداوم دادهها در چندین پلتفرم
- XML به شما امکان میدهد دادهها را همراه با توضیحات داده منتقل کنید و از از دست رفتن یکپارچگی دادهها جلوگیری کنید. میتوانید از این اطلاعات توصیفی برای انجام موارد زیر استفاده کنید:
- بهبود کارایی جستجو:
- برنامههای کامپیوتری مانند موتورهای جستجو میتوانند فایلهای XML را کارآمدتر و دقیقتر از سایر انواع اسناد مرتبسازی و دستهبندی کنند. به عنوان مثال، کلمه “mark” میتواند هم اسم و هم فعل باشد. بر اساس برچسبهای XML، موتورهای جستجو میتوانند “mark” را به طور دقیق برای نتایج جستجوی مرتبط دستهبندی کنند. بنابراین، XML به رایانهها کمک میکند تا زبان طبیعی را کارآمدتر تفسیر کنند.
- طراحی برنامههای کاربردی انعطافپذیر:
- با XML، میتوانید به راحتی طراحی برنامه کاربردی خود را ارتقا یا اصلاح کنید. بسیاری از فناوریها، به ویژه فناوریهای جدیدتر، با پشتیبانی داخلی XML ارائه میشوند. آنها میتوانند به طور خودکار فایلهای داده XML را بخوانند و پردازش کنند تا بتوانید بدون نیاز به قالببندی مجدد کل پایگاه داده خود، تغییراتی ایجاد کنید.
کاربردهای XML چیست؟
زبان نشانهگذاری توسعهپذیر (XML) فناوری زیربنایی هزاران برنامه کاربردی، از ابزارهای بهرهوری رایج مانند پردازش کلمه گرفته تا نرمافزار انتشار کتاب و حتی سیستمهای پیکربندی پیچیده برنامه کاربردی است.
- انتقال داده:
- میتوانید از XML برای انتقال دادهها بین دو سیستم که دادههای مشابه را در قالبهای مختلف ذخیره میکنند، استفاده کنید. به عنوان مثال، وبسایت شما تاریخها را در قالب MM/DD/YYYY ذخیره میکند، اما سیستم حسابداری شما تاریخها را در قالب DD/MM/YYYY ذخیره میکند. میتوانید دادهها را با استفاده از XML از وبسایت به سیستم حسابداری منتقل کنید. توسعهدهندگان شما میتوانند کدی بنویسند که به طور خودکار موارد زیر را تبدیل میکند:
- دادههای وبسایت به فرمت XML
- دادههای XML به دادههای سیستم حسابداری
- دادههای سیستم حسابداری به فرمت XML
- دادههای XML به دادههای وبسایت
- میتوانید از XML برای انتقال دادهها بین دو سیستم که دادههای مشابه را در قالبهای مختلف ذخیره میکنند، استفاده کنید. به عنوان مثال، وبسایت شما تاریخها را در قالب MM/DD/YYYY ذخیره میکند، اما سیستم حسابداری شما تاریخها را در قالب DD/MM/YYYY ذخیره میکند. میتوانید دادهها را با استفاده از XML از وبسایت به سیستم حسابداری منتقل کنید. توسعهدهندگان شما میتوانند کدی بنویسند که به طور خودکار موارد زیر را تبدیل میکند:
- برنامههای کاربردی وب:
- XML به دادههایی که در صفحات وب میبینید ساختار میدهد. سایر فناوریهای وبسایت، مانند HTML، با XML کار میکنند تا دادههای سازگار و مرتبط را به بازدیدکنندگان وبسایت ارائه دهند. به عنوان مثال، یک وبسایت تجارت الکترونیک را در نظر بگیرید که لباس میفروشد. به جای نمایش همه لباسها به همه بازدیدکنندگان، وبسایت از XML برای ایجاد صفحات وب سفارشی بر اساس ترجیحات کاربر استفاده میکند. محصولات برندهای خاص را با فیلتر کردن برچسب <brand> نشان میدهد.
- مستندسازی:
- میتوانید از XML برای تعیین اطلاعات ساختاری هر سند فنی استفاده کنید. سپس برنامههای دیگر ساختار سند را پردازش میکنند تا آن را به صورت انعطافپذیر ارائه دهند. به عنوان مثال، برچسبهای XML برای یک پاراگراف، یک مورد در یک لیست شمارهدار و یک عنوان وجود دارد. با استفاده از این برچسبها، انواع دیگر نرمافزار به طور خودکار سند را برای استفادههایی مانند چاپ و انتشار صفحه وب آماده میکنند.
- نوع داده:
- بسیاری از زبانهای برنامهنویسی از XML به عنوان یک نوع داده پشتیبانی میکنند. با این پشتیبانی، میتوانید به راحتی برنامههایی را به زبانهای دیگر بنویسید که مستقیماً با فایلهای XML کار میکنند.
اجزای یک فایل XML چیست؟
یک فایل زبان نشانهگذاری توسعهپذیر (XML) یک سند مبتنی بر متن است که میتوانید آن را با پسوند .xml ذخیره کنید. میتوانید XML را مشابه سایر فایلهای متنی بنویسید. برای ایجاد یا ویرایش یک فایل XML، میتوانید از هر یک از موارد زیر استفاده کنید:
- ویرایشگرهای متن مانند Notepad یا Notepad++
- ویرایشگرهای XML آنلاین
- مرورگرهای وب
هر فایل XML شامل اجزای زیر است.
- سند XML:
- برچسبهای <xml></xml> برای علامتگذاری شروع و پایان یک فایل XML استفاده میشوند. محتوای داخل این برچسبها نیز سند XML نامیده میشود. این اولین برچسبی است که هر نرمافزاری برای پردازش کد XML به دنبال آن میگردد.
- اعلامیه XML:
- یک سند XML با اطلاعاتی در مورد خود XML شروع میشود. به عنوان مثال، ممکن است نسخه XML را که از آن پیروی میکند، ذکر کند. این افتتاحیه اعلامیه XML نامیده میشود. در اینجا یک مثال آورده شده است.
XML
<?xml version="1.0" encoding="UTF-8"?>
- عناصر XML:
- تمام برچسبهای دیگری که در یک سند XML ایجاد میکنید، عناصر XML نامیده میشوند. عناصر XML میتوانند شامل این ویژگیها باشند:
- متن
- ویژگیها
- عناصر دیگر
- همه اسناد XML با یک برچسب اصلی شروع میشوند که عنصر ریشه نامیده میشود.
- به عنوان مثال، فایل XML زیر را در نظر بگیرید.
- تمام برچسبهای دیگری که در یک سند XML ایجاد میکنید، عناصر XML نامیده میشوند. عناصر XML میتوانند شامل این ویژگیها باشند:
XML
<InvitationList>
<family>
<aunt>
<name>کریستین</name>
<name>استفانی</name>
</aunt>
</family>
</InvitationList>
<InvitationList> عنصر ریشه است؛ family و aunt نام عناصر دیگر هستند.
- ویژگیهای XML:
- عناصر XML میتوانند توصیفگرهای دیگری به نام ویژگی داشته باشند. میتوانید نام ویژگیهای خود را تعریف کنید و مقادیر ویژگی را در داخل علامت نقل قول بنویسید، همانطور که در زیر نشان داده شده است.
XML
<person age=“۲۲”>
- محتوای XML:
- دادههای موجود در فایلهای XML نیز محتوای XML نامیده میشوند. به عنوان مثال، در فایل XML، ممکن است دادههایی مانند این ببینید.
XML
<friend>
<name>چارلی</name>
<name>استیو</name>
</friend>
مقادیر داده چارلی و استیو محتوا هستند.
شمای XML چیست؟
یک شمای زبان نشانهگذاری توسعهپذیر (XML) سندی است که برخی قوانین یا محدودیتها را در ساختار یک فایل XML توصیف میکند. میتوانید این محدودیتها را به روشهای مختلفی مانند این موارد توصیف کنید:
- قوانین گرامری برای تعیین ترتیب عناصر
- شرایط بله یا خیر که محتوا باید برآورده کند
- انواع داده برای محتوا در فایلهای XML
- محدودیتهایی برای یکپارچگی دادهها
به عنوان مثال، یک شمای XML برای کتابفروشیها ممکن است محدودیتهایی مانند این موارد را اعمال کند:
- یک عنصر کتاب دارای ویژگیهای عنوان و نویسنده خواهد بود.
- عنصر کتاب در زیر یک عنصر دسته با نام ویژگی تودرتو خواهد بود.
- قیمت یک کتاب یک عنصر جداگانه خواهد بود که در زیر کتاب تودرتو قرار میگیرد.
برای برآورده کردن این محدودیتها، فایل XML را همانطور که در زیر نشان داده شده است، مینویسیم.
XML
<category name=“Technology”>
<book title=“Learning Amazon Web Services”, author=“Mark Wilkins”>
<price>$۲۰</price>
</book>
</category>
شماهای XML سازگاری را در نحوه ایجاد و استفاده از فایلهای XML توسط برنامههای کاربردی نرمافزاری مختلف اعمال میکنند. برخی از صنایع شماهای XML را پیادهسازی میکنند که مختص عملیات آنها هستند تا پیچیدگی نوشتن کد XML برای انتقال دادههای بین کسبوکارها را کاهش دهند. به عنوان مثال، گرافیکهای برداری مقیاسپذیر (SVG) یک مشخصات XML برای توصیف دادههای مربوط به گرافیکهای رایانهای است. توسعهدهندگان نرمافزار فایلهای XML را مینویسند تا مشخصات صنعتی را برآورده کنند.
تجزیهکننده XML چیست؟
یک تجزیهکننده زبان نشانهگذاری توسعهپذیر (XML) نرمافزاری است که میتواند اسناد XML را پردازش یا بخواند تا دادههای داخل آنها را استخراج کند. تجزیهکنندههای XML همچنین نحو یا قوانین فایل XML را بررسی میکنند و میتوانند آن را در برابر یک شمای XML خاص اعتبارسنجی کنند. از آنجایی که XML یک زبان نشانهگذاری سختگیرانه است، در صورت وجود هرگونه خطای اعتبارسنجی یا نحو، تجزیهکنندهها فایل را پردازش نمیکنند. به عنوان مثال، اگر هر یک از این شرایط درست باشد، تجزیهکننده XML خطا میدهد:
- یک برچسب بسته یا برچسب پایان گم شده است
- مقادیر ویژگی علامت نقل قول ندارند
- یک شرط شمایی برآورده نشده است
برنامههای کاربردی نرمافزاری از تجزیهکنندههای XML برای تبدیل فایلهای XML به انواع داده بومی استفاده میکنند. بنابراین میتوانند بدون نیاز به ورود به جزئیات خود XML، روی منطق برنامه کاربردی تمرکز کنند.
تفاوت XML با HTML چیست؟
زبان نشانهگذاری فرامتن (HTML) زبانی است که در اکثر صفحات وب استفاده میشود. یک مرورگر وب اسناد HTML را پردازش میکند و آنها را به عنوان یک صفحه چندرسانهای نمایش میدهد. کنسرسیوم وب جهانگستر (W3C) جامعه بینالمللی است که پروتکلها و دستورالعملها را برای اطمینان از رشد بلندمدت وب توسعه میدهد. W3C استانداردهای HTML و زبان نشانهگذاری توسعهپذیر (XML) را ایجاد کرد که توسعهدهندگان وبسایت برای سازگاری و کیفیت پیادهسازی میکنند.
XML در مقابل HTML
در حالی که فایلهای HTML و XML بسیار مشابه به نظر میرسند، تفاوتهای کلیدی وجود دارد.
- هدف:
- هدف HTML ارائه و نمایش دادهها است. با این حال، XML دادهها را ذخیره و منتقل میکند.
- برچسبها:
- HTML دارای برچسبهای از پیش تعریف شده است، اما کاربران میتوانند برچسبهای خود را در XML ایجاد و تعریف کنند.
- قوانین نحو:
- تفاوتهای جزئی اما مهمی بین نحو HTML و XML وجود دارد. به عنوان مثال، XML به حروف بزرگ و کوچک حساس است، اما HTML اینطور نیست. اگر برچسب را به صورت <Book> به جای <book> بنویسید، تجزیهکنندههای XML خطا میدهند.