تاکنون مقالات فراوانی در باره XML نوشته شده است، اغلب مطالب عنوان شده صرفا بر روی یک موضوع خاص تمرکز داشته و از زاویه ای کاملا اختصاصی و در عین حال محدود به بررسی تکنولوژی XML پرداخته و بندرت به موارد اساسی و خانواده بزرگ استاندارهای XML اشاره شده است. در این مقاله عناصر کلیدی مرتبط با تکنولوژی XML تشریح و ارتباط آنها تبین و جایگاه هر یک از آنها برای پیاده کنندگان و طراحان برنامه های اطلاعاتی تشریح می گردد. پس از مطالعه این مقاله ، خوانندگان با استانداردهای کلیدی : XML,XSL,XML-Schema,DOM,SAX,Namespace,XLink بهمراه تکنولوژی های مربوطه آشنا خواهند شد.
تعریف اصطلاحات و واژه ها
در ابتدا لازم است با کلمات تشکیل دهنده XML یعنی Extensible ، Markup و Language آشنا شویم .Markup ، واژه ئی برای متادیتا است . متادیتا ، اطلاعاتی در رابطه با اطلاعات است . قدمت استفاده از Markup به قبل از کامپیوتر بر می گردد . مثلا در دنیای نشر از علائم خاصی در متن های ویرایش شده استفاده تا به پردازنده متن ( انسان و یا ماشین ) اعلام شود ، چه نوع عملیاتی را در رابطه با اطلاعات می بایست انجام دهد. HTML یکی از زبان های کلاسیک نشانه گذاری است . مثلا با افزودن تگ به مرورگر اعلام می شود که به چه صورت می بایست اطلاعات نمایش داده شوند .
زبان (Language) ، به مجموعه ای از کلمات معنی دار و با مفهوم که عده ای از آنها برای بیان خواسته ها ی خود استفاده می نمایند ،اطلاق می گردد . ( مثلا زبان فارسی و یا انگلیسی )
با کنار هم قرار دادن دو واژه اشاره شده ، با زبان نشانه گذاری مواجه خواهیم شد . زبان نشانه گذاری ، به مجموعه ای از کلمات معنی دار و با مفهوم که توسط عده ای (با آگاهی لازم انتخاب ) استفاده می گردد ، اطلاق می گردد. HTML ، نمونه ای مناسب در این زمینه است . تمام افرادی که از تگ های HTML استفاده می نمایند ، بدرستی نسبت به مفهوم و جایگاه هر یک از تگ ها آشنائی داشته و با آگاهی کامل آنها را برای بیان خواسته های خود استفاده می نمایند. مثلا مشخص است که استفاده از تگ چه نوع پیامدهائی را بدنبال خواهد داشت . تگ فوق ، توسط مولفین صفحات وب آگاهانه انتخاب می گردد و مرورگرها نیز متناسب با تعاریف از قبل مشخص شده ، واکنش مناسب خود را در رابطه با نحوه نمایش انجام خواهند داد. یک زبان بسط پذیر(Extensible) ، زبانی است که دارای مکانیزم لازم برای افزودن کلمات بگونه ای است که توسط سایر استفاده کنندگان نیز قابل فهم باشد . در دنیای واقعی و در ارتباط با زبان های طبیعی ما هرگز شاهد چنین وضعیتی نخواهیم بود . ( افزودن یک واژه با معنی مورد نظر خود و استفاده از واژه با همان معنی توسط سایر استفاده کنندگان ) با توجه به تعاریف ارائه شده ، یک زبان نشانه گذاری بسط پذیر ، می بایست یک زبان نشانه گذاری با قابلیت افزودن کلماتی بیشتر باشد . در عمل زبان نشانه گذاری بسط پذیر ، به سیستمی برای تعریف تمام زبا ن های نشانه گذاری با قابلیت توسعه وضعیت موجود ، اطلاق می گردد .
SGML HTML و XML
SGML)Standard Generalize Markup Language) سرچشمه XML بوده و در سال 1988 استاندارد شده است . HTML)HyperText Markup Language) زبانی است که در ابتدا با استفاده از SGML تعریف گردید. HTML یک زبان نشانه گذاری است ، بنابراین انتظار داریم شامل مجموعه ای از تگ ها بمنظور کنترل قالب و رفتار اطلاعات در مستندات باشد . XML ، یک زبان نشانه گذاری مشابه HTML نمی باشد . XML ، زیرمجموعه ای از SGML است ( مکانیزمی برای تعریف زبان های نشانه گذاری ) . XML همانند SGML یک زبان نشانه گذاری بسط پذیر بوده اما بر خلاف SGML برای استفاده بر روی وب بهینه شده است .
مفاهیم اساسی
لازم است که مجددا به این نکته مهم اشاره گردد که XML ، یک زبان نشانه گذاری نبوده و در مقابل مکانیزمی برای ایجاد زبان های نشانه گذاری اختصاصی است . XML ، شامل مجموعه ای از استانداردها ی متنوع با کاربردهای خاص است . XML ، یک زبان نشانه گذاری نبوده و در عین حال یک زبان برنامه نویسی هم نیست . از XML برای ارائه اطلاعات استفاده شده و بمنظور پردازش اطلاعات، می بایست برنامه هائی نوشته گردد .
از XML در موارد زیر می توان استفاده کرد :
● مبادله اطلاعات بین برنامه های نامتجانس ، بنگاه های تجاری و بانک های اطلاعاتی
● امکان فعال نمودن مدلی برای نمایش اطلاعات یکسان بر روی دستگاههای متفاوت با اهداف و خوانندگان گوناگون
● یک قالب ذخیره سازی مناسب برای داده ها
استانداردهای خانواده بزرگ XML
از واژه XML اغلب برای بیان یک استاندارد بین المللی استفاده می گردد . در برخی حالات واژه فوق برای بیان تمام استانداردهای مرتبط با XML نیز استفاده می گردد . اکثر کاربران با استانداردهای XML سرو کار ندارند. استانداردهای موجود اغلب توسط افرادیکه نرم افزار تولید و یا بر روی سندهای XML پردازشی را انجام می دهند ، استفاده می گردد . شناخت استانداردهای موجود در این زمینه مهم بوده و لازم است با جایگاه هر یک آشنا شویم . یکی از روش هائی که می توان استانداردهای موجود را بدرستی سازماندهی و بخاطر سپرد ، توجه و تمرکز بر اهدافی است که آنها دنبال می نمایند. جدول زیر استانداردهای موجود بهمراه اهداف و قابلیت های هر یک را نشان می دهد.