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

Remove Achievement.creator property until issue #451 is resolved #457

Closed
wants to merge 1 commit into from
Closed
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
11 changes: 5 additions & 6 deletions ob_v3p0/common_credentials.lines
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,6 @@ Package SharedCredentialDataModels DataModel
Property type IRI 1..* "The type MUST include the IRI 'Achievement'".
Property alignment Alignment 0..* "An object describing which objectives or educational standards this achievement aligns to, if any."
Property achievementType AchievementType 0..1 "The type of achievement. This is an extensible vocabulary."
Property creator Profile 0..1 "The person or organization that created the achievement definition."
Property creditsAvailable Float 0..1 "Credit hours associated with this entity, or credit hours possible. For example 3.0."
Property criteria Criteria 1 "Criteria describing how to earn the achievement."
Property description String 1 "A short description of the achievement."
Expand Down Expand Up @@ -148,12 +147,12 @@ Package SharedCredentialDataModels DataModel
Property id URI 1 "The unique URI for this result description. Required so a result can link to this result description."
Property type IRI 1..* "The value of the type property MUST be an unordered set. One of the items MUST be the IRI 'ResultDescription'."
Property alignment Alignment 0..* "Alignments between this result description and nodes in external frameworks."
Property allowedValue String 0..* "An ordered list of allowed values. The values should be ordered from low to high as determined by the achievement creator."
Property allowedValue String 0..* "An ordered list of allowed values. The values should be ordered from low to high as determined by the achievement description creator."
Property name String 1 "The name of the result."
Property requiredLevel URI 0..1 "The `id` of the rubric criterion level required to pass as determined by the achievement creator."
Property requiredValue String 0..1 "A value from `allowedValue` or within the range of `valueMin` to `valueMax` required to pass as determined by the achievement creator."
Property requiredLevel URI 0..1 "The `id` of the rubric criterion level required to pass as determined by the achievement description creator."
Property requiredValue String 0..1 "A value from `allowedValue` or within the range of `valueMin` to `valueMax` required to pass as determined by the achievement description creator."
Property resultType ResultType 1 "The type of result this description represents. This is an extensible enumerated vocabulary."
Property rubricCriterionLevel RubricCriterionLevel 0..* "An ordered array of rubric criterion levels that may be asserted in the linked result. The levels should be ordered from low to high as determined by the achievement creator."
Property rubricCriterionLevel RubricCriterionLevel 0..* "An ordered array of rubric criterion levels that may be asserted in the linked result. The levels should be ordered from low to high as determined by the achievement description creator."
Property valueMax String 0..1 "The maximum possible `value` that may be asserted in a linked result."
Property valueMin String 0..1 "The minimum possible `value` that may be asserted in a linked result."
Mixin Extensions
Expand Down Expand Up @@ -199,7 +198,7 @@ Package SharedCredentialDataModels DataModel
Property created DateTime 1 "Date the proof was created."
Property challenge String 0..1 "A value chosen by the verifier to mitigate authentication proof replay attacks."
Property domain String 0..1 "The domain of the proof to restrict its use to a particular target."
Property nonce String 0..1 "A value chosen by the creator of proof to randomize proof values for privacy purposes."
Property nonce String 0..1 "A value chosen by the proof creator to randomize proof values for privacy purposes."
Property proofPurpose String 1 "The purpose of the proof to be used with `verificationMethod`. MUST be 'assertionMethod'."
Property proofValue String 1 "Value of the proof."
Property verificationMethod URI 1 "The URL of the public key that can verify the signature."
Expand Down
3 changes: 0 additions & 3 deletions ob_v3p0/context.json
Original file line number Diff line number Diff line change
Expand Up @@ -20,9 +20,6 @@
"@type": "https://imsglobal.github.io/openbadges-specification/ob_v3p0.html#Alignment",
"@container": "@set"
},
"creator": {
"@id": "https://imsglobal.github.io/openbadges-specification/ob_v3p0.html#Profile"
},
"creditsAvailable": {
"@id": "https://imsglobal.github.io/openbadges-specification/ob_v3p0.html#creditsAvailable",
"@type": "xsd:float"
Expand Down
163 changes: 0 additions & 163 deletions ob_v3p0/examples/fullOpenBadge.html
Original file line number Diff line number Diff line change
Expand Up @@ -81,169 +81,6 @@
}
],
"achievementType": "Degree",
"creator": {
"id": "https://1edtech.edu/issuers/565049",
"type": [
"Profile"
],
"name": "1EdTech University",
"url": "https://1edtech.edu",
"phone": "1-222-333-4444",
"description": "1EdTech University provides online degree programs.",
"endorsement": [
{
"@context": [
"https://www.w3.org/2018/credentials/v1",
"https://imsglobal.github.io/openbadges-specification/context.json",
"https://w3id.org/security/suites/ed25519-2020/v1"
],
"type": [
"VerifiableCredential",
"EndorsementCredential"
],
"issuer": {
"id": "https://accrediter.edu/issuers/565049",
"type": [
"Profile"
],
"name": "Example Accrediting Agency"
},
"issuanceDate": "2010-01-01T00:00:00Z",
"expirationDate": "2020-01-01T00:00:00Z",
"credentialSubject": {
"id": "https://1edtech.edu/issuers/565049",
"type": [
"EndorsementSubject"
],
"endorsementComment": "1EdTech University is in good standing"
},
"credentialSchema": [
{
"id": "https://purl.imsglobal.org/spec/ob/v3p0/schema/endorsementcredential.json",
"type": "1EdTechJsonSchemaValidator2019"
},
{
"id": "https://accrediter.edu/schema/endorsementcredential.json",
"type": "JsonSchemaValidator2018"
}
],
"credentialStatus": {
"id": "https://1edtech.edu/credentials/3732/revocations",
"type": "1EdTechRevocationList"
},
"refreshService": {
"id": "http://1edtech.edu/credentials/3732",
"type": "1EdTechCredentialRefresh"
},
"proof": [
{
"type": "Ed25519Signature2020",
"created": "2022-05-26T18:17:08Z",
"verificationMethod": "https://accrediter.edu/issuers/565049#key-1",
"proofPurpose": "assertionMethod",
"proofValue": "zvPkQiUFfJrgnCRhyPkTSkgrGXbnLR15pHH5HZVYNdM4TCAwQHqG7fMeMPLtYNRnEgoV1aJdR5E61eWu5sWRYgtA"
}
]
},
{
"@context": [
"https://www.w3.org/2018/credentials/v1",
"https://imsglobal.github.io/openbadges-specification/context.json",
"https://w3id.org/security/suites/ed25519-2020/v1"
],
"type": [
"VerifiableCredential",
"EndorsementCredential"
],
"issuer": {
"id": "https://state.gov/issuers/565049",
"type": [
"Profile"
],
"name": "State Department of Education"
},
"issuanceDate": "2010-01-01T00:00:00Z",
"expirationDate": "2020-01-01T00:00:00Z",
"credentialSubject": {
"id": "https://1edtech.edu/issuers/565049",
"type": [
"EndorsementSubject"
],
"endorsementComment": "1EdTech University is in good standing"
},
"credentialSchema": [
{
"id": "https://purl.imsglobal.org/spec/ob/v3p0/schema/endorsementcredential.json",
"type": "1EdTechJsonSchemaValidator2019"
},
{
"id": "https://state.gov/schema/endorsementcredential.json",
"type": "JsonSchemaValidator2018"
}
],
"credentialStatus": {
"id": "https://state.gov/credentials/3732/revocations",
"type": "1EdTechRevocationList"
},
"refreshService": {
"id": "http://state.gov/credentials/3732",
"type": "1EdTechCredentialRefresh"
},
"proof": [
{
"type": "Ed25519Signature2020",
"created": "2022-05-26T18:25:59Z",
"verificationMethod": "https://accrediter.edu/issuers/565049#key-1",
"proofPurpose": "assertionMethod",
"proofValue": "z5bDnmSgDczXwZGya6ZjxKaxkdKxzsCMiVSsgEVWxnaWK7ZqbKnzcCd7mUKE9DQaAL2QMXP5AquPeW6W2CWrZ7jNC"
}
]
}
],
"image": {
"id": "https://1edtech.edu/logo.png",
"type": "Image",
"caption": "1EdTech University logo"
},
"email": "[email protected]",
"address": {
"type": [
"Address"
],
"addressCountry": "USA",
"addressCountryCode": "US",
"addressRegion": "TX",
"addressLocality": "Austin",
"streetAddress": "123 First St",
"postOfficeBoxNumber": "1",
"postalCode": "12345",
"geo": {
"type": "GeoCoordinates",
"latitude": 1.0,
"longitude": 1.0
}
},
"otherIdentifier": [
{
"type": "IdentifierEntry",
"identifier": "12345",
"identifierType": "sourcedId"
},
{
"type": "IdentifierEntry",
"identifier": "67890",
"identifierType": "nationalIdentityNumber"
}
],
"official": "Horace Mann",
"parentOrg": {
"id": "did:example:123456789",
"type": [
"Profile"
],
"name": "Universal Universities"
}
},
"creditsAvailable": 36.0,
"criteria": {
"id": "https://1edtech.edu/achievements/degree",
Expand Down
6 changes: 0 additions & 6 deletions ob_v3p0/overview.md
Original file line number Diff line number Diff line change
Expand Up @@ -73,12 +73,6 @@ At the core, Open Badges and CLR have similar objectives with the primary differ

Both Open Badges and CLR make assertions about achievements and conceptually share many similar properties. With some judicious analysis and renaming of some properties, it has been possible to have cross-alignment of achievement properties served by Open Badges and used by CLR. Examples include but are not limited to [achievementType](#org.1edtech.ob.v3p0.achievementtype.class) which describes the type of achievement being represented, and [Result](#result)/[ResultDescription](#resultdescription) which can describe possible levels of mastery associated to specific achievements. This will enrich Open Badges data and increase the perceived significance and usage of Open Badges to deliver verifiable single achievements such as certifications, licenses, courses, etc. Using a common model across [[OB-30]] and [[CLR-20]] specifications for the core ideas of assertion and achievement will enable the CLR specification to focus on the more complex requirements of bundling collected assertions and expressing the associations between the achievements.

#### Differentiating Issuers and Creators

In Open Badges and CLR, the issuer is assumed to be the creator. Over the years, the Open Badges community has requested capabilities to distinguish between the issuer and creator of a badge. This is because there are plenty of examples where the assessor is the issuer but not the creator of the badge. The [Original Creator Extensions](https://www.imsglobal.org/sites/default/files/Badges/OBv2p0Final/extensions/index.html#OriginalCreator) is a step in this direction but provides no properties to describe the eligibility of issuers trusted by the original creator to duplicate and issue their own assertions of the badge.

In order to open up a wide swath of use cases for shared issuing responsibility of common credentials, we must do more. Conveniently, an issuer property for the entity that is digitally signing the credential is included in the VC assertion. Because of this, the issuer property referenced in the Achievement/BadgeClass is redundant. This property is a logical placement for new properties to describe a creator(s) and the eligibility of potential outside issuers to share or have delegated responsibility for badge issuance. This will enable the use cases and give relying third-parties more contextual information about the achievement and the parties involved.

### Skill Assertions

Many of the use cases for Open Badges and CLR involve describing "defined achievements" with the Achievement/BadgeClass data class. These achievements may sometimes be aligned to skills or competencies, as a means of indicating that those who earn them have achieved the aligned skills. In this specification, we also introduce the concept of a Skill Assertion, showing how the Open Badges Specification can be expanded to assert achievement of single skills in a more flexible manner that is complementary to these use cases and that opens up a wide range of new use cases. A Skill Assertion offers a lightweight structure for issuers to make a claim that a learner has a skill, with a particular assessment result if desired.
Expand Down