Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

defines badgeClass in JSON-schema, sample extension, & sample badgeClass #11

Open
wants to merge 3 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 21 additions & 0 deletions badgeExtensions-schema/badgeClass.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
{
"name": "Sample Extended Badge",
"description": "For doing awesome things in fairly standard ways.",
"image": "https://example.org/extended-badge-longcat.png",
"criteria": "https://example.org/extended-badge.html",
"tags": ["badgeClassExtensions"],
"issuer": "https://example.org/organization.json",
"extensions": [
{
"schema": {
"title": "Badge Age Target",
"reference": "http://this-domain.org/schema-age-target-v0.5.json",
"version": "0.5"
},
"content": {
"age": "5-18",
"grade": "K-12"
}
},
]
}
16 changes: 16 additions & 0 deletions badgeExtensions-schema/schema-age-target-v0.5.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
{
"$schema": "http://json-schema.org/draft-04/schema#",
"title" : "Badge Age Target",
"description": "A suggested age or US grade range targeted by the described badge or learning experience. Use one or both options.",
"type": "object",
"properties": {
"age": {
"description": "The targeted age range for a badge or learning experience (e.g. '6-10')",
"type": "string"
},
"grade": {
"description": "The targeted US grade range for a badge or learning experience (e.g. 'K-3')",
"type": "string"
}
}
}
88 changes: 88 additions & 0 deletions badgeExtensions-schema/schema-badgeClass.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,88 @@
{
"$schema": "http://json-schema.org/draft-04/schema#",
"title" : "Open Badge BadgeClass Definition v1.1",
"description": "A schematic defining how an issuer defines an open badge to issue to its users",
"type": "object",
"properties": {
"name": {
"description": "A name or title of the particular badge defined in the present badge class, which could then be issued to many recipients.",
"type": "string"
},
"description": {
"description": "A short description of the achievement represented by the present badge.",
"type": "string"
},
"image": {
"description": "The URL of the image that represents the present achievement. It will be baked into a complete badge for each recipient.",
"type": "string"
},
"criteria": {
"description": "The URL of a human-readable page describing the criteria for earning the achievement. If the badge represents an educational achievement, consider marking up this up with LRMI.",
"type": "string"
},
"issuer": {
"description": "URL of an object describing the organization that issued the badge. Endpoint should be JSON following the IssuerOrganization schema",
"type": "string"
},
"tags": {
"description": "An array of text: List of tags that describe the type of achievement.",
"type": "array",
"items": {
"type": "string"
}
},
"alignment": {
"description": "List of objects describing which educational standards this badge aligns to, if any. An array of AlignmentObjects.",
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"description": "Name of the alignment.",
"type": "string"
},
"url": {
"description": "URL linking to the official description of the standard.",
"type": "string"
},
"description": {
"description": "Short description of the standard.",
"type": "string"
}
},
"required": ["name","url"]
}
},
"extensions": {
"description": "An array of objects each linking to and fulfilling a schema for additional badge class information",
"type": "array",
"items": {
"type": "object",
"properties": {
"schema": {
"type": "object",
"properties": {
"title": {
"description": "Short descriptive name of the extension that indicates what information it will add to the badgeClass.",
"type": "string"
},
"reference": {
"description": "URL to the JSON-schema file defining the structure of this extension",
"type": "string"
},
"version": {
"description": "Version string of the extension (is this necessary or should it be folded into the reference?)",
"type": "string"
}
},
"required": ["reference"]
},
"content": {
"type": "object"
}
},
"required": ["schema", "content"]
}
}
}
}