Quy định kiểu đơn giản và kiểu phức tạp

Một phần của tài liệu (LUẬN VĂN THẠC SĨ) XML và ứng dụng XML trong giáo dục đào tạo tại trường Đại học Quy Nhơn (Trang 65 - 69)

Chƣơng 2 : NGễN NGỮ ĐỊNH DẠNG MỞ RỘNG XML

2.4. Lƣợc đồ XML và khụng gian tờn

2.4.2. Quy định kiểu đơn giản và kiểu phức tạp

Trong lƣợc đồ XML, tài liệu chia thành hai kiểu nội dung chớnh: thành phần thuộc kiểu đơn giản (simple types) và thành phần thuộc kiểu phức tạp (comples types).

Vấn đề đặt ra ở đõy là làm cỏch phõn biệt thành phần nào trong tài liệu cú kiểu đơn giản, thành phần nào cú kiểu phức tạp. Nếu nhỡn tài liệu XML dƣới dạng hỡnh

cõy thỡ cỏch dễ nhận ra nhất là thành phần cú kiểu đơn giản thƣờng khụng cú nhỏnh con (là nỳt lỏ) trong khi kiểu phức tạp thỡ cú thể cú.

2.4.2.1. Quy định kiểu đơn giản

Kiểu đơn giản là cỏc kiểu nội tại đó đƣợc định nghĩa sẵn và cú thể dựng nú tự do trong lƣợc đồ XML. Thành phần thuộc kiểu đơn giản chỉ chứa dữ liệu đơn giản nhƣ dữ liệu ngày thỏng, số, chuỗi,... và khụng cho phộp chứa thuộc tớnh và thành phần con. Để tạo một kiểu đơn giản dựng cỳ phỏp sau:

<xsd:simpleType name =typeName base = xsd:type> </xsd:simpleType>

Trong đú, typeName là tờn kiểu dữ liệu thành phần; type là kiểu dữ liệu. Thớ dụ, <xsd:simpleType name=“HOCPHAN” base=“xsd:String”>

</xsd:simpleType>

Tờn kiểu dữ liệu Mụ tả

Binary Kiểu dữ liệu nhị phõn Boolean Kiểu lý luận

Byte Kiểu byte

Date Kiểu ngày

Decimal Kiểu thập phõn Double Kiểu số thực 64-bit

ENTITY Kiểu thực thể

ID Kiểu định danh

Int, integer Kiểu số nguyờn NOTATION Kiểu ghi chỳ

Month Kiểu thỏng

String Kiểu chuỗi

Bảng 2.4.2.1. Liệt kờ một số kiểu đơn giản 2.4.2.2. Quy định kiểu phức tạp

Thành phần cú kiểu phức tạp tức nú cú thể chứa thành phần con khỏc hay đƣợc phộp chứa thuộc tớnh. Kiểu phức tạp cú bốn loại thành phần: thành phần thuần; Thành phần rỗng; Thành phần hỗn hợp; Cuối cựng là thành phần văn bản thuần. Cỳ phỏp tổng quỏt khai bỏo kiểu phức tạp:

<xsd:complexType name = typeName>

<xsd:element name = subName type = xsd:typeName > <xsd:element name = subName type = xsd:typeName > ...

<xsd:attribute name = attName type = xsd:typeName> </xsd:complexType>

Trong đú, subName là tờn thành phần con; attName là tờn thuộc tớnh; cũng giống nhƣ kiểu đơn giản, typeName cú thể là kiểu dữ liệu đó định nghĩa sẵn chẳng hạn nhƣ kiểu số, kiểu ngày giờ, kiểu lý luận,... hoặc do ngƣời dựng tự định nghĩa.

Thớ dụ, thành phần MUC (mục) là đề mục của một phần trong bài giảng đƣợc định nghĩa kiểu phức tạp MUC chứa thành phần con TENMUC (tờn mục) và NDMUC (nội dung mục).

<xsd:element name=“MUC” type=“MUC”/> <xsd:complexType name=“MUC”>

<xsd:element name=“TENMUC” type=“xsd:string”/> <xsd:element name=“NDMUC” type=“xsd:string”/> </xsd:complexType>

</xsd:element>

Quy định thành phần chứa thành phần thuần: Là thành phần thuộc kiểu phức tạp cơ bản nhất cú thể chứa thành phần khỏc và luụn cả thuộc tớnh, ngoại trừ văn bản. Thớ dụ, trong đoạn tài liệu XML này, thành phần book

là “thành phần thuần”: <book>

<name language=“VietNam”>Hoc XML bang vi du</name>

<name language=“English”>Learning XML by Example</name> </book>

Cỏch quy định thành phần book nhƣ sau: <xsd:element name=“book”>

<xsd:element name=“name” type=“xsd:string”/> </xsd:complexType>

</xsd:element>

Quy định thành phần chứa thành phần rỗng: Là thành phần khụng cú nội dung nhƣng cú thể chứa thuộc tớnh. Thớ dụ, trong đoạn tài liệu XML này, thành phần Picture là thành phần rỗng:

<Picture filename=“book.jpg” height=“10” width=“30”/> Cỏch quy định thành phần rỗng Picture nhƣ sau:

<xsd:element name=“Picture”>

<xsd:comlpexType content=“empty”>

<xsd:element name=“filename” type=“xsd:string”/> <xsd:element name=“height” type=“xsd:decimal”/> <xsd:element name=“width” type=“xsd:decimal”/> </xsd:complexType>

</xsd:element>

Quy định thành phần chứa thành phần hỗn hợp: Là thành phần chỉ chứa cỏc thành phần, thuộc tớnh và (hoặc) văn bản. Thớ dụ, trong đoạn tài liệu XML này, thành phần Software chứa nội dung hỗn hợp gồm: vừa văn bản lẫn thành phần con:

<Softwares>

Phan mem <software>XML Writer</software> Thoi gian su dung <maxDays>45</maxDays> </Softwares>

Cỏch quy định thành phần Software nhƣ sau: <xsd:element name=“Softwares”>

<xsd:comlpexType content = “mixed”>

<xsd:element name=“software” type=“xsd:string”/> <xsd:element name=“maxDays”> <xsd:simpleType base=“xsd:integer”> <xsd:maxExclusive value=“45”/> </xsd:simpleType> </xsd:complexType> </xsd:element>

Quy định thành phần chứa thành phần văn bản thuần: Là thành phần thuộc kiểu phức tạp chỉ chứa văn bản và cú thể cú thuộc tớnh. Thớ dụ, thành phần name là thành phần văn bản thuần”:

<name language=“English”>XML by Example</name> Cỏch quy định thành phần name nhƣ sau:

<xsd:element name=“name” type=“nameType”/>

Một phần của tài liệu (LUẬN VĂN THẠC SĨ) XML và ứng dụng XML trong giáo dục đào tạo tại trường Đại học Quy Nhơn (Trang 65 - 69)

Tải bản đầy đủ (PDF)

(112 trang)