Thật
Một cái gì đó có thể sẽ thay thế XSLT một ngày nào đó vì nó hơi cồng kềnh để tìm hiểu và sử dụng. Tuy nhiên, hiện tại không có ngôn ngữ mẫu / ngôn ngữ chuyển đổi nào có thể linh hoạt và "thuần túy" trong quá trình triển khai.
XSL-T có thể được sử dụng cho một vài mục đích khác nhau:
- Bạn có thể "tạo" nội dung theo định dạng HTML từ dữ liệu bằng mẫu
- Bạn có thể chuyển đổi từ định dạng xml này sang định dạng khác
- Bạn có thể thao tác xml sang định dạng khác, có thể hiển thị một tập hợp con
Về cơ bản, tất cả những thứ này đều giống nhau, tuy nhiên, việc chuyển đổi một tệp dữ liệu XML này sang tệp khác. Bây giờ hãy xem xét một số công cụ khác nhau mà chúng ta có thể sử dụng thay vì XSLT.
Nếu chúng ta muốn thao túng nội dung của một trang XHTML, chúng ta có thể sử dụng regrec, nhưng regrec thì lộn xộn cho các công cụ cấu trúc. Nó tỏa sáng để thao tác các chuỗi nhưng tôi sẽ không sử dụng nó để tạo một bảng mục lục cho một cái gì đó hoặc trình bày nó trong một bố cục khác.
Tiếp theo là ASP.Net. Chúng tôi đặt bố cục của chúng tôi trong trang asp của chúng tôi và chèn một số mã phía sau cho các phần động. Một cách khác là từ bỏ phần bố trí và tạo mọi thứ từ cơ sở dữ liệu và sử dụng C # tạo đầu ra mong muốn của chúng tôi.
Vấn đề với cách tiếp cận đầu tiên là việc vụng về từ dữ liệu mô tả đến nội dung thực tế là vụng về. Nếu bạn có một số tệp dữ liệu chứa số điện thoại mà bạn muốn trình bày với các tiêu đề cho mỗi chữ cái, hãy hiển thị tổng số nr mục nhập, v.v. bạn phải có một số bố cục trong tệp bố cục và một số trong mã bạn đang tạo . Một tùy chọn khác là sử dụng một số dạng lưới web, tôi thấy chúng khá lộn xộn và đột nhiên bạn phải tìm hiểu cách thức hoạt động của lưới điện tử khi tất cả những gì bạn muốn làm là xuất ra một số html cụ thể được cung cấp dữ liệu.
Hoàn toàn năng động chắc chắn là một lựa chọn nhưng điều đó cũng khá vụng về. Ngay cả trong trường hợp tốt nhất khi bạn đang sử dụng thứ gì đó như LINQ, bạn sẽ phải xen kẽ mã lập trình với đầu ra theo cách khá xấu xí. Ngoài ra, không có cách nào tốt để xử lý đúng cách nội dung kiểu đệ quy không cấu trúc mà html thường là.
Với XSLT, bạn chỉ có thể tạo một mẫu cho một thẻ nhất định, giống như hoặc trong bối cảnh của nó, vì vậy nó được hiển thị khác đi nếu ví dụ đó là ngoặc đơn bởi một thứ khác.
Một câu trả lời lan man khá dài nhưng vâng, tôi nghĩ rằng có một giá trị lớn trong ngôn ngữ mẫu mô tả và XSLT là câu trả lời chuẩn nhất và tốt nhất mà chúng tôi có được cho đến nay.