يمكن للمستخدمين ضبط أهداف تعليمية للدورات التدريبية والمهام في Google Classroom.
تتوفّر أهداف التعلّم نفسها أيضًا في Classroom API. يمكنك ضبط مجموعات المعايير التعليمية واستردادها وتعديلها على موارد Course والأهداف التعليمية على موارد CourseWork وCourseWorkMaterial وRubric.
يوضّح هذا الدليل كيفية الوصول إلى أهداف التعلّم ومجموعات المعايير وتعديلها باستخدام Classroom API.
آلية العمل
مصدر البيانات
تعتمد أهداف التعلّم في Classroom على معرّفات فريدة عالميًا (GUID) ثابتة
تقدّمها Satchel Rosetta Exchange
(المعروفة سابقًا باسم CASE Network). يتم تنظيم المعايير في "مركز التبادل" على شكل شجرات من العُقد، حيث تكون العقدة الجذر مجموعة معايير شاملة لموضوع معيّن، وتصف عُقد الأبناء نتائج التعلّم الأكثر تحديدًا بشكل تدريجي. يمكن ضبط معرّف أي عقدة تتضمّن رمزًا عاديًا أو عقدة فرعية في الشبكة كهدف تعلّم في CourseWork، بينما يمكن ضبط أي عقدة غير فرعية كمجموعة معايير تعلّم في Course.
- تمثّل مجموعات معايير التعلّم الخاصة بمورد
Courseمجموعة المعايير التي تظهر في واجهة مستخدم Classroom عندما يضع المعلّمون علامة على أهداف التعلّم. - تمثّل أهداف التعلّم المرفقة بمورد
CourseWorkأوCourseWorkMaterialأوRubricالمعيار أو المهارات المرتبطة بهذا الواجب أو السؤال أو المادة أو معيار قواعد التقييم المحدّد.
تستخدم Google خمس معلومات من Satchel Rosetta Exchange:
- معرّف المستند: معرّف GUID لعقدة على مستوى الجذر. يتطابق هذا المعرّف مع حاوية معايير رفيعة المستوى وهو مشترك بين جميع العُقد الفرعية.
- عنوان المستند: الاسم الذي يمكن للمستخدمين قراءته للمستند المعياري بأكمله.
- معرّف العنصر: هو معرّف فريد عالميًا لمعيار واحد (أي عقدة غير جذرية).
- العنوان المعياري: النص الوصفي الذي يمكن لشخص عادي قراءته والمكوّن من معيار واحد.
- الرمز المعياري: هو اختصار يمكن قراءته من قِبل الإنسان لمعيار معيّن.
العثور على قيم للمعايير والأهداف
لمعرفة مكان العثور على هذه القيم، إليك مثالاً على معيار الرياضيات من ولاية نيويورك. ابدأ من عقدة الجذر:
الشكل
1: عرض لعقدة جذر عند اختيارها في Satchel Rosetta Exchange تعرض هذه السمة عنوان المستند ومعرّف المستند، وهما مشتركان بين جميع العُقد في هذه الصفحة.
من العرض في الشكل 1، يمكنك استخراج القيم التالية:
- معرّف المستند:
c649d172-d7cb-11e8-824f-0242ac160002 - عنوان المستند:
New York State Next Generation Mathematics Learning Standards
للحصول على قيم لمعيار فردي، انقر على معيار ووسِّع بياناته الوصفية:
الشكل
2: عرض البيانات الوصفية لعقدة غير جذرية عند اختيارها في Satchel Rosetta
Exchange تعرض هذه السمة رقم تعريف السلعة والرمز المعياري وعنوان المعيار. هذه القيم خاصة بهذا المعيار فقط.
من العرض في الشكل 2، يمكنك العثور على القيم التالية:
- معرّف السلعة:
70d64c79-d7cc-11e8-824f-0242ac160002 - العنوان العادي:
Understand that the digits of a three-digit number represent amounts of hundreds, tens, and ones. - الرمز المعياري:
NY-2.NBT.4
يُرجى العِلم أنّه يمكن أيضًا استخراج أرقام تعريف المستندات والعناصر من عنوان URL الخاص بـ Satchel Rosetta Exchange لكل عقدة. تتّبع عناوين URL هذه النمط
https://rosetta.commongoodlt.com/{document_id}/{item_id}.
الحد الأقصى للعناصر المرتبطة
- يمكن أن يتضمّن كل
Courseما يصل إلى 5 مجموعات من معايير التعلّم. - يمكن أن يحتوي كل
CourseWorkعلى ما يصل إلى 10 أهداف تعليمية. - يمكن أن تتضمّن كل قواعد تقييم
Criterionهدفًا تعليميًا واحدًا.
إدارة مجموعات معايير التعلّم في الدورة التدريبية
تعديل مجموعات معايير التعلّم
لتعديل مجموعات Course معايير التعلّم، املأ حقل Course.learningStandardSettings بكائنات standardSets. يجب أن يحتوي كل
standardSet على عنصر caseGuid، والذي يتضمّن
caseDocumentId، ويمكن أن يتضمّن caseItemId.
يمكنك إضافة مجموعات معايير التعلّم باستخدام أي طلب تغيير Course، مثل
courses.create() أو courses.patch() مع
قناع التعديل learningStandardSettings.
يضبط المثال التالي مجموعتَين عاديتَين على دورة تدريبية حالية.
Python
service = build("classroom", "v1", credentials=creds)
course = {
"learningStandardSettings": {
# Each Course can have up to 5 learning standard sets.
"standardSets": [
# Construct a GUID for the NYS Next Gen Math Standards top-level node.
# This is a top-level non-leaf node, so it only has a Document ID.
{
"caseGuid": {
"caseDocumentId": "c649d172-d7cb-11e8-824f-0242ac160002"
}
},
# Construct a GUID for the AAS ELA21.AAS.K Standard node.
# This is a mid-level non-leaf node, so it has both Document and Item IDs.
{
"caseGuid": {
"caseDocumentId": "bfc264b3-b4d1-4780-84ff-26b12e6945a6",
"caseItemId": "ada2cc30-7d6d-494e-8c6b-c998bae98f0b",
}
},
]
}
}
course = (
service.courses()
.patch(
id=course_id,
updateMask="learningStandardSettings",
body=course,
# Specify the preview version while the feature is in Developer Preview.
# Learning standards and goals are supported in V1_20260316_PREVIEW and
# later.
previewVersion="V1_20260316_PREVIEW")
.execute()
)
print(f"Course updated: {course.get('name')}")
استرداد مجموعات معايير التعلّم
للاطّلاع على مجموعات معايير التعلّم الحالية الخاصة بدورة تدريبية، افحص الحقل Course.learningStandardSettings. يحتوي هذا الحقل على سلسلة من عناصر standardSets، ويمكن أن يكون فارغًا إذا لم تكن هناك أي مجموعات من معايير التعلّم في الدورة التدريبية.
يُرجى العِلم أنّ كل standardSet في الرد يحتوي على وصف المعيار وعنوان المستند الأساسي. تظهر هذه النصوص أيضًا للمعلّمين والطلاب
في واجهة مستخدم Classroom. ستتلقّى أيضًا
sourceDataAvailabilityStatus، الذي يشير إلى ما إذا كان المعيار
متاحًا في Satchel Rosetta Exchange.
{
"id": "123456789",
"name": "LSS test class",
"learningStandardSettings": {
"standardSets": [
{
"caseGuid": {
"caseDocumentId": "c649d172-d7cb-11e8-824f-0242ac160002"
},
"documentTitle": "New York State Next Generation Mathematics Learning Standards",
"sourceDataAvailabilityStatus": "LEARNING_STANDARD_AVAILABLE"
},
{
"caseGuid": {
"caseDocumentId": "bfc264b3-b4d1-4780-84ff-26b12e6945a6",
"caseItemId": "ada2cc30-7d6d-494e-8c6b-c998bae98f0b"
},
"documentTitle": "AAS English Language Arts (2021)",
"standardTitle": "Kindergarten",
"sourceDataAvailabilityStatus": "LEARNING_STANDARD_AVAILABLE"
}
]
}
}
إدارة أهداف التعلّم في CourseWork وCourseWorkMaterial وRubric
تعديل الأهداف التعليمية
يمكن إرفاق أهداف التعلّم بموارد CourseWork وCourseWorkMaterial وCriterion في أي طلب تغيير. اضبط معرّفات المستندات والعناصر في الحقلَين
CourseWork.learningGoals أو Rubric.Criterion.learningGoal. وهي المعرّفات نفسها الموضّحة سابقًا.
يُرجى العِلم أنّه يجب أن تكون أهداف التعلّم المرفقة بمعايير Rubric قد تم إرفاقها مسبقًا بالواجب المرتبط به Rubric.
ينشئ المثال التالي مهمة CourseWork تتضمّن هدفَي تعلّم مرفقَين.
Python
# Create a CourseWork assignment with two attached learning goals.
service = build("classroom", "v1", credentials=creds)
coursework = {
"title": "Ant colonies",
"description": "Read the article about ant colonies and complete the quiz.",
"materials": [
{"link": {"url": "http://example.com/ant-colonies"}},
{"link": {"url": "http://example.com/ant-quiz"}},
],
"workType": "ASSIGNMENT",
"state": "PUBLISHED",
# Each CourseWork can have up to 10 learning goals.
"learningGoals": [
{
"learningStandardInfo": {
# Construct a GUID for the ELA21.AAS.11.11c Standard node.
# This is a non-root node, so it has both Document and Item IDs.
"caseGuid": {
"caseDocumentId": "bfc264b3-b4d1-4780-84ff-26b12e6945a6",
"caseItemId": "6d922f1f-b580-42a1-b6d2-5ee5b39c561d",
}
}
},
{
"learningStandardInfo": {
# Construct a GUID for the ELA21.AAS.11.22a Standard node.
# This is a non-root node, so it has both Document and Item IDs.
"caseGuid": {
"caseDocumentId": "bfc264b3-b4d1-4780-84ff-26b12e6945a6",
"caseItemId": "a684609a-c3ec-42da-8b7f-7a325b31ea4a",
}
}
},
],
}
coursework = (
service.courses()
.courseWork()
.create(
courseId=course_id,
body=coursework,
# Specify the preview version while the feature is in Developer Preview.
# Learning standards and goals are supported in V1_20260316_PREVIEW and
# later.
previewVersion="V1_20260316_PREVIEW")
.execute()
)
print(f"Assignment created with ID {coursework.get('id')}")
ينشئ المثال التالي Rubric مع هدف تعلّم مرفق بكل معيار.
Python
# Create a new Rubric with a learning goal attached to each criterion.
service = build("classroom", "v1", credentials=creds)
body = {
"criteria": [
{
"title": "Argument",
"description": "How well structured your argument is.",
"levels": [
{
"title": "Convincing",
"description": "A compelling case is made.",
"points": 30,
},
{
"title": "Passable",
"description": "Missing some evidence.",
"points": 20,
},
{
"title": "Needs Work",
"description": "Not enough strong evidence.",
"points": 0,
},
],
# Each Criterion can have one learning goal.
"learningGoal": {
"learningStandardInfo": {
# Construct a GUID for the ELA21.AAS.11.11c Standard node.
# This is a non-root node, so it has both Document and Item IDs.
"caseGuid": {
"caseDocumentId": "bfc264b3-b4d1-4780-84ff-26b12e6945a6",
"caseItemId": "6d922f1f-b580-42a1-b6d2-5ee5b39c561d",
}
}
},
},
{
"title": "Spelling",
"description": "How well you spelled all the words.",
"levels": [
{"title": "Perfect", "description": "No mistakes.", "points": 20},
{"title": "Great", "description": "A mistake or two.", "points": 15},
{"title": "Needs Work", "description": "Many mistakes.", "points": 5},
],
# Each Criterion can have one learning goal.
"learningGoal": {
"learningStandardInfo": {
# Construct a GUID for the ELA21.AAS.11.22a Standard node.
# This is a non-root node, so it has both Document and Item IDs.
"caseGuid": {
"caseDocumentId": "bfc264b3-b4d1-4780-84ff-26b12e6945a6",
"caseItemId": "a684609a-c3ec-42da-8b7f-7a325b31ea4a",
}
}
},
},
]
}
rubric = (
service.courses()
.courseWork()
.rubrics()
.create(
courseId=course_id,
courseWorkId=coursework_id,
body=body,
# Specify the preview version while the feature is in Developer Preview.
# Learning standards and goals are supported in V1_20260316_PREVIEW and
# later.
previewVersion="V1_20260316_PREVIEW")
.execute()
)
print(f"Rubric created with ID {rubric.get('id')}")
استرداد أهداف التعلّم
للاطّلاع على أهداف التعلّم الحالية في مهمة أو سؤال أو مادة، تحقَّق من الحقل CourseWork.learningGoals. يحتوي كل عنصر من عناصر أهداف التعلّم على عنوان المستند على مستوى الجذر ورمز معيار التعلّم.
يُرجى العِلم أنّه يمكن للمعلّمين أيضًا إضافة علامات المهارات إلى الواجبات والمواد الدراسية في واجهة مستخدم Classroom. لا يمكن الوصول إلى علامات المهارات في واجهة برمجة التطبيقات.
{
"course_id": "123456789",
"id": "987654321",
"title": "Test ELA Assignment",
"state": "PUBLISHED",
"learningGoals": [
{
"id": "871768554412",
"courseId": "123456789",
"learningStandardInfo": {
"standardCode": "ELA21.AAS.11.22a",
"caseGuid": {
"caseDocumentId": "bfc264b3-b4d1-4780-84ff-26b12e6945a6",
"caseItemId": "a684609a-c3ec-42da-8b7f-7a325b31ea4a"
}
},
"title": "Identify a sentence that uses correct capitalization (i.e., beginning of sentence, names, cities, states, countries, towns, titles, days, months)."
},
{
"id": "871768554411",
"courseId": "123456789",
"learningStandardInfo": {
"standardCode": "ELA21.AAS.11.11c",
"caseGuid": {
"caseDocumentId": "bfc264b3-b4d1-4780-84ff-26b12e6945a6",
"caseItemId": "6d922f1f-b580-42a1-b6d2-5ee5b39c561d"
}
},
"title": "Compose argumentative texts by stating a topic, providing reasons that support the argument, and providing an appropriate conclusion related to the topic."
}
]
}
يتم عرض بيانات مشابهة مع ردود Rubric، تحتوي على learningGoal واحدة لكل معيار.