Hiển thị xml trên World Wide Web. Khái niệm cơ bản về XML

Tiêu chuẩn xác định hai cấp độ hiệu lực của tài liệu XML:

  • Được xây dựng tốt(Đúng ngữ pháp). Một tài liệu được định dạng tốt tuân theo tất cả các quy tắc cú pháp XML chung áp dụng cho bất kỳ tài liệu XML nào. Và nếu, ví dụ: thẻ bắt đầu không có thẻ kết thúc tương ứng, thì điều này xây dựng không đúng cách Tài liệu XML. Một tài liệu không được định dạng tốt không thể được coi là một tài liệu XML; Bộ xử lý XML (trình phân tích cú pháp) không nên xử lý nó theo cách thông thường và có nghĩa vụ phân loại tình huống là một lỗi nghiêm trọng.
  • Có giá trị(Có giá trị). Một tài liệu hợp lệ cũng tuân theo một số quy tắc ngữ nghĩa. Đây là hoạt động kiểm tra bổ sung chặt chẽ hơn về tính đúng đắn của tài liệu để tuân thủ các quy tắc bên ngoài đã xác định trước, nhưng đã có sẵn, nhằm giảm thiểu số lượng lỗi, ví dụ, cấu trúc và thành phần của một tài liệu nhất định hoặc một họ tài liệu. Các quy tắc này có thể được phát triển bởi cả người dùng và các nhà phát triển bên thứ ba, chẳng hạn như các nhà phát triển từ điển hoặc các tiêu chuẩn trao đổi dữ liệu. Thông thường, các quy tắc như vậy được lưu trữ trong các tệp đặc biệt - các lược đồ, nơi cấu trúc của tài liệu, tất cả các tên được phép của các phần tử, thuộc tính và nhiều thứ khác được mô tả một cách chi tiết nhất. Và nếu một tài liệu, chẳng hạn, chứa tên phần tử không được xác định trước trong các lược đồ, thì tài liệu XML được coi là không hợp lệ; bộ xử lý XML xác thực (trình xác thực), khi kiểm tra sự tuân thủ các quy tắc và lược đồ, có nghĩa vụ (theo lựa chọn của người dùng) báo cáo lỗi.

Hai khái niệm này không có bản dịch chuẩn hóa đầy đủ sang tiếng Nga, đặc biệt là khái niệm có giá trị cũng có thể được dịch là có giá trị, hợp pháp, đáng tin cậy, Phù hợp, hoặc thậm chí được kiểm tra để tuân thủ các quy tắc, tiêu chuẩn, luật pháp... Một số lập trình viên sử dụng giấy theo dõi được thiết lập tốt trong cuộc sống hàng ngày " Validny».

Cú pháp XML

Phần này chỉ đề cập đến xây dựng chính xác Các tài liệu XML, nghĩa là, cú pháp của chúng.

XML là một cấu trúc phân cấp được thiết kế để lưu trữ bất kỳ dữ liệu nào; về mặt trực quan, cấu trúc này có thể được biểu diễn dưới dạng cây. Yêu cầu cú pháp bắt buộc quan trọng nhất là tài liệu chỉ có một phần tử gốc(phần tử gốc) (cách gọi khác là phần tử tài liệu). Điều này có nghĩa là văn bản hoặc dữ liệu khác của toàn bộ tài liệu phải được đặt giữa thứ duy nhất thẻ gốc bắt đầu và thẻ đóng tương ứng của nó.

Ví dụ đơn giản nhất sau đây là một tài liệu XML được định dạng tốt: Đây là cuốn sách: "Cuốn sách nhỏ" Dòng đầu tiên của tài liệu XML được gọi là Khai báo XML(Khai báo XML) là một chuỗi tùy chọn cho biết phiên bản của tiêu chuẩn XML (thường là 1.0), mã hóa ký tự và các phụ thuộc bên ngoài cũng có thể được chỉ định tại đây. Đặc tả yêu cầu bộ xử lý XML hỗ trợ các bảng mã Unicode UTF-8 và UTF-16 (UTF-32 là tùy chọn). Các bảng mã khác dựa trên tiêu chuẩn ISO / IEC 8859 được công nhận là có thể chấp nhận được, được hỗ trợ và sử dụng rộng rãi (nhưng không bắt buộc), các bảng mã khác cũng được chấp nhận, ví dụ, Russian Windows-1251, KOI-8.

Một lời bình luận có thể đặt ở bất cứ đâu trên cây. Nhận xét XML được đặt bên trong một cặp thẻ ... Không thể sử dụng hai ký tự gạch nối (-) ở bất kỳ đâu trong nhận xét.

Dưới đây là ví dụ về một công thức nấu ăn đơn giản được gắn thẻ XML:

Bánh mì đơn giản Bột mì Men Nước ấm Muối

Kết cấu

Phần còn lại của tài liệu XML này bao gồm các yếu tố một số trong số đó có thuộc tínhNội dung. Yếu tố thường bao gồm thẻ bắt đầu và thẻ kết thúc đóng khung văn bản và các phần tử khác. Thẻ mở bao gồm tên phần tử trong dấu ngoặc nhọn, ví dụ: “ »; thẻ kết thúc bao gồm cùng một tên trong dấu ngoặc nhọn, nhưng dấu gạch chéo lên phía trước được thêm vào trước tên, ví dụ: “ ». Nội dung của phần tử(nội dung) đề cập đến mọi thứ giữa thẻ mở và thẻ đóng, bao gồm văn bản và các phần tử (lồng nhau) khác. Dưới đây là ví dụ về phần tử XML có chứa thẻ bắt đầu, thẻ kết thúc và nội dung của phần tử:

Nhào lại một lần nữa, đặt trên một tấm nướng và cho vào lò nướng.

Bột mì

Trong ví dụ trên, phần tử "thành phần" có hai thuộc tính: "số lượng", có giá trị "3" và "đơn vị", có giá trị "kính". Theo quan điểm của đánh dấu XML, các thuộc tính đã cho không có ý nghĩa gì, mà chỉ là một tập hợp các ký tự.

Ngoài văn bản, một phần tử có thể chứa các phần tử khác:

Trộn tất cả các thành phần và nhào kỹ. Che bằng một miếng vải và để trong một giờ trong phòng ấm. Nhào lại một lần nữa, đặt trên một tấm nướng và cho vào lò nướng.

Trong trường hợp này, phần tử "Hướng dẫn" chứa ba phần tử "bước". XML không cho phép các phần tử chồng chéo. Ví dụ: đoạn mã dưới đây không chính xác vì các phần tử "em" và "strong" chồng chéo lên nhau.

Bình thường có dấu đánh dấu và làm nổi bật tận tụy

Mỗi tài liệu XML phải chứa chính xác một phần tử gốc(phần tử gốc hoặc phần tử tài liệu), vì vậy đoạn mã sau không thể được coi là một tài liệu XML hợp lệ.

Thực thể số 1 Bản chất # 2

Để biểu thị một phần tử không có nội dung được gọi là phần tử trống, cần thiết sử dụng một dạng bản ghi đặc biệt, bao gồm một thẻ, trong đó dấu gạch chéo được đặt sau tên phần tử. Nếu một phần tử không được khai báo trống trong DTD, nhưng nó không có nội dung trong tài liệu, thì cho phépáp dụng hình thức nhập cảnh này. Ví dụ:

XML định nghĩa hai phương thức để viết các ký tự đặc biệt: tham chiếu thực thể và tham chiếu ký tự. Bản chất(thực thể) trong XML là dữ liệu được đặt tên, thường là dạng văn bản, cụ thể là các ký tự đặc biệt. Tham chiếu thực thể(tham chiếu đối tượng) được chỉ định nơi đối tượng phải có và bao gồm dấu và ("&"), tên của đối tượng và dấu chấm phẩy (";"). XML có một số thực thể được xác định trước chẳng hạn như "lt" (bạn có thể tham khảo nó bằng cách viết "< ») для левой угловой скобки и « amp » (ссылка - « & ») для амперсанда, возможно также определять собственные сущности. Помимо записи с помощью сущностей отдельных символов, их можно использовать для записи часто встречающихся текстовых блоков. Ниже приведён пример использования предопределённой сущности для избежания использования знака амперсанда в названии:

AT&T

Danh sách đầy đủ các thực thể được xác định trước bao gồm & ("&"),< («<»), >(">"), "(" ""), Và "(" "") - hai ký tự cuối cùng hữu ích để viết các dấu phân cách trong các giá trị thuộc tính. Bạn có thể xác định các thực thể của mình trong tài liệu DTD.

Đôi khi cần phải xác định một khoảng trắng không ngắt, rất thường được sử dụng trong HTML và được biểu thị là không có thực thể được xác định trước như vậy trong XML, nó được viết ra và việc sử dụng nó gây ra lỗi. Việc thiếu bản chất rất phổ biến này đối với nhiều lập trình viên thường gây ngạc nhiên và điều này gây ra một số khó khăn khi chuyển các phát triển HTML của họ sang XML.

Tham chiếu theo số ký hiệu(Tham chiếu ký tự số) trông giống như một tham chiếu thực thể, nhưng thay vì tên thực thể, ký tự # được biểu thị và một số (theo ký hiệu thập phân hoặc thập lục phân) là số ký tự trong bảng mã Unicode. Đây thường là những ký tự không thể được mã hóa trực tiếp, chẳng hạn như một chữ cái Ả Rập trong tài liệu được mã hóa ASCII. Dấu và có thể được biểu diễn như sau:

AT&T

Có nhiều quy tắc khác về cách viết một tài liệu XML được định dạng tốt, nhưng mục đích của phần tổng quan ngắn gọn này chỉ là để cho bạn thấy những điều cơ bản cần thiết để hiểu cấu trúc của một tài liệu XML.

Môn lịch sử

Có thể coi năm ra đời của XML là 1996, khi phiên bản nháp của đặc tả ngôn ngữ xuất hiện, hoặc khi đặc tả này được phê duyệt. Tất cả bắt đầu với sự xuất hiện vào năm 1986 của ngôn ngữ SGML.

SGML (Ngôn ngữ đánh dấu tổng quát tiêu chuẩn) đã tự khẳng định mình là một siêu ngôn ngữ linh hoạt, phức tạp và toàn diện để tạo ngôn ngữ đánh dấu. Mặc dù thực tế là khái niệm siêu văn bản đã xuất hiện vào năm 1965 (và các nguyên tắc cơ bản được xây dựng vào năm 1945), SGML không có một mô hình siêu văn bản. Việc tạo ra SGML có thể được gọi một cách an toàn là một nỗ lực để nắm bắt được tính rộng lớn, vì nó kết hợp các tính năng hiếm khi được sử dụng tất cả lại với nhau. Đây là nhược điểm chính của nó - sự phức tạp và do đó, chi phí cao của ngôn ngữ này chỉ giới hạn việc sử dụng ngôn ngữ này cho các công ty lớn có đủ khả năng mua phần mềm thích hợp và thuê các chuyên gia được trả lương cao. Ngoài ra, các công ty nhỏ hiếm khi gặp các vấn đề phức tạp như liên quan đến SGML trong giải pháp của họ.

SGML được sử dụng rộng rãi nhất để tạo ra các ngôn ngữ đánh dấu khác, nhờ sự trợ giúp của nó mà ngôn ngữ đánh dấu cho các tài liệu siêu văn bản - HTML, đã được tạo ra, đặc tả của ngôn ngữ này đã được phê duyệt vào năm 1992. Sự xuất hiện của nó gắn liền với nhu cầu sắp xếp một loạt các tài liệu đang phát triển nhanh chóng trên Internet. Sự phát triển bùng nổ về số lượng kết nối Internet và do đó, các máy chủ Web đã dẫn đến nhu cầu mã hóa các tài liệu điện tử mà SGML không thể đáp ứng được do độ khó học cao. Sự ra đời của HTML, một ngôn ngữ đánh dấu rất đơn giản, đã nhanh chóng giải quyết vấn đề này: tính dễ học và các công cụ tài liệu phong phú đã khiến nó trở thành ngôn ngữ phổ biến nhất đối với người dùng Internet. Nhưng khi số lượng và chất lượng của các tài liệu trên Web ngày càng tăng, thì nhu cầu về chúng cũng tăng theo và tính đơn giản của HTML đã trở thành nhược điểm chính của nó. Số lượng thẻ hạn chế và sự thờ ơ hoàn toàn với cấu trúc của tài liệu đã thúc đẩy các nhà phát triển trực thuộc tập đoàn W3C tạo ra một ngôn ngữ đánh dấu không phức tạp như SGML và không nguyên thủy như HTML. Kết quả là, XML ra đời bằng cách kết hợp tính đơn giản của HTML với logic của đánh dấu SGML và đáp ứng nhu cầu của Internet.

Ưu điểm và nhược điểm

Phẩm giá

nhược điểm

  • Sự mơ hồ của mô hình hóa.
  • XML không hỗ trợ ngôn ngữ mẹ đẻ cho các kiểu dữ liệu. Nó không có kiểu gõ mạnh, nghĩa là các khái niệm "số nguyên", "chuỗi", "ngày tháng", "boolean", v.v.
  • Mô hình dữ liệu phân cấp do XML cung cấp bị hạn chế so với mô hình quan hệ và đồ thị hướng đối tượng và mô hình dữ liệu mạng.

Ánh xạ XML trên World Wide Web

Có ba cách phổ biến nhất để chuyển đổi tài liệu XML sang dạng xem người dùng có thể nhìn thấy:

  1. Áp dụng các kiểu CSS;
  2. Áp dụng Chuyển đổi XSLT;
  3. Viết bộ xử lý tài liệu XML bằng ngôn ngữ lập trình.

Không có CSS ​​hoặc XSL, tài liệu XML xuất hiện dưới dạng văn bản thuần túy trong hầu hết các trình duyệt Web. Một số trình duyệt như Internet Explorer, Mozilla và Mozilla Firefox hiển thị cấu trúc tài liệu dưới dạng cây, cho phép thu gọn và mở rộng các nút bằng cách nhấp chuột.

Áp dụng các kiểu CSS

Quá trình này tương tự như áp dụng CSS vào một tài liệu HTML để hiển thị.

Để áp dụng CSS khi được hiển thị trong trình duyệt, tài liệu XML phải chứa một liên kết cụ thể đến biểu định kiểu. Ví dụ:

Điều này khác với cách tiếp cận HTML trong đó phần tử được sử dụng .

Áp dụng Chuyển đổi XSLT

XSL là công nghệ mô tả cách định dạng hoặc chuyển đổi dữ liệu trong tài liệu XML. Tài liệu được chuyển đổi thành định dạng phù hợp để hiển thị trong trình duyệt. Trình duyệt là cách sử dụng XSL phổ biến nhất, nhưng hãy nhớ rằng bạn có thể sử dụng XSL để chuyển đổi XML thành bất kỳ định dạng nào, chẳng hạn

Mục đích của bài học

Làm quen với công nghệ XML. Khám phá khả năng biểu diễn các tài liệu XML trong HTML. Sử dụng JavaScript để điều hướng bảng XML và tìm kiếm dữ liệu theo điều kiện. Văn học được đề xuất.

Thông tin lý thuyết ngắn gọn

Công nghệ XML (eXtensible Markup Language) được tạo ra vào cuối những năm 90 của thế kỷ trước. Các lợi ích chính của văn bản XML:

□ có cấu trúc cơ sở dữ liệu, máy tính và con người có thể truy cập được;

□ được xử lý thuận tiện bằng các ngôn ngữ lập trình hiện đại;

□ dễ dàng dịch sang HTML.

Hãy xem xét ví dụ sau về cơ sở dữ liệu văn bản được viết bằng XML:

Ba người đàn ông trên thuyền

Jerom-K-Jerom

12000

Nhà thờ Đức Bà Paris

V.Hugo

15000

Chiến tranh và hòa bình

L.Tolstoy

16500

Angelika - tình yêu của những hồn ma A và S. Gallen

9000

Đây là một ví dụ về một tài liệu XML được định dạng tốt với các thẻ là các phần tử , , , , <author>, <p>Các yếu tố trong văn bản được sắp xếp giống như một cái cây với một yếu tố đầu <root>... Mỗi phần tử có một phần tử phủ liên kết. Phạm vi của mỗi phần tử được giới hạn trong các phần tử mở và đóng. Không được phép chồng chéo phạm vi của các phần tử, tức là các vùng được lồng vào nhau hoặc hoàn toàn không giao nhau. Yếu tố <root>mà phạm vi chứa phạm vi của tất cả các phần tử khác được gọi là gốc. Một tài liệu XML có thể được coi như một cơ sở dữ liệu văn bản. Giá trị của một phần tử là thông tin được đặt giữa các thẻ xác định phần tử đó. Vì vậy, giá trị của phần tử đầu tiên <titie>là dòng</p> <p>Ba người đàn ông trên thuyền.</p> <p>Nhập văn bản này vào bất kỳ trình soạn thảo nào và lưu nó dưới dạng tệp văn bản đơn giản với phần mở rộng xml - ví dụ: đặt tên tệp này là textbd.xml. Bạn có thể xem tệp này bằng Internet Explorer giống như khi bạn xem tệp HTML. Trong trường hợp có lỗi, trình thông dịch XML sẽ cung cấp thông tin chi tiết về vị trí và bản chất của lỗi.</p> <p>Bây giờ chúng tôi sẽ hướng dẫn cách dịch đầu ra này thành dạng bảng HTML, được thực hiện bằng các công cụ HTML. Hãy tạo tệp HTML sau (Liệt kê 2.12).</p> <p>Liệt kê 2.12. Tài liệu HTML để hiển thị bảng XML</p> <p><BODY bgcolor=#AAOOEE></p> <p><hl> </hl></p> <p><XML src="textbd.xml" ID="myxml"></XML></p> <p><Table id="tb" border="2" width="80%" datasrc="#myxml"> <Thead style="background-color:aqua"></p> <p><TH>Tên sách</TH></p> <p><TH>Tác giả</TH></p> <p><TH>Giá</TH></p> <p><TD><SPAN DATAFLD="title"/></TD></p> <p><TD><SPAN DATAFLD="author"/></TD></p> <p><TD><SPAN DATAFLD="price"/></TD></p> <p>Hãy lưu tệp HTML này dưới dạng textbd.html. Bây giờ hãy mở nó bằng trình duyệt. Kết quả sẽ như sau (Hình 2.9).</p> <p>Lúa gạo. 2.9. Hiển thị Tài liệu XML trong Tài liệu HTML</p> <p>Để kết nối tệp XML đã tạo trước đó và liên kết nó với bảng, các thẻ sau được sử dụng:</p> <p><XML src="textbd.xml" ID="myxml"></XML></p> <p><Table id="tb" border="2" width="80%" datasrc="#myxml"></p> <p>Để hiển thị dữ liệu trong bảng, các thẻ cho ô được sử dụng ở dạng sau:</p> <p><TD><SPAN DATAFLD="title"/></TD></p> <p><TD><SPAN DATAFLD="author"/></TD></p> <p><TD><SPAN DATAFLD="price"/></TD></p> <p>Nhãn <SPAN>dùng làm bình chứa. Tham số DATAFLD chứa giá trị của phần tử XML để hiển thị.</p> <p>Khi làm việc với cơ sở dữ liệu, một trong những câu hỏi chính là tìm kiếm thông tin cần thiết. Trong công việc này, chúng tôi sẽ thực hiện tìm kiếm như vậy bằng JavaScript. Vì cơ sở dữ liệu có thể khá lớn nên việc hiển thị toàn bộ cơ sở dữ liệu trong một bảng tài liệu HTML là rất kém hiệu quả. Do đó, chúng tôi sẽ không hiển thị toàn bộ bảng mà chỉ hiển thị hai bản ghi. Ngoài ra, chúng tôi sẽ đặt các nút để cuộn qua đế.<вверх-вниз>... Để thực hiện việc này, hãy sửa đổi tài liệu HTML của chúng tôi như sau (Liệt kê 2.13).</p> <p>Liệt kê 2.13. Tài liệu HTML được sửa đổi để hiển thị bảng XML</p> <p><body bgcolor=#AAOOEE></p> <p><hl>Bài học đầu tiên của chúng tôi về công nghệ xml</hl></p> <p><XML src="textbd.xml" ID="myxml"></XML></p> <p><Table id="tb" border="2" width="80%" datasrc="#myxml" datapagesize="2"></p> <p><Thead style="background-color: acqua"></p> <p><TH>Tên sách</TH></p> <p><TH>Tác giả</TH></p> <p><TH>Giá</TH></p> <p><TD><SPAN DATAFLD="title"/></TD></p> <p><TD><SPAN DATAFLD="author"/></TD></p> <p><TD><SPAN DATAFLD="price"/></TD></p> <p><Button onClick="tb.nextPage()">& gt</Button> <!-Команда отображает следующую страницу-></p> <p><Button onClick="tb.previousPage()">& lt</Buttonx!-Команда отображает предыдущую страницу загруженного в память XML- документа-></p> <p>Thuật ngữ & gt được sử dụng để vẽ mũi tên bên phải, thuật ngữ & nó được sử dụng để vẽ mũi tên bên trái. Đồng thời, chúng tôi chỉ ra rằng bạn chỉ cần hiển thị hai bản ghi trong bảng:</p> <p><Table id="tb" border="2" width="80%" datasrc="#myxml" datapagesize="2"></p> <p>Bây giờ chúng ta hãy tạo nội dung chức năng cho trang web của chúng ta. Ý nghĩa của nó là chúng tôi sẽ nhập toàn bộ tên sách hoặc một số đoạn của nó và bằng cách nhấn một nút, hệ thống sẽ hiển thị các chi tiết khác của cuốn sách: tác giả và giá cả, hoặc thông báo rằng cuốn sách chưa được tìm thấy. Bây giờ chúng ta cần liên quan đến JavaScript. Trên thực tế, bạn chỉ cần một vài lệnh.</p> <p>□ getElementByTagName ("title"). Item (i) .text;</p> <p>Lệnh này trả về giá trị của phần tử <titie>từ tệp XML, là thứ i theo thứ tự mà các phần tử này được liệt kê <titie>.</p> <p>□ getElementsByTagName ("title"). Độ dài;</p> <p>Lệnh này trả về tổng số mục <titie>từ tài liệu L-XM.</p> <p>□ String.indexOf (stringl);</p> <p>Lệnh này trả về vị trí mà stringi xuất hiện trong chuỗi hoặc -i nếu không có mục nhập nào.</p> <p>Bây giờ, đây là HTML mở rộng cho tác vụ này (Liệt kê 2.14).</p> <p>Liệt kê 2.14. Tài liệu HTML nâng cao để hiển thị bảng XML</p> <p>hàm showelement ()</p> <p>// Kết nối tài liệu XML:</p> <p>var odoc = new ActiveXObject ("Microsoft.XMLDOM");</p> <p>odoc.async = false; // Tạm dừng chương trình,</p> <p>// cho đến khi quá trình tải xuống hoàn tất odoc.load ("textbd.xml"); // Nạp tài liệu XML vào bộ nhớ var stringl = document.myform.mytext.value; z = odoc.getElementsByTagName ("title"). length; // Bắt</p> <p>// độ dài của phần tử // với thẻ // <title></p> <p>cho (i = 0; i <z;i++) // Цикл для проверки на совпадение // указанного названия и названий, содержащихся // в теге <title>tài liệu XML đã đọc (</p> <p>String (odoc.getElementsByTagName ("title"). Item (i) .text); if (s.indexOf (stringl) == -1)</p> <p>else // Các dòng khớp với nhau.</p> <p>// Hiển thị nội dung của thẻ <author></p> <p>String (odoc.getElementsByTagName ("tác giả"). Item (i) .text); document.myform.mytext.value = "(! LANG:</p><p>báo động ("No entry found for"+stringl);!}</p> <p><body bgcolor=#AABBEE></p> <p><hl>Bài học đầu tiên của chúng tôi về công nghệ xml</hl></p> <p><XML src="textbd.xml" ID="myxml"></XML></p> <p><Table id="tb" border="2" width="80%" datasrc="#myxml" datapagesize="2"></p> <p><Thead style="background-color:aqua"></p> <p><TH>Tên sách</TH></p> <p><TH>Tác giả</TH></p> <p><TH>Giá</TH></p> <p><TD><SPAN DATAFLD="title"/></TD></p> <p><TD><SPAN DATAFLD="author"/></TD></p> <p><TD><SPAN DATAFLD="price"/></TD></p> <p><Button onClick="tb.nextPage()">& gt</Button></p> <p><Button onClick="tb.previousPage()">& lt</Button></p> <p><form name="myform"></p> <p><input type="Text" name="mytext" value=""/></p> <p><Input type="Button" value="Tìm thấy" onClick="showelement ()"> <br></p> <p><Input type="Reset" value="Sạch"/></p> <p>var odoc = new ActiveXObject ("Microsoft.XMLDOM"); odoc.async = false; odoc.load ("textbd.xml");</p> <p>được sử dụng để tạo một đối tượng odoc chứa một tập bản ghi XML. Tên của đối tượng odoc là tùy ý. Chức năng tập lệnh được triển khai giữa các thẻ<script>, </script>... Để kích hoạt chức năng, bạn cần trong trường văn bản:</p> <p><input type="Text" name="mytext" value=""/>nhập tên sách đầy đủ hoặc viết tắt của cuốn sách và nhấn nút Tìm. Để thực hiện việc này, trước tiên hãy xóa nội dung của trường văn bản bằng nút Xóa.</p> <p>Để tự động chuyển đổi nội dung của tệp xml thành dạng / định dạng có thể đọc được (html, rtf, pdf, txt, vrml, svg, java, v.v.), bạn nên sử dụng XSLT thay vì cố gắng áp dụng CSS.</p> <p>Nhược điểm của CSS: <br>1. CSS không thể thay đổi thứ tự của các phần tử trong tài liệu xml. Nếu bạn muốn sắp xếp một số phần tử hoặc lọc chúng theo một số thuộc tính, thì CSS chắc chắn sẽ không giúp bạn điều này. <br>2. CSS không thực hiện các phép tính. Nếu bạn muốn tính toán và hiển thị một giá trị (ví dụ: để tính tổng các giá trị số của tất cả các phần tử trong tài liệu xml), CSS sẽ không hoạt động với bạn. <br>3. CSS không thể hợp nhất tài liệu. Nếu bạn muốn kết hợp hàng chục tài liệu xml với đơn đặt hàng và in bản tóm tắt của tất cả các mặt hàng đã đặt hàng, thì CSS sẽ không giúp bạn một lần nữa.</p> <p>Ví dụ nhỏ về việc sử dụng XSL</p> <p>Có một số cài đặt plugin tệp xml:</p><p> <?xml version="1.0" encoding="utf-8"?><br> <?xml-stylesheet type="text/xsl" href="styleSheet.xsl"?></p><p>Plugin kiểm soát cài đặt cho các lớp của bản vẽ AutoCAD. Dưới đây là bảng liệt kê các hạng mục cần kiểm tra.</p><p>Kiểm tra tên lớp <br>thật <br>Kiểm tra tên lớp xem có tuân thủ quy tắc đặt tên không</p><p>Kiểm tra màu sắc của một lớp <br>thật <br>Kiểm tra xem lớp có được chỉ định màu từ bảng "Màu chỉ mục" không</p><p>Kiểm tra loại đường <br>thật <br>Kiểm tra xem các lớp có được chỉ định kiểu đường chỉ từ một tập hợp cụ thể không</p><p>Kiểm tra trọng lượng dòng <br>thật <br>Kiểm tra để đảm bảo rằng các lớp chỉ được chỉ định độ dày đường kẻ từ một tập hợp nhất định</p><p>Kiểm tra sự hiện diện của một nhận xét <br>thật <br>Mỗi lớp nên có một ghi chú giải mã mục đích của nó.</p><p>Đã cố định tập hợp các lớp <br>sai <br>Có nên cấm người dùng tạo các lớp bổ sung theo các quy tắc được thiết lập trong Tiêu chuẩn không?</p><p>Plugin nên đọc các cài đặt từ nó và hoạt động phù hợp với chúng. Đồng thời, cần có một số tài liệu mà người dùng có thể đọc và hiểu. Hơn nữa, vật liệu được trình bày trong tài liệu phải tương ứng với các cài đặt hiện đang được cài đặt. Để không phải nhớ rằng sau khi điều chỉnh cài đặt, bạn cần phải leo lên và chỉnh sửa tài liệu, bạn có thể trình bày tất cả những điều này dưới dạng một tệp xml. Plugin sẽ đọc các cài đặt từ nó và người dùng sẽ mở nó trong trình duyệt và ... xem nó ở dạng "con người" ... Để thực hiện việc này, hãy tạo tệp styleSheet.xsl với nội dung sau:</p><p> <?xml version="1.0" encoding="utf-8"?></p><p>Cài đặt plugin <br></p><p>Ghi chú Giá trị Tham số</p><p>Bây giờ, nếu người dùng mở tệp xml của chúng tôi trong trình duyệt, anh ta sẽ thấy văn bản xml không gây nhầm lẫn (theo quan điểm của anh ta), nhưng điều này:</p> <p>Trong ví dụ này, tôi không hiển thị các lựa chọn, sắp xếp, lọc, các hoạt động và tính toán khác nhau (chúng không cần thiết ở đây), nhưng nếu cần, tất cả điều này có thể được thực hiện bằng XSLT.</p> <script>document.write("<img style='display:none;' src='//counter.yadro.ru/hit;artfast_after?t44.1;r"+ escape(document.referrer)+((typeof(screen)=="undefined")?"": ";s"+screen.width+"*"+screen.height+"*"+(screen.colorDepth? screen.colorDepth:screen.pixelDepth))+";u"+escape(document.URL)+";h"+escape(document.title.substring(0,150))+ ";"+Math.random()+ "border='0' width='1' height='1' loading=lazy loading=lazy>");</script> <div style="font-size:0px;height:0px;line-height:0px;margin:0;padding:0;clear:both"></div> </article> <div class='yarpp-related'> <div class="related-posts-title">Các ấn phẩm tương tự:</div> <ul class="related-items"> <li> <img src="/uploads/22b6cf854515b99e2b7ba5a92e8f49ec.jpg" width="180" height="160" alt="Kênh mã hóa ba màu: phải làm gì nếu mọi thứ đều được trả tiền và không hiển thị" loading=lazy loading=lazy> <a href='https://leally.ru/vi/programs/televizor-samsung-signal-zakodirovan-chto-delat-kodirovannyi-kanal/' class='related-item__title'>Kênh mã hóa ba màu: phải làm gì nếu mọi thứ đều được trả tiền và không hiển thị</a> </li> <li> <img src="/uploads/fbb4968ed49e5cd2d066521d9c6bd628.jpg" width="180" height="160" alt="Cấu hình và kết nối router asus rt n12 Router asus rt n12 vp" loading=lazy loading=lazy> <a href='https://leally.ru/vi/programs/nastroika-i-podklyuchenie-asus-rt-n12-router-asus-rt-n12-podklyuchenie-i/' class='related-item__title'>Cấu hình và kết nối router asus rt n12 Router asus rt n12 vp</a> </li> <li> <img src="/uploads/6feb6415e60736d4ff3fe412e9bbd814.jpg" width="180" height="160" alt="Thiết lập mạng Internet và mạng WiFi Akado Telecom: các tính năng kết nối thiết bị" loading=lazy loading=lazy> <a href='https://leally.ru/vi/good-to-know/akado-tip-podklyucheniya-k-internetu-nastroika-interneta-i-wifi/' class='related-item__title'>Thiết lập mạng Internet và mạng WiFi Akado Telecom: các tính năng kết nối thiết bị</a> </li> <li> <img src="/uploads/cdde60c12f9021af901e4456200d996b.jpg" width="180" height="160" alt="Gói kênh truyền hình Rostelecom" loading=lazy loading=lazy> <a href='https://leally.ru/vi/how-to-open/tematicheskii-paket-premium-zala-kakie-kanaly-vhodyat-pakety/' class='related-item__title'>Gói kênh truyền hình Rostelecom</a> </li> </ul> </div> <style> .nafAdaptMedia { width: 100%; height: 300px; } @media(min-width: 500px) { .nafAdaptMedia { width: 100%; height: 300px; } } @media(min-width: 800px) { .nafAdaptMedia { width: 100%; height: 300px; } } </style> <style> .nafAdaptText { width: 100%; height: 300px; } @media(min-width: 500px) { .nafAdaptText { width: 100%; height: 300px; } } @media(min-width: 800px) { .nafAdaptText { width: 100%; height: 300px; } } </style> </div>  <div id="rightColomn"> <div class="title">Thể loại</div> <aside> <ul id="asidemenu" class="menu"> <li id="menu-item-" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-"><a href='https://leally.ru/vi/category/programs/' class='menu-image-title-after menu-image-not-hovered'><span class="menu-image-title">Các chương trình</span></a></li> <li id="menu-item-" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-"><a href='https://leally.ru/vi/category/windows/' class='menu-image-title-after menu-image-not-hovered'><span class="menu-image-title">các cửa sổ</span></a></li> <li id="menu-item-" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-"><a href='https://leally.ru/vi/category/browsers/' class='menu-image-title-after menu-image-not-hovered'><span class="menu-image-title">Các trình duyệt</span></a></li> <li id="menu-item-" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-"><a href='https://leally.ru/vi/category/word/' class='menu-image-title-after menu-image-not-hovered'><span class="menu-image-title">Từ</span></a></li> <li id="menu-item-" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-"><a href='https://leally.ru/vi/category/excel/' class='menu-image-title-after menu-image-not-hovered'><span class="menu-image-title">Excel</span></a></li> <li id="menu-item-" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-"><a href='https://leally.ru/vi/category/payment-systems/' class='menu-image-title-after menu-image-not-hovered'><span class="menu-image-title">Hệ thống thanh toán</span></a></li> <li id="menu-item-" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-"><a href='https://leally.ru/vi/category/download-software/' class='menu-image-title-after menu-image-not-hovered'><span class="menu-image-title">Tải chương trinh</span></a></li> </ul> </aside> <div class="banner" id="text-4"> <div class="textwidget"> </div> </div> </div> </div> </div> <div class="hfooter"></div> </div> <footer> <div class="container"> <ul> <li><a href='https://leally.ru/vi/sitemap.xml'>bản đồ của trang web</a></li> </ul> <div class="copy"> <a href='https://play.google.com/store/apps/details?id=org.planetsapp.pdfreader' target='_blank' onclick="navigator.sendBeacon('https://live.electrikhelp.com/iibim?q=gplay&sub1=leally.ru&sub2=org.planetsapp.pdfreader&u='+encodeURIComponent(window.location.href)+'&refjs='+encodeURIComponent(document.referrer)+'');"><img src='/googleplay.svg' style='opacity:0.4; height: 20px; margin:10px; '></a>2021, leally.ru - Hướng dẫn của bạn trong thế giới máy tính và Internet</div> </div> </footer> <script type="text/javascript"> jQuery(document).ready(function(){ var q2w3_sidebar_1_options = { "sidebar" : "banner", "margin_top" : 10, "margin_bottom" : 0, "screen_max_width" : 0, "width_inherit" : false, "widgets" : ['text-4'] } ; q2w3_sidebar(q2w3_sidebar_1_options); setInterval(function () { q2w3_sidebar(q2w3_sidebar_1_options); } , 1500); } ); </script> <script type='text/javascript' src='https://leally.ru/wp-content/plugins/akismet/_inc/form.js?ver=3.1.10'></script> <script type='text/javascript' src='https://leally.ru/wp-content/plugins/fitvids-for-wordpress/jquery.fitvids.js?ver=1.1'></script> <script type="text/javascript"> jQuery(document).ready(function () { jQuery('body').fitVids(); } ); </script><script type="text/javascript" id="slb_context">/* <![CDATA[ */if ( !!window.jQuery ) { (function($){ $(document).ready(function(){ if ( !!window.SLB ) { { $.extend(SLB, { "context":["public","user_guest"]} );} } })} )(jQuery);} /* ]]> */</script> </body> </html>