زبان XML مخفف عبارت Extensible Markup Language است که به معنای زبان نشانه گذاری قابل توسعه است.
زبان XML ایکس ام ال
XML جایگزینی برای HTML نیست.
XML به گونه ای طراحی شده است که خود توصیفی باشد.
XML برای انتقال داده طراحی شده است نه برای نمایش داده.
تگ های XML از پیش تعریف نشده اند. شما باید برچسب های خود را تعریف کنید.
XML مستقل از پلتفرم و مستقل از زبان است.
یش نیاز
قبل از شروع یادگیری xml، باید اصول HTML و جاوا اسکریپت را بدانید.
چرا xml
مستقل از پلتفرم و مستقل از زبان : مزیت اصلی xml این است که می توانید از آن برای گرفتن داده ها از برنامه ای مانند Microsoft SQL استفاده کنید، آن را به XML تبدیل کنید و سپس آن XML را با برنامه ها و پلتفرم های دیگر به اشتراک بگذارید.
شما می توانید بین دو پلتفرم ارتباط برقرار کنید که این کار در حالت معمول بسیار دشوار هستند.
اصلیترین چیزی که XML را واقعاً قدرتمند میکند، استقبال فراگیر از آن است. بسیاری از شرکت ها از رابط های XML برای پایگاه های داده، برنامه نویسی، برنامه های اداری تلفن های همراه و موارد دیگر استفاده می کنند. این به دلیل ویژگی مستقل از پلت فرم آن است
ویژگی ها و مزایای XML
XML به طور گسترده در عصر توسعه وب استفاده می شود، همچنین برای ساده سازی ذخیره سازی داده ها و به اشتراک گذاری داده ها استفاده می شود.
ویژگی ها یا مزایای اصلی XML در زیر آورده شده است.
۱ – XML داده ها را از HTML جدا می کند
اگر نیاز به نمایش داده های پویا در سند HTML خود دارید، هر بار که داده ها تغییر می کنند، برای ویرایش HTML کار زیادی لازم است.
با XML، داده ها را می توان در فایل های XML جداگانه ذخیره کرد.
به این ترتیب می توانید روی استفاده از HTML/CSS برای نمایش و چیدمان تمرکز کنید و مطمئن باشید که تغییرات در داده های زیربنایی نیازی به تغییر در HTML ندارد.
با چند خط کد جاوا اسکریپت، می توانید یک فایل XML خارجی را بخوانید و محتوای داده های صفحه وب خود را به روز کنید.
۲ – XML اشتراک گذاری داده ها را ساده می کند
در دنیای واقعی، سیستم های کامپیوتری و پایگاه های داده حاوی داده ها در قالب های ناسازگار هستند.
داده های XML در قالب متن ساده ذخیره می شوند. این روشی مستقل از نرم افزار و سخت افزار برای ذخیره سازی داده ها فراهم می کند.
این امر ایجاد داده هایی را که می توانند توسط برنامه های مختلف به اشتراک گذاشته شوند بسیار آسان تر می کند.
۳ – XML انتقال داده ها را ساده می کند
زمانی سخت ترین چالشهای توسعهدهندگان، تبادل داده بین سیستمهای ناسازگار از طریق اینترنت بود
تبادل داده به عنوان XML این پیچیدگی را بسیار کاهش می دهد، زیرا داده ها می توانند توسط برنامه های مختلف ناسازگار خوانده شوند.
۴ – XML تغییر پلت فرم را ساده می کند
ارتقاء به سیستم های جدید (پلتفرم های سخت افزاری یا نرم افزاری)، همیشه زمان بر است. حجم زیادی از داده ها باید تبدیل شوند و داده های ناسازگار اغلب از بین می روند.
داده های XML در قالب متن ذخیره می شوند. این کار گسترش یا ارتقا به سیستم عامل های جدید، برنامه های کاربردی جدید یا مرورگرهای جدید را بدون از دست دادن داده ها آسان تر می کند.
۵ – XML در دسترس بودن داده ها را افزایش می دهد
برنامه های مختلف می توانند به داده های شما دسترسی داشته باشند، نه تنها در صفحات HTML، بلکه از منابع داده XML.
با XML، دادههای شما میتواند برای انواع «ماشینهای خواندن» (رایانههای دستی، دستگاههای صوتی، فیدهای خبری و غیره) در دسترس باشد و آنها را برای افراد نابینا یا افراد دارای معلولیت بیشتر در دسترس قرار دهد.
۶ – XML می تواند برای ایجاد زبان های جدید اینترنتی استفاده شود
بسیاری از زبان های جدید اینترنتی با XML ایجاد می شوند.
در اینجا چند نمونه آورده شده است:
XHTML
WSDL برای توصیف خدمات وب موجود
WAP و WML به عنوان زبان نشانه گذاری برای دستگاه های دستی
زبان های RSS برای فیدهای خبری
RDF و OWL برای توصیف منابع و هستی شناسی
SMIL برای توصیف چند رسانه ای برای وب
تفاوت های HTML و XML
تفاوت های زیادی بین HTML (زبان نشانه گذاری هایپر متن) و XML (زبان نشانه گذاری قابل گسترش) وجود دارد.
HTML برای نمایش داده ها استفاده می شود و بر نحوه نمایش داده ها تمرکز می کند.
XML ابزاری مستقل از نرم افزار و سخت افزار است که برای انتقال و ذخیره داده ها استفاده می شود. روی دادهها تمرکز میکند.
HTML خود یک زبان نشانه گذاری است.
XML چارچوبی برای تعریف زبان های نشانه گذاری فراهم می کند.
HTML به حروف بزرگ و کوچک حساس نیست.
XML به حروف کوچک و بزرگ حساس است.
HTML یک زبان ارائه محتوا است.
XML نه یک زبان ارائه است و نه یک زبان برنامه نویسی.
HTML برچسب های از پیش تعریف شده خود را دارد.
در XML شما می توانید برچسب ها را بر اساس نیاز خود تعریف کنید.
در HTML نیازی به استفاده از تگ بسته شدن نیست.
XML استفاده از تگ بسته را اجباری می کند.
HTML ایستا است زیرا برای نمایش داده ها استفاده می شود.
XML پویا است زیرا برای انتقال داده ها استفاده می شود
HTML فضاهای خالی را حفظ نمی کند.
XML فضاهای خالی را حفظ می کند.
مثال هایی از XML
اسناد XML ساختاری سلسله مراتبی ایجاد می کنند که شبیه یک درخت است، بنابراین به درخت XML معروف است که از “ریشه” شروع می شود و به “برگ” منشعب می شود.
نمونه ای از سند XML
اسناد XML از یک نحو ساده و خود توصیفی استفاده می کنند:
خط اول اعلان XML است. این نسخه XML (1.0) و رمزگذاری مورد استفاده ISO-8859-1 است.
خط بعدی عنصر اصلی سند را توصیف می کند (مانند گفتن: “این سند یک یادداشت است”)
4 خط بعدی ۴ عنصر که فرزند هایی برایی ریشه هستند (به، از، عنوان و بدنه) را توصیف می کند.
و در نهایت خط آخر انتهای عنصر ریشه را مشخص می کند.
اسناد XML باید حاوی یک عنصر ریشه باشند. این عنصر «والد» همه عناصر دیگر است.
عناصر در یک سند XML یک درخت سند را تشکیل می دهند. درخت از ریشه شروع می شود و تا پایین ترین سطح درخت منشعب می شود.
همه عناصر می توانند عناصر فرعی (عناصر فرزند) داشته باشند.
اصطلاحات والدین، فرزند و خواهر و برادر برای توصیف روابط بین عناصر استفاده می شود. عناصر والدین دارای فرزند هستند. به کودکان هم سطح خواهر و برادر گفته می شود.
همه عناصر می توانند محتوای متنی و ویژگی هایی داشته باشند (درست مانند HTML).
فناوری های مرتبط با XML
در اینجا ما به فناوری های مرتبط با XML اشاره کرده ایم.
شماره: ۱
عنوان: XHTML
معنی: Extensible html
توضیح: این یک نسخه واضح تر و دقیق تر از XML است. این زبان به خانواده زبان های نشانه گذاری XML تعلق دارد. برای توسعه بیشتر html و افزایش قابلیت همکاری با سایر داده ها ایجاد شده است. XHTML همان HTML است که شبیه XML نوشته شده است و سخت گیرانه تر از HTML است. المان ها باید به طور صحیح و به صورت تو در تو قرار بگیرند و همیشه بسته شوند و باید با حروف کوچک باشند.
شماره: ۲
عنوان: XML DOM
معنی: XML document object model
توضیح: این یک مدل سند استاندارد است که برای دسترسی و دستکاری XML استفاده می شود. این فایل XML را در ساختار درختی تعریف می کند. XML DOM یک روش استاندارد برای دسترسی به اجزای یک فایل XML و همچنین خواندن و یا تغییر آنها فراهم میکند. مدل XML DOM فایل XML را به شکل نمودار درختی تبدیل می کند به صورتی که PARENT مانند شاخه های درخت و فرزندان آن ها برگ ها می باشد. یعنی به جای ثبت صفت برای یک شاخه، صفت را به عنوان یک فرزند ثبت میکنیم.
شماره: ۳
عنوان: XSL
معنی: Extensible style sheet language
توضیح: برای قالب بندی XML به صفحه، کاغذ و غیره استفاده می شود. یک XSL شامل دستورالعملهایی برای شکلدهی به محتویات یک فایل XML است. نتیجهی تبدیل و پیکربندی یک سند XML به وسیله XSL، میتواند به صورت یک فایل html یا یک فایل XML دیگر ثبت شود.
شماره: ۴
عنوان: XQuery
معنی: XML query language
توضیح: این یک زبان مبتنی بر XML است که برای پرس و جو از داده های مبتنی بر XML استفاده می شود. XQuery زبانی است که به برنامهنویسان اجازه کوئری زدن روی اطلاعات موجود در یک ساختار xml را میدهد. با استفاده از این زبان میتوانید عناصر (element) و خصوصیات (attribute) آن در ساختار xml را شناسایی کرده و آنها را استخراج نمایید
شماره: ۵
عنوان: DTD
معنی: Document type definition
توضیح: این استانداردی است که برای تعریف عناصر قانونی در یک سند XML استفاده می شودو مشخص کننده ساختار و المان های مجاز و خصوصیات یک سند XML است و می بایست درون <!Doctype> آورده شود. با استفاده از DTD گروه های مستقل مردم می توانند با توافق در استانداردها با هم تبادل داده نمایند. یک اپلیکیشن با استفاده از DTD می تواند بررسی نماید که داده های XML معتبر است یا خیر؟
شماره: ۶
عنوان: XSD
معنی: XML schema definition
توضیح: این یک جایگزین مبتنی بر XML برای dtd است. برای توصیف ساختار یک سند XML استفاده می شود و امکان تعریف عناصر با ارزش NULL ، و یا فاقد ارزش ، در XSD وجود دارد .
شماره: ۷
عنوان: XLink
معنی: XML linking language
توضیح: xlink مخفف زبان پیوند XML است. این زبانی است برای ایجاد لینک (لینک های خارجی و داخلی) در اسناد XML. هر عنصری درون یک سند XML میتواند مثل یک لینک عمل کند . XLink از لینکهای ساده (ماننده HTML) و لینکهای پیشرفته (برای لینک کردن چندین منبع با یکدیگر) پشتیبانی میکند . توسط XLink، لینکها میتوانند خارج از فایلی که به آن لینک شده تعریف شوند
شماره: ۸
عنوان: XPointer
معنی: XML pointer language
توضیح: این سیستمی برای آدرس دهی اجزای رسانه اینترنتی مبتنی بر XML است. این اجازه می دهد تا لینک های xlink به بخش های خاص تر در سند XML اشاره کنند. XPointer از عبارات XPath برای جابهجایی بین اسناد XML استفاده میکند
شماره: ۹
عنوان: SOAP
معنی: Simple object access protocol
توضیح: این یک پروتکل دسترسی ساده به شی است. این پروتکل مبتنی بر XML است که به برنامه ها اجازه می دهد اطلاعات را از طریق http تبادل کنند. به زبان ساده می توان گفت که پروتکلی است که برای دسترسی به سرویس های وب استفاده می شود. اطلاعات در SOAP به صورت پیام (Message) و از طریق پروتکل های موجود در اینترنت مانند HTTP منتقل میشود.
شماره: ۱۰
عنوان: WSDL
معنی: web services description languages
توضیح: یک زبان بر مبنای XML است که برای تشریح کردن و اعلان نحوه دسترسی به یک وب سرویس به کار می رود . WSDL به معنای زبان تشریح و توضیح وب سرویس ها است.
اسناد WSDL به صورت یک فایل XML نوشته شده و توضیحاتی راجع به یک وب سرویس از جمله مکان آن ، نحوه دسترسی ، متدها و توابعی که اجرا خواهد کرد و …. را می د هد .
شماره: ۱۱
عنوان: RDF
معنی: Resource description framework
توضیح: RDF یک زبان مبتنی بر XML برای توصیف منابع وب است. این یک مدل استاندارد برای تبادل داده در وب است. برای توصیف عنوان، نویسنده، محتوا و اطلاعات حق چاپ یک صفحه وب استفاده می شود. به زبان ساده، RDF مدلی است مبتنی بر گراف که از آن به منظور توصیف منابع اینترنتی و نیز چگونگی ارتباط این منابع با یکدیگر استفاده به عمل میآید.
شماره: ۱۲
عنوان: SVG
معنی: Scalable vector graphics
توضیح: این یک فرمت تصویر برداری مبتنی بر XML برای تصاویر دو بعدی است که می توان به فارسی آن را ( نگارهسازی برداری مقیاسپذیر ) ترجمه کرد . SVG گرافیک را با فرمت XML تعریف می کند و از انیمیشن نیز پشتیبانی می کند. تصاویر تعریف شده به کمک گرافیک برداری، از خطوط و منحنیهایی به نام بردار تشکیل شدهاند که به صورت ریاضی تعریف میشوند.
شماره: ۱۳
عنوان: RSS
معنی: Really simple syndication
توضیح: RSS یک فرمت مبتنی بر XML برای مدیریت محتوای وب است. برای مرور سریع اخبار و به روز رسانی استفاده می شود و در عمل، روشی برای توزیع آسان فهرستی از عناوین، اعلان خبرهای جدید و بهروزرسانیها، و گاهی محتوا به گروه گستردهای از مردم محسوب میشود. اساساً RSS چیز پیچیدهای نیست، اما با تمام سادگیاش نحوه تعامل کاربران با محتوای اینترنتی را دگرگون کرده است.