Phần phụ thuộc <assert>

Một phần của tài liệu Tiêu chuẩn Quốc gia TCVN 11523-2:2016 (Trang 32 - 33)

9 Lệnh 1 Khái quát

9.9.5Phần phụ thuộc <assert>

Phần phụ thuộc <assert> quy định biểu thức Boolean được đảm bảo là true sau khi lệnh được thực thi thành công. Điều này được gọi là ‘sự xác nhận’ hay “điều kiện sau”.

CHÚ THÍCH 1 Nếu phần phụ thuộc <assert> được đảm bảo là đầy đủ thì nó có thể suy luận từ một điều kiện sau đúng đắn mà lệnh thực thi thành công. Xem điều 9.5 để biết chi tiết về thuộc tính ‘sufficient’

Đối với các lệnh của kiểu uis:voidCommand (xem điều 9.3.2) điều kiện sau được đảm bảo là true đối với mọi lần gọi ra lệnh đã yêu cầu. Đối với lệnh của kiểu uis:basicCommand (xem điều 9.3.3) hoặc uis:timedCommand (xem điều 9.3.4), điều kiện sau được đảm bảo là true cho tất cả các lần gọi ra lệnh mà dẫn đến trạng thái “succeeded”.

Thẻ <assert> có thể hiện diện như thẻ con của <dependency> (xem điều 9.9.1). Nếu hiện diện thì nó sẽ xuất hiện một lần.

VÍ DỤ 1 Sau khi thực thi thành công nút “tầng 4” của thang máy, giá trị của biến ‘currentFloor’ sẽ là 4. Sự xác nhận này có thể được diễn tả như sau:

dependency>

<assert> uis:value(‘currentFloor’) eq 4 </assert> </dependency>

VÍ DỤ 2 Lệnh “startPlay” sẽ kích khởi đích yêu cầu URC mở một phiên con (“yêu cầu chuyển tiếp”, xem TCVN (ISO/IEC 24752-1)) trên socket “play”.

<command id”“startPlay” type=“uis:voidCommand”> <dependency>

<assert> uis:sessionForward(“spawn”, “http://example.com/target/play”) </assert>

</command>

CHÚ THÍCH Các URC tiên tiến có thể khai thác tin tức trên các điều kiện sau để tạo nhiều giao diện người sử dụng dễ dùng hơn. Các điều kiện sau đặc biệt hữu dụng nếu chúng được quy định đầy đủ (xem điều 9.5).

Nội dung của thẻ <assert> phải là trống hoặc biểu thức Xpath hợp lệ đánh giá giá trị Boolean. Nếu phần phụ thuộc <assert> của lệnh là trống thì phần phụ thuộc <assert> của lệnh phải là ẩn số.

Một phần của tài liệu Tiêu chuẩn Quốc gia TCVN 11523-2:2016 (Trang 32 - 33)