SVG là một “ngơn ngữ chủ” (host language) của SMIL Animation. Do đĩ nĩ cĩ các ràng buộc và các tính năng bổ sung được cho phép bởi đặc tả SMIL Animation. Ngồi các quy tắc đặc trưng SVG được đề cập tường minh trong phần
đặc tả này, cịn cĩ các định nghĩa chuẩn cho các thành phần ảnh động của SVG và các thuộc tính nằm trong đặc tả SMIL Animation.
SVG hỗ trợ các thành phần ảnh động sau, được định nghĩa trong đặc tả SMIL Animation:
• ‘animate’: cho phép các thuộc tính vơ hướng nhận các giá trị khác nhau theo thời gian.
140
• ‘set’: hình thức tốc kí thuận tiện cho ‘animate’, rất hữu ích trong việc chỉ định các giá trị thuộc tính khơng phải dạng số cho các thuộc tính, chẳng hạn như thuộc tính ‘visibility’.
• ‘animateMotion’: dịch chuyển một thành phần dọc theo một đường.
• ‘animateColor’: thay đổi giá trị màu của các thuộc tính đặc biệt theo thời gian.
Ngồi ra, SVG bổ sung thêm các mở rộng tương thích với SMIL Animation:
• ‘animateTransform’: thay đổi giá trị của một trong các thuộc tính của phép biến đổi trong SVG theo thời gian, chẳng hạn như thuộc tính ‘transform’.
• Thuộc tính ‘path’: SVG cho phép bất kỳ tính năng nào của cú pháp dữ
liệu đường của SVG được chỉ định trong thuộc tính ‘path’ của thành phần ‘animateMotion’ (SMIL Animtion chỉ cho phép một tập con cú pháp dữ liệu đường trong thuộc tính ‘path’).
• Thành phần ‘mpath’: SVG cho phép một thành phần ‘animateMotion’ chứa một thành phần con ‘mpath’, tham chiếu đến một thành phần ‘path’ đểđịnh nghĩa một đường di chuyển.
• Thuộc tính ‘keyPoint’: SVG bổ sung thuộc tính ‘keyPoint’ cho thành phần ‘animateMotion’ cung cấp khả năng điều khiển chính xác về tốc
độ của ảnh động trên đường di chuyển.
• Thuộc tính ‘rotate’: SVG bổ sung thuộc tính ‘rotate’ cho thành phần ‘animateMotion’ để điều khiển một đối tượng tự động quay sao cho trục x (x-axis) cùng hướng (hoặc ngược hướng) với vec-tơ tiếp tuyến của đường di chuyển.
141
Để tương thích với các khía cạnh khác của ngơn ngữ, SVG dùng tham chiếu URI thơng qua thuộc tính ‘xlink:href’ để xác định các thành phần là đích của hoạt
ảnh.
SMIL Animation yêu cầu “ngơn ngữ chủ” phải định nghĩa đầy đủ ý nghĩa cho “thời điểm bắt đầu tài liệu” (document start) và “thời điểm kết thúc tài liệu” (document end). Bởi vì một thành phần ‘svg’ đơi khi là gốc của cây tài liệu XML và
đơi khi cũng là một thành phần của văn phạm XML, nên “thời điểm bắt đầu tài liệu” của một phân đoạn tài liệu SVG cho trước sẽ được định nghĩa là thời gian ngay lúc sự kiện ‘SVGLoad’ của thành phần ‘svg’ được kích hoạt. “Thời điểm kết thúc tài liệu” của phân đoạn tài liệu SVG là thời điểm mà phân đoạn tài liệu giải phĩng và khơng cịn được xử lý bởi tác nhân người dùng. Tuy nhiên, các thành phần ‘svg’ được lồng trong một tài liệu SVG sẽ khơng tạo thành phân đoạn tài liệu trong ngữ cảnh này, khơng định nghĩa một “thời điểm bắt đầu tài liệu” riêng. Tất cả
các giá trị thời gian trong phân đoạn tài liệu SVG lồng được tính tốn một cách tương đối với thời gian tài liệu của thành phần ‘svg’ gốc.
Trong SVG, thuật ngữ thời gian trình diễn (presentation time) chỉ định một vị
trí trên thước đo thời gian tương đối so với “thời điểm bắt đầu tài liệu” của phân
đoạn tài liệu được cho.