[学校] 宿題DTC, スキーマ, XMLでのDOM

スレッド: プログラム管理情報とプロセスの学生ローンブックの説明 1 TT以下のライブラリを保存: 学生情報には: マSV, 彼らは名前を付けます, グレードと誕生年. 学生の借用情報には、書籍に関する情報が含まれています, 借用日, 支払い日. svが借りた各本には、: ブックコード, タイトル, 出版社, XB年. 各学生は多くの異なる本を借りることができます.

1. 要件でXMlスキーマを定義する:

  • マSV, 本のコードが含まれています 4 そこのキャラクター 2 最初の文字は文字です, 2 次の文字は数字です
  • svのクラスは設定値の1つです: CMPM1, CNPm2, CNPM3
  • ブックコード順に本情報が表示されます, タイトル, XBハウス, XB年

2. DOMモデルを描画する

3. XMLDOMオブジェクトを使用する ツリー構造全体を閲覧し、生徒の情報を表示します 5 学生ローンと返却情報

賞:

XMLスキーマ定義

<?xml version = "1.0"?>
<xs:schema xmlnx:xs = "www.w3.org/2001/XMLSchema">
	
	<!-- The goc thu vien gom cac phan tu QLMuon-->
	<xs:element name = "ThuVien">
		<xs:complexType>
			<xs:element name = "QLMuon" type = "KQLMuon"/>
		</xs:complexType>
	</xs:element>
	
	<!-- Thong tin gom Thong tin sinh vien va thong tin muon-->
	<xs:complexType name = "KQLMuon" minOccurs = "0">	
		<xs:element name = "SinhVien" type = "KSinhVien"/>
		<xs:element name = "Muon" type = "KMuon"/>
	</xs:complexType>
	
	<!-- Dinh nghia kieu sinh vien -->
	<xs:complexType name = "KSinhVien">
		<xs:sequense>
			<xs:element name = "MaSV" type = "KMa"/>
			<xs:element name = "Hoten" type = "xs:string"/>
			
			<!-- dinh nghia kieu lop-->
			<xs:element name = "Lop">
				<xs:simpleType>
					<xs:restriction base = "xs:string"/>
					<xs:pattern value = "CNPM1|CNPM2|CNPM3"/>
				</xs:simpleType>
			</xs:element>
			<!---ket thuc Lop-->
			
			<xs:element name = "NamSinh" type = "xs:date">
		</xs:sequense>
	</xs:complexType> 
	
	<!-- Dinh nghia kieu muon-->
	<xs:complexType name = "KMuon" minOccurs = "0">
		<xs:sequense>
			<xs:element name = "Sach" type = "KSach"/>
			<xs:element name = "NgayMuon" type = "xs:date"/>
			<xs:element name = "NgayTra" type = "xs:date"/>
		</xs:sequense>
	</xs:complexType>
	
	<!-- Dinh nghia kieu Sach-->
	<xs:complexType name = "KSach">
		<xs:sequense>
			<xs:element name = "MaSach" type = "KMa"/>
			<xs:element name = "TenSach" type = "xs:string"/>
			<xs:element name = "NXB" type = "xs:string"/>
			<xs:element name = "NamXB" type = "xs:Year"/>
		</xs:sequense>
	</xs:complexType>
	
	<!-- Dinh nghia Ma sach va Ma sinh vien-->
	<xs:simplexType name = "KMa">
		<xs:restriction base = "xs:string"/>
		<xs:pattern value = "[a-zA-Z]{2}[0-9]{2}">
	</xs:simplexType>
	
</xs:schema>

DOM図

実際には、上記の構造をツリーに変換するだけです.

DOMモデル
DOMモデル

学生が借りた情報を閲覧して印刷する 5

情報を参照して印刷するには、Cを使用する必要があります#, ジャワ, JavaScript, … ここではJavaScripを使用します.

<srcipt language = "JavaScript">
	function read(){
		var i, xmlDoc, QLMuonNode, ttSV, ttMuon, ttSach, output;
		xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
		xmlDoc.load("thuvien.xml");
		
		// lay thong tin sinh vien muon sach thu 5
		QLMuonNode = xmldoc.getElementsByTagName("QLMuon")[4];
		
		// lay toan bo cac node con cua SinhVien
		ttSV = QLMuonNode.firstChild.childNodes;
		
		for (i = 0; i < ttSV.length; i++){
			output += ttSV[i].nodeName + ":" + ttSV[i].nodeValue + <br/>
		}
		
		// lay toan bo cac node con cua Muon
		ttMuon = QLMuonNode.lastChild.childNodes;
		
		for (i = 1; i < ttMuon.length; i++){
			output += ttMuon[i].nodeName + ":" + ttMuon[i].nodeValue + <br/>
		}
		
		// lay toan bo cac node con cua Sach, Sach nam tai node[0] cua ttMuon
		ttSach = ttMuon[0].childNodes;
		
		for (i = 0; i < ttSach.length; i++){
			output += ttSach[i].nodeName + ":" + ttSach[i].nodeValue + <br/>
		}
		
		// hien thi thong tin
		document.write(output);
	}
</srcipt>