2009-03-13 28 views

Trả lời

4

Phillip,

Tạo một lint tốt cho XLST là khá khó khăn, bởi vì giá trị của mẫu XSLT phụ thuộc vào trình phân tích cú pháp được sử dụng. Mỗi trình phân tích cú pháp có phần mở rộng riêng. Ví dụ: xalan java có thể dễ dàng mở rộng với các hàm xpath tùy chỉnh, được mã hóa rõ ràng trong java. Bởi vì bất kỳ trình xác thực .net nào sẽ không xác thực xslts trước xalan.

Vì vậy, trước hết bạn cần phải biết bạn sẽ sử dụng bộ xử lý nào. Nếu bạn sử dụng các bộ xử lý dựa trên java, tôi khuyên bạn nên sử dụng Eclipse để có thể xác thực các mẫu khi đang chạy.

Tôi đã mệt mỏi hai plugins eclipse, Điều đáng nói là cả hai hỗ trợ gỡ lỗi và XSLT/xpath hoàn thành mã:


Oxygen XML editor - một (~ $ 300) XML/biên tập XSLT/plugin thương mại nhật thực. Nó có thể sử dụng các công cụ sau: Xalan, Saxon, xsltproc,

Nó có thể kiểm tra:

  • đúng đắn của xsl: template
  • đúng đắn của tên thuộc tính của xsl: call-template
  • nghĩa nhân bản của biến XSLT
  • hiệu lực của dtd của
  • hiệu lực của tiêu đề XSLT
  • hiệu lực của namespace xml
  • hiệu lực của XPath
  • hiệu lực của xsl: value-of nếu một xml có liên quan đến XSLT
  • đúng đắn của xsl: nhập khẩu cho các tập tin địa phương và từ xa (nó hỗ trợ catalog xml)

Tôi phải nói rằng plugin thực sự tốt nhưng mặt khác nó không phải là nguồn mở.


XSLT Project - plugin nguồn mở (là một phần của Nền tảng công cụ web Eclipse). Nó khá trẻ (bắt đầu vào tháng 9 năm 2008), tuy nhiên nó có cộng đồng rất tích cực. Hiện tại nó chỉ hỗ trợ Xalan và JAXP.

Nó phát hiện lỗi và cảnh báo sau đây:

  • XSLT không hợp lệ tiêu đề
  • sai dtd
  • nhập khẩu không chính xác (nó xử lý chỉ nhập khẩu tương đối, catalog xml được quy hoạch cho phiên bản 1,1)

Danh sách trên chắc chắn không đầy đủ vì thiếu hỗ trợ cho danh mục xml khiến dự án này không thể sử dụng được cho tôi.

+0

FWIW: Mặc dù không liên quan trực tiếp đến xsl Tôi thấy rằng tôi có thể thực hiện kiểm tra cú pháp xml cơ bản bằng xmllint (một công cụ tiện ích là một phần của gói libxml). Điều này giúp chọn ra các lỗi cú pháp đơn giản như phần tử chưa từng có bắt đầu/kết thúc, bình luận không chính xác, v.v. – GuruM

+0

Mặc dù không phải lệnh lint - nếu bạn đang sử dụng vim làm trình soạn thảo, bạn sẽ thấy xsl.vim hữu ích cho việc đánh dấu cú pháp. – GuruM

0

Bạn nên tìm "XSL profiler" hoặc "XSL debugger". Có hàng chục cái này.

Các vấn đề liên quan