Câu hỏi ôn tập và đáp án môn Ngôn ngữ XML và ứng dụngA.Câu hỏi Câu I (2 điểm) 1.Hãy tạo file Duong_tron.xml mô tả đường tròn gồm các thuộc tính: Tên đường tròn, tâm và toạ độ của tâm. 2.Hãy tạo file Day_phan_so.xml mô tả một dãy phân số (Tạo từ 3 phân số trở lên) gồm các thuộc tính: Tử số, mẫu số là các số nguyên.3.Hãy tạo file Tu_giac.xml mô tả một tứ giác gồm các thuộc tính: Tên các điểm và toạ độ tương ứng của các điểm đó.4.Hãy so sánh sự giống nhau và khác nhau giữa XML và HTML.Câu II (4 điểm):1.Cho cấu trúc XML mô tả chương trình quản lý thông tin sinh viên và điểm các môn học mà sinh viên đăng kí, lưu các thông tin sau: Sinh viên gồm mã số sinh viên, họ tên, lớp. Một môn học mà sinh viên đăng kí học gồm có thông tin: mã môn học, tên môn học, số tín chỉ; Với mỗi môn học mà sinh viên đăng kí học thì sẽ có kết quả cuối kì chính là điểm thi mà sinh viên đạt được trong môn đó. Hãy đặc tả cấu trúc trên (bằng DTD(DocType Document) hoặc XML Schema).
Câu hỏi ôn tập Ngôn ngữ XML và ứng dụng A.Câu hỏi Câu I (2 điểm) 1. Hãy tạo file Duong_tron.xml mô tả đường tròn gồm các thuộc tính: Tên đường tròn, tâm và toạ độ của tâm. 2. Hãy tạo file Day_phan_so.xml mô tả một dãy phân số (Tạo từ 3 phân số trở lên) gồm các thuộc tính: Tử số, mẫu số là các số nguyên. 3. Hãy tạo file Tu_giac.xml mô tả một tứ giác gồm các thuộc tính: Tên các điểm và toạ độ tương ứng của các điểm đó. 4. Hãy so sánh sự giống nhau và khác nhau giữa XML và HTML. Câu II (4 điểm): 1. Cho cấu trúc XML mô tả chương trình quản lý thông tin sinh viên và điểm các môn học mà sinh viên đăng kí, lưu các thông tin sau: Sinh viên gồm mã số sinh viên, họ tên, lớp. Một môn học mà sinh viên đăng kí học gồm có thông tin: mã môn học, tên môn học, số tín chỉ; Với mỗi môn học mà sinh viên đăng kí học thì sẽ có kết quả cuối kì chính là điểm thi mà sinh viên đạt được trong môn đó. Hãy đặc tả cấu trúc trên (bằng DTD(DocType Document) hoặc XML Schema). 2. Cho cấu trúc XML quản lý điểm thi cuối kì của sinh viên, trong đó cần phải lưu trữ các thông tin sau: mã số sinh viên (MSSV), tên sinh viên (TenSV), mã môn học (MaMH), tên môn học (TenMH), và điểm thi của sinh viên (Diem). Hãy đặc tả cấu trúc trên (bằng DTD(DocType Document) hoặc XML Schema). 3. Cho cấu trúc XML về đơn hàng, trong mỗi đơn hàng người ta cần lưu các thông tin sau: Mã khách hàng, tên khách hàng, địa chỉ liên lạc và một danh sách những mặt hàng người đó mua. Danh sách mặt hàng gồm có nhiều mặt hàng khác nhau, mỗi mặt hàng gồm những thông tin sau: Mã mặt hàng, tên mặt hàng, số lượng, đơn giá. Hãy đặc tả cấu trúc trên (bằng DTD(DocType Document) hoặc XML Schema). 4. Một chương trình quản lý thông tin sinh viên, và điểm các môn học mà họ đăng kí lưu các thông tin sau: sinh viên gồm mã số sinh viên, họ tên sinh viên, lớp. Một môn học mà sinh viên đăng kí học gồm có thông tin mã môn học, tên môn học, số tín chỉ, với mỗi môn học mà sinh viên đăng kí học thì sẽ có kết quả cuối kì chính là điểm thi mà sinh viên đạt được trong môn đó. Yêu cầu: Định nghĩa lược đồ XML Schema với yêu cầu như sau: + MSSV: là một chuỗi các kí tự số có chiều dài 7 kí tự. + Lớp của sinh viên là một trong những giá trị của tập hợp gồm các lớp {Tin21A1HN, Tin21A2HN, Tin21A1ND, Tin22A1HN, Tin22A2HN}. + Mã môn học là một chuỗi 4 kí tự, hai kí tự đầu là chữ cái, hai kí tự sau là số. + Số tín chỉ của môn học >= 1 và <=5. + Điểm của sinh viên >=0 và <=10 Câu III (4 điểm): 1. Hãy đọc file Duong_tron.xml đã tạo được ở câu I với yêu cầu hiển thị được tất cả các thuộc tính của đối tượng được tạo. 2. Hãy đọc file Day_phan_so.xml đã tạo được ở câu I với yêu cầu hiển thị được tất cả các thuộc tính của đối tượng được tạo. 3. Hãy đọc file Tu_giac.xml đã tạo được ở câu I với yêu cầu hiển thị được tất cả các thuộc tính của đối tượng được tạo. 4. Cho File books.xml <bookstore> <book><title> The Autobiography of Benjamin Franklin </title><author><first-name>Benjamin</first-name><last- name>Franklin</last-name></author><price>8.99</price> </book> <book><title> The Confidence Man </title><author><first-name>Herman</first-name><last- name>Melville</last-name></author><price>11.99</price> </book> </bookstore> Hãy đọc tệp XML trên bằng ngôn ngữ .Net 5. Từ đặc tả trên (Câu II.4) hãy tạo file qlsv.xml. B.Đáp án Câu I: 1 vẽ đường tròn có tâm và bán kính <?xml version="1.0" encoding="utf-8" ?> <DUONG_TRON TEN="C"> <BAN_KINH R = "5"/> <TAM TEN= “O” x="3" y="2" /> </DUONG_TRON> 2. tạo file Day_phan_so.xml <?xml version="1.0" encoding="utf-8"?> <DAY_PHAN_SO> <PHAN_SO Tu_so= “4” Mau_so=”7”/> <PHAN_SO1 Tu_so= “5” Mau_so=”8”/> <PHAN_SO2 Tu_so= “7” Mau_so=”23”/> </DAY_PHAN_SO> 3. tạo file Tu_giac.xml <?xml version="1.0" encoding="utf-8" ?> <TU_GIAC> <DIEMA X="2" Y="-1"/> <DIEMB X="3" Y="5"/> <DIEMC X="6" Y="3"/> <DIEMD X="1"Y="8"/> </TU_GIAC> 4. so sánh sự giống nhau và khác nhau giữa XML và HTML cả xml và html đều đều là ngôn ngữ đánh dấu Xml html Ngôn ngữ đánh dấu mở rộng Ngôn ngữ đánh dấu siêu văn bản Cho phép người dùng định nghĩa các phần tử Các phần tử đã được định nghĩa sẵn Kiểm tra tính hợp lệ Hầu như không bắt lỗi Cho phép trao đổi giữa các ứng dụng Chỉ được thiết kế để trình diễn Cần phải được định nghĩa một cách chặt chẽ Không bắt buộc Các phần tử được đóng Các phần tử rỗng không cần phải đóng Câu II : 1. Quản lý thông tin điểm thi của sinh viên - đặc tả cấu trúc trên (bằng DTD(DocType Document) hoặc XML Schema). <?xmlversion="1.0"encoding="utf-8" ?> <!DOCTYPE QLSV [ <!ELEMENT QLSV(SINH_VIEN,DIEM)+> <!ELEMENT SINH_VIEN(MON_HOC+)> <!ATTLIST SINH_VIEN Masv CDATA #REQUIRED <!- - Ma_SV: A_String - - > Tensv CDATA #REQUIRED <!- - Ten: A_String - - > Lop CDATA #REQUIRED <!- - Lop: A_String - -> > <!ELEMENT DIEM(MON_HOC+)> <!ELEMENT MON_HOC EMPTY> <!ATTLIST MON_HOC Mamh CDATA #REQUIRED <!- – Ma_MH: A_String – -> Tenmh CDATA #REQUIRED <!- – Ten_MH: A_String – -> Sotc CDATA #REQUIRED <!- – So_TC: A_Int – -> Diemthi CDATA #REQUIRED <!- – Diem: A_Real – -> > ]> 2. quản lý điểm thi cuối kì của sinh viên <?xml version= “1.0” encoding= “utf-8”?> <! DOCTYPE DiemThi[ <! ELEMENT DiemThi(SinhVien, BangDiem)> <! ELEMENT SinhVien (MSSV, TenSV)> < !ATTLIST MSSV CDATA #REQUIRED <! MSSV : A_String > TenSV CDATA #REQUIRED <! TenSV : A_String > > <! ELEMENT BangDiem(MonHoc +)> <! ELEMENT Subject (MaMH, TenMH, Diem)> <! ATTLIST MaMH CDATA #REQUIRED <! MaMH : A_String > TenMH CDATA #REQUIRED <! TenMH : A_String > Diem CDATA #REQUIRED <! Diem : A_ Real > > ]> 3. Hóa đơn bán hàng <?xml version= “1.0” encoding= “utf-8”?> <! DOCTYPE DonHang[ <! ELEMENT DonHang(KhachHang, DSHang)> <! ELEMENT KhachHang (MaKH, TenKH, DiaChi)> < !ATTLIST MaKH CDATA #REQUIRED <! MaKH : A_String > TenKH CDATA #REQUIRED <! TenKH : A_String > DiaChi CDATA #REQUIRED <! DiaChi : A_String > > <! ELEMENT DSHang(Hang +)> <! ELEMENT Subject (MaMH, TenMH, SoLuong, DonGia)> <! ATTLIST MaMH CDATA #REQUIRED <! MaMH : A_String > TenMH CDATA #REQUIRED <! TenMH : A_String > SoLuong CDATA #REQUIRED <! Lop : A_Float > DonGia CDATA #REQUIRED <! DonGia : A_Double > > ]> 4. Quản lý thông tin điểm thi của sinh viên- Định nghĩa lược đồ XML Schema QLSV.xsd . 1: <?xml version="1.0" encoding="utf-8"?> 2: <xs:schema id="XMLSchema" 3: targetNamespace="http://tempuri.org/XMLSchema.xsd" 4: elementFormDefault="qualified" 5: xmlns="http://tempuri.org/XMLSchema.xsd" 6: xmlns:mstns="http://tempuri.org/XMLSchema.xsd" 7: xmlns:xs="http://www.w3.org/2001/XMLSchema" 8: > 9: <xs:element name="ListStudent"> 10: <xs:complexType> 11: <xs:sequence> 12: <xs:element name="Student" maxOccurs="unbounded" type="TypeStudent"> 13: </xs:element> 14: </xs:sequence> 15: </xs:complexType> 16: </xs:element> 17: <xs:simpleType name="TypeIDSub"> 18: <xs:restriction base="xs:string"> 19: <xs:pattern value="[a-zA-Z]{2}[0-9]{2}" /> 20: </xs:restriction> 21: </xs:simpleType> 22: 23: <xs:simpleType name="TypeMSSV"> 24: <xs:restriction base="xs:string"> 25: <xs:length value="7"/> 26: </xs:restriction> 27: </xs:simpleType> 28: <xs:simpleType name="TypeLop"> 29: <xs:restriction base="xs:string"> 30: <xs:enumeration value=" Tin21A1HN "/> 31: <xs:enumeration value=" Tin21A2HN "/> 32: <xs:enumeration value=" Tin21A1ND "/> 33: <xs:enumeration value=" Tin22A1HN "/> <xs:enumeration value=" Tin22A2HN "/> 34: </xs:restriction> 35: </xs:simpleType> 36: <xs:complexType name="TypeSubject"> 37: 38: <xs:sequence> 39: <xs:element name="IDSub" type="TypeIDSub"/> 40: <xs:element name="NameSub" type="xs:string"/> 41: <xs:element name="SoTC"> 42: <xs:simpleType> 43: <xs:restriction base="xs:integer"> 44: <xs:minInclusive value="1"/> 45: <xs:maxInclusive value="5"/> 46: </xs:restriction> 47: </xs:simpleType> 48: </xs:element> 49: <xs:element name="Diem" minOccurs="0"> 50: <xs:simpleType> 51: <xs:restriction base="xs:double"> 52: <xs:minInclusive value="0"/> 53: <xs:maxInclusive value="10"/> 54: </xs:restriction> 55: </xs:simpleType> 56: </xs:element> 57: </xs:sequence> 58: 59: </xs:complexType> 60: 61: <xs:complexType name="TypeStudent"> 62: <xs:sequence> 63: <xs:element name="MSSV" type="TypeMSSV"/> 64: <xs:element name="HoTen" type="xs:string" /> 65: <xs:element name="Lop" type="TypeLop"/> 66: <xs:element name="ListSubject"> 67: <xs:complexType> 68: <xs:sequence> 69: <xs:element name="Subject" type="TypeSubject" maxOccurs="unbounded"/> 70: </xs:sequence> 71: </xs:complexType> 72: </xs:element> 73: </xs:sequence> 74: </xs:complexType> 75: </xs:schema> [...].. .Câu III 1 đọc file DUONG_TRON .xml Import System .xml Public class MH_Doc_Duong_Tron Private Sub MH_Doc_Duong_Tron_Load( ) Dim tai_lieu As new XmlDocument tai_lieu.Load(“ \ \Duong_tron .xml ) Dim Duong_tron As XmlElement=tai_lieu.SelectSingleNode(“/DUONG_TRON”) Dim O As XmlDocument=tai_lieu.SelectSingleNode(“/DUONG_TRON/DIEM”) Dim ten_duong_tron... 2 đọc file Day_phan_so .xml Import system .xml Public class MH_DOC_Day_PS Private Sub MH_DOC_Load(sender As Object, e As EventArgs) Handles MyBase.Load Dim tai_lieu As New XmlDocument Tai_lieu.Load(“ \ \Day_PS .xml ) Dim Day_PS As XmlElement = tai_lieu.SelectSingleNode (“/DAY_PHAN_SO”) DIM Phan_so As XmlElement = tai_lieu.SelectSingleNode (“/DAY_PHAN_SO/PHAN_SO”) DIM Phan_so1 As XmlElement = tai_lieu.SelectSingleNode... System .xml Public class DOC_TU_GIAC Private sub DOC_TU_GIAC.Load(sender As Object, e As EventArgs) Handles MyBase.Load Dim tai_lieu As New XmlDocument tai_lieu.Load(“ \ \Tu_giac .xml ) Dim Tu_Giac As XmlElement=tai_lieu.SelectSingleNole(“/TU_GIAC”) Dim DiemA As XmlElement=tai_lieu.SelectSingleNole(“/TU_GIAC/DIEMA”) Dim DiemB As XmlElement=tai_lieu.SelectSingleNole(“/TU_GIAC/DIEMB”) Dim DiemC As XmlElement=tai_lieu.SelectSingleNole(“/TU_GIAC/DIEMC”)... Sub End Class 4 đọc File books .xml bằng vb.net Imports System .Xml Public Class books Private Sub books_Load(sender As Object, e As EventArgs) Handles MyBase.Load Dim tailieu As New XmlDocument tailieu.Load(" \ \books .xml" ) Dim bookstore As XmlElement = tailieu.SelectSingleNode("/bookstore") Dim book As XmlElement = tailieu.SelectSingleNode("bookstore/book") Dim author As XmlElement = tailieu.SelectSingleNode("/author")... book.GetAttribute("book") Me.Close() End Sub End Class 5 hãy tạo file qlsv .xml QLSV .xml 1: < ?xml version="1.0" encoding="utf-8" ?> 2: 3: 4: 0912679 5: Love Bum 6: Tin21A1HN 7: 8: 9: CT11 10: XML 11: 5 12: 13: 14:... tai_lieu.SelectSingleNode (“/DAY_PHAN_SO”) DIM Phan_so As XmlElement = tai_lieu.SelectSingleNode (“/DAY_PHAN_SO/PHAN_SO”) DIM Phan_so1 As XmlElement = tai_lieu.SelectSingleNode (“/DAY_PHAN_SO/PHAN_SO1”) DIM Phan_so2 As XmlElement = tai_lieu.SelectSingleNode (“/DAY_PHAN_SO/PHAN_SO2”) DIM Tu_so As Integer = Phan_so.GetAttribute (“Tu_so”) DIM Mau_so As Integer = Phan_so.GetAttribute (“Mau_so”) DIM Tu_so1 As Integer = Phan_so1.GetAttribute... XmlElement=tai_lieu.SelectSingleNole(“/TU_GIAC/DIEMA”) Dim DiemB As XmlElement=tai_lieu.SelectSingleNole(“/TU_GIAC/DIEMB”) Dim DiemC As XmlElement=tai_lieu.SelectSingleNole(“/TU_GIAC/DIEMC”) Dim DiemD As XmlElement=tai_lieu.SelectSingleNole(“/TU_GIAC/DIEMD”) Dim TendiemA As String=DiemA.GetAttribute(“tên”) Dim x1 As Double=DiemA.GetAttribute(“x”) Dim y1 As Double=DiemA.GetAttribute(“y”) Dim TendiemB As... 18: 19: 20: 21: 0910679 22: Bich Hang 23: Tin21A2HN 24: 25: 26: CT00 27: XML 28: 3 29: 30: 31: CT01 32: Android 33: 5 34: 35: 36: 37: . elementFormDefault="qualified" 5: xmlns="http://tempuri.org/XMLSchema.xsd" 6: xmlns:mstns="http://tempuri.org/XMLSchema.xsd" 7: xmlns:xs="http://www.w3.org/2001/XMLSchema" 8:. DUONG_TRON .xml Import System .xml Public class MH_Doc_Duong_Tron Private Sub MH_Doc_Duong_Tron_Load( ) Dim tai_lieu As new XmlDocument tai_lieu.Load(“ Duong_tron .xml ) Dim Duong_tron As XmlElement=tai_lieu.SelectSingleNode(“/DUONG_TRON”) Dim. Sub End Class 5. hãy tạo file qlsv .xml. QLSV .xml 1: < ?xml version="1.0" encoding="utf-8" ?> 2: <ListStudent xmlns="http://tempuri.org/XMLSchema.xsd"> 3: <Student>