[学校] エクササイズ仕様のDTD構造, XMLスキーマ

DTDと内XMLSCHEMAと宿題​​仕様構造に関するこの記事 “エクササイズ” 彼の, あなたが相談することができます.

スレッド: レッツレポートカード 1 学生には、: フルネーム, クラス, アドレス, セックス, 生年月日と転写産物, テーブルの各レコードには、: STT, サブジェクト名, 学期 1, 学期 2, TBポイント通年. 具体的な内容と構造であること (DTDまたはXMLSCHEMAに従ってください) この点パターンに対応するXML文書.

賞:
* 仕様内容: これは、上のレポートカードのXMLコンテンツを含む文書であります. これは、基準仕様構造DTDまたはXMLSCHEMAを使用することができます.
私たちのカードの詳細についてはに分けることができます 2 レポートカードの主な部分は、学生の情報であり、 (名前を含みます, クラス,…) および転写産物 (対象の点を含みます).

注意: そのため、音声の問題 “DTDまたはXMLSCHEMAに従ってください” だからすべてに、あなたがフォロー 1 で 2 DTDまたはっぽXMLSCHEMAは何ですか, 私は両方やりました 2, どちらかあなたが好む、を選択します.

code by nguyenvanquan7826 - fileName: phieudiemhocsinh.xml
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
<?xml version = "1.0" ?>
 
<!-- if you use dtd-->
<!DOCTYPE PhieuDiem SYSTEM "phieudiemhocsinh.dtd">
<!-- end use dtd-->
 
<!-- if you use schema-->
<PhieuDiem xmlns = "http://www.w3school.com"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation = "phieudiemhocsinh.xsd">
<!-- end use chema-->
 
<PhieuDiem>
    <SinhVien>
        <HoTen>Nguyen Van Quan</HoTen>
        <Lop>KTPMK10B</Lop>
        <DiaChi>Bac Ninh</DiaChi>
        <GioiTinh>Nam</GioiTinh>
        <NgaySinh>31/12/1992</NgaySinh>
    </SinhVien>
     
    <BangDiem>
        <MonHoc>
            <STT>1</STT>
            <TenMon>XML</TenMon>
            <DienKy1>10</DienKy1>
            <DienKy2>10</DienKy2>
            <DienTB>10</DienTB>
        </MonHoc>
         
        <MonHoc>
            <STT>2</STT>
            <TenMon>Java</TenMon>
            <DienKy1>10</DienKy1>
            <DienKy2>10</DienKy2>
            <DienTB>10</DienTB>
        </MonHoc>
    </BangDiem>
</PhieuDiem>

* DTDに対応する構造の仕様

code by nguyenvanquan7826 - fileName: phieudiemhocsinh.dtd
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
<?xml version="1.0"?>
<!DOCTYPE PhieuDiem[
    <!ELEMENT PhieuDiem(SinhVien, BangDiem)>
     
    <!ELEMENT SinhVien(HoTen, Lop, DiaChi, GioiTinh, NgaySinh)>
    <!ELEMENT BangDiem(MonHoc+)>
     
    <!ELEMENT HoTen(#PCDATA)>
    <!ELEMENT Lop(#PCDATA)>
    <!ELEMENT DiaChi(#PCDATA)>
    <!ELEMENT GioiTinh(#PCDATA)>
    <!ELEMENT NgaySinh(#PCDATA)>
     
    <!ELEMENT MonHoc(STT, TenMon, DiemKy1, DiemKy2, DiemTB)>
    <!ELEMENT STT(#PCDATA)>
    <!ELEMENT TenMon(#PCDATA)>
    <!ELEMENT DiemKy1(#PCDATA)>
    <!ELEMENT DiemKy2(#PCDATA)>
    <!ELEMENT DiemTB(#PCDATA)>
]>

* XMLSCHEMAを対応する構造仕様

code by nguyenvanquan7826 - fileName: phieudiemhocsinh.xsd
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
<?xml version = "1.0"?>
<xs:schema xmlns:xs = "http://www.w3.org/2001/XMLSchema">
    <xs:element name = "PhieuDiem" type="KPhieuDiem"/>
     
    <xs:complexType name = "KPhieuDiem">
        <xs:sequence>
            <xs:element name = "SinhVien" type = "KSinhVien"/>
            <xs:element name = "BangDiem" type = "KBangDiem"/>
        </xs:sequence>
    </xs:complexType>
     
    <xs:complexType name = "KieuSinhVien">
        <xs:sequense>
            <xs:element name = "HoTen" type = "xs:string"/>
            <xs:element name = "Lop" type = "xs:string"/>
            <xs:element name = "DiaChi" type = "xs:string"/>
            <xs:element name = "GioiTinh">
                <xs:simpleType>
                    <xs:restriction base = "xs:string"/>
                    <xs:pattern value = "Nam|Nu"/>
                </xs:simpleType>
            </xs:element>
            <xs:element name = "NgaySinh" type = "xs:date"/>
        </xs:sequense>
    </xs:complexType>
     
    <xs:complexType name = "KBangDiem">
        <xs:element name = "MonHoc" type = "KMonHoc"/>
    </xs:complexType>
     
    <xs:complexType name = "KMonHoc">
        <xs:sequense>
            <xs:element name = "STT" type = "xs:integer"/>
            <xs:element name = "TenMon" type = "xs:string"/>
            <xs:element name = "DiemKy1" type = "KDiem"/>
            <xs:element name = "DiemKy2" type = "KDiem"/>
            <xs:element name = "DiemTB" type = "KDiem"/>
        </xs:sequense>
    </xs:complexType>
     
    <xs:simpleType name = "KDiem">
        <xs:restriction base = "xs:double"/>
        <xs:minExclusive value = "0.0"/>
        <xs:maxExclusive value = "10.0"/>
    </xs:simpleType>
</xs:schema>