Thực thể định nghĩa sẵn trong XML

Chào mọi người.

Mọi người có thể giải thích sự khác nhữa giữa 2 loại này giúp mình được không? Nay thầy giáo nói từ tiếng anh gì mà mình không nghe rõ.

image

thank you!

dấu <> cũng như nhiều ký tự khác là ký tự đặc biệt trong XML, giống như trong C em viết em muốn chuỗi chứa ký tự " thì phải viết là "\"", còn trong XML muốn chuỗi chứa ký tự đặc biệt (<, >, v.v…) thì phải xài &...;:

  • <&lt;
  • >&gt;
  • &&amp;
  • v.v…

từ tiếng Anh ông thầy nói có lẽ là escape characters :V

3 Likes

Mấy cái kí tự tương đương thì em có biết, nhưng em chưa hiểu sự khác nhau, vấn đề là có thể viết
image
vậy tại sao lại cần phải viết như thế này nữa
image

Em cũng vẫn chưa liên hệ được ví dụ anh đưa ra với vấn đề em thắc mắc, anh có thể giải thích lại cho em được không?

ví dụ em viết

<p>
Thẻ <h1></h1> là thẻ heading 1
</p>

thì nội dung file HTML nó hiển thị ra là

Thẻ là thẻ heading 1

Vì dấu <> trong chuỗi <h1></h1> HTML nó hiểu là ký tự đặc biệt của nó nên nó ko hiển thị trong chuỗi của em. Nếu em muốn hiển thị ký tự <> thì em phải escape cho nó:

<p>
Thẻ &lt;h1&gt;&lt;/h1&gt; là thẻ heading 1
</p>

Khi mở fiile html sẽ thấy

Thẻ <h1></h1> là thẻ heading 1

tương tự còn nhiều ký tự đặc biệt khác nữa, HTML thì vô số, còn XML chỉ có 5 ký tự predefine: https://en.wikipedia.org/wiki/Character_encodings_in_HTML#XML_character_references

    &amp; → & (ampersand, U+0026)
    &lt; → < (less-than sign, U+003C)
    &gt; → > (greater-than sign, U+003E)
    &quot; → " (quotation mark, U+0022)
    &apos; → ' (apostrophe, U+0027)
4 Likes

à ra vậy, có nghĩa là khi ta muốn dùng mấy cái kí tự kia với mục đích khác thì sẽ phải escape, anh dịch từ escape character như thế nào vậy ạ.

Trong cái link wiki kia:

Unlike traditional HTML with its large range of character entity references, in XML there are only five predefined character entity references.

chắc dịch là “predefined character entity”
thực thể (entity) định nghĩa sẵn (predefined) :V

2 Likes

ý em là cái cụm này “escape character”

ai biết đâu, xài luôn tiếng Anh đi em :joy: ẹt xì kép ca rắc tơ :rofl:

2 Likes

vâng anh, chúc anh vui tính, buổi sáng vui vẻ :v:

Cái này bắt nguồn từ mấy chuỗi điều khiển bắt đầu bằng phím Esc (escape), nên gọi là escape character. Lập trình thì có \ còn XML (markup :smiley: ) thì có & đóng vai trò như Esc.

3 Likes

cám ơn @rogp10 :slight_smile:

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?