Dữ liệu có cấu trúc Trình giải toán (MathSolver
)
Để giúp học sinh, giáo viên và những người khác giải toán, bạn có thể dùng dữ liệu có cấu trúc để chỉ báo loại bài toán cũng như dùng các đường liên kết đến hướng dẫn từng bước cho các bài toán cụ thể. Sau đây là một ví dụ về hình thức của trình giải toán trong các kết quả trên Google Tìm kiếm (hình thức có thể thay đổi):
![Ví dụ về kết quả nhiều định dạng cho trình giải toán](https://developers-dot-devsite-v2-prod.appspot.com/static/search/docs/images/math-solvers-rich-result.png?authuser=0000&hl=vi)
Cách thêm dữ liệu có cấu trúc
Dữ liệu có cấu trúc là một định dạng chuẩn để cung cấp thông tin về một trang và phân loại nội dung trên trang. Nếu mới làm quen với dữ liệu có cấu trúc, bạn có thể tìm hiểu thêm về cách thức hoạt động của dữ liệu có cấu trúc.
Sau đây là thông tin tổng quan về cách xây dựng, kiểm tra và phát hành dữ liệu có cấu trúc. Để xem hướng dẫn từng bước về cách thêm dữ liệu có cấu trúc vào một trang web, hãy tham khảo lớp học lập trình về dữ liệu có cấu trúc.
- Thêm các thuộc tính bắt buộc. Tùy theo định dạng bạn đang sử dụng, hãy tìm hiểu nơi chèn dữ liệu có cấu trúc trên trang.
- Tuân theo các nguyên tắc.
- Xác thực mã của bạn bằng công cụ Kiểm tra kết quả nhiều định dạng rồi sửa mọi lỗi nghiêm trọng. Bạn cũng nên cân nhắc việc khắc phục mọi vấn đề không nghiêm trọng có thể bị gắn cờ trong công cụ này, vì những vấn đề này có thể giúp cải thiện chất lượng của dữ liệu có cấu trúc của bạn (tuy nhiên, bạn không nhất thiết thực hiện việc này để nội dung đủ điều kiện xuất hiện dưới dạng kết quả nhiều định dạng).
- Triển khai một vài trang có chứa dữ liệu có cấu trúc và sử dụng Công cụ kiểm tra URL để kiểm tra xem Google nhìn thấy trang đó như thế nào. Hãy đảm bảo rằng Google có thể truy cập trang của bạn và bạn không chặn trang bằng tệp robots.txt, thẻ
noindex
hoặc yêu cầu đăng nhập. Nếu có vẻ như trang không gặp vấn đề nào, bạn có thể yêu cầu Google thu thập lại dữ liệu các URL của mình. - Để thông báo cho Google về các thay đổi sau này, bạn nên gửi một sơ đồ trang web. Bạn có thể tự động hoá quy trình này bằng Search Console Sitemap API.
Ví dụ
Một cách giải
Sau đây là ví dụ về trang chủ của một trình giải toán, trên đó có một cách giải cho phương trình đa thức và bài toán đạo hàm, hiện có bằng tiếng Anh và tiếng Tây Ban Nha.
<html> <head> <title>An awesome math solver</title> </head> <body> <script type="application/ld+json"> [ { "@context": "https://schema.org", "@type": ["MathSolver", "LearningResource"], "name": "An awesome math solver", "url": "https://www.mathdomain.com/", "usageInfo": "https://www.mathdomain.com/privacy", "inLanguage": "en", "potentialAction": [{ "@type": "SolveMathAction", "target": "https://mathdomain.com/solve?q={math_expression_string}", "mathExpression-input": "required name=math_expression_string", "eduQuestionType": ["Polynomial Equation","Derivative"] }], "learningResourceType": "Math solver" }, { "@context": "https://schema.org", "@type": ["MathSolver", "LearningResource"], "name": "Un solucionador de matemáticas increíble", "url": "https://es.mathdomain.com/", "usageInfo": "https://es.mathdomain.com/privacy", "inLanguage": "es", "potentialAction": [{ "@type": "SolveMathAction", "target": "https://es.mathdomain.com/solve?q={math_expression_string}", "mathExpression-input": "required name=math_expression_string", "eduQuestionType": ["Polynomial Equation","Derivative"] }], "learningResourceType": "Math solver" } ] </script> </body> </html>
Hai cách giải
Sau đây là ví dụ về trang chủ của một trình giải toán, trên đó có hai cách giải: một cách giải có thể giải phương trình đa thức và cách giải còn lại có thể giải phương trình lượng giác. Trang này chỉ có bằng tiếng Anh.
<html> <head> <title>An awesome math solver</title> </head> <body> <script type="application/ld+json"> { "@context": "https://schema.org", "@type": ["MathSolver", "LearningResource"], "name": "An awesome math solver", "url": "https://www.mathdomain.com/", "usageInfo": "https://www.mathdomain.com/privacy", "inLanguage": "en", "potentialAction": [{ "@type": "SolveMathAction", "target": "https://mathdomain.com/solve?q={math_expression_string}", "mathExpression-input": "required name=math_expression_string", "eduQuestionType": "Polynomial Equation" }, { "@type": "SolveMathAction", "target": "https://mathdomain.com/trig?q={math_expression_string}", "mathExpression-input": "required name=math_expression_string", "eduQuestionType": "Trigonometric Equation" }], "learningResourceType": "Math solver" } </script> </body> </html>
Nguyên tắc
Để trang của bạn đủ điều kiện hiển thị dưới dạng kết quả nhiều định dạng cho trình giải toán, bạn phải làm theo những nguyên tắc sau:
- Nguyên tắc chung về dữ liệu có cấu trúc
- Yêu cầu cơ bản của Tìm kiếm
- Nguyên tắc kỹ thuật
- Nguyên tắc về nội dung
Nguyên tắc về kỹ thuật
- Thêm dữ liệu có cấu trúc
MathSolver
vào trang chủ của trang web. - Đảm bảo rằng chế độ cài đặt tải trên máy chủ lưu trữ của bạn cho phép thu thập dữ liệu thường xuyên.
- Nếu bạn lưu trữ nhiều bản sao giống nhau của cùng một trình giải toán trên nhiều URL, hãy dùng URL chính tắc trên mỗi bản sao của trang đó.
- Chúng tôi không chấp nhận việc bắt người dùng phải đăng nhập hoặc trả tường phí để dùng được trình giải toán. Khi người dùng chuyển từ tính năng trên Google đến trang web của bạn, bạn phải cho phép họ xem cách giải và nội dung hướng dẫn từng bước đối với bài toán ban đầu của họ. Bạn có thể yêu cầu người dùng đăng nhập hoặc trả phí để xem nội dung bổ sung.
Nguyên tắc về nội dung
Chúng tôi tạo ra các nguyên tắc về nội dung đối với Trình giải toán nhằm đảm bảo người dùng được tiếp cận những tài nguyên học tập phù hợp. Nếu phát hiện nội dung vi phạm những chính sách này, chúng tôi sẽ có biện pháp thích hợp, trong đó có thể bao gồm việc áp dụng biện pháp thủ công và xoá các trang của bạn khỏi kết quả của trình giải toán trên Google.
- Chúng tôi không chấp nhận nội dung quảng cáo trá hình dưới dạng trình giải toán, chẳng hạn như nội dung do bên thứ ba đăng (ví dụ: chương trình liên kết).
-
Bạn chịu trách nhiệm về độ chính xác và chất lượng của trình giải toán thông qua tính năng này. Nếu quy trình đánh giá chất lượng của chúng tôi phát hiện ra bạn có một số dữ liệu không chính xác, thì tuỳ vào mức độ nghiêm trọng, trình giải toán của bạn có thể bị xoá khỏi tính năng này cho đến khi bạn giải quyết xong vấn đề. Quy định này áp dụng cho:
- Độ chính xác của dạng bài toán mà trình giải toán của bạn có thể giải được.
- Độ chính xác của cách giải các bài toán mà trình giải toán của bạn tuyên bố là có thể giải được.
Định nghĩa các loại dữ liệu có cấu trúc
Bạn phải bao gồm các thuộc tính bắt buộc để nội dung của mình đủ điều kiện hiển thị dưới dạng kết quả nhiều định dạng. Bạn cũng có thể dùng những thuộc tính được chúng tôi khuyên dùng để thêm nhiều thông tin hơn vào dữ liệu có cấu trúc, qua đó mang lại trải nghiệm tốt hơn cho người dùng.
MathSolver (Trình giải toán)
MathSolver
là một công cụ trình bày cách giải từng bước để hỗ trợ học sinh, giáo viên và những người khác giải toán. Hãy dùng dữ liệu có cấu trúc MathSolver
trên trang chủ của trang web.
Bạn có thể xem định nghĩa đầy đủ về MathSolver
tại schema.org/MathSolver.
Sau đây là các thuộc tính được Google hỗ trợ:
Thuộc tính bắt buộc | |
---|---|
potentialAction |
Thao tác dẫn đến một cách giải (ví dụ: theo từng bước hoặc theo biểu đồ) cho một biểu thức toán. { "@type": "MathSolver", "potentialAction": [{ "@type": "SolveMathAction", "target": "https://mathdomain.com/solve?q={math_expression_string}", "mathExpression-input": "required name=math_expression_string", "eduQuestionType": "Polynomial Equation" }] } |
potentialAction.mathExpression-input |
Phần giữ chỗ cho một biểu thức toán (ví dụ: x^2-3x=0) được Google gửi tới trang web của bạn. Sau đó, bạn có thể "giải" biểu thức toán đó – có thể là rút gọn, biến đổi hoặc tìm một biến cụ thể. Chuỗi này có thể ở nhiều định dạng (ví dụ: LaTeX, Ascii-Math hoặc biểu thức toán mà bạn có thể viết bằng bàn phím). Đối với một số dạng bài, Đạo hàm Google sẽ gửi
Ví dụ:
Tích phân Google sẽ gửi
Ví dụ:
Giới hạn Google sẽ gửi
Ví dụ:
|
url |
URL của |
usageInfo |
Chính sách quyền riêng tư cho trang web giải toán của bạn. { "@type": "MathSolver", "usageInfo": "https://www.mathdomain.com/privacy"</span> } |
potentialAction.target |
EntryPoint (điểm nhập) nhắm mục tiêu theo URL cho một thao tác. Thuộc tính { "@type": "MathSolver", "potentialAction": [{ "@type": "SolveMathAction", "target": "https://mathdomain.com/solve?q={math_expression_string}"</span> }] } |
Thuộc tính nên có | |
---|---|
inLanguage |
(Những) ngôn ngữ được hỗ trợ trên trang web giải toán của bạn. Hãy xem bảng này để nắm được danh sách những ngôn ngữ bạn có thể dùng. { "@type": "MathSolver", "inLanguage": "es"</span> } |
assesses |
Danh sách Dạng bài toán được giải bằng { "@type": "MathSolver", "assesses": "Polynomial Equation"</span> } |
potentialAction.eduQuestionType |
Danh sách Dạng bài toán có thể được giải bằng thuộc tính { "@type": "SolveMathAction", "eduQuestionType": "Polynomial Equation"</span> } |
LearningResource (Tài nguyên học tập)
LearningResource
cho biết chủ đề của mã đánh dấu là một tài nguyên hỗ trợ học tập cho học sinh, giáo viên và nhiều người khác. Hãy dùng LearningResource
trên trang chủ của trang web.
Bạn có thể xem định nghĩa đầy đủ về LearningResource
tại schema.org/LearningResource.
Sau đây là các thuộc tính được Google hỗ trợ:
Thuộc tính bắt buộc | |
---|---|
learningResourceType |
Thể loại của tài nguyên học tập này. Hãy dùng giá trị cố định: { "@type": ["MathSolver", "LearningResource"], "learningResourceType": "Math Solver"</span> } |
Định nghĩa dạng bài toán
Hãy dùng danh sách dạng bài toán sau đây làm eduQuestionType
cho một MathSolver.potentialAction
hoặc cho trường assesses
của một MathSolver
khi MathSolver
đi kèm một HowTo
trong một bài toán cụ thể.
Bảng sau đây cho thấy một số ví dụ về các dạng bài mà bạn có thể chú thích:
Ví dụ về các dạng bài toán (danh sách này chưa đầy đủ) | |
---|---|
Absolute Value Equation |
Phương trình giá trị tuyệt đối. Ví dụ: |x - 5| = 9 |
Algebra |
Dạng bài toán chung có thể được đặt cùng dạng bài toán khác. Ví dụ: phương trình đa thức, phương trình mũ và biểu thức chứa căn. |
Arc Length |
Bài toán về độ dài cung. Ví dụ: xác định độ dài của x = 4 (3 + y)^2, 1 < y < 4. |
Arithmetic |
Bài toán về số học. Ví dụ: tìm tổng của 5 + 7. |
Biquadratic Equation |
Phương trình trùng phương. Ví dụ: x^4 - x^2 - 2 = 0. |
Calculus |
Dạng bài toán chung có thể được đặt cùng các dạng bài toán khác. Ví dụ: tích phân, đạo hàm và phương trình vi phân. |
Characteristic Polynomial |
Tìm đa thức đặc trưng của {{1,2,5}, {3,-1,1}, {1,2,3}}. |
Circle |
Bài toán liên quan đến hình tròn. Ví dụ: tìm bán kính của x^2 + y^2 = 3. |
Derivative |
Đạo hàm của 5x^4 + 2x^3 + 4x - 2. |
Differential Equation |
Bài toán về phương trình vi phân. Ví dụ: y+dy/dx=5x. |
Distance |
Bài toán về khoảng cách. Ví dụ: tìm khoảng cách từ (6,-1) đến (-3,2). |
Eigenvalue |
Bài toán về giá trị riêng. Ví dụ: tìm các giá trị riêng của ma trận [[-6, 3], [4, 5]]. |
Eigenvector |
Bài toán về vectơ riêng. Ví dụ: tìm vec-tơ riêng của ma trận [[-6, 3], [4, 5]] bằng giá trị riêng của [-7, 6]. |
Ellipse |
Bài toán về hình elip. Ví dụ: tìm các giao điểm x và y của 9x^2 + 4y^2 = 36. |
Exponential Equation |
Phương trình mũ. Ví dụ: 7^x = 9. |
Function |
Rút gọn đa thức. Ví dụ: (x - 5)^2 * (x + 5)^2 |
Function Composition |
f(g(x)) khi f(x)=x^2-2x, g(x)=2x-2 |
Geometry |
Dạng bài toán chung có thể được đặt cùng các dạng bài toán khác. Ví dụ: hình tròn, elip, parabol, dốc. |
Hyperbola |
Bài toán về hyperbol Ví dụ: tìm hoành độ giao điểm của (x^2)/4 - (y^2)/5 = 1. |
Inflection Point |
Tìm điểm uốn của f(x) = 1/2x^4 + x^3 - 6x^2. |
Integral |
Tích phân của sqrt (x^2 - y^2). |
Intercept |
Bài toán về phương trình đường cắt trục toạ độ. Ví dụ: tìm hoành độ giao điểm của đường thẳng y = 10x - 5. |
Limit |
Bài toán về giới hạn. Ví dụ: tìm giới hạn của x khi x tiến dần đến 1 của (x^2-1)/(x-1). |
Line Equation |
Bài toán về phương trình tuyến tính. Ví dụ: tìm phương trình của một đường thẳng có các điểm (-7,-4) và (- 2,-6). |
Linear Algebra |
Dạng bài toán chung có thể được đặt cùng các dạng bài toán khác. Ví dụ: ma trận và đa thức đặc trưng. |
Linear Equation |
Phương trình tuyến tính. Ví dụ: 4x - 3 = 2x + 9. |
Linear Inequality |
Bất đẳng thức tuyến tính. Ví dụ: 5x - 6 > 3x - 8. |
Logarithmic Equation |
Phương trình lôgarit. Ví dụ: log(x) = log(100). |
Logarithmic Inequality |
Bất đẳng thức lôgarit. Ví dụ: log(x) > log(100). |
Matrix |
{{1,2,5}, {3,-1,1}, {1,2,3}} hàng rút gọn |
Midpoint |
Bài toán về trung điểm. Ví dụ: tìm trung điểm giữa (-3, 7) và (5, -2). |
Parabola |
Bài toán về hình parabol. Ví dụ: tìm đỉnh của y^2 - 4x - 4y = 0. |
Parallel |
Bài toán về đường thẳng song song. Ví dụ: Hai đường thẳng này có song song không: (y = 10x + 5, y = 20x + 10)? |
Perpendicular |
Bài toán về góc vuông. Ví dụ: Hai đường thẳng này có vuông góc không: (y = 10x + 5, y = 20x + 10)? |
Polynomial Equation |
Phương trình đa thức. Ví dụ: x^5 - 3x = 0. |
Polynomial Expression |
Biểu thức đa thức. Ví dụ: (x - 5)^4 * (x + 5)^2. |
Polynomial Inequality |
Bất phương trình đa thức. Ví dụ: x^4 - x^2 - 6 > x^3 - 3x^2. |
Quadratic Equation |
Phương trình bậc hai. Ví dụ: x^2 - 3x - 4 = 0. |
Quadratic Expression |
Biểu thức phương trình bậc hai. Ví dụ: x^2 - 3x - 2. |
Quadratic Inequality |
Bất phương trình bậc hai. Ví dụ: x^2 - x - 6 > x^2 - 3x. |
Radical Equation |
Phương trình chứa căn. Ví dụ: sqrt(x) - x = 0. |
Radical Inequality |
Bất phương trình chứa căn. Ví dụ: sqrt(x) - x > 0. |
Rational Equation |
Phương trình hữu tỉ. Ví dụ: 5/(x - 3) = 2/(x - 1). |
Rational Expression |
Biểu thức hữu tỉ. Ví dụ: 1/(x^3 + 4x^2 + 5x + 2). |
Rational Inequality |
Bất đẳng thức hữu tỉ. Ví dụ: 5/(x - 3) > 2/(x - 1). |
Slope |
Bài toán về hệ số góc. Ví dụ: tìm hệ số góc của đường thẳng y = 10 + 5. |
Statistics |
Bài toán về thống kê. Ví dụ: tìm giá trị trung bình của tập hợp số (3, 8, 2, 10). |
System of Equations |
Bài toán về hệ phương trình. Ví dụ: giải 2x + 5y = 16; 3x - 5y = -1. |
Trigonometry |
Giải sin(t) + cos(t) = 1. |