عدهای تصور میکنند که XML نسخه پیشرفته زبان HTML است که آن را کامل میکند. این کهXML به توسعه برنامههای تحت وب کمک زیادی کرده است و میتواند کاملکننده زبانهای تحت وب باشد درست است، اما اینکه بتوان آن را جایگزینی برای HTML تصور کرد اشتباه است. در واقع به دلیل آنکه این دو برای اهداف متفاوتی طراحی شدهاند باید در کنار هم استفاده و به کار گرفته شوند و هیچیک نمیتواند جایگزین دیگری شود. در واقع HTML و XML با هم دنیای وب را متحول کردهاند و روش دسترسی به اطلاعات را تغییر دادهاند.
XML چیست؟
این کلمه بر گرفته از حروف عبارت language extensilble markup و به معنای زبان نشانهگذاری قابل توسعه است. بسیاری از فناوریهای امروزی از قبیل فیدها، سرویسهای وب، گرافیک برداری (SVG) ، RFD و ... بدون وجودXML قابل استفاده و پیادهسازی نخواهند بود و با استفاده از قدرت این زبان، وجود خود را اعلام کردهاند.
XML زبانی مشابهHTML نیست. همچنین یک زبان برنامهنویسی هم نمیتواند باشد. این زبان، تنها ابزاری برای نشانهگذاری اطلاعات به منظور توصیف آنهاست و هدف آن در وهله اول ساختیافته کردن اطلاعات به منظور دسترسی قانونمند به آنها در اینترنت است. این زبان متنها و دادهها را به شکلی دستهبندی و شاخصگذاری میکند که هم توسط انسان قابل درک باشد و هم برنامهها بتوانند بسادگی و به طور مستقیم از آن استفاده کنند.
ضمن اینکه هم از یونیکد پشتیبانی میکند و هم با پروتکلهای مختلف اینترنت و وب سازگار است.
اهمیتXML در خلق و نمایش انعطافپذیر و قابل گسترش دادههاست. بر خلاف اسنادHTML که در آنها از تگهای از پیش تعیین شده استفاده میکنیم در اسناد XML تمامی تگها و برچسبها را خودمان انتخاب و نامگذاری میکنیم. بنابراین تگهای متعدد و بیشماری در یک سندXML قابل تعریف و بهکارگیری است. هنگامی که یک سند توسط XMLتوصیف و بر چسبگذاری شد باید برنامهای وجود داشته باشد که بتواند از آن متن ساختیافته استفاده و آن را پردازش کند. گاهی میتوان برای این کار از نرمافزارهای از پیش طراحی شده استفاده کرد و گاهی باید نرمافزاری را که میخواهیم، خودمان طراحی کنیم.
زبان نشانهگذاری قابل توسعه
همانطور که گفتیم، XML به معنای زبان نشانهگذاری قابل توسعه است. اما خوبست که به واژههای به کار رفته در این عبارت توجه بیشتری کنیم. زبان به مجموعهای از کلمات معنیدار و با مفهومی گفته میشود که افراد از آنها برای بیان خواستههای خود استفاده میکنند. بنابراین میتوان از این مفهوم نتیجه گرفت که زبان نشانهگذاری به مجموعهای از کلمات معنیدار و با مفهوم گفته میشود که توسط شخص یا گروهی انتخاب میشود تا ساختار خاص و قانونمندی را به یک متن ببخشدHTML . نمونهای از زبان نشانهگذاری است که برای این کار از تگها استفاده میکند. افرادی که از این زبان استفاده کردهاند به خوبی مفهوم تگ و نشانهگذاری را در آن لمس کردهاند.
یک زبان قابل توسعه یا بسطپذیر. به زبانی گفته میشود که مکانیزم لازم برای افزودن کلمات را، بهگونهای که توسط سایر استفادهکنندگان قابل فهم باشد، دارد. البته باید توجه داشت که در زبانهای طبیعی محاورهای بین انسانها، هرگز شاهد چنین وضعیتی نخواهیم بود. به عبارتی این امکان وجود ندارد که ما یک واژه با معنی مورد نظر خود به زبان بیفزاییم و سایر استفادهکنندگان نیز آن واژه را در همان مفهوم به کار ببرند. در واقع این کار عملی است، اما ممکن است به مدت زمان زیادی نیاز داشته باشد.
موارد کاربرد
XML یک قالب ذخیرهسازی مناسب برای دادههاست که با جود آن که ماهیت متنی دارد، میتواند حجم فایلهای آن زیاد باشد. از این زبان میتوان برای مبادله اطلاعات بین برنامههای نامتجانس بهره برد. فرض کنید برنامه مستقل تحت ویندوزی دارید که قرار است یک سری خروجی برای استفاده در وب تولید کند یا از وب، دادههایی را به عنوان ورودی گرفته و آنها را پردازش کند. برای این کار میتوانند تبادل دادههای خود را با استفاده از قالب XML انجام دهند. همچنین XML امکان فعال کردن مدلی برای نمایش اطلاعات یکسان روی دستگاههای متفاوت، با اهداف و خوانندگان گوناگون را فراهم میآورد.
نرمافزارهایی که از XML استفاده میکنند، یک تحلیلگر دارند که یک سند XML را خوانده و براساس نشانههای موجود، آن را به بخشهای مختلف تقسیم کرده و در حافظه مستقر میکند تا در مراحل بعد بتوان به سادگی از آنها استفاده کرد. کسانی که قصد توسعه برنامههای تحت وب را دارند شاید در مراحل پیشرفتهتر، بهکارگیری XML را اجتنابناپذیر احساس کنند. در حقیقت به دلیل آن که XML آمده است تا کاستیهای HTML را جبران کند، نه میتواند جایگزین HTML شود و نه میتوان استفاده از آن را نادیده گرفت. بنابراین باید فراگیری این زبان را به عنوان یک الزام در آینده در برنامه آتی خود گنجاند.
در تپش این هفته، ماجرای فریب و تعرض در پوشش عرفانهای دروغین و رمالی را بررسی کردیم