Gli utenti possono impostare gli obiettivi di apprendimento per i corsi e i compiti in Google Classroom.
Gli stessi obiettivi di apprendimento sono esposti anche nell'API Classroom. Puoi
impostare, recuperare e modificare set di standard di apprendimento sulle risorse di Course
e obiettivi di apprendimento su CourseWork,
CourseWorkMaterial e Rubric.
Questa guida descrive come accedere e modificare gli obiettivi di apprendimento e i set di standard
utilizzando l'API Classroom.
Come funziona
Origine dati
Gli obiettivi di apprendimento in Classroom si basano su identificatori univoci globali (GUID) stabili forniti da Satchel Rosetta Exchange (in precedenza CASE Network). Gli standard nell'Exchange sono organizzati in alberi di
nodi, in cui la radice è un insieme completo di standard per una determinata materia
e i nodi secondari descrivono risultati di apprendimento progressivamente più specifici. L'identificatore
di qualsiasi nodo con un codice standard o nodo foglia nella rete può essere
impostato come obiettivo di apprendimento in un CourseWork, mentre qualsiasi nodo non foglia può essere impostato come
un insieme di standard di apprendimento in un Course.
- Gli insiemi di standard di apprendimento per una risorsa
Courserappresentano il gruppo di standard che vengono visualizzati nell'interfaccia utente di Classroom quando gli insegnanti aggiungono tag agli obiettivi di apprendimento. - Gli obiettivi di apprendimento allegati a una risorsa
CourseWork,CourseWorkMaterialoRubricrappresentano lo standard o le competenze associati a quel compito, domanda, materiale o criterio specifico della griglia.
Google utilizza cinque informazioni di Satchel Rosetta Exchange:
- ID documento: un GUID per un nodo di primo livello. Questo ID corrisponde a un contenitore di standard di primo livello ed è comune a tutti i nodi secondari.
- Titolo del documento: il nome leggibile dell'intero documento standard.
- ID articolo: un GUID per un singolo standard (ovvero un nodo non principale).
- Titolo standard: il testo descrittivo leggibile di un singolo standard.
- Codice standard: un'abbreviazione leggibile di uno standard specifico.
Trovare i valori per gli standard e gli obiettivi
Per capire dove trovare questi valori, prendi in considerazione uno standard di matematica dello stato di New York. Inizia dal nodo radice:
Figura
1: visualizzazione di un nodo principale quando viene selezionato in Satchel Rosetta Exchange. Vengono visualizzati
il titolo e l'ID del documento, che sono comuni a tutti i nodi di questa pagina.
Dalla visualizzazione nella Figura 1, puoi estrarre i seguenti valori:
- ID documento:
c649d172-d7cb-11e8-824f-0242ac160002 - Titolo documento:
New York State Next Generation Mathematics Learning Standards
Per ottenere i valori di un singolo standard, fai clic su uno standard ed espandi i relativi metadati:
Figura
2: visualizzazione dei metadati di un nodo non principale quando viene selezionato in Satchel Rosetta
Exchange. Mostra l'ID articolo, il codice standard e il titolo standard. Questi
valori sono specifici solo per questo standard.
Dalla visualizzazione nella Figura 2, puoi trovare i seguenti valori:
- ID articolo:
70d64c79-d7cc-11e8-824f-0242ac160002 - Titolo standard:
Understand that the digits of a three-digit number represent amounts of hundreds, tens, and ones. - Codice standard:
NY-2.NBT.4
Tieni presente che gli ID documento e articolo possono essere estratti anche dall'URL
Satchel Rosetta Exchange di ogni nodo. Questi URL seguono il pattern
https://rosetta.commongoodlt.com/{document_id}/{item_id}.
Numero massimo di elementi collegati
- Ogni
Coursepuò avere fino a 20 insiemi di standard di apprendimento. - Ogni
CourseWorkpuò avere fino a 10 obiettivi di apprendimento. - Ogni rubrica
Criterionpuò avere un obiettivo di apprendimento.
Gestire i set di standard di apprendimento del corso
Modificare i set di standard di apprendimento
Per modificare i set di standard di apprendimento Course, compila il campo
Course.learningStandardSettings con gli oggetti standardSets. Ogni
standardSet deve contenere un oggetto caseGuid, che include un
caseDocumentId e, facoltativamente, un caseItemId.
Puoi aggiungere set di standard di apprendimento utilizzando qualsiasi richiesta di modifica Course, ad esempio
courses.create() o courses.patch() con
la maschera di aggiornamento learningStandardSettings.
L'esempio seguente imposta due set standard su un corso esistente.
Python
service = build("classroom", "v1", credentials=creds)
course = {
"learningStandardSettings": {
# Each Course can have up to 20 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')}")
Recuperare i set di standard di apprendimento
Per visualizzare i set di standard di apprendimento attuali di un corso, esamina il campo
Course.learningStandardSettings. Questo campo contiene una serie di oggetti standardSets e può essere vuoto se nel corso non sono presenti set di standard di apprendimento.
Tieni presente che ogni standardSet nella risposta contiene la descrizione dello standard e il titolo del documento principale. Questi testi vengono visualizzati anche per insegnanti e studenti
nell'interfaccia utente di Classroom. Ricevi anche il
sourceDataAvailabilityStatus, che indica se lo standard è
disponibile in 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"
}
]
}
}
Gestire gli obiettivi di apprendimento di CourseWork, CourseWorkMaterial e Rubric
Modificare gli obiettivi di apprendimento
Gli obiettivi di apprendimento possono essere allegati a CourseWork,
CourseWorkMaterial e alle risorse della griglia Criterion
in qualsiasi richiesta di modifica. Imposta gli identificatori di documenti e articoli nei campi
CourseWork.learningGoals o Rubric.Criterion.learningGoal. Si tratta degli stessi identificatori descritti in precedenza.
Tieni presente che gli obiettivi di apprendimento allegati ai criteri Rubric devono essere già stati allegati al compito a cui è collegato Rubric.
L'esempio seguente crea un compito CourseWork con due obiettivi di apprendimento
allegati.
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')}")
L'esempio seguente crea una Rubric con un obiettivo di apprendimento collegato a ogni
criterio.
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')}")
Recuperare gli obiettivi di apprendimento
Per visualizzare gli obiettivi di apprendimento attuali in un compito, una domanda o un materiale,
controlla il campo CourseWork.learningGoals. Ogni oggetto obiettivo di apprendimento contiene
il titolo del documento di livello principale e il codice dello standard di apprendimento.
Tieni presente che gli insegnanti possono anche aggiungere tag delle competenze ai compiti e ai materiali nell'UI di Classroom. I tag delle competenze non sono accessibili nell'API.
{
"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."
}
]
}
Dati simili vengono restituiti con le risposte Rubric, contenenti un learningGoal
per criterio.