الترميز

XML Entities Encode/Decode

ترميز وفك ترميز كيانات XML — الكيانات الخمسة القياسية (علامة العطف، الأقواس الزاوية، الفاصلة العليا، علامات الاقتباس) ومراجع الأحرف الرقمية.

Unlike HTML, XML strictly requires escaping five special characters (&, <, >, ', "), or the document is considered invalid. This tool encodes and decodes those entities, as well as numeric character references.

How to use it

Common uses

Things to keep in mind

XML parsers are much stricter than HTML: a single unescaped entity invalidates the entire document, not just one element.

CDATA sections (<![CDATA[...]]>) are an alternative to escaping for large blocks of text, letting you insert arbitrary content without replacing every special character individually.

مقالة عن هذه الأداة: XML Entities: الهروب من الأحرف في مستندات XML

الأسئلة الشائعة

ما هي الكيانات الخمسة القياسية في XML؟

هي &amp; للعطف، و&lt; و&gt; للأقواس الزاوية، و&apos; للفاصلة العليا، و&quot; لعلامة الاقتباس. على عكس HTML الذي يعرّف مئات الكيانات المسمّاة، تعرّف مواصفة XML هذه الخمسة فقط بشكل مضمّن.

كيف أمثّل حرفًا غير مدعوم كاسم كيان في XML؟

باستخدام مرجع حرف رقمي مثل &#169; (عشري) أو &#xA9; (سداسي عشري)، وهي مدعومة في XML لأي نقطة كود Unicode، بخلاف الكيانات المسمّاة المحدودة بالخمسة الأساسية.

لماذا قد يفشل محلل XML إذا لم أرمّز الأحرف الخاصة؟

لأن أحرفًا مثل < و& لها دلالة بنيوية في XML، فوجودها دون ترميز داخل نص عنصر يجعل المستند غير صالح (not well-formed) ويتسبب في رفضه من قبل أي محلل XML صارم.

ما هو CDATA ومتى يُستخدم بدلاً من الكيانات؟

يسمح قسم &lt;![CDATA[...]]&gt; بإدراج كتلة نصية دون الهروب من < و& — وهو مفيد للأجزاء الكبيرة من الكود أو HTML داخل XML. الاستثناء هو التسلسل ]]>، الذي يُغلق CDATA ولا يمكن أن يظهر داخل المحتوى نفسه.

هل تتعامل محلّلات XML جميعها بنفس الطريقة مع الكيانات غير الصالحة؟

لا، وعلى عكس المتصفحات التي "تتغاضى" عن أخطاء HTML، فإن محلّلات XML صارمة: علامة & واحدة أو قوس زاوي واحد غير مُهروَب يجعل المستند بأكمله غير صالح، وتتوقف المعالجة بخطأ.

مقالات: الترميز

Base64: ما فائدة الترميز وكيف يعمل

كيف يحوّل Base64 البيانات الثنائية إلى نص ASCII، ومتى نحتاج ذلك فعلاً.

Base32: ما الفرق بينه وبين Base64 ومتى يكون أنسب

أبجدية Base32 التي لا تميّز بين حالة الأحرف، والحالات التي تكون فيها أنسب من Base64.

URL Encode/Decode: الترميز بالنسبة المئوية في الروابط

كيف تتحول الأحرف الخاصة في العناوين والمعاملات إلى تسلسلات %XX.

HTML Entities: كيف تعرض الأحرف الخاصة بأمان

لماذا يجب الهروب من الأحرف &lt; &gt; &amp; وكيف يمنع ذلك تعطّل الترميز.

JWT: بنية الرمز وماذا يعني "فك ترميز" JWT

الأجزاء الثلاثة لرمز JWT، ولماذا فك الترميز ليس نفس التحقق من التوقيع.

Unicode Escape: ماذا تعني تسلسلات \uXXXX

من أين تأتي تسلسلات مثل \u0041 في JSON وسلاسل جافاسكريبت، وماذا تعني.

ROT13 وشيفرة قيصر: استبدال بسيط للأحرف

لماذا تجعل إزاحة 13 حرفًا خوارزمية ROT13 عكسية ذاتيًا، ولماذا لا تزال تُستخدم اليوم.

Punycode: كيف تعمل النطاقات الدولية في DNS

كيف يتحول نطاق بأحرف غير لاتينية إلى صيغة ASCII تبدأ بالبادئة xn--.

شيفرة مورس: كيف يتحول النص إلى نقاط وشرطات

مبدأ ترميز الحروف كنقاط وشرطات، وأين لا تزال شيفرة مورس تُستخدم اليوم.

Data URI: متى تُضمَّن الصور مباشرة في الكود

كيف يضمّن Data URI محتوى الملف مباشرة في HTML أو CSS، ومتى يستحق ذلك العناء.

Gzip + Base64: ضغط البيانات لنقلها كنص

لماذا تُرمَّز البيانات الثنائية المضغوطة أيضًا بـ Base64 قبل وضعها في حقل نصي.