در بخش آموزش XML سعی می کنیم بخش عناصر کلیدی مرتبط با تکنولوژی XML را تشریح و ارتباط آنها را بیان کنیم و جایگاه هر یک از آنها برای پیاده کنندگان و طراحان برنامه های اطلاعاتی تشریح کنیم.XML تشکیل شده از Extensible ، Markup و Language به معنی زبان فرامتنی می باشد و زبان فرامتنی در اصطلاح به زبانی گفته می شود که با استفاده از یکسری علام و یا نشانه ها ، به کاربر و یا هر برنامه دیگری که اطلاعات به آن وارد می شود ، می فهماند که اطلاعات را چگونه ویرایش و یا استفاده نماید و به طور کل یک سیستم ذخیره اطلاعات است که میتوان در زمینه های مختلف تعمیمش داد.
XML زبانی است که امکان ذخیره دادههای ساختیافته را فراهم میکند. دادههای ساختیافته به دادههایی گفته میشود که قسمتهای مختلف آن قابل تفکیک و ساختاربندی باشد. تفاوت اصلي XML با HTML در اين است كه XML سعي دارد دادهها را طوري نشانهگذاري كند كه معناي آنها حفظ شود و در حاليكه HTML دادهها را طوري نشانهگذاري ميكند كه قابل نمايش براي مرورگرها باشد. در واقع تاكيد XML بر روي معناي دادههاست در حاليكه تاكيد HTML بر نمايش داده ميباشد ، همچنین به XML یک زبان قابل توسعه می گویند ، چون شما می توانید هر چه قدر که نیاز داشته باشید ، برای خود تگ های جدید ایجاد نمایید .XML در حیطه های مختلف در توسعه وب به کار می رود بنابراین تسلط بر زبان XML می تواند در طراحی سایت بسیار موثر باشد .
XML چیست ؟
برای اینکه بفهمیم XML چیست ابتدا باید بدانیم XML از چه کلماتی تشکیل شده است.ما سعی می کنیم در این مقاله از طراحی سایت ،عناصر کلیدی مرتبط با تکنولوژی XML را تشریح و ارتباط آنها را بیان کنیم و جایگاه هر یک از آنها برای پیاده کنندگان و طراحان برنامه های اطلاعاتی تشریح کنیم.زبان XML تشکیل شده از Extensible ، Markup و Language می باشد و به طور کل یک سیستم ذخیره اطلاعات است که میتوان در زمینه های مختلف تعمیمش داد.
در ابتدا باید بدانیم XML برای شرح و بیان اطلاعات طراحی شده است و HTML برای نمایش دستورات نوشته شده استفاده می شود.لازم است بدانید که XML يك Markup Language مانند HTML است.
XML زير مجموعه ساده شدهاي از زبان SGML ميباشد. SGML يك زبان عمومي و پيچيده براي نشانهگذاري دادههاست كه در دهه 80 بوجود آمد و پدر زبانهاي نشانهگذاري محسوب ميشود. از آنجایی که SGML قابلیتهای زیادی داد زبان پیچیده ای هم محسوب می شود بنابراین انجمن وب XML را جانشین آن کرد زیرا این زبان ساده تر می باشد.
مشخصات فنی XML مخفف زبان نشانه گذاری قابل گسترش (eXtensible Markup Language) است. زبان های نشانه گذاری، مانند HTML یا XML، ابزار مورد استفاده برای شناسایی ساختارهای مختلف در یک صفحه وب می باشند. این زبان ها بیانگر یک مرورگر وب و یا یک برنامه هستند: این صفحه، دسته ای از متن نخواهد بود. بلکه شامل دستورالعمل ها و اطلاعات و همچنین داده هایی است که باید بر روی صفحه ظاهر شوند. انعطاف پذیری XML آن را برای کاربرد در رابطه با زبان های برنامه نویسی دیگر ( در طراحی سایت ) و برنامه های کاربردی پایگاه داده ایده آل می کند.
در اینجا چهار دلیل اساسی برای استفاده از xml به عنوان ابزاری در طراحی وب سایت ارائه شده است:
1. سهولت: یادگیری XML آسان است زیرا شما بر طرح و ساختار صفحه کنترل دارید. برنامه نویسان در طراحی سایت ، نام عنصر مورد نظر خود را توسعه می دهند. این به این معنی است که هیچ محدودیتی برای تعداد برچسب هایی است که می تواند بر روی یک سند XML استفاده شود.
2. متن قابل خواندن: XML می تواند از طریق اکثر مرورگرها و داده استخراج شده موثر منقطع شود. از آنجا که طراحی سایت یا به عبارت صحیح تر، طراحان سایت تمام ویژگی ها، برچسب ها و ساختار عناصر را خلق می کنند، XML می تواند دارای داده های متا و برچسب های قابل تشخیص SEO در هر نقطه باشند.
3. محتوا : XML یک ظرف ذخیره سازی است. که باعث می شود محتوای صفحه از ظاهر آن با ارزش تر شود.XML بر روی داده ها تمرکز دارد نه ویژگی های چگونگی نوشتن کدها.
4. کمک به طراحی سایت
تفاوت بین XML و HTML
در این بخش از آموزش XML می خواهیم تفاوت بین XML و HTML را بیان کنیم .
XML زبانی است که امکان ذخیره دادههای ساختیافته را فراهم میکند. دادههای ساختیافته به دادههایی گفته میشود که قسمتهای مختلف آن قابل تفکیک و ساختاربندی باشد . تفاوت اصلي XML با HTML در اين است كه XML برای حمل اطلاعات طراحی شده است كه معناي آنها حفظ شود و در حاليكه HTML دادهها را طوري نشانهگذاري ميكند كه قابل نمايش براي مرورگرها باشد . HTML برای نمايش اطلاعات در طراحی سایت و XML برای شرح و حمل و نقل اطلاعات است.
درک اینکه XML یک جایگزین برای HTML نیست خیلی مهم است . در آینده گسترش وب احتمال داده میشود که XML برای شرح اطلاعات به کار خواهد رفت،درحالیکه که HTML برای فرمت و نمایش اطلاعات به کار خواهد رفت . شاید این بهترین تعریف از XML باشد: ابزاری مستقل از سخت افزار و نرم افزار برای انتقال اطلاعات است.
کاربرد XML
در این قسمت از آموزش XML ، کاربرد XML را توضیح می دهیم.
از آنجایی که از xml بیشتر برای نگهداری و یا انتقال اطلاعات استفاده می شود در این مقاله سعی شده تا با مهمترین کاربردهای زبان xml شما را آشنا کنیم.
شما با استفاده از xml می توانید اطلاعات را در یک فایل جداگانه XML ذخیره نمایید . سپس توجه و تمرکز خود را در HTML بر روی ظاهر و نحوه نمایش اطلاعات قرار داده و هر بار که اطلاعات تغییر کرد ، فایل XML را مستقل از فایل HTML آپدیت می کنید .
با حجم کمی از کدنویسی به زبان جاوا اسکریپت ، می توانید به راحتی اطلاعات فایل XML را خوانده و در فایل HTML نمایش دهید .
از دیگر کاربردهای xml اشتراک گذاری اطلاعات می باشد.
xml اطلاعات را به صورت ساذه و بدن قالب بندی خاصی در خود ذخیره می نماید که این کار باعث می شود مستقل از نرم افزار و سخت افزار عمل کند.این خاصیت باعث می شود تا اطلاعاتی را که بین سیستم های مختلف به اشتراک گذاشته می شود ، همه به صورت XML باشند ، تا به عنوان یک زبان مشترک و ساده بین آنها عمل نماید .
این زبان نیز انتقال اطلاعات را بین سیستم های مختلف ساده می کند،با توجه به این نکته کهبر روی اینترنت سرورها با سیستم عامل ها و نرم افزارهای مختلف و گاها ناسازگار وجود دارند .
انتقال اطلاعات به زبان ساده و مشترک XML ، می تواند توسط هر گیرنده یا فرستنده ای بر روی وب به راحتی خوانده و ترجمه شود
همچنین XML ارتقا به نرم افزار و سخت افزار بالاتر را راحت می کند زیرا ارتقا به نرم افزار یا سخت افزار بالاتر ، کاری بسیار وقت گیر بوده و باید مقدار زیادی اطلاعات جابه جا شوند . در این حتی ممکن است ، اطلاعات ناسازگار از بین بروند .
اما اگر اطلاعات را به زبان XML نگهداری کنیم ، فارغ از سخت افزار و نرم افزار بوده و در ارتقاء بسار راحت عمل کرده و هم اینکه به صورت متن ساده است
XML برای طراحی ابزارها و زبان های جدید به کار می رود .زبان ها و سرویس های جدیدی وجود دارد که به وسیله زبان XML و بر مبنای آن ایجاد شده اند . برخی از این سرویس ها عبارتند از:سرویس rss , سرویس wsdl و سرویس soap .
نرم افزارهای ویرایشگر XML چیست ؟
در این قسمت از مجموعه مقالات طراحی سایت ، ویرایشگرهای XML را برای شما توضیح می دهیم.
اگر خواستار کار با XML به صورت پیشرفته هستید باید با انواع ویرایشگرها در XML آشنایی پیدا کنید.می توانید فایل های XML را با نرم افزارهای واژه پرداز ساده مثل Notepad ویندوز نیز بنویسید ولی اگر بخواهید پروژه ههای عظیمی را تولید کنید می توانید از نرم افزارها به کار ببرید.
چرا که قابلیت شناسایی تگ های XML را نداشته و امکان مرتب سازی به صورت اتوماتیک در آنها وجود ندارد . همچنین نمی توانند در نوشتن کد به شما کمک کرده یا ایرادهای کدنویسی تان را به شما اعلام نماید .
از XML می توان در نوشتن برنامه های WSDL , SOAP , RSS و ... استفاده کرد . با استفاده از ویرایشگر می توان ایرادهای احتمالی کدها را شناسایی کنید و از بین برد و یا سند خود را بر مینای یک سند DTD اعتبار سنجی کنید . یک ویرایشگر کد XML باید دارای ویژگی های زیر باشد :
√ تگ های انتهایی را به صورت اتواتیک به تگ ابتدای ایجاد شده اضافه نماید .
√ شما را مجبور سازد تا کد XML معتبر و بدون ایراد بنویسید .
√ سند XML شما را بر طبق مشخصات DTD اعتبار سنجی کند .
√ بهتر است کدها را به صورت رنگی نمایش داده تا خوانایی و زیبایی کد بالاتر رود .
به عنوان یک ویرایشگر خوب می توان از برنامه ی ویژوال استودیو استفاده کرد زیرا این برنامه امکانت مناسبی را برای کار با فیل های XML را در اختیار کاربراقرار می دهد اما یک نرم افزار تخصصی XML به نام XmlSpy وجود دارد که دارای ویژگی منحصر به فرد و بالایی برای کار با XML است . ویزگی های این برنامه شامل :
- در دو نسخه 32 و 64 بیتی موجود است .
- کدهای XML را به صورت رنگی و خوانا نمایش می دهد .
- دارای قابلیت اصلاح خطاها و خطایاب اتوماتیک است .
- دارای امکان اتصال و ارسال اطلاعات به پایگاه داده است .
- از HTML 5 و CSS 3 پشتیبانی می کند .
- دارای ویرایشگرهایی مجزا برای کار با SOAP ، XQuery ، XSLT و ... است .
- دارای قالب ها و نمونه های آماده کدهای XML است .
توجه داشته باشید که این برنامه اپن سورس بوده و به راحتی می توانید آن را دانلود نمایید .
نحوه نمایش فایل های XML
در این قسمت از آموزش XML می خواهیم چگونگی نمایش فایل های xml را برای شما توضیح می دهیم .
همانطور که قبلا گفته شد فایل های xml در تمامی مرورگرها قابل اجرا می باشد . توجه داشته باشید که فایل های XML خروجی مثل فایل های HTML بر روی صفحه ندارند و فقط برای انتقال و نگهداری اطلاعات استفاده می شوند . حتما تا حالا متوجه شده اید که کدهای xml به صورت چندرنگی دیده می شود این کار برای بهتر خوانده شدن و درک بهتر کدها می باشد .همچنین علامت های ( + ) و ( - ) در کنار تگ ها و المنت هایی که دارای عنصر فرزند هستند ، قرار می گیرند ، که به وسیله آنها می توانید تگ را باز کرده و یا ببندید . مثال زیر دستوره ساده ای از xml را نشان می دهد .
<note>
<to>Hamed</to>
<from>Ali</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>
استفاده از XML در زندگی روزمره
در این قسمت ازمقالات طراحی سایت در زمینه آموزش XML می خواهیم استفاده از XML در زندگی روزمره را با بیان مثالی برای شما بیان کنیم .
از مهمترین کاربرد های xml انتقال اطلاعات و ارسال اطلاعات خبری می باشد بنابراین استفاده از یک استاندارد در این تکنولوژی به فرستنده و گیرنده این امکان را می دهد تا بتواندفارغ از نوع سیستم عامل و سخت افزار ، اطلاعات را ارسال و دریافت نمایند . به مثال زیر توجه کنید :
<?xml version="1.0" encoding="ISO-8859-1"?>
<nitf>
<head>
<title>Colombia Earthquake</title> <!-- عنوان خبر -->
</head>
<body>
<headline>
<hl1>143 Dead in Colombia Earthquake</hl1> <!-- جزییات خبر -->
</headline>
<byline>
<bytag>By Jared Kotler, Associated Press Writer</bytag> <!-- نام خبرنگار و خبرگزاری -->
</byline>
<dateline>
<location>Bogota, Colombia</location> <!-- مکان وقوع خبر -->
<date>Monday January 25 1999 7:28 ET</date> <!-- تاریخ خبر -->
</dateline>
</body>
</nitf>
مثال بالاخبری راجع به وقوع یک زلزله و جزییات آن مخابره شده است ، به زبان XML . به ساختار کد XML و نحوه ارسال اطلاعات دقت نمایید این عمل باعث شده تا اطلاعات به راحتی به گیرنده انتقال یابد .
همچنین از این تکنولوژی می توان برای ارسال اطلاعات آب و هوایی استفاده کرد با استفاده از مثال زیر می توانید اطلاعات مربوط به آب و هوا را در یک فایل xml دسته بندی کرد .
<?xml version="1.0" encoding="ISO-8859-1" ?>
<current_observation>
<credit>NOAA's National Weather Service</credit> <!-- واحد صادر کننده اطلاعات -->
<credit_URL>http://weather.gov/</credit_URL> <!-- آدرس وب سایت صادر کننده اطلاعات -->
<location>New York/John F. Kennedy Intl Airport, NY</location> <!-- نام منطقه آب و هوایی-->
<weather>A Few Clouds</weather> <!-- شرایط جوی -->
<temp_f>11</temp_f> <!-- بیشینه دما -->
<temp_c>-12</temp_c> <!-- کمینه دما -->
<relative_humidity>3XML</relative_humidity> <!-- میزان رطوبت -->
<wind_dir>West</wind_dir> <!-- جهت باد -->
<wind_mph>18.4</wind_mph> <!-- سرعت باد -->
</current_observation>
خلاصه آموزش XML
در این قسمت از آموزش XML ، می خواهیم خلاصه آموزش XML را برای شما بیان کنیم .
همانطور که در مقالات قبلی طراحی سایت گفته شده از XML برای تبدیل،انتقال و نگهداری اطلاعات به کار می رود و اسناد در این تکنولوژی به صورت درختی هستند و عناصر از عنصر مادر نشات می گیرند و در نهایت به عناصر فرزند در رده های پایین تر می رسیم.این تکنولوژی ساختار ساده ای دارد و می توان اسناد آن را با روش DTD اعتبارسنجی کرد .این تکنولوژِ در تمام مررگرهای مفسر قابل اجرا می باشد و فقط عبارات و کدهایی که در بخش CDATA هستند در سرورها اجرا نمی شوند .
همانطور که در بخش تکنولوژی های XML گفته شد مدل XML DOM یک روش استاندارد برای دسترسی و کار با اشیای درون اسناد XML را فراهم می کند و همچنین از XMLHttp Request برای برقراری ارتباط بین صفحه ی سند و صفحه ی نمایش داده در مرورگر پس از کامل لود شدن استفاده می شود.پس از یافتن اطلاعات کافی در زمینه ی xml می توانید امور زیر را انجام دهید:
√ اجرای برنامه های SOAP , RSS, RDF و...
√ قابلیت خواندن زبان های XML DOM , DTD, XSLT
√ با استفاده از این تکنولوژی می توانید اطلاعات دارای ساختار درختی و سلسله مراتبی را در فایل ها مرتب کرده و آنها را نگهداری یا انتقال دهید
سایر تکنولوژی های XML
در این بخش از آموزش XML ، سایر تکنولوژی های XML را توضیح می دهیم.
در این مقاله از طراحی سایت می خواهیم زبان ها و تکنولوژی های مربوط به XML را برای شما به طور مختصر توضیح دهیم.
XHTML - Extensible HTML : به زبان ساده و کوتاه، XHTML یک شیوه ساختار بندی بسیار بهتر، برای نوشتن html به منظور طراحی سایت است ولی نسخه ی پپیشرفته ی آن HTML5 می باشد که این زبان نیز یک زبان نشانه گذاری برای ساختار می باشد .
XML DOM - XML Document Object Model : يک رابط برنامه نويسی برای سندهای XML و Html است و به معنای مدل دسترسی به اشیای سند می باشد .
XSL - Extensible Style Sheet Language : يک xsl شامل دستورالعمل هايي براي شکل دهي به محتويات يک فايل xml مي باشد که این زبان به دلیل استاندارد بودن توصیه می شود از این زبان بای قالب بندی و فرمت دهی به فایل های xml استفاده شود .
XQUERY - XML Query Language : ز این زبان برای جستجو بین اطلاعات موجود در یک فایل xml استفاده می شود .
DTD - Document Type Definition : به معنی نگارش یک سند می باشد که این سند شامل تگ و ویژگی های ان همراه با توضیحات باشد همچنین این زبان یک راه حل استاندار برای تعیین المنت های اصلی در یک سند xml می باشد .
XLINK - XML Linking Language : از این زبان برای ایجاد لینک hyperlink در سند xml استفاده می شود .
XPOINTER - XML Pointer Language : این زبان باعث می شود تا لینک های hyperlink در چند نقطه در صفحه اجرا شود .
SOAP - Simple Object Access Protocol : این نرم افزار باعث می شود تا اطلاعات از طریق http مبادله شوند توجه داشته باشید که این تکنولوژی بر اساس xml می باشد به عبارتی سُوپ توان استفاده از یک پروتکل لایه کاربرد اینترنت را بعنوان یک پروتکل انتقال، ایجاد میکند .
WSDL - Web Services Description Language : از این تکنولوزی برای تشریح وب سرویس ها مورد استفاده قرار می گیرد .
RDF - Resource Description Framework : از این علم برای تشریح منابع وب استفاده می شود که مانند مورد قبلی بر مبنای xml می باشد و براى خوانده شدن توسط کامپیوترها طراحى شده است به عبارتی براى توصیف کردن منابع موجود در اینترنت است.
RSS - Really Simple Syndication : از این علم برای روش ساده مبادله اطلاعات استفاده می شود و برای انتقال و اشتراک گذاری اخبار و اطلاعات بین وب سایت های مختلف به کار می رود ویژگی RSS هم مثل بقیه تكنولوژیهای خوب، در سادگی آن است . استفاده از (RSS) اين امكان را به كاربران اينترنت ميدهد كه بدون سر زدن به سايت ها يا وبلاگ های مورد علاقهشان و تنها با ثبت نشاني (RSS) در يکی از مرورگرها يا نرم افزارهای خبرخوان(RSS Reader) از آخرين به روز رساني آنها مطلع شوند.
XSLT در طراحی سایت
XSLT در واقع یکی از زبان های برنامه نویسی است که استفاده از آن در طراحی سایت بسیار رواج پیدا کرده است. در واقع این نوع زبان برنامه نویسی به صورت یک شیوه نامه آبشاری است. XSLT با قابلیت هایی که دارد قادر است در طراحی سایت اسناد XML را به XHTML تبدیل می کند. از این رو استفاده بسیاری در طراحی سایت دارد. البته هدف اصلی معمولا از استفاده از XSLT در طراحی سایت در تبدیل XML به نوع دیگری از XML است.
از XSLT در طراحی سایت همچنین می توان با هدف تنظیم مجدد شیوه نمایش المان ها و عناصر در طراحی سایت نیز بهره برد. همچنین برای مرتب کردن عناصر طراحی سایت نیز می توان از این زبان برنامه نویسی استفاده کرد. به طور کلی باید چنین گفت که استفاده از این زبان برنامه نویسی در طراحی سایت ضروری است. در واقع این زبان برنامه نویسی مانند زبان CSS نوعی زبان برنامه نویسی با شیوه نامه آبشاری است. CSS به عنوان یک سند آبشاری، عناصر موجود در HTML را هدف قرار می دهد و در واقع برمبنای آن تنظیم می شود. اما XSLT در حقیقت یک شیوه نامه برای XML است.
در تعریف کلی تر از XSLT می توان چنین بیان کرد که در واقع XSLT یکی از پیشرفته ترین ویرایشگرهای مورد استفاده در طراحی سایت است. از این رو توصیه می شود شما نیز در طراحی سایت خود از این ابزار پیشرفته بهره ببرید تا یک طراحی سایت استاندارد و حرفه ای داشته باشید.