এক্সএমএল ডকুমেন্টগুলিতে কোন অক্ষরগুলি অবশ্যই পালাতে হবে, বা আমি কোথায় এই জাতীয় একটি তালিকা পেতে পারি?
এক্সএমএল ডকুমেন্টগুলিতে কোন অক্ষরগুলি অবশ্যই পালাতে হবে, বা আমি কোথায় এই জাতীয় একটি তালিকা পেতে পারি?
উত্তর:
আপনি যদি কোনও উপযুক্ত শ্রেণি বা গ্রন্থাগার ব্যবহার করেন তবে তারা আপনার জন্য পালিয়ে যাবে। অনেক এক্সএমএল ইস্যু স্ট্রিং কনকেন্টেশন দ্বারা সৃষ্ট হয়।
এখানে কেবল পাঁচটি রয়েছে:
" "
' '
< <
> >
& &
স্ক্র্যাপিং অক্ষর নির্ভর করে যেখানে বিশেষ চরিত্রটি ব্যবহৃত হয়।
উদাহরণগুলি ডাব্লু 3 সি মার্কআপ বৈধকরণ পরিষেবাতে যাচাই করা যেতে পারে ।
নিরাপদ উপায় হ'ল পাঠ্য পাঁচটি অক্ষর এড়ানো। তবে, তিনটি অক্ষর "
, '
এবং >
পাঠ্যে পালাতে হবে না:
<?xml version="1.0"?>
<valid>"'></valid>
নিরাপদ উপায়টি বৈশিষ্ট্যে পাঁচটি অক্ষর থেকে বাঁচা। যাইহোক, >
চরিত্রটি বৈশিষ্ট্যে পালাতে হবে না:
<?xml version="1.0"?>
<valid attribute=">"/>
'
চরিত্র গুণের পলান প্রয়োজন হবে না উদ্ধৃতি চিহ্ন আছে যদি "
:
<?xml version="1.0"?>
<valid attribute="'"/>
অনুরূপভাবে, "
উদ্ধৃতিগুলি থাকলে গুণাবলী থেকে রক্ষা পাওয়ার প্রয়োজন নেই '
:
<?xml version="1.0"?>
<valid attribute='"'/>
পাঁচটি বিশেষ চরিত্র মন্তব্যগুলিতে পালাতে হবে না :
<?xml version="1.0"?>
<valid>
<!-- "'<>& -->
</valid>
সমস্ত পাঁচটি বিশেষ অক্ষর না মধ্যে পলান করা CDATA বিভাগগুলি:
<?xml version="1.0"?>
<valid>
<![CDATA["'<>&]]>
</valid>
সমস্ত পাঁচটি বিশেষ অক্ষর অবশ্যই এক্সএমএল প্রসেসিংয়ের নির্দেশে পালাতে হবে না :
<?xml version="1.0"?>
<?process <"'&> ?>
<valid/>
এইচটিএমএল এর পালানোর কোডগুলির নিজস্ব সেট রয়েছে যা আরও অনেকগুলি অক্ষরকে কভার করে।
"
পরিবর্তিত হবে&quot;
সম্ভবত এটি সাহায্য করবে:
এক্সএমএল এবং এইচটিএমএল অক্ষর সত্তা রেফারেন্সের তালিকা :
এসজিএমএল, এইচটিএমএল এবং এক্সএমএল নথিগুলিতে, চরিত্রের ডেটা এবং অ্যাট্রিবিউট মান হিসাবে পরিচিত যৌক্তিক কাঠামোতে অক্ষরের অনুক্রম থাকে, যেখানে প্রতিটি অক্ষর প্রত্যক্ষভাবে প্রকাশ করতে পারে (নিজের প্রতিনিধিত্ব করে), বা চরিত্রের একটি ধারা দ্বারা প্রতিনিধিত্ব করা যায় যা অক্ষর রেফারেন্স বলে, এর মধ্যে দুটি প্রকার রয়েছে: একটি সাংখ্যিক চরিত্রের রেফারেন্স এবং একটি অক্ষর সত্তার রেফারেন্স। এই নিবন্ধটি এইচটিএমএল এবং এক্সএমএল নথিগুলিতে বৈধ যে অক্ষর সত্তা রেফারেন্সগুলি তালিকাভুক্ত করে।
এই নিবন্ধটি নিম্নলিখিত পাঁচটি পূর্বনির্ধারিত এক্সএমএল সত্ত্বাকে তালিকাবদ্ধ করে:
quot "
amp &
apos '
lt <
gt >
ওয়ার্ল্ড ওয়াইড ওয়েব কনসোর্টিয়াম (ডাব্লু 3 সি) এর স্পেসিফিকেশন অনুসারে, 5 টি অক্ষর রয়েছে যা একটি এক্সএমএল ডকুমেন্টে তাদের আক্ষরিক আকারে উপস্থিত না হওয়া উচিত , যখন মার্কআপ ডিলিমিটার হিসাবে ব্যবহার করা হয় বা কোনও মন্তব্যের মধ্যে, প্রসেসিংয়ের নির্দেশিকা বা সিডিএটিএ বিভাগে না হয় । অন্যান্য সমস্ত ক্ষেত্রে এই অক্ষরগুলি অবশ্যই নিম্নলিখিত সারণি অনুসারে সংশ্লিষ্ট সত্তা বা সংখ্যার রেফারেন্স ব্যবহার করে প্রতিস্থাপন করতে হবে:
Original CharacterXML entity replacementXML numeric replacement
< < <
> > >
" " "
& & &
' ' '
লক্ষ্য করুন যে পূর্বোক্ত সত্তাগুলি & apos ব্যতীত HTML এও ব্যবহার করা যেতে পারে ; , এটি এক্সএইচটিএমএল 1.0 এর সাথে প্রবর্তিত হয়েছিল এবং এটি এইচটিএমএল 4-তে ঘোষিত নয় this এই কারণে, এবং বিপরীতমুখী সামঞ্জস্যতা নিশ্চিত করতে, এক্সএইচটিএমএল স্পেসিফিকেশন & # 39; পরিবর্তে.
>
যদি ]]
বিষয়বস্তুর মধ্যে অনুসরণ করে তবে অবশ্যই তা পালাতে হবে , যদি না এটি সিডিটিএ ]]>
বিভাগের সমাপ্তি নির্দেশ করে এমন ডিলিমিটারের অংশ হওয়ার ইচ্ছা করে ।
ট্যাগ এবং বৈশিষ্ট্যের জন্য অক্ষরগুলি থেকে বেরিয়ে আসা আলাদা।
ট্যাগের জন্য:
< <
> > (only for compatibility, read below)
& &
বৈশিষ্ট্যের জন্য:
" "
' '
থেকে ক্যারেক্টার ডেটা এবং মার্কআপ :
অ্যাম্পারস্যান্ড চরিত্র (&) এবং বাম কোণ ব্র্যাকেট (<) অবশ্যই তাদের আক্ষরিক আকারে উপস্থিত না হওয়া ছাড়া, মার্কআপ ডেলিমিটার হিসাবে ব্যবহার করা ছাড়া, বা কোনও মন্তব্যে, প্রসেসিং নির্দেশিকা বা সিডিএটিএ বিভাগে থাকা উচিত। যদি এগুলি অন্য কোথাও প্রয়োজন হয় তবে অবশ্যই তাদের অবশ্যই সংখ্যার চরিত্রের রেফারেন্স বা যথাক্রমে "& amp;" এবং "& lt;" স্ট্রিংগুলি ব্যবহার করে পালাতে হবে। ডান কোণ ব্র্যাকেট (>) "& gt;" স্ট্রিং ব্যবহার করে উপস্থাপিত হতে পারে এবং সামঞ্জস্যের জন্য অবশ্যই "& gt;" বা কোনও অক্ষরের রেফারেন্স যখন বিষয়বস্তুতে "]]>" স্ট্রিং এ প্রদর্শিত হবে তখন তা ব্যবহার করে পালাতে হবে, যখন স্ট্রিংটি কোনও সিডিএটিএ বিভাগের শেষটিকে চিহ্নিত করছে না।
বৈশিষ্ট্যটির মানগুলিকে একক এবং দ্বিগুণ উদ্ধৃতি উভয়ই থাকতে দেয়, অ্যাস্টোস্ট্রোফ বা একক-উদ্ধৃতি অক্ষর (') "& apos" "এবং ডাবল-উদ্ধৃতি চরিত্র (") হিসাবে "& quot; হিসাবে উপস্থাপিত হতে পারে; "।
একটি পুরানো, সাধারণত জিজ্ঞাসিত প্রশ্নের নতুন, সরলিকৃত উত্তর ...
সর্বদা (90% মনে রাখা গুরুত্বপূর্ণ)
গুণ মান (9% মনে রাখা গুরুত্বপূর্ণ)
attr="
'
একক উদ্ধৃতি ডাবল উদ্ধৃতি '
মধ্যে ঠিক আছে।"
attr='
"
"
একক উদ্ধৃতিতে ডাবল উদ্ধৃতি ঠিক আছে।'
"
যেমন "
এবং '
হিসাবে '
অন্যথায়।মন্তব্যসমূহ , সিডিএটিএ এবং প্রক্রিয়াকরণের নির্দেশাবলী (মনে রাখার জন্য 0.9% গুরুত্বপূর্ণ)
<!--
মন্তব্যের মধ্যে -->
কিছুই এড়াতে হবে না তবে --
স্ট্রিংয়ের অনুমতি নেই।<![CDATA[
সিডিএটিএ-র মধ্যে ]]>
কোনও কিছুই এড়ানোর দরকার নেই, তবে কোনও ]]>
স্ট্রিং অনুমোদিত নয়।<?PITarget
পিআই-র মধ্যে ?>
কোনও কিছুই এড়ানোর দরকার নেই, তবে কোনও ?>
স্ট্রিং অনুমোদিত নয়।এসোটেরিকা (মনে রাখার জন্য 0.1% গুরুত্বপূর্ণ)
]]>
যেমন ]]>
যদি না ]]>
একটি CDATA অধ্যায় শেষ হয়। ]]>
অবশ্যই পালাতে হবে ]]>
। এটি অর্জনের সবচেয়ে সহজ উপায় হতে পারে সর্বদা>
হিসাবে পালানো >
।
]]>
তবে এটি >
সর্বদা পালিয়ে যাওয়ার পরামর্শ দেওয়ার পরিবর্তে এটি এস্ট্রোরিয়ায় ছেড়ে দেওয়া বেছে নিয়েছে (যা আপনার জানা হিসাবে এটি হওয়ার দরকার নেই)। এক্সএমএল পালানোর নিয়মগুলি সহজেই মনে রাখা এবং 100% নির্ভুল করার জন্য আমার এখানে লক্ষ্য ।
AttValue
একটি লিঙ্কের মাধ্যমে উদ্ধৃত করার জন্য সরকারী দিকনির্দেশনা অসমর্থিত ।
সাধারণভাবে পরিচিত পাঁচটি অক্ষর [<,>, &, ", এবং '] ছাড়াও আমি উল্লম্ব ট্যাব অক্ষর (0x0B) এড়িয়ে যেতে পারি It এটি বৈধ ইউটিএফ -8, তবে বৈধ এক্সএমএল 1.0 নয়, এমনকি অনেকগুলি লাইব্রেরিও (অত্যন্ত পোর্টেবল (এএনএসআই সি) লাইব্রেরি libxML2 সহ ) এটি মিস করে এবং নিঃশব্দে অবৈধ এক্সএমএল আউটপুট দেয়।
সংক্ষিপ্ত থেকে: এক্সএমএল, পালানো
পাঁচটি পূর্বনির্ধারিত সত্ত্বা রয়েছে:
< represents "<"
> represents ">"
& represents "&"
' represents '
" represents "
"সমস্ত অনুমোদিত ইউনিকোড অক্ষর একটি সংখ্যার অক্ষর রেফারেন্স সহ উপস্থাপন করা যেতে পারে।" উদাহরণ স্বরূপ:
中
বেশিরভাগ নিয়ন্ত্রণের অক্ষর এবং অন্যান্য ইউনিকোড রেঞ্জগুলি বিশেষত বাদ দেওয়া হয়, যার অর্থ (আমি মনে করি) তারা পালাতে বা সরাসরি ঘটতে পারে না:
ইহা পারিপার্শ্বিক অবস্থা উপর নির্ভর করে। সামগ্রীর জন্য, এটি < এবং এবং এবং এবং ]]> (যদিও একটি চরিত্রের পরিবর্তে তিনটির একটি স্ট্রিং)।
বৈশিষ্ট্যযুক্ত মানগুলির জন্য, এটি < , & , " এবং ' ।
সিডিএটিএর জন্য, এটি ]]> ।
শুধু <
এবং &
পলান করতে জোর তারা চরিত্র তথ্য এবং মার্কআপ না চিকিত্সা করা হয় প্রয়োজন:
<company>AT&T</company>