پرش به محتوا

اکس‌ام‌ال

از ویکی‌پدیا، دانشنامهٔ آزاد
XML (استاندارد)
زبان نشان‌گذاری گسترش‌پذیر
کوته‌نوشتXML
وضعیتمنتشرشده (پیشنهاد W3C)
سال آغاز۱۹۹۶؛ ۲۸ سال پیش (۱۹۹۶-خطا: زمان نامعتبر}})
انتشار اولیه۱۰ فوریه ۱۹۹۸؛ ۲۶ سال پیش (۱۹۹۸-10}}) به عنوان پیشنهاد
آخرین ویرایش۱٫۱ (ویرایش دوم)
۲۹ سپتامبر ۲۰۰۶؛ ۱۸ سال پیش (۲۰۰۶-29}})
سازمانائتلاف وب جهان‌گستر (W3C)
ویراستاران
استانداردهای پایهSGML
استانداردهای مرتبططرح‌واره اکس‌ام‌ال
دامنهپیاپی‌سازی داده‌ها
وبگاه
XML (قالب پرونده)
پسوند(های) نام پرونده
.xml
نوع رسانهٔ اینترنتی
  • application/xml
  • text/xml0.2em
شناسانه نوع یکسان
public.xml
معادل UTI
public.text
عدد جادویی
<?xml
توسعه‌دهندهائتلاف وب جهان‌گستر
گونهزبان نشانه‌گذاری
نیاکاناس‌جی‌ام‌ال
فرزندانزبان‌های بیشمار شامل: اکس‌اچ‌تی‌ام‌ال، آراس‌اس، اتم و KML
استاندارد بین‌المللی
آزاد؟بله
استانداردهای وب

HTML
RDF
CSS
DOM
XHTML
XML
SVG
W3C
DHTML

زبان نشانه‌گذاری گسترش‌پذیر (به انگلیسی: Extensible Markup Language) با کوته‌نوشت XML نوعی زبان نشانه‌گذاری است که شامل مجموعه قواعدی است که به کمک آن می‌توان یک سند رایانه‌ای را کدبندی کرد. قالب کدبندی ایجاد شده توسط زبان XML هم برای انسان و هم برای ماشین (رایانه)ها قابل خواندن است. ائتلاف وب جهان‌گستر مشخصات XML ورژن ۱٫۰ را در سال ۱۹۹۸ ارائه داد، که این استاندارد، XML را به دقت تعریف کرده‌است.[۱]

اکس‌ام‌ال ویرایشی از اس‌جی‌ام‌ال است که می‌کوشد پلی بین سادگی اچ‌تی‌ام‌ال و قدرت اس‌جی‌ام‌ال ایجاد کند. در واقع اکس‌ام‌ال زیر مجموعه‌ای از اس‌جی‌ام‌ال است که صرفاً برای استفاده با وب طراحی شده‌است. پس از ایجاد اکس‌ام‌ال توسّط ائتلاف وب جهان‌گستر (W3C) در سال ۱۹۹۶ میلادی، دست‌اندرکاران بسیاری از پروژه‌های محاسبات توزیع‌شده[۲] به استفادهٔ گسترده از آن روی آوردند.

در حال حاضر، گوناگونی، میزان، و ابعاد فراوان به‌کارگیری اکس‌ام‌ال در اغلب زمینه‌ها و ساختارهای اینترنت امروزی به راستی شگفت‌آور است. فقط به عنوان نمونه، باید یادآور شد که تقریباً تمامی فناوری‌های خدمات وب،[۳] نگاره‌سازی برداری مقیاس‌پذیر (SVG),[۴] آردی‌اف،[۵] و بسیاری از موارد دیگر، تنها با اکس‌ام‌ال انجام‌پذیر است.

چرایی و چگونگی این امر برای فهم آسان‌تر و درک همه‌جانبه‌تر اینترنت در حال حاضر، و به ویژه، جهت آشنایی با تدابیری که بشر برای هموار نمودن راه‌های گسترش آن در آینده اتّخاذ خواهد کرد، از اهمّیّت بالایی برخوردار است.

انگیزه‌ها و بنمایه‌ها

[ویرایش]

بسیاری از پرسش‌های عمده پیرامون پدیده‌های نوین جهانی، و به ویژه موهبت عالم‌گیر اینترنت را ساده‌تر و منطقی‌تر است که با مطالعه و شناخت هر چه واقعی‌تر و همه‌جانبه‌تر تاریخ و فلسفه علوم، مخصوصاً، از ابتدای دوران تولد دوباره تا به امروز پاسخ داد.

آفرینش و نمایش دانش

[ویرایش]

اصلی‌ترین و ذاتی‌ترین وظیفهٔ زبان اکس‌ام‌ال بیان، نمایش، و تحت سیطره درآوردن داده‌ها ست. وقتی از داده‌ها اسم می‌بریم، در واقع، اطلاعات و دانش هم گفته‌ایم.

تبیین نقش و اهمیت اکس‌ام‌ال در خلق و نمایش انعطاف‌پذیر، قابل گسترش، و اندازه یاب دانش را بهتر است با اشاره‌ای گذرا بر نقش عنصر خط در هنر نقاشی آغاز کنیم. در نقاشی، استفاده از خط، نقطهٔ آغاز و شروع خلق و آفرینش هنری هم هست. در واقع، پیش از کشیدن اولین خط، فقط یک‌نواختی، بی‌دانشی، بی‌نظمی، و بی‌ساختاری مطلق بر تمامی فضا حاکم است.

خوب که بیندیشیم، زبان اکس‌ام‌ال درست همین کار را با برچسب زدن،[۶] نام‌گذاشتن، و صفات[۷] برای نام‌ها تعریف کردن در مورد داده‌های بی‌ساختار انجام می‌دهد.

اصطلاحات کلیدی در XML

[ویرایش]

آنچه در ادامه می‌آید براساس مشخصات رسمی XML است، و لیست کاملی از همهٔ ساختارهای مشاهده شده در XML نیست؛ در واقع معرفی ساختارهای کلیدی است که در استفاده روزانه XML به کار می‌رود.

نویسه (کاراکتر)

[ویرایش]

یک سند XML رشته‌ای از نویسه‌ها است. تقریباً هر کاراکتر مجاز یونی‌کد می‌تواند در یک سند XML نمایش یابد.

پردازشگر و برنامه‌کاربردی

[ویرایش]

پردازشگر نشانه‌گذاری‌ها را تحلیل می‌کند و اطلاعات ساختاردار را به برنامه‌کاربردی تحویل می‌دهد. مشخصات XML نیازمندی‌هایی برای پردازشگر XML قرار می‌دهد و تعیین می‌کند که پردازشگر چه بکند و چه نکند؛ اما کاربردهای پردازشگر بالاتر از این مورد است. «پردازشگر» کلمه ای است که مشخصات از آن نام برده‌است، پردازشگر در زبان محاوره‌ای «تجزیه کننده» نام دارد.

نشانه‌گذاری و محتوا

[ویرایش]

نویسه‌هایی که یک سند XML را می‌سازند به دو بخش «نشانه‌گذاری (به انگلیسی: markup)» و «محتوا (به انگلیسی: content)» تقسیم می‌شوند. تشخیص این دو به وسیلهٔ قواعد ساده‌ای امکان‌پذیر است. نشانه‌گذاری‌ها با نویسهٔ ">" شروع و با نویسهٔ "<" خاتمه می‌یابند. رشته‌های نویسه ای که «نشانه‌گذاری» نیستند، «محتوا» نام دارند.

برچسب (Tag)

[ویرایش]

یک برچسب یک نشانه‌گذاری است که با "<" شروع و با ">" خاتمه می‌یابد. سه نوع برچسب وجود دارد، که مثال‌های آن در زیر آمده‌است:

برچسب شروع <section>;
برچسب خاتمه </section>;
برچسب بدون عنصر <line-break />.

عنصر (Element)

[ویرایش]

یک عنصر یک مولفهٔ منطقی در سند است که یا در برچسب شروع و خاتمه قرار دارد، یا شامل برچسب بدون‌عنصر است. نویسه‌هایی که بین برچسب شروع و برچسب خاتمه قرار دارند، «محتوای عنصر» نام دارند. «محتوای عنصر» ممکن است خودش شامل شامل «نشانه‌گذاری» باشد، از این رو می‌تواند شامل عناصر دیگری باشد، به این عناصر «عنصر فرزند» گفته می‌شود.

در زیر دو مثال از عنصر آمده‌است:

<greeting>Hello, world!</greeting>
<line-break />

نشانه (Attribute)

[ویرایش]

یک نشانه یک نشانه‌گذاری است که شامل یک جفت نام-مقدار است. نشانه یا باید در برچسب شروع باشد یا در یک برچسب بدون‌عنصر قرار بگیرد. در زیر دو مثال از نشانه آمده‌است:

<img src="madonna.jpg" alt="Madonna" />
<step number="3">Connect A to B.</step>

در مثال اول، نام‌های نشانه «src» و «alt» هستند، و مقادیر آنها «maddona.jpg» و «Maddona» می‌باشند.

در مثال دوم، نام نشانه «number» است و مقدار آن «۳» است.

یک نشانه XML تنها یک مقدار می‌تواند داشته باشد و هر نشانه نیز حداکثر یکبار می‌تواند هر عنصر ظاهر شود. اما در شرایطی که باید یک «لیست از مقادیر» داشت، باید لیست را به یک نشانه «خوش فرم» XML کدبندی کرد. در اینجا لیست‌ها می‌توانند دارای جداکنندهٔ «کاما»، «سمیکولن»، یا «نویسه فاصله سفید» باشند. به مثال زیر توجه کنید:

<div class="inner greeting-box">Welcome!</div>

در این مثال، نشانه برابر «class» است که مقدار «inner greeting-box» دارد، و نشان‌دهندهٔ دو نام کلاس CSS است: "inner" و "greeting-box".

اعلان (declaration)

[ویرایش]

یک سند XML می‌تواند با یک اعلان XML شروع شود، این اعلان، توصیف‌کنندهٔ اطلاعاتی دربارهٔ خود سند است. در زیر یک مثال از اعلان XML آمده‌است:

<?xml version="1.0" encoding="UTF-8"?>

تجربهٔ اوّل

[ویرایش]
مثالی از زبانه نشانه گذاری xml

به عنوان نمونه‌ای بسیار ساده از یک سند اکس‌ام‌ال می‌توان به بررسی مورد زیر پرداخت:

<University>
<Department>Mathematics</Department>
<Department>Biology</Department>
</University>

برخلاف سندهای اچ‌تی‌ام‌ال و اکس‌اچ‌تی‌ام‌ال که در آن‌ها از عناصر و برچسب‌های از پیش تعبیه یافته‌استفاده می‌کنیم، در سندهای اکس‌ام‌ال تمامی برچسب‌ها را خود نام‌گذاری و انتخاب می‌نماییم.

اگر چه برچسب‌های (tags) متعدّدی می‌تواند در هر سند موجود باشد، فقط یکی از آن‌ها - و همواره یکی از آن‌ها (در اینجا University) - نقش ریشه و در خودگیرندهٔ سایر برچسب‌ها را برعهده دارد.

چنانچه نمونهٔ اکس‌ام‌ال داده‌شده در بالا را، عیناً، در فایلی که با xml. ختم می‌شود ذخیره کنیم، می‌توانیم با یکی از متن‌شکن‌های اکس‌ام‌ال[۸] شروع به شکستن و پردازش آن بنماییم. از آن‌جا که شرکت مایکروسافت یکی از متن‌شکن‌های اکس‌ام‌ال، موسوم به ام‌اس‌اکس‌ام‌ال[۹] را، در درون مرورگر خود یعنی آی‌ای (IE) تعبیه نموده‌است، فقط کافی‌ست سند اکس‌ام‌ال خود را با آی‌ای باز کنیم.

در اینجا، برای مثال بالا صفت خصوصی بودن برای نام یا مفهوم دانشگاه تعیین شده‌است:

<University Category = "Private">
<Department>Mathematics</Department>
<Department>Biology</Department>
</University>

صفات مورد نظر برای هریک از عناصر اکس‌ام‌ال می‌تواند به هر تعداد باشد، و به هر ترتیبی بیاید، ولی، همواره باید آن‌ها را فقط در درون بر چسب شروع جای داد، و نه هیچ‌کجای دیگر.

فضای نام‌های اکس‌ام‌ال

[ویرایش]

مقالهٔ اصلی: فضای نام‌های اکس‌ام‌ال

تعریف انواع در سندها

[ویرایش]

مقالهٔ اصلی: تعریف انواع در سندها

با کمک تعریف انواع در سندها یا دی‌تی‌دی[۱۰] می‌توانیم به تعریف و شرح انواع گوناگون عناصر و المان‌های مورد استفاده در یک سند اکس‌ام‌ال و نیز بیان صفات و شناسه‌های مختلف آن‌ها مبادرت نماییم.

طرح‌واره اکس‌ام‌ال و اعتبارسنجی

[ویرایش]

مقالهٔ اصلی: طرح‌واره اکس‌ام‌ال و اعتبارسنجی

مدل اشیاءنگر سند

[ویرایش]

مقالهٔ اصلی: مدل اشیاءنگر سند ا گرچه سندهای اکس‌ام‌ال از متن ساخته می‌شود، جستجوی داده‌های موجود در آن‌ها از طریق دستیابی ترتیبی،[۱۱] نه عملی خواهد بود و نه صرفه‌بر.[۱۲] این امر، به‌ویژه، در مواردی دشوارتر خواهد شد که بخواهیم داده‌ها را به‌طور دینامیکی به سند افزوده یا آن‌ها را از آن پاک نماییم.

مدل اشیاءنگر سند معماری خاصّی را به‌دست می‌دهد تا با اجراء آن توسّط یک زبان برنامه‌نویسی بلندتراز،[۱۳] بشود تمامی سند را به شکل یک درخت در حافظهٔ اصلی رایانه پهن کرد؛ بنابراین، فقط سندهای نسبتاً کوچک را می‌توان با این مدل پردازش نمود.

اِی‌پی‌آی ساده برای اکس‌ام‌ال

[ویرایش]

مقالهٔ اصلی: اِی‌پی‌آی ساده برای اکس‌ام‌ال[۱۴]

پانوشته‌ها

[ویرایش]
  1. "W3C DOCUMENT LICENSE". W3.org. Retrieved 24 July 2020.
  2. Distributed computing
  3. Web services
  4. Scalable vector graphics - SVG
  5. Resource Description framework - RDF
  6. Tagging
  7. attributes
  8. XML Parsers
  9. MSXML
  10. Document Type Definition - DTD
  11. Sequential-file access
  12. Efficient
  13. High-level programming language
  14. XML Schema

جستارهای وابسته

[ویرایش]

منابع

[ویرایش]

پیوند به بیرون

[ویرایش]