सीखने के लक्ष्यों को मैनेज करना

उपयोगकर्ता, Google Classroom में कोर्स और असाइनमेंट के लिए, सीखने के लक्ष्य सेट कर सकते हैं. सीखने के ये लक्ष्य, Classroom API में भी दिखते हैं. आप सीखने के स्टैंडर्ड से जुड़े सेट को Course संसाधनों पर और सीखने के लक्ष्य को CourseWork, CourseWorkMaterial, और Rubric संसाधनों पर सेट कर सकते हैं, वापस पा सकते हैं, और उनमें बदलाव कर सकते हैं. इस गाइड में, Classroom API का इस्तेमाल करके, सीखने के लक्ष्यों और स्टैंडर्ड सेट को ऐक्सेस करने और उनमें बदलाव करने का तरीका बताया गया है.

यह कैसे काम करता है

डेटा सोर्स

Classroom में सीखने के लक्ष्य, Satchel Rosetta Exchange (पहले इसे CASE Network के नाम से जाना जाता था) से मिले, दुनिया भर में यूनीक और स्थिर आइडेंटिफ़ायर (जीयूआईडी) पर आधारित होते हैं. Exchange में मौजूद स्टैंडर्ड, नोड के ट्री में व्यवस्थित होते हैं. इनमें रूट, किसी खास विषय के लिए स्टैंडर्ड का एक पूरा सेट होता है. वहीं, चाइल्ड नोड, सीखने के नतीजों के बारे में ज़्यादा जानकारी देते हैं. नेटवर्क में, स्टैंडर्ड कोड या लीफ़ नोड वाले किसी भी नोड के आइडेंटिफ़ायर को CourseWork पर सीखने के लक्ष्य के तौर पर सेट किया जा सकता है. वहीं, किसी भी नॉन-लीफ़ नोड को Course पर सीखने के स्टैंडर्ड से जुड़े सेट के तौर पर सेट किया जा सकता है.

  • Course संसाधन के लिए, सीखने के स्टैंडर्ड से जुड़े सेट, स्टैंडर्ड के उस ग्रुप को दिखाते हैं जो शिक्षकों के सीखने के लक्ष्य टैग करने पर, Classroom के यूज़र इंटरफ़ेस (यूआई) में दिखते हैं.
  • CourseWork, CourseWorkMaterial, या Rubric संसाधन से जुड़े सीखने के लक्ष्य उस असाइनमेंट, सवाल, मटीरियल या रूब्रिक के खास मानदंड से जुड़े स्टैंडर्ड या कौशल को दिखाते हैं.

Google, Satchel Rosetta Exchange से पांच तरह की जानकारी का इस्तेमाल करता है:

  • दस्तावेज़ आईडी: रूट-लेवल नोड के लिए जीयूआईडी. यह आईडी, टॉप-लेवल स्टैंडर्ड कंटेनर से मेल खाता है और सभी चाइल्ड नोड के लिए एक जैसा होता है.
  • दस्तावेज़ का टाइटल: स्टैंडर्ड के पूरे दस्तावेज़ का ऐसा नाम जिसे कोई भी व्यक्ति आसानी से पढ़ सकता है.
  • आइटम आईडी: किसी एक स्टैंडर्ड (यानी, नॉन-रूट नोड) के लिए जीयूआईडी.
  • स्टैंडर्ड का टाइटल: किसी एक स्टैंडर्ड के बारे में जानकारी देने वाला ऐसा टेक्स्ट जिसे कोई भी व्यक्ति आसानी से पढ़ सकता है.
  • स्टैंडर्ड कोड: किसी खास स्टैंडर्ड के लिए, ऐसा संक्षिप्त नाम जिसे कोई भी व्यक्ति आसानी से पढ़ सकता है.

स्टैंडर्ड और लक्ष्यों के लिए वैल्यू ढूंढना

इन वैल्यू को कहां ढूंढना है, यह समझने के लिए, न्यूयॉर्क स्टेट के गणित के स्टैंडर्ड का एक उदाहरण देखें. रूट नोड से शुरू करें:

Satchel Rosetta Exchange में चुने जाने पर, रूट नोड का व्यू पहली इमेज: Satchel Rosetta Exchange में चुने जाने पर, रूट नोड का व्यू. इसमें दस्तावेज़ का टाइटल और दस्तावेज़ आईडी दिखता है. ये दोनों इस पेज पर मौजूद सभी नोड के लिए एक जैसे होते हैं.

पहली इमेज में मौजूद व्यू से, ये वैल्यू निकाली जा सकती हैं:

  • दस्तावेज़ आईडी: c649d172-d7cb-11e8-824f-0242ac160002
  • दस्तावेज़ का टाइटल: New York State Next Generation Mathematics Learning Standards

किसी एक स्टैंडर्ड की वैल्यू पाने के लिए, किसी स्टैंडर्ड पर क्लिक करें और उसका मेटाडेटा बड़ा करें:

Satchel Rosetta Exchange में चुने जाने पर, नॉन-रूट नोड के मेटाडेटा का व्यू दूसरी इमेज: Satchel Rosetta Exchange में चुने जाने पर, नॉन-रूट नोड के मेटाडेटा का व्यू. इसमें आइटम आईडी, स्टैंडर्ड कोड, और स्टैंडर्ड का टाइटल दिखता है. ये वैल्यू सिर्फ़ इस स्टैंडर्ड के लिए होती हैं.

दूसरी इमेज में मौजूद व्यू से, ये वैल्यू पाई जा सकती हैं:

  • आइटम आईडी: 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

ध्यान दें कि दस्तावेज़ और आइटम आईडी, हर नोड के Satchel Rosetta Exchange के यूआरएल से भी निकाले जा सकते हैं. ये यूआरएल, https://rosetta.commongoodlt.com/{document_id}/{item_id} पैटर्न के मुताबिक होते हैं.

लिंक किए जा सकने वाले आइटम की ज़्यादा से ज़्यादा संख्या

  • हर Course में, सीखने के स्टैंडर्ड से जुड़े ज़्यादा से ज़्यादा पांच सेट हो सकते हैं.
  • हर 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, CouseWorkMaterial, और Rubric के लिए, सीखने के लक्ष्य मैनेज करना

सीखने के लक्ष्यों में बदलाव करना

बदलाव करने के किसी भी अनुरोध में, CourseWork, CourseWorkMaterial, और Rubric के 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 शामिल होता है.