You are on page 1of 69

I.

PHẦN CÂU HỎI


KHỐI 1. CƠ BẢN

Câu 1.1 XML là viết tắt của gì?

a) Extended Markup Language

b) eXtensible Markup Language

c) Exponential Markup Language

d) Extraterrestrial Markup Language

Câu 1.2. Đâu là định dạng file XML chính thức?

a) .html

b) .xml

c) .txt

d) .docx

Câu 1.3. Đâu là cặp thẻ XML hợp lệ?

a) <person> </people>

b) <company> </compny>

c) <book> </book>

d) <fruit> </vegetable>

Câu 1.4. Trong XML, giá trị thuộc tính của một phần tử được đặt trong?

a) Ngoặc đơn

b) Ngoặc kép

c) Cả hai đều được chấp nhận

d) Không có thuộc tính trong XML


1
Câu 1.5. Đâu là cú pháp đúng để khai báo một phần tử có thuộc tính trong XML?

a) <person name= "John">

b) <person name: "John">

c) <person name>John</person>

d) <person>name=John</person>

Câu 1.6. Trong XML, cách để xác định định dạng tệp được sử dụng là gì?

a) Sử dụng các thẻ đặc biệt

b) Sử dụng thuộc tính encoding

c) Sử dụng thuộc tính format

d) Không thể xác định định dạng tệp trong XML

Câu 1.7. XML được sử dụng chủ yếu cho mục đích gì?

a) Lưu trữ và truyền dữ liệu

b) Lập trình ứng dụng

c) Thiết kế trang web

d) Phát triển phần mềm di động

Câu 1.8. Đâu là cách để tạo một tài liệu XML mới?

a) Sử dụng trình soạn thảo văn bản và lưu tệp dưới định dạng .xml

b) Sao chép và dán tài liệu XML đã tồn tại và chỉnh sửa nó để phù hợp với mục đích mới

c) Sử dụng các trình tạo tài liệu XML chuyên dụng

d) Cả ba phương pháp đều đúng

2
Câu 1.9. Trong XML, để khai báo một phần tử con có tên bắt đầu bằng chữ số, ta sử dụng cú
pháp gì?

a) <elementname>

b) <element name="elementname">

c) <![CDATA[<elementname>...]]>

d) Không thể khai báo phần tử con với tên bắt đầu bằng chữ số.

Câu 1.10. Trong XML, khai báo một đối tượng giống như nào so với khai báo một thuộc tính?

a) Giống nhau

b) Khác nhau

c) Tùy thuộc vào đối tượng hoặc thuộc tính đó

d) Không có đối tượng trong XML

Câu 1.11. Trong XML, định nghĩa một phần tử được bắt đầu bằng ký tự gì?

a) <

b) >

c) /

d) \

Câu 1.12. Trong XML, định nghĩa một phần tử được kết thúc bằng ký tự gì?

a) <

b) >

c) /

d) \

3
Câu 1.13. Trong XML, các phần tử con của một phần tử cha được đặt ở đâu?

a) Giữa cặp thẻ mở và đóng của phần tử cha

b) Sau cặp thẻ đóng của phần tử cha

c) Trước cặp thẻ mở của phần tử cha

d) Trên cùng một dòng với cặp thẻ mở và đóng của phần tử cha

Câu 1.14. Trong XML, các phần tử con của một phần tử cha phải được đặt trong cặp thẻ nào?

a) Cặp thẻ mở và đóng

b) Cặp thẻ mở và / cặp thẻ đóng

c) Cặp thẻ đóng và / cặp thẻ mở

d) Không cần đặt trong cặp thẻ nào

Câu 1.15. Trong XML, cách để xác định một phần tử là phần tử rỗng là gì?

a) Đặt nội dung vào trong cặp thẻ mở và đóng

b) Đặt dấu / sau tên phần tử trong cặp thẻ mở

c) Đặt thuộc tính rỗng vào trong cặp thẻ mở

d) Không thể xác định phần tử rỗng trong XML

Câu 1.16. Trong XML, thuộc tính của một phần tử được đặt sau tên phần tử bằng ký tự gì?

a) :

b) .

c) =

d) -

4
Câu 1.17. Trong XML, nội dung của một phần tử có thể là gì?

a) Văn bản

b) Số

c) Boolean

d) Tất cả các phương án trên

Câu 1.18. Trong XML, phần tử cha có thể chứa bao nhiêu phần tử con?

a) Một phần tử con

b) Nhiều phần tử con

c) Không có phần tử con

d) Chỉ có một phần tử con và một nội dung

Câu 1.19. Trong XML, thuộc tính id được sử dụng để làm gì?

a) Định danh duy nhất cho một phần tử

b) Chỉ định kiểu dữ liệu của một phần tử

c) Định nghĩa tên của một phần tử

d) Định nghĩa một kiểu dữ liệu

Câu 1.20. Trong XML, cách đặt giá trị của một thuộc tính là gì?

a) Đặt giá trị vào trong cặp dấu ngoặc kép ""

b) Đặt giá trị vào trong cặp dấu ngoặc đơn ''

c) Đặt giá trị vào sau dấu bằng =

d) Tất cả các phương án trên

Câu 1.21. Trong XML, thuộc tính có thể có bao nhiêu giá trị?
5
a) Một giá trị duy nhất

b) Nhiều giá trị được phân tách bằng dấu phẩy

c) Nhiều giá trị được phân tách bằng dấu cách

d) Không có giá trị nào

Câu 1.22. Trong XML, để khai báo một thuộc tính của một phần tử, ta sử dụng cú pháp gì?

a) <element attribute="value">

b) <element value="attribute">

c) <attribute value="element">

d) <value attribute="element">

Câu 1.23. Trong XML, để sử dụng một thuộc tính trong một phần tử, ta sử dụng cú pháp gì?

a) attribute="value"

b) value="attribute"

c) element="value"

d) value="element"

Câu 1.24. Trong XML, để tạo một bộ chứa nhiều phần tử giống nhau, ta sử dụng cú pháp gì?

a) <group><element></element><element></element></group>

b) <group><element/><element/></group>

c) <group><element></element,element></group>

d) <group><element/><element></element></group>

Câu 1.25. Trong XML, để khai báo một bộ ký tự UTF-8, ta sử dụng cú pháp gì?

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


6
b) <?xml version="1.0" encoding="ISO-8859-1"?>

c) <?xml version="1.0" encoding="UTF-16"?>

d) <?xml version="1.0"?>

Câu 1.26. Trong XML, để khai báo một phần tử được bao bọc bởi một phần tử khác, ta sử dụng
cú pháp gì?

a) <parent><child></child></parent>

b) <parent><element></element><child></child></parent>

c) <parent><element></element><child/></parent>

d) <parent><element/><child/></parent>

Câu 1.27. Trong XML, để khai báo một phần tử trống, ta sử dụng cú pháp gì?

a) <elementname>

b) <elementname></elementname>

c) <elementname/>

d) <elementname></>

7
KHỐI 2. DTD và XML Schema

Câu 2.1. DTD được sử dụng để:

A. Định nghĩa cấu trúc của một tài liệu XML

B. Tạo ra các trang web động

C. Tạo ra các ứng dụng di động

D. Định nghĩa các hàm trong JavaScript

Đáp án: A

Câu 2.2. DTD được định nghĩa bằng:

A. Một tài liệu XML đặc biệt

B. Một tài liệu HTML đặc biệt

C. Một tài liệu CSS đặc biệt

D. Một tài liệu JavaScript đặc biệt

Đáp án: A

Câu 2.3. Để tham chiếu đến một DTD trong tài liệu XML, sử dụng:

A. Khai báo DOCTYPE

B. Khai báo HTML

C. Khai báo SCRIPT

D. Khai báo LINK

Đáp án: A

Câu 2.4. DTD cho phép định nghĩa các loại phần tử, bao gồm:

A. Phần tử cơ bản

B. Phần tử dạng rút gọn

C. Phần tử thế chỗ

D. Tất cả các phương án trên đều đúng

Đáp án: D

8
Câu 2.5. Một thuộc tính trong DTD có thể có kiểu dữ liệu là:

A. Chữ

B. Số nguyên

C. Số thực

D. Tất cả các phương án trên đều đúng

Đáp án: D

Câu 2.6. Để định nghĩa một phần tử trong DTD, sử dụng từ khóa nào:

A. ELEMENT

B. ATTRIBUTE

C. ENTITY

D. NOTATION

Đáp án: A

Câu 2.7. Để định nghĩa một thuộc tính trong DTD, sử dụng từ khóa nào:

A. ELEMENT

B. ATTLIST

C. ENTITY

D. NOTATION

Đáp án: B

Câu 2.8. Để định nghĩa một thực thể trong DTD, sử dụng từ khóa nào:

A. ELEMENT

B. ATTRIBUTE

C. ENTITY

D. NOTATION

Đáp án: C

9
Câu 2.9. Để định nghĩa một nhóm các phần tử được phép xuất hiện trong một thẻ trong DTD, sử
dụng từ khóa nào:

A. ELEMENT

B. ATTLIST

C. ENTITY

D. CHOICE

Đáp án: A

Câu 2.10. Để định nghĩa một tập hợp các thuộc tính và giá trị của chúng được phép trong một
phần tử trong DTD, sử dụng từ khóa nào:

A. ELEMENT

B. ATTLIST

C. ENTITY

D. CHOICE

Đáp án: B

Câu 2.11. DTD có thể được sử dụng để xác định:

A. Cấu trúc của một tài liệu XML

B. Phương thức truy cập cơ sở dữ liệu

C. Các lệnh điều khiển trong JavaScript

D. Tất cả các phương án trên đều sai

Đáp án: A

Câu 2.12. Trong DTD, để xác định một phần tử con của phần tử khác, sử dụng từ khóa:

A. ELEMENT

B. ATTLIST

C. ENTITY

D. NOTATION

Đáp án: A

10
Câu 2.13. Trong DTD, để xác định một thuộc tính có thể xuất hiện trong một phần tử, sử dụng từ
khóa:

A. ELEMENT

B. ATTLIST

C. ENTITY

D. NOTATION

Đáp án: B

Câu 2.14. Trong DTD, để xác định một phần tử có thể chứa một số lượng phần tử con bất kỳ, sử
dụng từ khóa:

A. ANY

B. EMPTY

C. #PCDATA

D. Tất cả các phương án trên đều sai

Đáp án: A

Câu 2.15. Trong DTD, để xác định một phần tử không có phần tử con hoặc văn bản, sử dụng từ
khóa:

A. ANY

B. EMPTY

C. #PCDATA

D. Tất cả các phương án trên đều sai

Đáp án: B

Câu 2.16. Trong DTD, để xác định một phần tử có thể chứa văn bản, sử dụng từ khóa:

A. ANY

B. EMPTY

C. #PCDATA

D. Tất cả các phương án trên đều sai


11
Đáp án: C

Câu 2.17. Trong DTD, để xác định một thuộc tính phải xuất hiện trong một phần tử, sử dụng từ
khóa:

A. REQUIRED

B. IMPLIED

C. FIXED

D. Tất cả các phương án trên đều sai

Đáp án: A

Câu 2.18. Trong DTD, để xác định một thuộc tính không cần thiết xuất hiện trong một phần tử,
sử dụng từ khóa:

A. REQUIRED

B. IMPLIED

C. FIXED

D. Tất cả các phương án trên đều sai

Đáp án: B

Câu 2.19. Trong DTD, để xác định giá trị mặc định cho một thuộc tính, sử dụng từ khóa:

A. REQUIRED

B. IMPLIED

C. FIXED

D. DEFAULT

Đáp án: D

Câu 2.20. DTD là viết tắt của thuật ngữ gì?

A. Data Type Definition

B. Document Type Definition

C. Directory Type Definition

12
D. Design Type Definition

Câu 2.21. DTD được sử dụng để làm gì trong XML?

A. Mô tả cấu trúc và kiểu dữ liệu cho các phần tử trong tài liệu XML

B. Mã hóa dữ liệu XML để đảm bảo an toàn

C. Thiết kế giao diện cho tài liệu XML

D. Chuyển đổi tài liệu XML sang định dạng khác

Câu 2.22. DTD được định nghĩa trong tài liệu XML bằng cách sử dụng từ khóa nào?

A. <!ENTITY>

B. <!DOCTYPE>

C. <!ELEMENT>

D. <!NOTATION>

Câu 2.23. Phần tử nào trong DTD được sử dụng để mô tả một phần tử con bên trong một phần tử
cha?

A. <!ENTITY>

B. <!DOCTYPE>

C. <!ELEMENT>

D. <!NOTATION>

Câu 2.24. Trong DTD, đường dẫn tương đối đến một tài liệu được sử dụng bằng từ khóa nào?

A. SYSTEM

B. PUBLIC

C. ID

13
D. NDATA

Câu 2.25. Trong DTD, từ khóa nào được sử dụng để chỉ định rằng một phần tử là bắt buộc phải
xuất hiện trong tài liệu XML?

A. #REQUIRED

B. #IMPLIED

C. #FIXED

D. #CDATA

Câu 2.26. Để khai báo một phần tử có thể có một số lượng bất kỳ các phần tử con, bạn sử dụng:

A. EMPTY

B. ANY

C. #PCDATA

D. (phần tử con)*

Câu 2.27. Để khai báo một phần tử chỉ có thể xuất hiện một lần và có một số lượng bất kỳ các
thuộc tính, bạn sử dụng:

A. (phần tử con)+

B. (phần tử con)*

C. (phần tử con)?

D. EMPTY

Câu 2.28. Để khai báo một thuộc tính bắt buộc phải xuất hiện trong phần tử, bạn sử dụng:

A. #REQUIRED

B. #IMPLIED

14
C. #FIXED

D. #DEFAULT

Câu 2.29. Để khai báo một thuộc tính có giá trị mặc định trong phần tử, bạn sử dụng:

A. #REQUIRED

B. #IMPLIED

C. #FIXED

D. #DEFAULT

Câu 2.30. Để khai báo rằng các phần tử con của một phần tử phải được sắp xếp theo một thứ tự
nhất định, bạn sử dụng:

A. ELEMENTS

B. ORDERED

C. SEQUENCE

D. NONE

Câu 2.31. Để khai báo một phần tử có thể chứa bất kỳ phần tử con nào và bất kỳ thuộc tính nào,
bạn sử dụng:

A. (phần tử con)*

B. ANY

C. #PCDATA

D. EMPTY

Câu 2.32. Để khai báo một thuộc tính chỉ có thể xuất hiện một lần và có giá trị được khai báo cố
định, bạn sử dụng:

A. #REQUIRED
15
B. #IMPLIED

C. #FIXED

D. #DEFAULT

Câu 2.33. Để khai báo một tài liệu DTD chứa các khai báo phần tử và thuộc tính, bạn sử dụng:

A. <!ELEMENT>

B. <!DOCTYPE>

C. <!ATTLIST>

D. <!ENTITY>

Câu 2.34. Để khai báo một thuộc tính không bắt buộc phải xuất hiện trong phần tử, bạn sử dụng:

A. #REQUIRED

B. #IMPLIED

C. #FIXED

D. #DEFAULT

Câu 2.35. Trong DTD, thực thể văn bản có thể được định nghĩa bằng cách nào?

a) Sử dụng cú pháp <!ENTITY>

b) Sử dụng cú pháp <!ELEMENT>

c) Sử dụng cú pháp <!ATTLIST>

d) Sử dụng cú pháp <!DOCTYPE>

Câu 2.36. Trong XML, để tham chiếu đến một thực thể văn bản đã khai báo, ta sử dụng cú pháp
gì?

a) &entity;

16
b) <!ENTITY entity SYSTEM "file.xml">

c) #entity;

d) <!ENTITY entity "text">

Câu 2.37. Trong XML, để khai báo một thực thể, ta sử dụng cú pháp gì?

a) <!ENTITY entityname "entityvalue">

b) <!ENTITY "entityname" "entityvalue">

c) <!ENTITY entityname = "entityvalue">

d) <!ENTITY "entityname" = "entityvalue">

Câu 2.38. Trong XML, để khai báo một DTD cho một tài liệu, ta sử dụng cú pháp gì?

a) <!DOCTYPE doctype SYSTEM "dtdfile.dtd">

b) <!DOCTYPE SYSTEM "dtdfile.dtd" doctype>

c) <!DOCTYPE "dtdfile.dtd" SYSTEM doctype>

d) <!DOCTYPE doctype PUBLIC "dtdfile.dtd" SYSTEM>

Câu 2.39. Trong XML, để định nghĩa một thuộc tính trong DTD, ta sử dụng cú pháp gì?

a) <!ATTLIST elementname attributename attribute-type attribute-default>

b) <!ATTLIST attributename attribute-type attribute-default elementname>

c) <!ATTLIST elementname attribute-default attribute-type attributename>

d) <!ATTLIST attribute-type attributename attribute-default elementname>

Câu 2.40. Trong XML, để tạo một phần tử giống như một phần tử khác, ta sử dụng cú pháp gì?

a) <elementname>

b) <elementname/>
17
c) <!ENTITY elementname SYSTEM "original-elementname">

d) <!ENTITY elementname "original-elementname">

Câu 2.41. Trong XML, để định nghĩa một phần tử có thể lặp lại nhiều lần, ta sử dụng cú pháp gì?

a) <!ELEMENT elementname (content)+>

b) <!ELEMENT elementname (content)*>

c) <!ELEMENT elementname (content)?>

d) <!ELEMENT elementname (content)>

Câu 2.42. Trong XML, để khai báo một thuộc tính có giá trị mặc định cho một phần tử, ta sử
dụng cú pháp gì?

a) <!ATTLIST elementname attributename attributevalue>

b) <!ATTLIST elementname attributename CDATA attributevalue>

c) <!ATTLIST elementname attributename attributevalue #REQUIRED>

d) <!ATTLIST elementname attributename attributevalue #IMPLIED>

Câu 2.43. Trong XML, để khai báo một phần tử con không cần phải có thuộc tính, ta sử dụng cú
pháp gì?

a) <!ATTLIST elementname attributename attributevalue #REQUIRED>

b) <!ATTLIST elementname attributename attributevalue #IMPLIED>

c) <!ATTLIST elementname attributename attributevalue>

d) <!ATTLIST elementname>

Câu 2.44. Trong XML, để khai báo một phần tử con bắt buộc phải có thuộc tính, ta sử dụng cú
pháp gì?

a) <!ATTLIST elementname attributename attributevalue #REQUIRED>


18
b) <!ATTLIST elementname attributename attributevalue #IMPLIED>

c) <!ATTLIST elementname attributename attributevalue>

d) <!ATTLIST elementname>

Câu 2.45. Trong XML, để khai báo một phần tử con chỉ được có giá trị thuộc tính là một chuỗi
ký tự hợp lệ, ta sử dụng cú pháp gì?

a) <!ATTLIST elementname attributename CDATA #REQUIRED>

b) <!ATTLIST elementname attributename CDATA #IMPLIED>

c) <!ATTLIST elementname attributename NMTOKEN #REQUIRED>

d) <!ATTLIST elementname attributename NMTOKENS #IMPLIED>

Câu 2.46. Trong XML, để khai báo một phần tử con chỉ được có giá trị thuộc tính là một danh
sách các chuỗi ký tự hợp lệ, ta sử dụng cú pháp gì?

a) <!ATTLIST elementname attributename NMTOKENS #REQUIRED>

b) <!ATTLIST elementname attributename NMTOKEN #REQUIRED>

c) <!ATTLIST elementname attributename CDATA #IMPLIED>

d) <!ATTLIST elementname attributename CDATA #REQUIRED>

Câu 2.47. XML Schema là gì?

a. Ngôn ngữ lập trình web

b. Ngôn ngữ đánh dấu siêu văn bản

c. Ngôn ngữ mô tả cấu trúc của các tài liệu XML

d. Tất cả đều sai

Câu 2.48. XML Schema được viết tắt là gì?

a. XSD
19
b. XMLS

c. XSLT

d. XS

Câu 2.49. XML Schema cho phép định nghĩa các gì?

a. Kiểu dữ liệu

b. Các phần tử

c. Các thuộc tính

d. Tất cả các phương án trên

Câu 2.50. XML Schema cho phép định nghĩa ràng buộc dữ liệu như thế nào?

a. Giới hạn giá trị của các phần tử

b. Giới hạn giá trị của các thuộc tính

c. Xác định các phần tử bắt buộc hoặc tùy chọn

d. Tất cả các phương án trên

Câu 2.51. XML Schema cho phép kế thừa từ một schema khác như thế nào?

a. Sử dụng khai báo import

b. Sử dụng khai báo include

c. Sử dụng khai báo redefine

d. Tất cả các phương án trên

Câu 2.52. XML Schema cho phép sử dụng các kiểu dữ liệu được định nghĩa sẵn như thế nào?

a. Sử dụng khai báo element

b. Sử dụng khai báo attribute


20
c. Sử dụng khai báo simpleType

d. Sử dụng khai báo complexType

Câu 2.53. XML Schema cho phép định nghĩa kiểu dữ liệu đơn giản như thế nào?

a. Sử dụng khai báo element

b. Sử dụng khai báo attribute

c. Sử dụng khai báo simpleType

d. Sử dụng khai báo complexType

Câu 2.54. XML Schema cho phép định nghĩa kiểu dữ liệu phức tạp như thế nào?

a. Sử dụng khai báo element

b. Sử dụng khai báo attribute

c. Sử dụng khai báo simpleType

d. Sử dụng khai báo complexType

Câu 2.55. XML Schema cho phép xác định các phần tử bắt buộc và tùy chọn như thế nào?

a. Sử dụng khai báo element

b. Sử dụng khai báo attribute

c. Sử dụng khai báo simpleType

d. Sử dụng khai báo complexType

Câu 2.56. XML Schema cho phép xác định quy tắc kết hợp các phần tử như thế nào?

a. Sử dụng khai báo element

b. Sử dụng khai báo attribute

c. Sử dụng khai báo sequence hoặc choice


21
d. Sử dụng khai báo group

Câu 2.57. XML Schema cho phép định nghĩa nhóm các phần tử như thế nào?

a. Sử dụng khai báo element

b. Sử dụng khai báo attribute

c. Sử dụng khai báo sequence hoặc choice

d. Sử dụng khai báo group

Câu 2.58. XML Schema cho phép xác định các quy tắc đối với các thuộc tính như thế nào?

a. Sử dụng khai báo element

b. Sử dụng khai báo attribute

c. Sử dụng khai báo simpleType

d. Sử dụng khai báo complexType

Câu 2.59. XML Schema cho phép xác định các giới hạn giá trị của các thuộc tính như thế nào?

a. Sử dụng khai báo element

b. Sử dụng khai báo attribute

c. Sử dụng khai báo simpleType

d. Sử dụng khai báo complexType

Câu 2.60. XML Schema cho phép định nghĩa các namespace như thế nào?

a. Sử dụng khai báo element

b. Sử dụng khai báo attribute

c. Sử dụng khai báo namespace

d. Sử dụng khai báo import


22
Câu 2.61. XML Schema cho phép xác định các quy tắc về sự kế thừa như thế nào?

a. Sử dụng khai báo element

b. Sử dụng khai báo attribute

c. Sử dụng khai báo extension hoặc restriction

d. Sử dụng khai báo group

Câu 2.62. Trong XML Schema, để xác định một phần tử có thể xuất hiện từ một lần đến nhiều
lần, ta sử dụng khai báo nào?

a. complexType

b. sequence

c. minOccurs và maxOccurs

d. simpleType

Câu 2.63. Trong XML Schema, để xác định một phần tử có chứa một tập hợp các phần tử khác,
ta sử dụng khai báo nào?

a. complexType

b. sequence

c. group

d. extension

Câu 2.64. Trong XML Schema, để định nghĩa một kiểu dữ liệu đơn giản, ta sử dụng khai báo
nào?

a. complexType

b. sequence

c. group
23
d. simpleType

Câu 2.65. Trong XML Schema, để xác định một phần tử có thể có hoặc không có trong tài liệu
XML, ta sử dụng khai báo nào?

a. complexType

b. sequence

c. minOccurs và maxOccurs

d. simpleType

Câu 2.66. Trong XML Schema, để xác định một phần tử có chứa một phần tử hoặc tập hợp các
phần tử khác, ta sử dụng khai báo nào?

a. complexType

b. sequence

c. group

d. choice

Câu 2.67. Trong XML Schema, để định nghĩa một thuộc tính cho một phần tử, ta sử dụng khai
báo nào?

a. element

b. attribute

c. simpleType

d. complexType

Câu 2.68. Trong XML Schema, để xác định một phần tử có thể chứa các phần tử con theo bất kỳ
thứ tự nào, ta sử dụng khai báo nào?

a. complexType

24
b. sequence

c. group

d. any

Câu 2.69. Trong XML Schema, để định nghĩa một phần tử có thể kế thừa từ một phần tử khác, ta
sử dụng khai báo nào?

a. complexType

b. sequence

c. extension

d. restriction

Câu 2.70. Trong XML Schema, để xác định rằng một thuộc tính chỉ được sử dụng trong một số
phần tử nhất định, ta sử dụng khai báo nào?

a. element

b. attribute

c. simpleType

d. complexType

Câu 2.71. Trong XML Schema, để xác định một phần tử có thể chứa một giá trị dữ liệu nhất định,
ta sử dụng khai báo nào?

a. simpleType

b. restriction

c. enumeration

d. all

25
Câu 2.72. Trong XML Schema, để xác định một phần tử có thể chứa một giá trị dữ liệu thuộc một
danh sách các giá trị cụ thể, ta sử dụng khai báo nào?

a. simpleType

b. restriction

c. enumeration

d. all

Câu 2.73. Trong XML Schema, để xác định một phần tử có thể chứa tất cả các phần tử con trong
bất kỳ thứ tự nào, ta sử dụng khai báo nào?

a. complexType

b. sequence

c. group

d. all

Câu 2.74. Trong XML Schema, để xác định một phần tử có thể kế thừa tất cả các thuộc tính của
một phần tử khác, ta sử dụng khai báo nào?

a. complexType

b. sequence

c. extension

d. restriction

Câu 2.75. Trong XML Schema, để xác định một thuộc tính có thể có giá trị rỗng, ta sử dụng khai
báo nào?

a. element

b. attribute

c. simpleType

d. complexType

26
Câu 2.76. Trong XML Schema, để định nghĩa một phần tử có chứa nhiều phần tử con cùng loại,
ta sử dụng khai báo nào?

a. complexType

b. sequence

c. group

d. choice

Câu 2.77. Trong XML Schema, để xác định rằng một thuộc tính chỉ có thể được sử dụng trong
một phần tử nhất định, ta sử dụng khai báo nào?

a. element

b. attribute

c. simpleType

d. complexType

Câu 2.78. Trong XML Schema, để xác định một phần tử có thể chứa một tập hợp các phần tử
khác trong bất kỳ thứ tự nào, ta sử dụng khai báo nào?

a. complexType

b. sequence

c. group

d. all

Câu 2.79. Trong XML Schema, để xác định một phần tử có chứa một phần tử con cố định, ta sử
dụng khai báo nào?

a. complexType

b. sequence

27
c. group

d. choice

28
KHỐI 3. Xpath và Xquery

Câu 3.1. XPath là gì?

a) Ngôn ngữ truy vấn tài liệu XML

b) Ngôn ngữ lập trình web

c) Ngôn ngữ truy vấn cơ sở dữ liệu

d) Tất cả đều sai

Câu 3.2. XPath có thể truy vấn thông tin từ tài liệu XML như thế nào?

a) Sử dụng cú pháp đơn giản để chỉ định vị trí các phần tử và thuộc tính trong tài liệu

b) Sử dụng các lệnh lập trình để thực hiện các thao tác truy vấn

c) Sử dụng SQL để truy vấn thông tin từ tài liệu XML

d) Tất cả đều sai

Câu 3.3. Trong XPath, dấu “/” được sử dụng để làm gì?

a) Chỉ định vị trí của phần tử gốc trong tài liệu

b) Chỉ định vị trí của phần tử con đầu tiên của phần tử hiện tại

c) Chỉ định vị trí của phần tử cuối cùng trong tài liệu

d) Tất cả đều sai

Câu 3.4. Trong XPath, dấu “//” được sử dụng để làm gì?

a) Truy vấn tất cả các phần tử con của phần tử hiện tại

b) Truy vấn tất cả các phần tử con và phần tử cháu của phần tử hiện tại

c) Truy vấn tất cả các phần tử con của phần tử gốc trong tài liệu

d) Tất cả đều sai

29
Câu 3.5. Trong XPath, dấu “@” được sử dụng để làm gì?

a) Chỉ định vị trí của phần tử gốc trong tài liệu

b) Chỉ định vị trí của phần tử con đầu tiên của phần tử hiện tại

c) Chỉ định vị trí của phần tử cuối cùng trong tài liệu

d) Chỉ định vị trí của thuộc tính của phần tử hiện tại

Câu 3.6. Trong XPath, toán tử “|” được sử dụng để làm gì?

a) Tìm tất cả các phần tử có tên giống nhau trong tài liệu

b) Kết hợp các kết quả từ hai biểu thức truy vấn khác nhau

c) Truy vấn tất cả các phần tử con của phần tử hiện tại

d) Tất cả đều sai

Câu 3.7. Trong XPath, hàm “last()” được sử dụng để làm gì?

a) Trả về chỉ số của phần tử cuối cùng trong tài liệu

b) Trả về giá trị của thuộc tính cuối cùng trong phần tử hiện tại

c) Trả về số lượng phần tử con của phần tử hiện tại

d) Trả về số lượng phần tử con của phần tử gốc trong tài liệu

Câu 3.8. Trong XPath, hàm “substring()” được sử dụng để làm gì?

a) Lấy một phần của một chuỗi

b) Trích xuất nội dung của một phần tử

c) Thay thế một phần của một chuỗi bằng một chuỗi khác

d) Tất cả đều sai

30
Câu 3.9. Trong XPath, hàm “count()” được sử dụng để làm gì?

a) Đếm số lượng phần tử được chọn

b) Đếm số lượng thuộc tính của một phần tử

c) Đếm số lượng phần tử trong tài liệu

d) Tất cả đều sai

Câu 3.10. Trong XPath, hàm “normalize-space()” được sử dụng để làm gì?

a) Loại bỏ khoảng trắng dư thừa trong một chuỗi

b) Thay thế một chuỗi bằng một chuỗi khác

c) Trích xuất nội dung của một phần tử

d) Tất cả đều sai

Câu 3.11. Ký tự nào được sử dụng để chỉ định đường dẫn tuyệt đối trong Xpath?

a. /

b. //

c. .

d. ..

Câu 3.12. Ký tự nào được sử dụng để chỉ định đường dẫn tương đối trong Xpath?

a. /

b. //

c. .

d. ..

Câu 3.13. Để chọn tất cả các phần tử có tên là "book", ta sử dụng cú pháp nào?
31
a. //book

b. /book

c. book

d. //*book

Câu 3.14. Để chọn tất cả các phần tử có thuộc tính "category" và giá trị của thuộc tính đó là
"fiction", ta sử dụng cú pháp nào?

a. //@category='fiction'

b. //@category=="fiction"

c. //@category=='fiction'

d. //@category="fiction"

Câu 3.15. Để chọn tất cả các phần tử con trực tiếp của phần tử có tên là "bookstore", ta sử dụng
cú pháp nào?

a. /bookstore/*

b. //bookstore/*

c. bookstore/*

d. //bookstore/

Câu 3.16. Để chọn tất cả các phần tử con trực tiếp của phần tử có tên là "bookstore" và có thuộc
tính "location", ta sử dụng cú pháp nào?

a. /bookstore[@location]

b. //bookstore[@location]

c. /bookstore/*[@location]

d. //*bookstore[@location]

32
Câu 3.17. Để chọn phần tử đầu tiên có tên là "book" trong tài liệu XML, ta sử dụng cú pháp nào?

a. /book[0]

b. //book[1]

c. book[0]

d. //*book[1]

Câu 3.18. Để chọn tất cả các phần tử con trực tiếp của phần tử có tên là "bookstore" và có giá trị
thuộc tính "location" là "New York", ta sử dụng cú pháp nào?

a. /bookstore/*[@location="New York"]

b. //bookstore[@location="New York"]/*

c. bookstore[@location="New York"]/*

d. //*book

Câu 3.19. Để chọn tất cả các phần tử con trực tiếp của phần tử có tên là "book" và có thuộc tính
"category" là "fiction", ta sử dụng cú pháp nào?

a. /bookstore/book[@category='fiction']/*

b. //book[@category="fiction"]/*

c. book[@category='fiction']/*

d. //*book[@category="fiction"]

Câu 3.20. Để chọn tất cả các phần tử con trực tiếp của phần tử có tên là "book" và có thuộc tính
"category" bắt đầu bằng chuỗi "co", ta sử dụng cú pháp nào?

a. //book[@category="co*"]

b. //book[starts-with(@category, "co")]

c. //book[@category^="co"]

d. //book[@category="co"]

33
Câu 3.21. Để chọn tất cả các phần tử con trực tiếp của phần tử có tên là "book" và có thuộc tính
"price" lớn hơn 30, ta sử dụng cú pháp nào?

a. //book[@price>"30"]/*

b. //book[price>"30"]/*

c. //book[@price>30]/*

d. //book[price>30]/*

Câu 3.22. Để chọn tất cả các phần tử con trực tiếp của phần tử có tên là "book" và có thuộc tính
"price" nhỏ hơn hoặc bằng 30, ta sử dụng cú pháp nào?

a. //book[@price<="30"]/*

b. //book[price<="30"]/*

c. //book[@price<=30]/*

d. //book[price<=30]/*

Câu 3.23. Để chọn tất cả các phần tử con trực tiếp của phần tử có tên là "book" và có giá trị của
thuộc tính "author" chứa chuỗi "John", ta sử dụng cú pháp nào?

a. //book[contains(@author, "John")]

b. //book[@author*="John"]

c. //book[@author="John"]

d. //book[contains(author, "John")]

Câu 3.24. Để chọn tất cả các phần tử có tên là "book" và có giá trị của thuộc tính "year" là "2005"
hoặc "2006", ta sử dụng cú pháp nào?

a. //book[@year="2005" or @year="2006"]

b. //book[@year=("2005","2006")]

c. //book[@year="2005"] or //book[@year="2006"]

34
d. //book[@year=("2005" or "2006")]

Câu 3.25. Để chọn tất cả các phần tử con trực tiếp của phần tử đầu tiên có tên là "book" và có
thuộc tính "category" là "fiction", ta sử dụng cú pháp nào?

a. /bookstore/book[@category="fiction"][1]/*

b. (//book[@category="fiction"])[1]/*

c. //book[@category="fiction"]/child::node()

d. //book[@category="fiction"][position()=1]/*

Câu 3.26. Để chọn tất cả các phần tử con trực tiếp của phần tử có tên là "book" và có tên phần tử
con là "author" hoặc "title", ta sử dụng cú pháp nào?

a. //book/[name()="author" or name()="title"]

b. //book/(author | title)

c. //book/*[name()="author" or name()="title"]

d. //book/*[author or title]

Câu 3.27. Để chọn tất cả các phần tử con trực tiếp của phần tử đầu tiên có tên là "book" và có
thuộc tính "price" lớn hơn 30, ta sử dụng cú pháp nào?

a. /bookstore/book[@price>"30"][1]/*

b. //book[@price>"30"][position()=1]/*

c. (//book[@price>30])[1]/*

d. //book[@price>"30"]/child::node()[1]

Câu 3.28. XQuery là gì?

a) Ngôn ngữ truy vấn XML

b) Ngôn ngữ lập trình hướng đối tượng


35
c) Ngôn ngữ lập trình ứng dụng web

d) Ngôn ngữ lập trình máy tính

Câu 3.29. XQuery có thể truy vấn dữ liệu từ đâu?

a) Tập tin XML

b) Cơ sở dữ liệu XML

c) Web service

d) Tất cả đều đúng

Câu 3.30. XQuery sử dụng cú pháp nào để truy vấn dữ liệu?

a) XQuery là ngôn ngữ tự động phân tích cú pháp, không cần sử dụng cú pháp đặc biệt

b) XQuery sử dụng cú pháp giống với SQL

c) XQuery sử dụng cú pháp giống với XPath

d) XQuery sử dụng cú pháp giống với JavaScript

Câu 3.31. XQuery có thể truy vấn các phần tử con của một phần tử được chọn như thế nào?

a) Sử dụng toán tử “+”

b) Sử dụng toán tử “-“

c) Sử dụng toán tử “/”

d) Sử dụng toán tử “*”

Câu 3.32. XQuery có thể truy vấn các phần tử theo nhiều tiêu chí khác nhau bằng cách sử dụng:

a) Lệnh WHERE

b) Lệnh HAVING

c) Lệnh ORDER BY
36
d) Lệnh GROUP BY

Câu 3.33. XQuery có thể sắp xếp kết quả truy vấn theo tiêu chí nào?

a) Tên phần tử

b) Giá trị thuộc tính

c) Thứ tự xuất hiện

d) Tất cả đều đúng

Câu 3.34. Trong XQuery, hàm position() được sử dụng để làm gì?

a) Lấy vị trí hiện tại trong danh sách kết quả truy vấn

b) Tính toán giá trị trung bình của các phần tử trong danh sách kết quả truy vấn

c) Đếm số lượng phần tử trong danh sách kết quả truy vấn

d) Tìm phần tử đầu tiên trong danh sách kết quả truy vấn

Câu 3.35. Trong XQuery, toán tử “or” được sử dụng để làm gì?

a) Kết hợp hai điều kiện để trả về kết quả truy vấn

b) Tạo ra một danh sách các phần tử từ hai danh sách khác nhau

c) Sắp xếp kết quả truy vấn theo thứ tự giảm dần

d) Lấy giá trị tuyệt đối của các giá trị số

Câu 3.36. XQuery có thể sử dụng các biểu thức điều kiện để lọc dữ liệu như thế nào?

a) Sử dụng biểu thức if/else

b) Sử dụng biểu thức switch/case

c) Sử dụng biểu thức where

d) Sử dụng biểu thức filter


37
Câu 3.37. Trong XQuery, hàm string-length() được sử dụng để làm gì?

a) Đếm số lượng phần tử trong danh sách kết quả truy vấn

b) Tính toán tổng giá trị của các phần tử trong danh sách kết quả truy vấn

c) Lấy độ dài của một chuỗi

d) Tạo ra một chuỗi mới từ một chuỗi cũ

Câu 3.38. Trong XQuery, toán tử “=” được sử dụng để so sánh gì?

a) So sánh các giá trị số

b) So sánh các giá trị chuỗi

c) So sánh các giá trị thuộc tính

d) Tất cả đều đúng

Câu 3.39. Trong XQuery, toán tử “descendant” được sử dụng để làm gì?

a) Lấy tất cả các phần tử con của một phần tử

b) Lấy tất cả các phần tử con cháu của một phần tử

c) Lấy tất cả các phần tử cha của một phần tử

d) Tất cả đều sai

Câu 3.40. Trong XQuery, toán tử “mod” được sử dụng để làm gì?

a) Lấy phần dư của một phép chia

b) Tính toán lũy thừa của một số

c) So sánh hai giá trị số và trả về kết quả là TRUE hoặc FALSE

d) Tất cả đều sai

38
Câu 3.41. Trong XQuery, toán tử “min” được sử dụng để làm gì?

a) Tìm giá trị nhỏ nhất trong một danh sách

b) Lấy ra phần tử có vị trí chỉ định trong một danh sách

c) Thực hiện một phép toán điều kiện trên một danh sách

d) Tất cả đều sai

Câu 3.42. Trong XQuery, toán tử “ancestor” được sử dụng để làm gì?

a) Lấy tất cả các phần tử con của một phần tử

b) Lấy tất cả các phần tử con cháu của một phần tử

c) Lấy tất cả các phần tử cha của một phần tử

d) Tất cả đều sai

Câu 3.43. Trong XQuery, hàm count() được sử dụng để làm gì?

a) Đếm số lượng phần tử trong danh sách kết quả truy vấn

b) Tính toán tổng giá trị của các phần tử trong danh sách kết quả truy vấn

c) Lấy độ dài của một chuỗi

d) Tạo ra một chuỗi mới từ một chuỗi cũ

Câu 3.44. Trong XQuery, toán tử “and” được sử dụng để làm gì?

a) Kết hợp hai điều kiện để trả về kết quả truy vấn

b) Tạo ra một danh sách các phần tử từ hai danh sách khác nhau

c) Sắp xếp kết quả truy vấn theo thứ tự giảm dần

d) Lấy giá trị tuyệt đối của các giá trị số

39
Câu 3.45. Trong XQuery, hàm concat() được sử dụng để làm gì?

a) Nối các chuỗi lại với nhau

b) Lấy độ dài của một chuỗi

c) Tạo ra một chuỗi mới từ một chuỗi cũ

d) Tất cả đều sai

Câu 3.46. Trong XQuery, toán tử “eq” được sử dụng để làm gì?

a) So sánh hai giá trị số và trả về kết quả là TRUE hoặc FALSE

b) So sánh hai chuỗi và trả về kết quả là TRUE hoặc FALSE

c) Chuyển đổi một chuỗi sang số

d) Tất cả đều sai

Câu 3.47. Trong XQuery, toán tử “ne” được sử dụng để làm gì?

a) So sánh hai giá trị số và trả về kết quả là TRUE hoặc FALSE

b) So sánh hai chuỗi và trả về kết quả là TRUE hoặc FALSE

c) Chuyển đổi một chuỗi sang số

d) Tất cả đều sai

Câu 3.48. Trong XQuery, toán tử “lt” được sử dụng để làm gì?

a) So sánh hai giá trị số và trả về kết quả là TRUE hoặc FALSE

b) So sánh hai chuỗi và trả về kết quả là TRUE hoặc FALSE

c) Chuyển đổi một chuỗi sang số

d) Tất cả đều sai

Câu 3.49. Trong XQuery, toán tử “le” được sử dụng để làm gì?
40
a) So sánh hai giá trị số và trả về kết quả là TRUE hoặc FALSE

b) So sánh hai chuỗi và trả về kết quả là TRUE hoặc FALSE

c) Chuyển đổi một chuỗi sang số

d) Tất cả đều sai

Câu 3.50. Trong XQuery, toán tử “gt” được sử dụng để làm gì?

a) So sánh hai giá trị số và trả về kết quả là TRUE hoặc FALSE

b) So sánh hai chuỗi và trả về kết quả là TRUE hoặc FALSE

c) Chuyển đổi một chuỗi sang số

d) Tất cả đều sai

Câu 3.51. Trong XQuery, toán tử “ge” được sử dụng để làm gì?

a) So sánh hai giá trị số và trả về kết quả là TRUE hoặc FALSE

b) So sánh hai chuỗi và trả về kết quả là TRUE hoặc FALSE

c) Chuyển đổi một chuỗi sang số

d) Tất cả đều sai

Câu 3.52. Trong XQuery, hàm “contains()” được sử dụng để làm gì?

a) Kiểm tra xem một chuỗi có chứa một chuỗi con được chỉ định hay không

b) Trích xuất một giá trị từ một node

c) Chuyển đổi một chuỗi sang số

d) Tất cả đều sai

Câu 3.53. Trong XQuery, hàm “substring()” được sử dụng để làm gì?

a) Trích xuất một chuỗi con từ một chuỗi


41
b) Tính tổng các giá trị trong một danh sách

c) Lấy độ dài của một chuỗi

d) Tất cả đều sai

Câu 3.54. Trong XQuery, hàm “avg()” được sử dụng để làm gì?

a) Tính trung bình cộng của các giá trị số trong một danh sách

b) Tính tổng của các giá trị số trong một danh sách

c) Sắp xếp một danh sách theo thứ tự tăng dần

d) Tất cả đều sai

Câu 3.55. Trong XQuery, hàm “sum()” được sử dụng để làm gì?

a) Tính tổng của các giá trị số trong một danh sách

b) Tính trung bình cộng của các giá trị số trong một danh sách

c) Sắp xếp một danh sách theo thứ tự tăng dần

d) Tất cả đều sai

Câu 3.56. Trong XQuery, hàm “position()” được sử dụng để làm gì?

a) Trả về vị trí hiện tại của con trỏ trong danh sách

b) Trả về số lượng node con của một node cha

c) Trả về số lượng node cùng loại trước node hiện tại trong danh sách

d) Tất cả đều sai

Câu 3.57. Trong XQuery, hàm “distinct-values()” được sử dụng để làm gì?

a) Lọc ra các giá trị trùng lặp trong một danh sách

b) Chuyển đổi một chuỗi sang số


42
c) Sắp xếp một danh sách theo thứ tự tăng dần

d) Tất cả đều sai

Câu 3.58. Trong XQuery, hàm “if()” được sử dụng để làm gì?

a) Thực hiện một phép toán điều kiện

b) Thực hiện một phép toán logic AND

c) Thực hiện một phép toán logic OR

d) Tất cả đều sai

Câu 3.59. Trong XQuery, hàm “element()” được sử dụng để làm gì?

a) Tạo ra một element mới

b) Lấy ra các giá trị của một element

c) Thực hiện một phép toán điều kiện trên các element

d) Tất cả đều sai

Câu 3.60. Trong XQuery, hàm “attribute()” được sử dụng để làm gì?

a) Tạo ra một attribute mới

b) Lấy ra các giá trị của một attribute

c) Thực hiện một phép toán điều kiện trên các attribute

d) Tất cả đều sai

Câu 3.61. Trong XQuery, toán tử “union” được sử dụng để làm gì?

a) Kết hợp hai danh sách thành một danh sách mới

b) Loại bỏ các giá trị trùng lặp trong một danh sách

c) Tìm các giá trị chung trong hai danh sách


43
d) Tất cả đều sai

Câu 3.62. Trong XQuery, toán tử “intersect” được sử dụng để làm gì?

a) Kết hợp hai danh sách thành một danh sách mới

b) Loại bỏ các giá trị trùng lặp trong một danh sách

c) Tìm các giá trị chung trong hai danh sách

d) Tất cả đều sai

Câu 3.63. Trong XQuery, toán tử “except” được sử dụng để làm gì?

a) Kết hợp hai danh sách thành một danh sách mới

b) Loại bỏ các giá trị trùng lặp trong một danh sách

c) Loại bỏ các giá trị có trong danh sách thứ hai khỏi danh sách thứ nhất

d) Tất cả đều sai

Câu 3.64. Trong XQuery, toán tử “some” được sử dụng để làm gì?

a) Tạo ra một danh sách mới từ các phần tử có trong danh sách ban đầu

b) Kiểm tra xem có tồn tại ít nhất một phần tử trong danh sách thỏa mãn một điều kiện nào đó

c) Kiểm tra xem tất cả các phần tử trong danh sách đều thỏa mãn một điều kiện nào đó

d) Tất cả đều sai

Câu 3.65. Trong XQuery, toán tử “every” được sử dụng để làm gì?

a) Tạo ra một danh sách mới từ các phần tử có trong danh sách ban đầu

b) Kiểm tra xem có tồn tại ít nhất một phần tử trong danh sách thỏa mãn một điều kiện nào đó

c) Kiểm tra xem tất cả các phần tử trong danh sách đều thỏa mãn một điều kiện nào đó

d) Tất cả đều sai


44
Câu 3.66. Trong XQuery, toán tử “count” được sử dụng để làm gì?

a) Đếm số lượng phần tử trong một danh sách

b) Lấy ra phần tử có vị trí chỉ định trong một danh sách

c) Thực hiện một phép toán điều kiện trên một danh sách

d) Tất cả đều sai

Câu 3.67. Trong XQuery, toán tử “order by” được sử dụng để làm gì?

a) Sắp xếp các phần tử trong một danh sách theo thứ tự tăng dần hoặc giảm dần của giá trị của
một thuộc tính hoặc phần tử

b) Tìm tất cả các phần tử có giá trị thuộc tính hoặc phần tử trùng nhau trong một danh sách

c) Thêm một phần tử mới vào danh sách

d) Tất cả đều sai

Câu 3.68. Trong XQuery, toán tử “group by” được sử dụng để làm gì?

a) Nhóm các phần tử trong một danh sách dựa trên giá trị của một thuộc tính hoặc phần tử

b) Loại bỏ các phần tử trùng nhau trong một danh sách

c) Tìm tất cả các phần tử có giá trị thuộc tính hoặc phần tử trùng nhau trong một danh sách

d) Tất cả đều sai

Câu 3.69. Trong XQuery, toán tử “sum” được sử dụng để làm gì?

a) Tính tổng các phần tử trong một danh sách

b) Lấy ra phần tử có vị trí chỉ định trong một danh sách

c) Thực hiện một phép toán điều kiện trên một danh sách

d) Tất cả đều sai

45
Câu 3.70. Trong XQuery, toán tử “avg” được sử dụng để làm gì?

a) Tính trung bình các phần tử trong một danh sách

b) Lấy ra phần tử có vị trí chỉ định trong một danh sách

c) Thực hiện một phép toán điều kiện trên một danh sách

d) Tất cả đều sai

46
KHỐI 4. Xlink, Xpointer, XSL và XSLT

Câu 4.1. XLink là viết tắt của từ gì?

a. XML Link

b. XHTML Link

c. XQuery Link

d. XSD Link

Câu 4.2. XLink được sử dụng để làm gì trong tài liệu XML?

a. Tạo liên kết giữa các tài liệu XML khác nhau

b. Tạo liên kết giữa các phần tử trong cùng một tài liệu XML

c. Tạo liên kết giữa các phần tử trong cùng một tài liệu HTML

d. Tạo liên kết giữa các tài liệu HTML khác nhau

Câu 4.3. Để tạo một liên kết đơn giản trong XLink, chúng ta sử dụng phần tử nào?

a. <link>

b. <href>

c. <a>

d. <xlink>

Câu 4.4. Để tạo một liên kết trong XLink và xác định đối tượng được liên kết bằng một định danh
URI, chúng ta sử dụng thuộc tính nào của phần tử <a>?

a. xlink:role

b. xlink:type

c. xlink:title

d. xlink:href

47
Câu 4.5. Để tạo một liên kết trong XLink và xác định quan hệ giữa tài liệu nguồn và đối tượng
được liên kết, chúng ta sử dụng thuộc tính nào của phần tử <a>?

a. xlink:arcrole

b. xlink:type

c. xlink:title

d. xlink:href

Câu 4.6. Thuộc tính xlink:type của phần tử <a> được sử dụng để xác định gì?

a. Loại tài liệu được liên kết

b. Loại liên kết được tạo

c. Loại quan hệ giữa tài liệu nguồn và đối tượng được liên kết

d. Loại phương thức truy cập đến tài liệu nguồn

Câu 4.7. Trong XLink, phần tử <arc> được sử dụng để làm gì?

a. Xác định quan hệ giữa tài liệu nguồn và đối tượng được liên kết

b. Xác định quan hệ giữa các đối tượng được liên kết

c. Xác định loại tài liệu được liên kết

d. Xác định quan hệ giữa tài liệu nguồn và tài liệu đích

Câu 4.8. Trong XLink, thuộc tính xlink:title của phần tử <a> được sử dụng để làm gì?

a. Chỉ định tiêu đề của đối tượng được liên kết

b. Chỉ định mô tả ngắn gọn của đối tượng được liên kết

c. Chỉ định thông tin chi tiết về đối tượng được liên kết

d. Chỉ định mô tả của liên kết

48
Câu 4.9. Trong XLink, thuộc tính xlink:show của phần tử <a> được sử dụng để làm gì?

a. Xác định cách hiển thị đối tượng được liên kết

b. Xác định loại tài liệu được liên kết

c. Xác định quan hệ giữa tài liệu nguồn và tài liệu đích

d. Xác định quan hệ giữa các đối tượng được liên kết

Câu 4.10. Trong XLink, phần tử <locator> được sử dụng để làm gì?

a. Xác định quan hệ giữa tài liệu nguồn và đối tượng được liên kết

b. Xác định địa chỉ của đối tượng được liên kết

c. Xác định loại tài liệu được liên kết

d. Xác định quan hệ giữa tài liệu nguồn và tài liệu đích

Câu 4.11. Trong XLink, thuộc tính xlink:actuate của phần tử <arc> được sử dụng để làm gì?

a. Xác định quan hệ giữa tài liệu nguồn và đối tượng được liên kết

b. Xác định địa chỉ của đối tượng được liên kết

c. Xác định cách kích hoạt của đối tượng được liên kết

d. Xác định cách hiển thị của đối tượng được liên kết

Câu 4.12. Trong XML, để khai báo một khai báo đoạn mã xử lý, ta sử dụng cú pháp gì?

a) <!DOCTYPE ...>

b) <!ELEMENT ...>

c) <?xml ...>

d) <?processing-instruction ...>

49
Câu 4.13. Trong XML, để khai báo một namespace, ta sử dụng cú pháp gì?

a) <namespace ...>

b) <xml:namespace ...>

c) xmlns

d) xml:xmlns

Câu 4.14. Trong XML, để đặt tên cho một namespace, ta sử dụng cú pháp gì?

a) <namespace ...>

b) <xml:namespace ...>

c) xmlns

d) xml:xmlns

Câu 4.15. Trong XML, để tham chiếu đến một phần tử trong một namespace, ta sử dụng cú pháp
gì?

a) namespace:element

b) <element namespace>

c) <xml:namespace element>

d) <element xml:namespace>

Câu 4.16. Trong XML, để khai báo một phần tử được sử dụng trong một namespace, ta sử dụng
cú pháp gì?

a) namespace:element

b) <element namespace>

c) <xml:namespace element>

d) <element xml:namespace>

50
Câu 4.17. Trong XML, để tạo một phần tử trống, ta sử dụng cú pháp gì?

a) <element/ >

b) <element></element>

c) <element>

d) <element />

Câu 4.18. Trong XML, để chèn nội dung văn bản vào một phần tử, ta sử dụng cú pháp gì?

a) <element>text</element>

b) <element text />

c) <element>"text"</element>

d) <element><text></element>

Câu 4.19. Trong XML, để chèn nội dung của một phần tử vào nội dung của một phần tử khác, ta
sử dụng cú pháp gì?

a) <xsl:value-of select="element" />

b) <xsl:copy-of select="element" />

c) <xsl:apply-templates select="element" />

d) <xsl:template match="element" />

Câu 4.20. Trong XML, để chèn một đoạn mã xử lý vào một tài liệu XML, ta sử dụng cú pháp gì?

a) <![CDATA[...]]>

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

c) <?processing-instruction ...?>

d) <xsl:stylesheet ...>

51
Câu 4.21. Trong XML, để chèn một đoạn mã xử lý vào một phần tử, ta sử dụng cú pháp gì?

a) <![CDATA[...]]>

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

c) <?processing-instruction ...?>

d) <xsl:template ...>

Câu 4.22. Trong XML, để chèn một tài liệu XML vào một tài liệu XML khác, ta sử dụng cú pháp
gì?

a) <xsl:import href="file.xml" />

b) <xsl:include href="file.xml" />

c) <xsl:apply-templates select="document('file.xml')" />

d) <xsl:value-of select="document('file.xml')" />

Câu 4.23. Trong XML, để chèn một tài liệu XML vào một phần tử, ta sử dụng cú pháp gì?

a) <xsl:import href="file.xml" />

b) <xsl:include href="file.xml" />

c) <xsl:apply-templates select="document('file.xml')" />

d) <xsl:copy-of select="document('file.xml')" />

Câu 4.24. Trong XML, để đặt tên cho một phần tử con dựa trên một giá trị biến hoặc hằng số
trong tệp tin XML, ta sử dụng phương án nào sau đây?

a) Sử dụng cú pháp <?xml-stylesheet type="text/xsl" href="filename.xsl"?> ở đầu tệp tin XML.

b) Sử dụng cú pháp <?xml-stylesheet type="text/css" href="filename.css"?> ở đầu tệp tin XML.

c) Sử dụng cú pháp <?xml-stylesheet type="application/xml" href="filename.xsl"?> ở đầu tệp tin


XML.
52
d) Không thể định nghĩa stylesheet trong tệp tin XML.

Câu 4.25. Trong XML, để áp dụng stylesheet cho một phần tử con cụ thể, ta sử dụng cú pháp gì?

a) <elementname style="stylename">

b) <elementname class="classname">

c) <elementname style="stylename">...</elementname>

d) <elementname class="classname">...</elementname>

Câu 4.26. XSLT là viết tắt của gì?

a) eXecutable Style Language Transformations

b) eXtensible Style Language Transformations

c) eXperimental Style Language Transformations

d) eXceptional Style Language Transformations

Câu 4.27. XSLT được sử dụng để làm gì?

a) Định dạng trang web

b) Xử lý tài liệu XML

c) Tạo giao diện người dùng

d) Lập trình ứng dụng di động

Câu 4.28. Một stylesheet XSLT bao gồm những gì?

a) Một tài liệu XML và một file XSD

b) Một tài liệu XML và một stylesheet CSS

c) Một tài liệu XML và một stylesheet XSLT

d) Một tài liệu XML và một file DTD


53
Câu 4.29. Câu lệnh XSLT để chọn tất cả các phần tử là gì?

a) select="*"

b) select="all"

c) select="node()"

d) select="elements()"

Câu 4.30. Câu lệnh XSLT để chọn tất cả các phần tử con của một phần tử là gì?

a) select="child::"

b) select="descendant::"

c) select="parent::"

d) select="ancestor::"

Câu 4.31. Câu lệnh XSLT để lặp lại một nhóm lệnh nhiều lần là gì?

a) for-each

b) repeat

c) while

d) if

Câu 4.32. Câu lệnh XSLT để gọi một template khác là gì?

a) call-template

b) include-template

c) import-template

d) use-template

54
Câu 4.33. Câu lệnh XSLT để chọn tất cả các phần tử là gì?

a) select="*"

b) select="all"

c) select="node()"

d) select="elements()"

Câu 4.34. Câu lệnh XSLT để tạo một đoạn văn bản mới là gì?

a) <text>

b) <value>

c) <output>

d) <template>

Câu 4.35. Câu lệnh XSLT để xử lý biểu thức boolean là gì?

a) if

b) choose

c) when

d) otherwise

Câu 4.36. Để chuyển đổi tài liệu XML thành HTML, chúng ta sử dụng gì trong XSLT?

a) HTML

b) CSS

c) XSL-FO

d) XHTML

55
Câu 4.37. Câu lệnh XSLT để thực hiện một phép tính toán là gì?

a) xsl:sum

b) xsl:value-of

c) xsl:apply-templates

d) xsl:if

Câu 4.38. Câu lệnh XSLT để tạo một điều kiện là gì?

a) xsl:if

b) xsl:choose

c) xsl:when

d) xsl:otherwise

Câu 4.39. Câu lệnh XSLT để lặp lại một tập hợp nào đó là gì?

a) xsl:for-each

b) xsl:apply-templates

c) xsl:call-template

d) xsl:if

Câu 4.40. Để sắp xếp một danh sách theo thứ tự tăng dần, chúng ta sử dụng câu lệnh nào trong
XSLT?

a) <xsl:sort order="ascending">

b) <xsl:sort order="descending">

c) xsl:order

d) xsl:apply-templates

56
Câu 4.41. Để chuyển đổi một tài liệu XML thành một file định dạng PDF, chúng ta sử dụng gì
trong XSLT?

a) XSL-FO

b) XHTML

c) HTML

d) CSS

Câu 4.42. Câu lệnh XSLT để định dạng một số là gì?

a) xsl:number

b) xsl:value-of

c) xsl:sort

d) xsl:apply-templates

Câu 4.43. Câu lệnh XSLT để lấy giá trị của một thuộc tính là gì?

a) xsl:attribute

b) xsl:value-of

c) xsl:element

d) xsl:apply-templates

Câu 4.44. Để chọn tất cả các phần tử con trực tiếp của một phần tử, chúng ta sử dụng câu lệnh
nào trong XSLT?

a) xsl:child

b) xsl:children

c) xsl:child-nodes

d) xsl:apply-templates

57
Câu 4.45. Câu lệnh XSLT để đặt tên cho một tài liệu đầu ra là gì?

a) xsl:output

b) xsl:template

c) xsl:stylesheet

d) xsl:import

Câu 4.46. Câu lệnh XSLT để xác định một mẫu phù hợp với một phần tử là gì?

a) xsl:if

b) xsl:choose

c) xsl:template

d) xsl:for-each

Câu 4.47. Câu lệnh XSLT để gọi một mẫu khác trong một mẫu hiện tại là gì?

a) xsl:apply-templates

b) xsl:call-template

c) xsl:with-param

d) xsl:template

Câu 4.48. Để xử lý các trường hợp khác nhau của một giá trị đầu vào, chúng ta sử dụng câu lệnh
nào trong XSLT?

a) xsl:if

b) xsl:choose

c) xsl:when

d) xsl:otherwise

58
Câu 4.49. Câu lệnh XSLT để định nghĩa một biến là gì?

a) xsl:variable

b) xsl:param

c) xsl:with-param

d) xsl:choose

Câu 4.50. Để sử dụng một mẫu khác trong một phần tử XML cụ thể, chúng ta sử dụng thuộc tính
nào trong XSLT?

a) select

b) match

c) mode

d) name

Câu 4.51. Câu lệnh XSLT để sắp xếp các phần tử theo giá trị của một thuộc tính là gì?

a) xsl:sort

b) xsl:apply-templates

c) xsl:for-each

d) xsl:if

Câu 4.52. Câu lệnh XSLT để thêm một thuộc tính mới cho một phần tử là gì?

a) xsl:attribute

b) xsl:copy-of

c) xsl:apply-templates

d) xsl:element

59
Câu 4.53. Để chuyển đổi một tài liệu XML thành một định dạng khác như HTML hoặc PDF,
chúng ta sử dụng gì trong XSLT?

a) xsl:template

b) xsl:stylesheet

c) xsl:output

d) xsl:param

Câu 4.54. Câu lệnh XSLT để tạo một mẫu với một tập hợp các tham số là gì?

a) xsl:template

b) xsl:apply-templates

c) xsl:with-param

d) xsl:param

Câu 4.55. Để chèn một đoạn văn bản vào một vị trí cụ thể trong tài liệu XSLT, chúng ta sử dụng
câu lệnh nào?

a) xsl:copy

b) xsl:copy-of

c) xsl:text

d) xsl:apply-templates

Câu 4.56. Câu lệnh XSLT để định nghĩa một hàm là gì?

a) xsl:variable

b) xsl:function

c) xsl:apply-templates

d) xsl:choose

60
Câu 4.57. Để xử lý một tài liệu XML với một stylesheet XSLT, chúng ta sử dụng phương thức
nào của đối tượng XML?

a) transform()

b) parse()

c) serialize()

d) validate()

Câu 4.58. Để kiểm tra một giá trị có thuộc một danh sách hay không, chúng ta sử dụng câu lệnh
nào trong XSLT?

a) xsl:if

b) xsl:choose

c) xsl:for-each

d) xsl:contains

Câu 4.59. Trong XSLT, thuộc tính name() của các phần tử XML trả về gì?

a) Tên của phần tử

b) Thẻ bao quanh phần tử

c) Nội dung của phần tử

d) Thuộc tính của phần tử

Câu 4.60. Trong XSLT, thuộc tính value() của các phần tử XML trả về gì?

a) Tên của phần tử

b) Thẻ bao quanh phần tử

c) Nội dung của phần tử

61
d) Thuộc tính của phần tử

Câu 4.61. Trong XSLT, thuộc tính select của một phần tử xsl:value-of dùng để làm gì?

a) Lựa chọn các phần tử để hiển thị

b) Chọn một thuộc tính của phần tử để hiển thị

c) Lấy giá trị của một biến hoặc tham số

d) Thực hiện một biểu thức XPath để lấy giá trị

Câu 4.62. Trong XSLT, thuộc tính match của một phần tử xsl:template dùng để làm gì?

a) Lựa chọn các phần tử để hiển thị

b) Chọn một thuộc tính của phần tử để hiển thị

c) Lựa chọn các phần tử để xử lý

d) Chọn một thuộc tính của phần tử để xử lý

Câu 4.63. Trong XSLT, câu lệnh xsl:for-each dùng để làm gì?

a) Lựa chọn các phần tử để hiển thị

b) Chọn một thuộc tính của phần tử để hiển thị

c) Thực hiện một biểu thức XPath để lấy giá trị

d) Lặp qua danh sách các phần tử để xử lý

Câu 4.64. Trong XSLT, câu lệnh xsl:sort được sử dụng để làm gì?

a) Sắp xếp các phần tử theo thứ tự tăng dần hoặc giảm dần

b) Lựa chọn các phần tử để hiển thị

c) Chọn một thuộc tính của phần tử để hiển thị

d) Lặp qua danh sách các phần tử để xử lý


62
Câu 4.65. Để lấy giá trị của một thẻ cụ thể trong tài liệu XML, chúng ta sử dụng câu lệnh nào
trong XSLT?

a) xsl:value-of

b) xsl:for-each

c) xsl:apply-templates

d) xsl:if

Câu 4.66. Để lấy tất cả các giá trị của một thuộc tính cụ thể trong tài liệu XML, chúng ta sử dụng
câu lệnh nào trong XSLT?

a) xsl:attribute

b) xsl:value-of

c) xsl:element

d) xsl:apply-templates

Câu 4.67. Câu lệnh XSLT để tạo một phần tử mới là gì?

a) xsl:attribute

b) xsl:value-of

c) xsl:element

d) xsl:apply-templates

63
KHỐI 5. DOM

Câu 5.1. XML DOM được viết tắt từ:


a) XML Data Object Model
b) XML Document Object Module
c) XML Document Object Model
d) XML Data Object Module

Câu 5.2. DOM được sử dụng để:


a) Truy xuất và thao tác trên các tài liệu có cấu trúc dạng HTML bằng các ngôn ngữ lập trình
thông dụng như Javascript, PHP…
b) Truy xuất và thao tác trên các tài liệu có cấu trúc dạng XML bằng các ngôn ngữ lập trình thông
dụng như Javascript, PHP…
c) Cả hai câu a) và b) đều sai
d) Cả hai câu a) và b) đều đúng

Câu 5.3. Javascript là một ngôn ngữ lập trình thông dịch được sử dụng rộng rãi trong các tài liệu
dạng HTML và:
a) Có thể chạy trên các trình duyệt ở phía Server
b) Có thể chạy trên các trình duyệt ở phía Client
c) Có thể chạy trên các trình duyệt ở phía Server hoặc Client
d) Các câu trên đều đúng

Câu 5.4. Javascript là một ngôn ngữ lập trình có cú pháp tương tự:
a) ngôn ngữ JAVA, với phần mở rộng là .sj
b) ngôn ngữ C, với phần mở rộng là .sj
c) ngôn ngữ JAVA, với phần mở rộng là .js
d) ngôn ngữ C, với phần mở rộng là .js

Câu 5.5. Ngôn ngữ Javascript có một số đặc điểm:


a) Yêu cầu kiểu dữ liệu của biến khai báo.
b) Không yêu cầu kiểu dữ liệu của biến khai báo. Kiểu dữ liệu của biến sẽ được tự động xác định
khi gán dữ liệu cho biến.
64
c) Khai báo hoặc không cần khai báo kiểu dữ liệu của biến đều được
d) Cả hai câu a) và b) đều sai

Câu 5.6. Trong XML DOM hãy cho biết thứ tự thực hiện của các thành phần trong các hình vẽ
dưới đây là đúng:
a)

b)

c)

65
d)

Câu 5.7. Định nghĩa và nhận xét về DOM:


a) DOM là mô hình đối tượng cho phép thao tác trên tài liệu XML từ các ngôn ngữ lập trình
b) DOM được dùng để truy xuất các tài liệu dạng HTML và XML
c) DOM độc lập với hệ điều hành và dựa theo kỹ thuật lập trình hướng đối tượng để mô tả tài liệu
d) Các câu trên đều đúng

Câu 5.8. Định nghĩa và nhận xét về DOM:


a) DOM xem một tài liệu XML như là một cây, với thẻ gốc là nút gốc
b) Mỗi thẻ bên trong tập tin XML là một đối tượng XmlAttribute của DOM
c) Mỗi thuộc tính của thẻ là một đối tượng XmlElement của DOM
d) Các câu trên đều đúng

66
Câu 5.9. Cho biết câu sai trong các khẳng định dưới đây:
a) XML DOM có thể di chuyển trên XML Tree để truy cập, chèn, xóa các nút
b) Khi ta tải một tài liệu XML vào XML DOM thì tài liệu này được tự động phân tích thành một
cây gồm nhiều node với thứ bậc cha, con bên trong
c) XML parser sẽ đọc XML và chuyển nó thành một XML DOM object để có thể được truy cập
bởi JavaScript, ...
d) Mỗi thuộc tính trong XML Tree không được chuyển thành một node

Câu 5.10. Tài liệu XML dưới đây biểu diễn thông tin về đường tròn có tâm (2,1) và bán kính
bằng 4.

<?XML version="1.0" encoding="utf-8" ?>


<DUONG_TRON Ban_kinh="4">
<DIEM x="2“ y="1" />
</DUONG_TRON>

Tài liệu XML ở trên có:


a) 1 đối tượng XmlDocument; 2 đối tượng XmlElement; 3 đối tượng XmlAttribute
b) 1 đối tượng XmlDocument; 1 đối tượng XmlElement; 2 đối tượng XmlAttribute
c) 1 đối tượng XmlDocument; 2 đối tượng XmlElement; 1 đối tượng XmlAttribute
d) 1 đối tượng XmlDocument; 3 đối tượng XmlElement; 2 đối tượng XmlAttribute

Câu 5.11. Tài liệu XML dưới đây biểu diễn thông tin về bảng đơn giá thuê phòng của khách sạn:

<?XML version="1.0" encoding="utf-8" ?>


<KHACH_SAN Ten="X" Dia_chi="123 ABC">
<LOAI_PHONG Ten="Loại A" Don_gia="280000" />
<LOAI_PHONG Ten="Loại B" Don_gia="240000" />
<LOAI_PHONG Ten="Loại C" Don_gia="180000" />
<LOAI_PHONG Ten="Loại đặc biệt" Don_gia="320000" />
</KHACH_SAN>

Tài liệu XML ở trên có:


a) 1 đối tượng XmlDocument; 6 đối tượng XmlElement; 10 đối tượng XmlAttribute
b) 1 đối tượng XmlDocument; 10 đối tượng XmlElement; 5 đối tượng XmlAttribute
c) 1 đối tượng XmlDocument; 5 đối tượng XmlElement; 10 đối tượng XmlAttribute
d) 1 đối tượng XmlDocument; 3 đối tượng XmlElement; 7 đối tượng XmlAttribute

67
Câu 5.12. Trên cây XML gồm có các loại nút sau:
a) Nút gốc, nút cha, nút mẹ và nút con
b) Nút gốc, nút cha, nút anh em và nút con
c) Nút gốc, nút cha, nút anh và nút em
d) Nút gốc, nút cha và nút anh em và nút con

Câu 5.13. Xét một cây XML, khẳng định nào dưới đây là sai:
a) Mọi nút đều có duy nhất một nút cha
b) Một nút có thể có nhiều nút con
c) Nút lá không có nút con
d) Những nút anh em (sibling) phải có cùng một nút cha

Câu 5.14. Các NNLT thường sử dụng một số phương pháp dưới đây để xử lý một tài liệu XML.
a) Phương pháp 1: Đọc toàn bộ tài liệu XML vào trong bộ nhớ, sau đó nhờ bộ phân tích cú pháp
biến tài liệu XML thành một cây theo mô hình DOM
b) Phương pháp 2: Tại mỗi thời điểm bộ phân tích chỉ đọc một hoặc một số nút liên quan đến truy
vấn
c) Cả hai phương pháp đều đúng
d) Phương pháp 1 đúng, phương pháp 2 sai

Câu 5.15. Xét đoạn mã được viết bởi Javascript dưới đây:
var rs = xmlDoc.documentElement.nodeName;
Với đoạn mã trên thì biến rs sẽ cho kết quả là:
a) Giá trị của biến rs
b) Tên của nút gốc
c) Giá trị của nút thuộc tính
d) Tất cả các câu trên đều sai

Câu 5.16. Xét đoạn mã được viết bởi Javascript dưới đây:
var x = xmlDoc.getElementsByTagName(“title”);
var book = x[0].childNodes[0];

Với đoạn mã trên thì biến x sẽ cho kết quả là:


a) Nút đầu tiên có tên thẻ là title
b) Danh sách các nút có tên thẻ là title
c) Danh sách các nút có tên thuộc tính là title
68
d) Nút đầu tiên có tên thuộc tính là title

Câu 5.17. Xét đoạn mã được viết bởi Javascript dưới đây:
var x = xmlDoc.getElementsByTagName('book')[0].attributes;
Với đoạn mã trên thì biến x sẽ cho kết quả là:
a) Tên nút đầu tiên của cây XML DOM
b) Tên nút thuộc tính đầu tiên của cây XML DOM
c) Danh sách các nút thuộc tính của đối tượng đầu tiên trong tài liệu
d) Danh sách các nút thuộc tính của đối tượng book đầu tiên trong tài liệu.

Câu 5.18. Tên biến trong Javascript phải đặt theo quy tắc sau:
a) Tên chỉ có thể chứa ký tự chữ cái, số, dấu _ và dấu $
b) Tên không được bắt đầu bằng chữ số và Không trùng với các từ khóa của ngôn ngữ
c) Tên có phân biệt hoa thường
d) Các câu trên đều đúng

69

You might also like