Final

Competencies and Academic Standards Exchange (CASE) Service

The 1EdTech Competencies and Academic Standards Exchange (CASE) Service is used to exchange information about the learning and education competencies. This standard defines a set of data models for competency frameworks, competency documents, competency definitions, competency associations, rubrics, rubric criterions and rubric criterion levels. It also describes how this data can be exchanged using a set of service calls. This document contains the information model for the CASE service.

IPR and Distribution Notices

Recipients of this document are requested to submit, with their comments, notification of any relevant patent claims or other intellectual property rights of which they may be aware that might be infringed by any implementation of the specification set forth in this document, and to provide supporting documentation.

1EdTech takes no position regarding the validity or scope of any intellectual property or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; neither does it represent that it has made any effort to identify any such rights. Information on 1EdTech's procedures with respect to rights in 1EdTech specifications can be found at the 1EdTech Intellectual Property Rights web page: https://www.1edtech.org/ip.

Copyright © 1EdTech Consortium, Inc. All Rights Reserved.

Use of this specification to develop products or services is governed by the license with 1EdTech found on the 1EdTech website: https://www.1edtech.org/standards/specification-license.

Permission is granted to all parties to use excerpts from this document as needed in producing requests for proposals.

The limited permissions granted above are perpetual and will not be revoked by 1EdTech or its successors or assigns.

THIS SPECIFICATION IS BEING OFFERED WITHOUT ANY WARRANTY WHATSOEVER, AND IN PARTICULAR, ANY WARRANTY OF NONINFRINGEMENT IS EXPRESSLY DISCLAIMED. ANY USE OF THIS SPECIFICATION SHALL BE MADE ENTIRELY AT THE IMPLEMENTER'S OWN RISK, AND NEITHER THE CONSORTIUM, NOR ANY OF ITS MEMBERS OR SUBMITTERS, SHALL HAVE ANY LIABILITY WHATSOEVER TO ANY IMPLEMENTER OR THIRD PARTY FOR ANY DAMAGES OF ANY NATURE WHATSOEVER, DIRECTLY OR INDIRECTLY, ARISING FROM THE USE OF THIS SPECIFICATION.

Trademark information: https://www.1edtech.org/about/legal/trademarks

Abstract

The Competencies and Academic Standards Exchange® (CASE®) Service standard facilitates the exchange of information about learning outcomes, competencies, and skills. By implementing CASE, it is possible to electronically exchange outcomes, skills, and competency definitions so applications, tools, and platforms can access the data so educators can act upon this data The key aim is to replace the current ways of documenting a learning standard and competency, typically a PDF or HTML document, by one which is machine readable both syntactically and semantically. Further, by using this new standard it will be possible to electronically exchange these definitions so that applications, systems and tools can readily access this data.

This document contains the specification of a new version of the CASE standard i.e. CASE 1.1. There has been no change to the set of service operations. The changes in CASE 1.1 are all related to the data model with the addition of several new properties and support for extensibility. The data exchange is described in an implementation-independent format i.e. using the 1EdTech model driven specification profile of the Unified Modeling Language (UML). The service description includes the definition of the data formats that are exchanged using a set of service operations.

Introduction

This Section is NOT NORMATIVE.

Scope and Context

This document is the Competencies and Academic Standards Exchange (CASE) Service Model v1.0 and as such it is used as the basis for the development of the following documents:

  • 1EdTech Competencies and Academic Standards Exchange (CASE) REST/JSON Binding v1.0 [CASE-BIND-11] - the description of the REST/JSON binding, including the OpenAPI description, of the Information Model;
  • 1EdTech Competencies and Academic Standards Exchange (CASE) Conformance and Certification v1.0 [CASE-CERT-11] - the conformance guidelines for achieving CASE certification.

This information model defines the CASE Abstract Application Programming Interface (a-API). This service model is described using the Unified Modeling Language (UML) based upon the 1EdTech Model Driven Specification approach and the associated modelling toolkit [I-BAT, 06]. This means that this specification is based upon the concepts of:

  • Interoperability - the CASE service focuses on the exchange of learning standards and competencies definitions. There are no definitions in the specification on how the data is managed within the end-systems;
  • Service-oriented - the CASE service specification defines the exchange of information in terms of the services being supplied by the collaboration of the systems;
  • Behaviors and Data Models - the CASE service is defined in terms of their behaviors and data models. The behaviors cause changes in the state of the data model and the state of the data model will only be altered as a result of a clearly defined behavior;
  • Multiple Bindings - the CASE service information model is defined using the Unified Modeling Language (UML). This enables reliable mapping of the information model into a range of different bindings. The bindings of immediate importance are to REST/JSON and JSON-Linked Data;
  • Adoption - whenever appropriate, the CASE specification makes use of other 1EdTech and non-1EdTech standards and specifications.

Conventions

As well as sections marked as non-normative, all authoring guidelines, diagrams, examples, and notes in this specification are non-normative. Everything else in this specification is normative.

The key words MAY, MUST, MUST NOT, NOT RECOMMENDED, NOT REQUIRED, OPTIONAL, RECOMMENDED, REQUIRED, SHALL, SHALL NOT, SHOULD, and SHOULD NOT in this document $are to be interpreted as described in $[object Object].

An implementation of this specification that fails to implement a MUST/REQUIRED/SHALL requirement or fails to abide by a MUST NOT/SHALL NOT prohibition is considered nonconformant. SHOULD/SHOULD NOT/RECOMMENDED statements constitute a best practice. Ignoring a best practice does not violate conformance but a decision to disregard such guidance should be carefully considered. MAY/OPTIONAL statements indicate that implementers are entirely free to choose whether or not to implement the option.

The Conformance and Certification Guide for this specification may introduce greater normative constraints than those defined here for specific service or implementation categories.

Differences Between Version 1.0 and Version 1.1

The list of differences between versions 1.0 and 1.1 is:

  • The attribute 'frameworkType' has been added to the 'CFDocument' class - it is used to enable the type of framework to be defined/identified;
  • The attribute 'caseVersion' has been added to the 'CFDocument' class - if present this MUST be set as '1.1';
  • The attribute 'subject' has been added to the 'CFItem' class - to annotate the CFItem with the associated subject coverage;
  • The attribute 'subjectURI' has been added to the 'CFItem' class - the set of URI links for the associated set of subjects;
  • The attribute 'notes' has been added to the 'CFAssociation' class - human readable notes describing the association;
  • The attribute 'targetType' has been added to 'LinkGenURI' class - allows the origin and destination nodes to be annotated with the type of association at the node. This is defined as an extensible enumerated vocabulary;
  • The token value 'isTranslationOf' has been added to the enumerated vocabulary for the 'associationType' attribute for the 'CFAssociation' class;
  • The data-type for the attribute 'fullStatement' in the 'CFItem' class has been changed from 'NormalizedString' to 'String' to enable the insertion of markup-based text;
  • The data-type for the attribute 'description' in the 'CFDocument' class has been changed from 'NormalizedString' to 'String' to enable the insertion of markup-based text;
  • The data-type for the attribute 'description' in the 'CFRubric' class has been changed from 'NormalizedString' to 'String' to enable the insertion of markup-based text;
  • Support for extensibility has been added to the following classes:-
    • CFAssociation
    • CFAssociationGrouping
    • CFConcept
    • CFDefinition
    • CFDocument
    • CFItem
    • CFItemType
    • CFLicense
    • CFPackage
    • CFRubric
    • CFRubricCriterion
    • CFRubricCriterionLevel
    • CFSubject.

Nomenclature

UML
Unified Modelling Language
CBE
Competency Based Education
REST
Representation State Transfer
URL
Uniform Resource Locator
JSON
Java Script Object Notation
GUID
Globally Unique Identifier (this may or may not also be a UUID)
ISO
International Standards Organization
XML
Exchange Markup Language
XSD
XML Schema Definition
URI
Uniform Resource Identifier
IETF
Internet Engineering Task Force
RFC
Request for Comments
VDEX
Vocabulary Definition and Exchange
HE
Higher Education
API
Application Programming Interface
A-API
Abstract API
CASE
Competencies and Academic Standards Exchange
Competency Framework
A set of statements created by and articulating skills and/or specific knowledge.
Competency Framework Package
A set of Competency Framework Document, Competency Framework Items and Competency Framework Associations released by a standard setting entity
Competency Framework Document
A document that acts as a container for a collection of learning standard items, typically arranged in a hierarchical structure or classification scheme, reflecting expectations of learner competencies within a single subject area covering one or more levels.
Competency Framework Item
Content that either describes a specific competency (learning objective) or describes a grouping of competencies within the taxonomy of a Competency Framework Document. Educational standards are the learning goals for what students should know and be able to do at each grade level. Education standards, like Common Core are not a curriculum. Local communities and educators choose their own curriculum, which is a detailed plan for day-to-day teaching. In other words, the Common Core is what students need to know and be able to do, and curriculum is how students will learn it. The Common Core State Standards are educational standards for English language arts (ELA)/literacy and mathematics in grades K-12.
Competency Framework Association
A relationship between two Competency Framework Documents or two Competency Framework Items (the associations are defined using a set of predefined vocabulary).
Competency Framework Rubric
An entity that includes information about an instrument used to communicate expectations of quality around a task, product, or performance and/or used to delineate consistent criteria for grading. A CFRubric is defined by a set of CFRubricCriterion.
Competency Framework Rubric Criterion
An entity that defines a specific performance criterion. A CFRubricCriterion is defined by a set of CFRubricCriterionLevels.
Competency Framework Rubric Criterion Level
An entity that defines a specific performance criterion level for a rubric. Each level must have a distinct performance value.
Competency Framework Association Grouping
This is a set of associations that have been grouped together because they have some important relationship(s). One usage would be in identifying the set of cross-walk associations to other documents.
UUID
Universally Unique Identifier
LMS
Learning Management System

The Use-cases

The set of uses cases that can be supported by the usage of the CASE service are:

  • Obtaining the definition of the academic standards/competencies/rubrics for a module, course or programme;
  • Obtaining an academic standard or competency definition;
  • Obtaining a rubric definition;
  • Obtaining the associations between academic standards/competency/rubric definitions;
  • Obtaining all of the detailed definitions of the academic standards/competencies/rubrics for a module, course or programme.

Use-case 1 (Obtaining the Definition of the Academic Standards/Competencies/Rubrics for a Module, Course or Programme)

The summary description for this use-case is given in Table 2.1.

Table 2.1 Obtaining the definition of the academic standards/competencies/rubrics for a module, course or programme use-case.
Title: Obtaining the Definition of the Academic Standards/Competencies/Rubrics for a Module, Course or Programme
Local ID: CASE-01
Description: A teacher wishes to obtain the definition of a competency/academic standard for a key learning structure e.g. a course, a programme, etc. A detailed example is that a teacher needs to review the definition for a subject e.g. Year 11 French. Therefore the institution's LMS must have obtained this breakdown for the corresponding District Learning Standards definitions repository. The teacher can then review the subject definition through the institution's LMS.
Level Summary
Actors: Primary - Learning Management System (Institution) and Competency/Academic Standard Repository (District)
Secondary - Teacher
Stakeholder: Teaching Institution e.g. School
Interest: It is essential that the set of competency/academic standard definitions for the education to be supplied and against which the student will be measured are available electronically and installed in the institution's Learning Management System (LMS).
Notes: In terms of the CASE specification, the LMS must have obtained the appropriate CFDocument description(s). The teacher does not need to be aware of how the LMS has obtained the definitions, merely that they are available and assured that they are consistent with the definitions supplied by the District.

Use-case 2 (Obtaining an Academic Standard or Competency Definition)

The summary description for this use-case is given in Table 2.2.

Table 2.2 Obtaining an academic standard or competency definition use-case.
Title: Obtaining an Academic Standard or Competency Definition
Local ID: CASE-02
Description: A teacher wishes to obtain the detailed statements for a competency/academic standard for a key learning structure e.g. a course. A detailed example is that a teacher needs to understand the specific learning objectives that must be achieved for a subject e.g. Year 10 Biology - The Carbon Cycle. Therefore the institution's LMS must have obtained these statements from the corresponding District Learning Standards definitions repository. The teacher can then review the subject statements through the institution's LMS.
Level Summary
Actors: Primary - Learning Management System (Institution) and Competency/Academic Standard Repository (District)
Secondary - Teacher
Stakeholder: Teaching Institution e.g. School
Interest: It is essential that the set of competency/academic standard statements for the education to be supplied and against which the student will be measured are available electronically and installed in the institution's Learning Management System (LMS).
Notes: In terms of the CASE specification, the LMS must have obtained the appropriate CFItem descriptions. The teacher does not need to be aware of how the LMS has obtained the definitions, merely that they are available and assured that they are consistent with the definitions supplied by the District.

Use-case 3 (Obtaining a Rubric Definition)

The summary description for this use-case is given in Table 2.3.

Table 2.3 Obtaining a rubric definition use-case.
Title: Obtaining a Rubric Definition
Local ID: CASE-03
Description: A faculty member wishes to obtain the rubrics which define the assessment marking schemes to be applied to the set of learning activities they are teaching. A detailed example is that the faculty member needs to read the marking scheme required for marking an essay on the use of resonance in electrical circuits. Therefore the institution's LMS must have obtained these rubrics from the Institutions content repository that is used to store the rubrics (the rubric may have been created by a separate curriculum development team). The faculty member can then review the rubrics through the institution's LMS.
Level Summary
Actors: Primary - Learning Management System (Institution) and Rubrics Repository (Institution)
Secondary - Faculty Member
Stakeholder: Higher Education Institution e.g. University
Interest: It is essential that the set of rubrics for the assessment of the various learning activities are available electronically and installed in the institution's Learning Management System (LMS).
Notes: In terms of the CASE specification, the LMS must have obtained the appropriate CFRubric description (this will include the associated CFRubricCriteria and CFRubricCriterionLevels descriptions).

Use-case 4 (Obtaining the Associations between Academic Standards/Competency/Rubric Definitions)

The summary description for this use-case is given in Table 2.4.

Table 2.4 Obtaining the associations between academic standards/competency/rubric definitions use-case.
Title: Obtaining the Associations between Academic Standards/Competency/Rubric Definitions
Local ID: CASE-04
Description: A Learning Management System (LMS) is responsible for displaying to a teacher the set of competencies/academic standards that are addressed by learning materials. The content is annotated with the competencies/academic standards from more than one source. A mapping between these competencies/academic standards from the different sources can be used to vary the information displayed. The mapping between the sources can supplied as a set of associations which must be supplied by one or other of the sources.
Level Summary
Actors: Primary - Learning Management System (Institution) and Competency/Academic Standard Repositories (Districts)
Secondary - Teacher
Stakeholder: Teaching Institution e.g. School
Interest: Different organizations have preferred ways to compose a competency/academic standard. Suppliers of content want to annotate their materials to cover as wide a range of competencies/academic standards as possible. Therefore, a cross-walk between those different competency/academic standards is essential to understand their equivalence.
Notes: In terms of the CASE specification, the LMS must have obtained the mappings using the appropriate CFAssociations structures. Once these associations have been supplied the LMS can use the cross-walk to display the competencies/academic standards in the structure preferred by the user.

Use-case 5 (Obtaining All of the Detailed Definitions of the Academic Standards/Competencies/Rubrics for a Module, Course or Programme)

The summary description for this use-case is given in Table 2.5.

Table 2.5 Obtaining all of the detailed definitions of the academic standards/competencies/rubrics for a module, course or programme use-case.
Title: Obtaining All of the Detailed Definitions of the Academic Standards/Competencies/Rubrics for a Module, Course or Programme
Local ID: CASE-05
Description: A teacher wishes to obtain all of the information for a competency/academic standard for a key learning structure e.g. a course, a programme, etc. A detailed example is that a teacher needs to use all of the information (this includes all of the statements, the licenses, the rubrics, etc.) for the definition for a subject e.g. Year 11 French. Therefore the institution's LMS must have obtained this breakdown from the corresponding District Learning Standards definitions repository. The teacher can then review the subject definition information through the institution's LMS.
Level Summary
Actors: Primary - Learning Management System (Institution) and Competency/Academic Standard Repository (District)
Secondary - Teacher
Stakeholder: Teaching Institution e.g. School
Interest: It is essential that all of the information for the competency/academic standard definitions for the education to be supplied and against which the student will be measured are available electronically and installed in the institution's Learning Management System (LMS).
Notes: In terms of the CASE specification, the LMS must have obtained the appropriate CFPackage structures. The CFPackage is a container for the CFDocument, the set of CFItems, the CFAssociations, the CFRubrics and the set of structural definitions i.e. the CFConcepts, the CFSubjects, the CFAssociationGroupings, the CFItemTypes and the CFLicenses. The teacher does not need to be aware of how the LMS has obtained the definitions, merely that they are available and assured that they are consistent with the definitions supplied by the District.

The Conceptual Model

The Information to be Exchanged

The CASE Service specification is the definition of how systems achieve the exchange of information about learning standards and/or competencies. Analysis of the underlying structure of both a competency and an academic standard determined that information constructs could be represented using the same data model. This enables the use of a single interoperability data model, which is composed of three core constructs:

  • The root definition document - the top level structure that collects together the set of statements that define the individual competencies/academic standards. Within CASE this structure is identified as the CFDocument;
  • The set of composition statements - the set of statements into which the top level competency/academic standards has been decomposed. Within CASE this structure is identified as the CFItem;
  • The rubric - the detailed definition of how it can be determined that mastery of the associated competency/standard has been achieved. This requires the definition of specific criteria used for each of the scores that can be awarded during an assessment. Within CASE this structure is identified as the CFRubric.

The composition and logical structure of a competency/academic standard is shown in Figure 3.1. The document is the container for the set of competency/academic standard statements. In general these statements will themselves be broken into sub-statements, etc. The CASE specification defines a data model for this hierarchical structure with the hierarchy determined using a linked list approach.

Diagram of the composition and logical structure of a competency/academic standard.

Figure 3.1 - The composition and logical structure of a competency/academic standard.

The breakdown of a competency/academic standard into its component statements must be undertaken by an appropriately skilled individual. The CASE specification is unconcerned by the actual breakdown i.e. the specification can be used to exchange any breakdown and the specification can also be used to describe the association between different breakdowns. A typical example of this is that every K-12 District will have a breakdown for subjects such as Maths, Physics, etc. and so these can be aligned using encoding in the CASE data model.

The composition and logical structure of a rubric is shown in Figure 3.2. A rubric is a matrix. Each row in the matrix is used to define a 'Criterion' and so the set of rows define the set of Rubric Criteria. For each row the set of columns are the rubric criterion level definitions with an associated score. In CASE each rubric criterion is defined in the CFRubricCriterion data model with the rubric criterion levels defined using the CFRubricCriterionLevel data model.

Diagram of the composition and logical structure of a rubric.

Figure 3.2 - The composition and logical structure of a rubric.

A rubric is associated to a competency/academic standard statement i.e. a CFRubric is linked to a CFItem. A CFRubric may be used for more than one CFItem but in terms of data interoperability there is a 1-to-1 relationship.

Logical Data Model

The data model for the CASE specification consists of a set of core classes which are used to define the data properties. A logical representation of the logical data model for the data structures in the CASE service is shown in Figure 3.3.

Diagram of the logical data model CASE specification.

Figure 3.3 - The logical data model for the CASE specification.

The set of classes in the logical model are:

  • CFPackage - this is the top-level container for the exchange of a single, complete, package of data. The CFDocument is the root structure and this determines the scope of information that must be contained within the CFPackage;
  • CFDocument - this is the root for the associated academic standards or competency definitions. The mapping between the academic standard/competency and the range of the learning covered is an issue that must be covered by those defining the academic standard/competency;
  • CFItem - an academic standard/competency document definition must include a set of CFItems in which the hierarchy of learning objects is defined and refined;
  • CFAssociation - the set of associations between the root CFDocument and other CFDocuments (not included in the CFPackage) and between CFItems and other CFItems (not included in the CFPackage). This feature allows one competency framework to be aligned to other competency frameworks. An extensive vocabulary is available to define the type of association;
  • CFDefinition - a container for the set of low-level definitions that are used to convert the logical CFDocument/CFItem structures into structures that have educational meaning. This structure only has meaning within the context of a CFPackage;
  • CFConcept - a concept as used in defining an academic standard/competency. The actual concepts should be based upon an established vocabulary available for the application context;
  • CFSubject - a subject as used in defining an academic standard/competency. The actual subjects should be based upon an established vocabulary available for the application context;
  • CFLicense - a license for using an academic standard/competency;
  • CFItemType - an item-type as used in defining an academic standard/competency;
  • CFAssociationGroup - a grouping of associations when defining an academic standard/competency;
  • CFRubric - a rubric as used in defining an academic standard/competency (consider this as a matrix);
  • CFRubricCriterion - defining a row within the CFRubric matrix. A CFRubricCriterion is aligned to a CFItem;
  • CFRubricCriterionLevel - the definitions of the individual points required for each level with the CFRubricCriterion (i.e. the definition of each column in the associated row).

Package Structure

A Competency Framework Package (CFPackage) is the structure that is used to contain a CFDocument and all of the associated components to create a complete and standalone structure i.e. a system using the CFPackage has no need for other contextual data. A schematic representation of the structure of a CASE package is shown in Figure 3.4.

Diagram of the schematic representation of the structure of a CASE package.

Figure 3.4 - A schematic representation of the structure of a CASE package.

The outer container, the CFPackage, has direct children of:

  • CFDocument - the root structure for the set of definitions. There must be one, and only one, CFDocument structure;
  • CFItems - the set of CFItems that are required to provide the complete set of definitions for the CFDocument i.e. the set of direct CFItem children and any of the recurring CFItem children for the CFItems;
  • CFAssociations - the set of CFDocument and CFItem association records. The package does NOT include the associated CFDocuments or CFItems (these would need to be retrieved using the relevant CASE service calls);
  • CFDefinition - this is a container, only one such container is permitted, for the set of detailed structures for the CFItems and CFDocument. The detailed structures are:-
    • CFConcepts - all of the CFConcepts used in the definitions and the associated set of child CFConcepts;
    • CFSubjects - all of the CFSubjects used in the definitions and the associated set of child CFSubjects;
    • CFLicenses - all of the CFLicenses for the use of the CFItems and CFDocument;
    • CFItemTypes - all of the CFItemTypes used in the definitions and the associated set of child CFItemTypes;
    • CFAssociationGroupings - all of the groups of CFAssociations;
  • CFRubrics - the set of CFRubrics. The contained child structures are:-
    • CFRubricCriteria - the set of CFRubricCriterions i.e. required to enable the complete definitions for each of the CFRubric;
    • CFRubricCriterionLevels - the set of RubricCriteronLevels i.e. required to enable the complete definitions for each of the CFRubricCriterion (these are contained with the corresponding CFRubricCriterion structure).

Interoperability Model

The CASE service defines how data about learning standards and competencies is exchanged. It does not address how the data is stored and/or processed in the end-systems that exchange the information. A schematic representation of the service provided by the CASE specification is shown in Figure 3.5.

Diagram of the interoperability supplied by the CASE service.

Figure 3.5 - The interoperability supplied by the CASE service.

The CASE is realised as a set of Web Services (the actual implementation is defined by the associated binding specification and, currently, only a REST/JSON based binding is available). In CASE 1.0/1.1 only a pull service model is provided i.e. a consumer must read the data from a service provider. It is possible to chain systems together and so some systems could be both an CASE consumer and service provider. In the cases where an intermediate system acquires data from more than one service provider (it is a data aggregator) it must support both consumer and provider functionality.

Service Architecture and Specification Model

An Abstract Representation

It is important to remember that this document contains a description of the underlying information model in terms of the abstract Application Programming Interface (API). The manner in which this abstract representation is visualized is not intended to dictate the implementation form of the Service. The breakdown of the service into its interface classes is a convenient way to document the set of behaviors. The objective for producing these interfaces is to identify and define the messages that are exchanged between the end-systems to realize the system behaviors required of the service.

The internal organization of an implementation of the full abstract API is beyond the scope of this specification. The only constraint is that the external behavior of the abstract API complies with this specification. This means that a .NET, J2EE, etc. physical implementation of this abstract API does not have to represent the functionality using the same breakdown of operations/methods. This physical implementation is not subject to the conformance specification.

It is important to note that the UML representation of the interfaces is used to help develop and document the Information Model and various Bindings. It is not a requirement for a system to implement this interface as defined i.e. to use the same parameters, etc. Conformance against this specification will be confirmed by inspecting the appropriate binding of the information model and ensuring that the relevant information is present and that different sequences of activity result in the predicted and mandated behavior. It is essential that the behaviors described by each of the operations are fully supported and that the behaviors described by different sequences are also maintained.

Service Architecture and Specification Model

The basic architectural model for the CASE Service specification is shown in Figure 4.1. In this architecture the scope of the 1EdTech CASE Service specification is shown as the dotted line. The scope of the interoperability is the data and behavioral models of the objects being exchanged.

Diagram of the CASE service architecture.

Figure 4.1 - The CASE service architecture.

It is important to remember that the structure of the exchanged information has NO bearing on how the same information is contained within the 'consumer' and 'provider' CASE systems (the CASE repositories in the two end-systems). It is simply a representation of the data used to facilitate exchange between the end-systems. The only constraint on the end-system repositories is that they provide data persistence consistent with the required behavior.

Service Objects

The set of service objects that are exchanged between end-systems are:

  • CFPackage - the container for the complete set of data for a CFDocument i.e. including its component CFItems, CFAssociations, etc.
  • CFDocument - the container for the CFDocument data only i.e. it does not contain any of the components e.g. CFItems, etc.
  • CFItem - the container for the CFItem data only;
  • CFAssociation - the container for the CFAssociation data only (this could be for any type of association);
  • CFConcept - the container for the CFConcept data and the child CFConcepts as defined by the hierarchy;
  • CFSubject - the container for the CFSubject data and the child CFConcepts as defined by the hierarchy;
  • CFLicense - the container for the CFLicense data only;
  • CFItemType - the container for the CFItemType data and the child CFConcepts as defined by the hierarchy i.e. it does not include data about CFItems;
  • CFAssociationGrouping - the container for the CFAssociationGrouping data only i.e. it does not include data about CFAssociations;
  • CFRubric - the container for the CFRubric data and the associated CFRubricCriteria and CFRubricCriterionLevels.

The set of service collection objects that are exchanged between end-systems are:

  • CFDocumentSet - the complete set of CFDocuments;
  • CFAssociationSet - the set of CFAssociations for an identified CFItem and the CFItem data itself.

A Synchronous Service

The CASE Service is a synchronous service i.e. the consumer is blocked until the response from the provider is received. This means that a consumer can only have one outstanding request with a service provider. The corresponding sequence of actions is shown in Figure 4.2.

Diagram of the action sequence for the CASE synchronous service.

Figure 4.2 - The action sequence for the CASE synchronous service.

Figure 4.2 shows the action sequence from the perspective of the consumer but it must be noted that a Service Provider will be expected to support concurrent requests (perhaps hundreds to thousands) from many consumers.

The Interface Model

The definition of the data models exchanged between the service End Systems. These are the parameters exchanged across the interoperability interface. These are an abbreviated description with the full set of details in the corresponding data class description;

Interface Description
ItemsManager The set of service operations that manage access to the Competency Framework Items. Items are the containers for the definitions in an academic standard/competency. This interface manages the Item descriptions only i.e. it does not support the management of Associations, etc.
AssociationsManager The set of service operations that manage access to the Competency Framework Associations. Associations are to establish relationships between definitions from different sources. This interface manages the associations between CFDocuments and between CFItems.
RubricsManager The set of service operations that manage access to the Competency Framework Rubrics. Rubrics associate the set of rubric criteria being defined for a specific academic standard/competency (defined as either a CFItem or a CFDocument).
DocumentsManager The set of service operations that manage access to the Competency Framework Documents. Documents are the root entry point for the definition of an academic standard/competency. This interface manages the document descriptions only i.e. it does not support the management of Items, Associations, etc.
PackagesManager The set of service operations that manage access to the Competency Framework Packages as a whole. A Competency Framework Package is a package that contains all of the arefacts that are used for the definition of a Competency Framework Document.
DefinitionsManager The set of service operations that manage access to the Competency Framework Definitions. This interface manages the definitions of the: Competency Framework Concepts, Competency Framework Subjects, Competency Framework Licenses, Competency Framework Item Types and Competency Framework Association Groupings.

ItemsManager Interface

The set of service operations that manage access to the Competency Framework Items. Items are the containers for the definitions in an academic standard/competency. This interface manages the Item descriptions only i.e. it does not support the management of Associations, etc.

Operation Description
getCFItem This is a request to the Service Provider to provide the specified Competency Framework Item. If the identified record cannot be found then the 'unknownobject' status code must be reported.

"getCFItem" Operation

This is a request to the Service Provider to provide the specified Competency Framework Item. If the identified record cannot be found then the 'unknownobject' status code must be reported.

Parameters

No parameters defined.

Return Parameters

Type Description Multiplicity Confidentiality
CFItem No Description [1] N/A

AssociationsManager Interface

The set of service operations that manage access to the Competency Framework Associations. Associations are to establish relationships between definitions from different sources. This interface manages the associations between CFDocuments and between CFItems.

Operation Description
getCFItemAssociations This is a request to the Service Provider to provide the all of the Competency Associations for the specified CFItem and the information about the CFItem itself. If the identified record cannot be found then the 'unknownobject' status code must be reported.
getCFAssociation This is a request to the service provider to provide the information for the specific Competency Framework Association. If the identified record cannot be found then the 'unknownobject' status code must be reported.

"getCFItemAssociations" Operation

This is a request to the Service Provider to provide the all of the Competency Associations for the specified CFItem and the information about the CFItem itself. If the identified record cannot be found then the 'unknownobject' status code must be reported.

Parameters

No parameters defined.

Return Parameters

Type Description Multiplicity Confidentiality
CFAssociationSet No Description [1] N/A

"getCFAssociation" Operation

This is a request to the service provider to provide the information for the specific Competency Framework Association. If the identified record cannot be found then the 'unknownobject' status code must be reported.

Parameters

No parameters defined.

Return Parameters

Type Description Multiplicity Confidentiality
CFAssociation No Description [1] N/A

RubricsManager Interface

The set of service operations that manage access to the Competency Framework Rubrics. Rubrics associate the set of rubric criteria being defined for a specific academic standard/competency (defined as either a CFItem or a CFDocument).

Operation Description
getCFRubric This is a request to the service provider to provide the information for the specific Competency Framework Rubric. If the identified record cannot be found then the 'unknownobject' status code must be reported.

"getCFRubric" Operation

This is a request to the service provider to provide the information for the specific Competency Framework Rubric. If the identified record cannot be found then the 'unknownobject' status code must be reported.

Parameters

No parameters defined.

Return Parameters

Type Description Multiplicity Confidentiality
CFRubric No Description [1] N/A

DocumentsManager Interface

The set of service operations that manage access to the Competency Framework Documents. Documents are the root entry point for the definition of an academic standard/competency. This interface manages the document descriptions only i.e. it does not support the management of Items, Associations, etc.

Operation Description
getAllCFDocuments This is a request to the Service Provider to provide all of the Competency Framework Documents.
getCFDocument This is a request to the service provider to provide the information for the specific Competency Framework Document. If the identified record cannot be found then the 'unknownobject' status code must be reported.

"getAllCFDocuments" Operation

This is a request to the Service Provider to provide all of the Competency Framework Documents.

Parameters

No parameters defined.

Return Parameters

Type Description Multiplicity Confidentiality
CFDocumentSet No Description [1] N/A

"getCFDocument" Operation

This is a request to the service provider to provide the information for the specific Competency Framework Document. If the identified record cannot be found then the 'unknownobject' status code must be reported.

Parameters

No parameters defined.

Return Parameters

Type Description Multiplicity Confidentiality
CFDocument No Description [1] N/A

PackagesManager Interface

The set of service operations that manage access to the Competency Framework Packages as a whole. A Competency Framework Package is a package that contains all of the arefacts that are used for the definition of a Competency Framework Document.

Operation Description
getCFPackage This is a request to the service provider to provide the information for the specific Competency Framework Package. If the identified record cannot be found then the 'unknownobject' status code must be reported.

"getCFPackage" Operation

This is a request to the service provider to provide the information for the specific Competency Framework Package. If the identified record cannot be found then the 'unknownobject' status code must be reported.

Parameters

No parameters defined.

Return Parameters

Type Description Multiplicity Confidentiality
CFPackage No Description [1] N/A

DefinitionsManager Interface

The set of service operations that manage access to the Competency Framework Definitions. This interface manages the definitions of the: Competency Framework Concepts, Competency Framework Subjects, Competency Framework Licenses, Competency Framework Item Types and Competency Framework Association Groupings.

Operation Description
getCFConcept This is a request to the Service Provider to provide the specified Competency Framework Concept and the set of children CFConcepts as identified by the hierarchy codes. If the identified record cannot be found then the 'unknownobject' status code must be reported.
getCFSubject This is a request to the Service Provider to provide the specified Competency Framework Subject and the set of children CFSubjects as identified by the hierarchy codes. If the identified record cannot be found then the 'unknownobject' status code must be reported.
getCFLicense This is a request to the Service Provider to provide the specified Competency Framework License. If the identified record cannot be found then the 'unknownobject' status code must be reported.
getCFItemType This is a request to the Service Provider to provide the specified Competency Framework Item Type and the set of children CFItemTypes as identified by the hierarchy codes. If the identified record cannot be found then the 'unknownobject' status code must be reported.
getCFAssociationGrouping This is a request to the Service Provider to provide the specified Competency Framework Association Grouping. If the identified record cannot be found then the 'unknownobject' status code must be reported.

"getCFConcept" Operation

This is a request to the Service Provider to provide the specified Competency Framework Concept and the set of children CFConcepts as identified by the hierarchy codes. If the identified record cannot be found then the 'unknownobject' status code must be reported.

Parameters

No parameters defined.

Return Parameters

Type Description Multiplicity Confidentiality
CFConceptSet No Description [1] N/A

"getCFSubject" Operation

This is a request to the Service Provider to provide the specified Competency Framework Subject and the set of children CFSubjects as identified by the hierarchy codes. If the identified record cannot be found then the 'unknownobject' status code must be reported.

Parameters

No parameters defined.

Return Parameters

Type Description Multiplicity Confidentiality
CFSubjectSet No Description [1] N/A

"getCFLicense" Operation

This is a request to the Service Provider to provide the specified Competency Framework License. If the identified record cannot be found then the 'unknownobject' status code must be reported.

Parameters

No parameters defined.

Return Parameters

Type Description Multiplicity Confidentiality
CFLicense No Description [1] N/A

"getCFItemType" Operation

This is a request to the Service Provider to provide the specified Competency Framework Item Type and the set of children CFItemTypes as identified by the hierarchy codes. If the identified record cannot be found then the 'unknownobject' status code must be reported.

Parameters

No parameters defined.

Return Parameters

Type Description Multiplicity Confidentiality
CFItemTypeSet No Description [1] N/A

"getCFAssociationGrouping" Operation

This is a request to the Service Provider to provide the specified Competency Framework Association Grouping. If the identified record cannot be found then the 'unknownobject' status code must be reported.

Parameters

No parameters defined.

Return Parameters

Type Description Multiplicity Confidentiality
CFAssociationGrouping No Description [1] N/A

Data Model

Data Class Descriptions

CFAssociation Class

This is the container for the data about the relationship between two CFDocuments or between two CFItems outside of the context of a CFPackage or CFItem.

Attribute Type Description Multiplicity Privacy
CFDocumentURI LinkURI An unambiguous reference to the CFDocument that would be used in the context of this CFAssociation using a network-resolvable URI. [0..1] N/A
identifier UUID An unambiguous, synthetic, globally unique identifier for the CFAssociation. This is the primary way in which the exchange identification is achieved. [1] N/A
associationType CFAssociationTypeExtEnum The type of association. This uses an extensible enumerated vocabulary. Changed in CASE 1.1. [1] N/A
sequenceNumber Integer This is used to order associated objects. Associations can be created through mapping rather than strict hierarchy. As such the presentation of the list cannot be ordered by the objects in the list. They may be different based on the parent being viewed. Use of this property for sequencing is preferred over the use of the 'listEnumeration' property in the CFPckgItem class. [0..1] N/A
uri AnyURI An unambiguous reference to the CFAssociation using a network-resolvable URI. [1] N/A
originNodeURI LinkGenURI The resolvable URI for the origin node object. [1] N/A
destinationNodeURI LinkGenURI The resolvable URI for the destination node object. [1] N/A
CFAssociationGroupingURI LinkURI The network resolvable URI for the link data relationship to a CFAssociationGrouping. [0..1] N/A
lastChangeDateTime DateTime A system generated timestamp of the most recent change to this record. This conforms to ISO 8601 dateTime definition [ISO 8601]. [1] N/A
notes String A new attribute added in Version 1.1. Information about the CFAssociation. [0..1] N/A
extensions CFAssociationExtension This is a new attribute added in Version 1.1. This enables extension of this class. The actual extension mechanism is dependent upon the binding technology being used. [0..1] N/A

CFAssociationExtension Class

The container for the proprietary extensions to the CFAssociation class.

This class can be extended with additional properties.

CFAssociationGrouping Class

This is the container for information about a set of associations that have been labelled as a group (the nature of the group being defined by this container).

Attribute Type Description Multiplicity Privacy
identifier UUID An unambiguous, synthetic, globally unique identifier for the CFAssociationGrouping. This is the primary way in which the exchange identification is achieved. [1] N/A
uri AnyURI An unambiguous reference to the CFAssociationGrouping using a network-resolvable URI. [1] N/A
title NormalizedString The title of the CFAssociationGrouping. [1] N/A
description String A human readable description of the CFAssociationGrouping. [0..1] N/A
lastChangeDateTime DateTime A system generated timestamp of the most recent change to this record. This conforms to ISO 8601 dateTime definition [ISO 8601]. [1] N/A
extensions CFAssociationGroupingExtension This is a new attribute added in Version 1.1. This enables extension of this class. The actual extension mechanism is dependent upon the binding technology being used. [0..1] N/A

CFAssociationGroupingExtension Class

The container for the proprietary extensions to the CFAssociationGrouping class.

This class can be extended with additional properties.

CFAssociationSet Class

This is the container for a collection of CFAssociations. There must be at least one CFAssociation. Note that the association can be between CFDocuments or between CFItems.

Attribute Type Description Multiplicity Privacy
CFItem CFItem This is the container for the specified CFItem object. This is the content that either describes a specific competency (learning objective) or describes a grouping of competencies within the taxonomy of a Competency Framework Document. [1] N/A
CFAssociations CFPckgAssociation This is the data for a single CFAssociation within the CFAssociationSet container. The association can be between CFDocuments or between CFItems [1..*] N/A

CFConcept Class

The container for the definition of a concept which is addressed by the competency framework.

Attribute Type Description Multiplicity Privacy
identifier UUID An unambiguous, synthetic, globally unique identifier for the CFConcept. This is the primary way in which the exchange identification is achieved. [1] N/A
uri AnyURI An unambiguous reference to the CFConcept using a network-resolvable URI. [1] N/A
title NormalizedString The title of the CFConcept. [1] N/A
keywords NormalizedString Defined listing of keywords delimited by ' ' that the concept encompasses. [0..1]
hierarchyCode NormalizedString A human-referenceable code designated by the publisher to identify the item in the hierarchy of the Concepts. [1] N/A
description String A human readable description of the CFConcept. [0..1] N/A
lastChangeDateTime DateTime A system generated timestamp of the most recent change to this record. This conforms to ISO 8601 dateTime definition [ISO 8601]. [1] N/A
extensions CFConceptExtension This is a new attribute added in Version 1.1. This enables extension of this class. The actual extension mechanism is dependent upon the binding technology being used. [0..1] N/A

CFConceptExtension Class

The container for the proprietary extensions to the CFConcept class.

This class can be extended with additional properties.

CFConceptSet Class

The container for the set of CFConcepts supplied in the response payload. The relationship between the CFConcepts is determined by the 'hierarchyCode'. The first CFConcept is that which has been specified in the call. The other CFConcepts are the set of children as determined by their place in the 'hierarchyCode' of the CFConcept.

Attribute Type Description Multiplicity Privacy
CFConcepts CFConcept The set of CFConcepts. The relationship between the CFConcepts is determined by the 'hierarchyCode'. The first CFConcept is that which has been specified in the call. The other CFConcepts are the set of children as determined by their place in the 'hierarchyCode' of the CFConcept. [1..*] N/A

CFDefinition Class

The container for the set of definitions used for the competency framework i.e. the set of CFSubjects, CFConcepts, CFItemTypes, CFAssociationGroupings and CFLicenses.

Attribute Type Description Multiplicity Privacy
CFConcepts CFConcept The set of concept definitions. [0..*] N/A
CFSubjects CFSubject The set of subject definitions. [0..*] N/A
CFLicenses CFLicense The set of license definitions. [0..*] N/A
CFItemTypes CFItemType The set of item type definitions. [0..*] N/A
CFAssociationGroupings CFAssociationGrouping The set of association grouping definitions. [0..*] N/A
extensions CFDefinitionExtension This is a new attribute added in Version 1.1. This enables extension of this class. The actual extension mechanism is dependent upon the binding technology being used. [0..1] N/A

CFDefinitionExtension Class

The container for the proprietary extensions to the CFDefinition class.

This class can be extended with additional properties.

CFDocument Class

The container for the data about a competency framework document (CFDocument) when exchanged outside of the context of a CFPackage. A CFDocument is the root for the creation of a learning standard/competency.

Attribute Type Description Multiplicity Privacy
CFPackageURI LinkURI An unambiguous reference to the CFPackage that would be used to contain this CFDocument using a network-resolvable URI. [1] N/A
identifier UUID An unambiguous, synthetic, globally unique identifier for the CFDocument. This is the primary way in which the exchange identification is achieved. [1] N/A
uri AnyURI An unambiguous reference to the CFDocument using a network-resolvable URI. [1] N/A
frameworkType NormalizedString This is a new attribute added in version 1.1. This attribute allows framework creators to indicate what type of framework this is, for example course codes. In CASE 1.1. the only predefined type of framework is 'CourseCodes'. Other standardized framework types will be defined. [0..1] N/A
caseVersion CaseVersionEnum This is a new attribute added in version 1.1. Denotes the version of the CFDocument. If present it MUST have a value of '1.1'. [0..1] N/A
creator NormalizedString The entity with authority that promulgates the competency framework. This is the entity that authorized or created the competency framework. It could be an education agency, higher education institution, professional body. It is the owner of the competency framework. [1] N/A
title NormalizedString The title of the CFDocument. [1] N/A
lastChangeDateTime DateTime A system generated timestamp of the most recent change to this record. This conforms to ISO 8601 dateTime definition [ISO 8601]. [1] N/A
officialSourceURL URL The URL link to the formal citation of the original achievement standards document created for humans. [0..1] N/A
publisher NormalizedString The entity responsible for making the learning standards document available. [0..1] N/A
description String A human readable description of the CFDocument. In Version 1.1 the data-type has been changed from NormalizedString. [0..1] N/A
subject NormalizedString The topic or academic subject of the Document (this should use some appropriate K-12, HE, etc. based vocabulary). [0..*] N/A
subjectURI LinkURI A set of Link URIs denoting the set of subjects for the document as designated by the promulgating agency. [0..*] N/A
language Language The default language of the text used for the content in the learning standard document (use ISO 639-2 [ISO 639]). [0..1] N/A
version NormalizedString Defines the revision of the document (the nature of this versioning is an implementation issue). [0..1] N/A
adoptionStatus NormalizedString The publication status of the document. [0..1] N/A
statusStartDate Date The date the CFDocument status started. [0..1] N/A
statusEndDate Date The date the CFDocument status ended or changed to another status. [0..1] N/A
licenseURI LinkURI A link to a legal document controlling permission to do something with the standards document. [0..1] N/A
notes String Any text used to comment on the published CFDocument. [0..1] N/A
extensions CFDocumentExtension This is a new attribute added in Version 1.1. This enables extension of this class. The actual extension mechanism is dependent upon the binding technology being used. [0..1] N/A

CFDocumentExtension Class

The container for the proprietary extensions to the CFDocument class.

This class can be extended with additional properties.

CFDocumentSet Class

This is the container for a collection of CFDocuments. There must be at least one CFDocument.

Attribute Type Description Multiplicity Privacy
CFDocuments CFDocument This is the data for a single CFDocument within the CFDocumentSet container. [1..*] N/A

CFItem Class

This is the container for the CFItem data outside of the context of a CFPackage. This is the content that either describes a specific competency (learning objective) or describes a grouping of competencies within the taxonomy of a Competency Framework Document.

Attribute Type Description Multiplicity Privacy
CFDocumentURI LinkURI An unambiguous reference to the CFDocument that would be used to contain this CFItem using a network-resolvable URI. [1] N/A
identifier UUID An unambiguous, synthetic, globally unique identifier for the CFItem. This is the primary way in which the exchange identification is achieved. [1] N/A
fullStatement String The text of the statement. The textual content that either describes a specific competency or describes a less granular group of competencies within the taxonomy of the standards document. In Version 1.1 the data-type was changed from NormalizedString. [1] N/A
alternativeLabel NormalizedString An alternate 'term' for Competency. Some institutions may want to render their achievements as outcomes, or objectives, etc. Semantically they are the same as Competencies, but diversity of terms is used. This allows for the flexibility for the institution to define their own term for 'Competency' and not being locked into it. [0..1] N/A
CFItemType NormalizedString The textual label identifying the class of the statement as designated by the promulgating body. [0..1] N/A
uri AnyURI An unambiguous reference to the CFItem using a network-resolvable URI. [1] N/A
humanCodingScheme NormalizedString A human-referenceable code designated by the publisher to identify the item among learning standard items. [0..1] N/A
listEnumeration NormalizedString A set of one or more alphanumeric characters and/or symbol denoting the positioning of the statement being described in a sequential listing of statements. Use of the 'sequenceNumber' in the CFPckgAssociation class is preferred over the use of this property for sequencing. [0..1] N/A
abbreviatedStatement NormalizedString An abbreviated version of the Full Statement. [0..1] N/A
conceptKeywords NormalizedString The significant topicality of the CFItem using free-text keywords and phrases. [0..*] N/A
conceptKeywordsURI LinkURI The significant topicality of the CFItem using a controlled vocabulary maintained as linked data. [0..1] N/A
notes String Information about the derivation of a CFItem statement. [0..1] N/A
subject NormalizedString A new attribute added in Version 1.1. The topic or academic subject of the Item (this should use some appropriate K-12, HE, etc. based vocabulary). [0..*] N/A
subjectURI LinkURI A new attribute added in Version 1.1. A set of Link URIs denoting the set of subjects for the Item as designated by the promulgating agency. [0..*] N/A
language Language The default language of the text used for the content in the learning standard document (use ISO 639-2 [ISO 639]). [0..1] N/A
educationLevel NormalizedString The education level, grade level or primary instructional level at which a CFItem is intended [0..*] N/A
CFItemTypeURI LinkURI This is the linked data location for the CFItemType. [0..1] N/A
licenseURI LinkURI A link to a legal document controlling permission to do something with the CFItem. [0..1] N/A
statusStartDate Date The date the CFItem status started. [0..1] N/A
statusEndDate Date The date the CFItem status ended or changed to another status. [0..1] N/A
lastChangeDateTime DateTime A system generated timestamp of the most recent change to this record. This conforms to ISO 8601 dateTime definition [ISO 8601]. [1] N/A
extensions CFItemExtension This is a new attribute added in Version 1.1. This enables extension of this class. The actual extension mechanism is dependent upon the binding technology being used. [0..1] N/A

CFItemExtension Class

The container for the proprietary extensions to the CFItem class.

This class can be extended with additional properties.

CFItemType Class

The container for the ItemType information use within the competency framework.

Attribute Type Description Multiplicity Privacy
identifier UUID An unambiguous, synthetic, globally unique identifier for the CFItemType. This is the primary way in which the exchange identification is achieved. [1] N/A
uri AnyURI An unambiguous reference to the CFItemType using a network-resolvable URI. [1] N/A
title NormalizedString The title of the CFItemType. [1] N/A
description String A human readable description of the CFItemType. [1] N/A
hierarchyCode NormalizedString A human-referenceable code designated by the publisher to identify the item in the hierarchy of ItemTypes. [1] N/A
typeCode NormalizedString Text code used for type identification. [0..1] N/A
lastChangeDateTime DateTime A system generated timestamp of the most recent change to this record. This conforms to ISO 8601 dateTime definition [ISO 8601]. [1] N/A
extensions CFItemTypeExtension This is a new attribute added in Version 1.1. This enables extension of this class. The actual extension mechanism is dependent upon the binding technology being used. [0..1] N/A

CFItemTypeExtension Class

The container for the proprietary extensions to the CFItemType class.

This class can be extended with additional properties.

CFItemTypeSet Class

The container for the set of CFItemTypes supplied in the response payload. The relationship between the CFItemTypes is determined by the 'hierarchyCode'. The first CFItemType is that which has been specified in the call. The other CFItemTypes are the set of children as determined by their place in the 'hierarchyCode' of the CFItemType.

Attribute Type Description Multiplicity Privacy
CFItemTypes CFItemType The set of CFItemTypes. The relationship between the CFItemTypes is determined by the 'hierarchyCode'. The first CFItemType is that which has been specified in the call. The other CFItemTypes are the set of children as determined by their place in the 'hierarchyCode' of the CFItemType. [1..*] N/A

CFLicense Class

The container for the information about a license used within the competency framework.

Attribute Type Description Multiplicity Privacy
identifier UUID An unambiguous, synthetic, globally unique identifier for the CFLicense. This is the primary way in which the exchange identification is achieved. [1] N/A
uri AnyURI An unambiguous reference to the CFLicense using a network-resolvable URI. [1] N/A
title NormalizedString The title of the CFLicense. [1] N/A
description String A human readable description of the CFLicense. [0..1] N/A
licenseText String Legal license text used by the organization to convey license permissions. This may include the actual license text, or a link to a web location containing the license as a document or as text. [1] N/A
lastChangeDateTime DateTime A system generated timestamp of the most recent change to this record. This conforms to ISO 8601 dateTime definition [ISO 8601]. [1] N/A
extensions CFLicenseExtension This is a new attribute added in Version 1.1. This enables extension of this class. The actual extension mechanism is dependent upon the binding technology being used. [0..1] N/A

CFLicenseExtension Class

The container for the proprietary extensions to the CFLicense class.

This class can be extended with additional properties.

CFPackage Class

This is the container for all of the data for a Competency Framework Package i.e. the root CFDocument and ALL of the corresponding components i.e. the CFItems, CFAssociations and CFDefinitions.

Attribute Type Description Multiplicity Privacy
CFDocument CFPckgDocument The root Competency Framework Document. There must be only one CFDocument. [1] N/A
CFItems CFPckgItem The set of Competency Framework Items that are a components (direct or indirect children) of the root Competency Framework Document. There must be at least one Competency Framework Item. [0..*] N/A
CFAssociations CFPckgAssociation The set of Competency Framework Associations. This includes: the set of associations between the component CFItems and other CFItems; the set of associations between the root CFDocument and other CFDocuments. [0..*] N/A
CFDefinitions CFDefinition The Competency Framework Definitions for the CFDocument and the associated component CFItems. The definitions contains the corresponding set of: CFConcepts, CFSubjects, CFLicenses, CFItemTypes and CFAssociationGroupings. [0..1] N/A
CFRubrics CFRubric The set of Competency Framework CFRubrics including the associated CFRubricCriteria and CFRubrcCriterionLevels that are required to complete all of the information relevant to the parent CFRubric. [0..*] N/A
extensions CFPackageExtension This is a new attribute added in Version 1.1. This enables extension of this class. The actual extension mechanism is dependent upon the binding technology being used. [0..1] N/A

CFPackageExtension Class

The container for the proprietary extensions to the CFPackage class.

This class can be extended with additional properties.

CFPckgAssociation Class

This is the container for the data about the relationship between two CFDocuments or between two CFItems within the context of a CFPackage.

Attribute Type Description Multiplicity Privacy
identifier UUID An unambiguous, synthetic, globally unique identifier for the CFAssociation. This is the primary way in which the exchange identification is achieved. [1] N/A
associationType CFAssociationTypeExtEnum The type of association. This uses an extensible enumerated vocabulary. Changed in CASE 1.1. [1] N/A
sequenceNumber Integer This is used to order associated objects. Associations can be created through mapping rather than strict hierarchy. As such the presentation of the list cannot be ordered by the objects in the list. They may be different based on the parent being viewed. Use of this property for sequencing is preferred over the use of the 'listEnumeration' property in the CFPckgItem class. [0..1] N/A
uri AnyURI An unambiguous reference to the CFAssociation using a network-resolvable URI. [1] N/A
originNodeURI LinkGenURI The resolvable URI for the origin node object. [1] N/A
destinationNodeURI LinkGenURI The resolvable URI for the destination node object. [1] N/A
CFAssociationGroupingURI LinkURI The network resolvable URI for the link data relationship to a CFAssociationGrouping. [0..1] N/A
lastChangeDateTime DateTime A system generated timestamp of the most recent change to this record. This conforms to ISO 8601 dateTime definition [ISO 8601]. [1] N/A
notes String A new attribute added in Version 1.1. Information about the CFAssociation. [0..1] N/A
extensions CFAssociationExtension This is a new attribute added in Version 1.1. This enables extension of this class. The actual extension mechanism is dependent upon the binding technology being used. [0..1] N/A

CFPckgDocument Class

The container for the data about a competency framework document (CFDocument) within a CFPackage. A CFDocument is the root for the creation of a learning standard/competency.

Attribute Type Description Multiplicity Privacy
identifier UUID An unambiguous, synthetic, globally unique identifier for the CFDocument. This is the primary way in which the exchange identification is achieved. [1] N/A
uri AnyURI An unambiguous reference to the CFDocument using a network-resolvable URI. [1] N/A
frameworkType NormalizedString This is a new attribute added in version 1.1. This attribute allows framework creators to indicate what type of framework this is, for example course codes. In CASE 1.1. the only predefined type of framework is 'CourseCodes'. Other standardized framework types will be defined. [0..1] N/A
caseVersion CaseVersionEnum This is a new attribute added in version 1.1. Denotes the version of the CFDocument. If present it MUST have a value of '1.1'. [0..1] N/A
creator NormalizedString The entity with authority that promulgates the competency framework. This is the entity that authorized or created the competency framework. It could be an education agency, higher education institution, professional body. It is the owner of the competency framework. [1] N/A
title NormalizedString The title of the CFDocument. [1] N/A
lastChangeDateTime DateTime A system generated timestamp of the most recent change to this record. This conforms to ISO 8601 dateTime definition [ISO 8601]. [1] N/A
officialSourceURL URL The URL link to the formal citation of the original achievement standards document created for humans. [0..1] N/A
publisher NormalizedString The entity responsible for making the learning standards document available. [0..1] N/A
description String A human readable description of the CFDocument. In Version 1.1 the data-type has been changed from NormalizedString. [0..1] N/A
subject NormalizedString The topic or academic subject of the Document (this should use some appropriate K-12, HE, etc. based vocabulary). [0..*] N/A
subjectURI LinkURI A set of Link URIs denoting the set of subjects for the document as designated by the promulgating agency. [0..*] N/A
language Language The default language of the text used for the content in the learning standard document (use ISO 639-2 [ISO 639]). [0..1] N/A
version NormalizedString Defines the revision of the document (the nature of this versioning is an implementation issue). [0..1] N/A
adoptionStatus NormalizedString The publication status of the document. [0..1] N/A
statusStartDate Date The date the CFDocument status started. [0..1] N/A
statusEndDate Date The date the CFDocument status ended or changed to another status. [0..1] N/A
licenseURI LinkURI A link to a legal document controlling permission to do something with the standards document. [0..1] N/A
notes String Any text used to comment on the published CFDocument. [0..1] N/A
extensions CFDocumentExtension This is a new attribute added in Version 1.1. This enables extension of this class. The actual extension mechanism is dependent upon the binding technology being used. [0..1] N/A

CFPckgItem Class

This is the container for the CFItem data within the context of a CFPackage. This is the content that either describes a specific competency (learning objective) or describes a grouping of competencies within the taxonomy of a Competency Framework Document.

Attribute Type Description Multiplicity Privacy
identifier UUID An unambiguous, synthetic, globally unique identifier for the CFItem. This is the primary way in which the exchange identification is achieved. [1] N/A
fullStatement String The text of the statement. The textual content that either describes a specific competency or describes a less granular group of competencies within the taxonomy of the standards document. In Version 1.1 the data-type was changed from NormalizedString. [1] N/A
alternativeLabel NormalizedString An alternate 'term' for Competency. Some institutions may want to render their achievements as outcomes, or objectives, etc. Semantically they are the same as Competencies, but diversity of terms is used. This allows for the flexibility for the institution to define their own term for 'Competency' and not being locked into it. [0..1] N/A
CFItemType NormalizedString The textual label identifying the class of the statement as designated by the promulgating body. [0..1] N/A
uri AnyURI An unambiguous reference to the CFItem using a network-resolvable URI. [1] N/A
humanCodingScheme NormalizedString A human-referenceable code designated by the publisher to identify the item among learning standard items. [0..1] N/A
listEnumeration NormalizedString A set of one or more alphanumeric characters and/or symbol denoting the positioning of the statement being described in a sequential listing of statements. Use of the 'sequenceNumber' in the CFPckgAssociation class is preferred over the use of this property for sequencing. [0..1] N/A
abbreviatedStatement NormalizedString An abbreviated version of the Full Statement. [0..1] N/A
conceptKeywords NormalizedString The significant topicality of the CFItem using free-text keywords and phrases. [0..*] N/A
conceptKeywordsURI LinkURI The significant topicality of the CFItem using a controlled vocabulary maintained as linked data. [0..1] N/A
notes String Information about the derivation of a CFItem statement. [0..1] N/A
subject NormalizedString A new attribute added in Version 1.1. The topic or academic subject of the Item (this should use some appropriate K-12, HE, etc. based vocabulary). [0..*] N/A
subjectURI LinkURI A new attribute added in Version 1.1. A set of Link URIs denoting the set of subjects for the Item as designated by the promulgating agency. [0..*] N/A
language Language The default language of the text used for the content in the learning standard document (use ISO 639-2 [ISO 639]). [0..1] N/A
educationLevel NormalizedString The education level, grade level or primary instructional level at which a CFItem is intended [0..*] N/A
CFItemTypeURI LinkURI This is the linked data location for the CFItemType. [0..1] N/A
licenseURI LinkURI A link to a legal document controlling permission to do something with the CFItem. [0..1] N/A
statusStartDate Date The date the CFItem status started. [0..1] N/A
statusEndDate Date The date the CFItem status ended or changed to another status. [0..1] N/A
lastChangeDateTime DateTime A system generated timestamp of the most recent change to this record. This conforms to ISO 8601 dateTime definition [ISO 8601]. [1] N/A
extensions CFItemExtension This is a new attribute added in Version 1.1. This enables extension of this class. The actual extension mechanism is dependent upon the binding technology being used. [0..1] N/A

CFRubric Class

The container for the definition of a rubric which is addressed by the competency framework. This includes the set of associated CFRubricCriteria and CFRubricCriterionLevels.

Attribute Type Description Multiplicity Privacy
identifier UUID An unambiguous, synthetic, globally unique identifier for the CFRubric. This is the primary way in which the exchange identification is achieved. [1] N/A
uri AnyURI An unambiguous reference to the CFRubric using a network-resolvable URI. [1] N/A
title NormalizedString The title of the CFRubric. [0..1] N/A
description String A human readable description of the CFRubric. In Version 1.1 the data-type for this attribute has been changed from NormalizedString. [0..1] N/A
lastChangeDateTime DateTime A system generated timestamp of the most recent change to this record. This conforms to ISO 8601 dateTime definition [ISO 8601]. [1] N/A
CFRubricCriteria CFRubricCriterion The set of CFRubricCriterion that are required to complete the definition of the parent CFRubric. [0..*] N/A
extensions CFRubricExtension This is a new attribute added in Version 1.1. This enables extension of this class. The actual extension mechanism is dependent upon the binding technology being used. [0..1] N/A

CFRubricCriterion Class

The container for the definition of a rubric criterion which is addressed by the competency framework.

Attribute Type Description Multiplicity Privacy
identifier UUID An unambiguous, synthetic, globally unique identifier for the CFRubricCriterion. This is the primary way in which the exchange identification is achieved. [1] N/A
uri AnyURI An unambiguous reference to the CFRubricCriterion using a network-resolvable URI. [1] N/A
category NormalizedString A textual label for category by which CFRubricCriterion may be grouped. [0..1] N/A
description String A human readable description of the CFRubricCriterion. [0..1] N/A
CFItemURI LinkURI An unambiguous reference to the CFItem to which this rubric criterion is associated using a network-resolvable URI and link data. [0..1] N/A
weight Float A numeric weight assigned to this CFRubricCriterion, used for scored rubrics. [0..1] N/A
position Integer A numeric value representing this criterion's position in the criteria list for this CFRubric. [0..1] N/A
rubricId UUID The UUID for the parent CFRubric. This is included for forwards compatibility to enable access to the CFRubricCriterion without requiring embedding within the CFRubric itself. [0..1] N/A
lastChangeDateTime DateTime A system generated timestamp of the most recent change to this record. This conforms to ISO 8601 dateTime definition [ISO 8601]. [1] N/A
CFRubricCriterionLevels CFRubricCriterionLevel The set of CFRubricCriterionLevels that are required to complete the definition of the parent CFRubricCriterion. [0..*] N/A
extensions CFRubricCriterionExtension This is a new attribute added in Version 1.1. This enables extension of this class. The actual extension mechanism is dependent upon the binding technology being used. [0..1] N/A

CFRubricCriterionExtension Class

The container for the proprietary extensions to the CFRubricCriterionExtension class.

This class can be extended with additional properties.

CFRubricCriterionLevel Class

The container for the definition of a criterion level which is addressed by the competency framework.

Attribute Type Description Multiplicity Privacy
identifier UUID An unambiguous, synthetic, globally unique identifier for the CFRubricCriterionLevel. This is the primary way in which the exchange identification is achieved. [1] N/A
uri AnyURI An unambiguous reference to the CFRubricCriterionLevel using a network-resolvable URI. [1] N/A
description String A human readable description of the CFRubricCriterionLevel. [0..1] N/A
quality NormalizedString A qualitative description of this degree of achievement used for column headers or row labels in tabular rubrics. [0..1] N/A
score Float The points awarded for achieving this level. [0..1] N/A
feedback String Pre-defined feedback text to be relayed to the person or organization being evaluated. This may include guidance and suggestions for improvement or development. [0..1] N/A
position Integer A numeric value representing the level's position in the list of levels defined for the CFRubricCriterion. [0..1] N/A
rubricCriterionId UUID The UUID for the parent CFRubricCriterion. This is included for forwards compatibility to enable access to the CFRubricCriterionLevel without requiring embedding within the CFRubricCriterion itself. [0..1] N/A
lastChangeDateTime DateTime A system generated timestamp of the most recent change to this record. This conforms to ISO 8601 dateTime definition [ISO 8601]. [1] N/A
extensions CFRubricCriterionLevelExtension This is a new attribute added in Version 1.1. This enables extension of this class. The actual extension mechanism is dependent upon the binding technology being used. [0..*] N/A

CFRubricCriterionLevelExtension Class

The container for the proprietary extensions to the CFRubricCriterionLevel class.

This class can be extended with additional properties.

CFRubricExtension Class

The container for the proprietary extensions to the CFRubric class.

This class can be extended with additional properties.

CFSubject Class

The container for the definition of a topic or academic subject which is addressed by the competency framework.

Attribute Type Description Multiplicity Privacy
identifier UUID An unambiguous, synthetic, globally unique identifier for the CFSubject. This is the primary way in which the exchange identification is achieved. [1] N/A
uri AnyURI An unambiguous reference to the CFSubject using a network-resolvable URI. [1] N/A
title NormalizedString The title of the CFSubject. [1] N/A
hierarchyCode NormalizedString A human-referenceable code designated by the publisher to identify the item in the hierarchy of the subjects. [1] N/A
description String A human readable description of the CFSubject. [0..1] N/A
lastChangeDateTime DateTime A system generated timestamp of the most recent change to this record. This conforms to ISO 8601 dateTime definition [ISO 8601]. [1] N/A
extensions CFSubjectExtension This is a new attribute added in Version 1.1. This enables extension of this class. The actual extension mechanism is dependent upon the binding technology being used. [0..1] N/A

CFSubjectExtension Class

The container for the proprietary extensions to the CFSubject class.

This class can be extended with additional properties.

CFSubjectSet Class

The container for the set of CFSubjects supplied in the response payload. The relationship between the CFSubjects is determined by the 'hierarchyCode'. The first CFSubject is that which has been specified in the call. The other CFSubjects are the set of children as determined by their place in the 'hierarchyCode' of the CFSubject.

Attribute Type Description Multiplicity Privacy
CFSubjects CFSubject The set of CFSubjects. The relationship between the CFSubjects is determined by the 'hierarchyCode'. The first CFSubject is that which has been specified in the call. The other CFSubjects are the set of children as determined by their place in the 'hierarchyCode' of the CFSubject. [1..*] N/A

A container for the information that is used to achieve the link data reference.

Attribute Type Description Multiplicity Privacy
title NormalizedString A human readable title for the associated object. [1] N/A
identifier NormalizedString An unambiguous, synthetic, globally unique identifier (this may or may not be a UUID) for the associated object. [1] N/A
uri AnyURI A network-resolvable URI pointing to the authoritative reference for the associated object. [1] N/A
targetType TargetTypeExtEnum This is a new attribute added in Version 1.1. It is used to identify the type of the referenced association i.e. this MAY NOT be a CASE Framework. [0..1] N/A

A container for the information that is used to achieve the link data reference.

Attribute Type Description Multiplicity Privacy
title NormalizedString A human readable title for the associated object. [1] N/A
identifier UUID An unambiguous, synthetic, globally unique identifier (UUID) for the associated object. [1] N/A
uri AnyURI A network-resolvable URI pointing to the authoritative reference for the associated object. [1] N/A

imsx_CodeMinor Class

This is the container for the set of code minor status codes reported in the responses from the Service Provider.

Attribute Type Description Multiplicity Privacy
imsx_codeMinorField imsx_CodeMinorField Each reported code minor status code. [1..*] N/A

imsx_CodeMinorField Class

This is the container for a single code minor status code.

Attribute Type Description Multiplicity Privacy
imsx_codeMinorFieldName NormalizedString This should contain the identity of the system that has produced the code minor status code report. [1] N/A
imsx_codeMinorFieldValue imsx_CodeMinorValueEnum The code minor status code (this is a value from the corresponding enumerated vocabulary). [1] N/A

imsx_StatusInfo Class

This is the container for the status code and associated information returned within the HTTP messages received from the Service Provider. For the CASE service this object will only be returned to provide information about a failed request i.e. it will NOT be in the payload for a successful request. See Appendix B for further information on the interpretation of the information contained within this class

Attribute Type Description Multiplicity Privacy
imsx_codeMajor imsx_CodeMajorEnum The code major value (from the corresponding enumerated vocabulary). See Appendix B for further information on the interpretation of this set of codes. [1] N/A
imsx_severity imsx_SeverityEnum The severity value (from the corresponding enumerated vocabulary). See Appendix B for further information on the interpretation of this set of codes. [1] N/A
imsx_description String A human readable description supplied by the entity creating the status code information. [0..1] N/A
imsx_codeMinor imsx_CodeMinor The set of reported code minor status codes. See Appendix B for further information on the interpretation of this set of codes. [0..1] N/A

Derived Class Descriptions

EnumExtString Class

The data-type that enables an enumerated vocabulary to be extended.

Attribute Type Description Multiplicity Privacy
pattern String The regular expression to constrain the structure of the string that MUST be used when creating a new, proprietary, vocabulary term. The term must start with the substring 'ext:'. [1] N/A

URL Class

The data-type for establishing a Uniform Resource Locator (URL) as defined by W3C.

UUID Class

The data-type for establishing a Globally Unique Identifier (GUID). The form of the GUID is a Universally Unique Identifier (UUID) of 16 hexadecimal characters (lower case) in the format 8-4-4-4-12. All permitted versions (1-5) and variants (1-2) are supported.

Attribute Type Description Multiplicity Privacy
pattern String Defines the regular expression that imposes the form of UUID. [1] N/A

Union Class Descriptions

CFAssociationTypeExtEnum Class

The data-type for the 'associationType' attribute for the CFPckgAssociation. This is an extensible enumerated vocabulary. Extending the vocabulary makes use of a naming convention. Changed in CASE 1.1.

Attribute Type Description Multiplicity Privacy
isChildOf String To represent the structural relationship in a taxonomy between parent and child. The source/origin is a child of the target/destination. [1] N/A
isPeerOf String The source/origin is a peer of the target/destination. [1] N/A
isPartOf String The origin of the association is included either physically or logically in the item at the destination of the association. This classifies an item as being logically or semantically contained as a subset of the destination. [1] N/A
exactMatchOf String Equivalent to. Used to connect derived CFItem to CFItem in original source CFDocument. [1] N/A
precedes String The origin of the association comes before the destination of the association in time or order. [1] N/A
isRelatedTo String The origin of the association is related to the destination in some way that is not better described by another association type. [1] N/A
replacedBy String The origin of the association has been supplanted by, displaced by, or superseded by the destination of the association. [1] N/A
exemplar String The target/destination node is an example of best practice for the definition of the source/origin. [1] N/A
hasSkillLevel String The destination of this association is understood to define a given skill level i.e. Reading Lexile 100, Depth Knowledge 2, or Cognitive Level (Blooms Taxonomy) etc. [1] N/A
isTranslationOf String A new token added in version 1.1. The target/destination node is a translation of the source node. [1] N/A
pattern String The regular expression to constrain the structure of the string that MUST be used when creating a new, proprietary, vocabulary term. The term must start with the substring 'ext:'. [1] N/A

TargetTypeExtEnum Class

The data-type for the 'targetType' attribute for a generic Link URI. This is an extensible enumerated vocabulary. Extending the vocabulary makes use of a naming convention.

Attribute Type Description Multiplicity Privacy
CASE String Denotes that the association link node points to a CASE-based framework. [1] N/A
pattern String The regular expression to constrain the structure of the string that MUST be used when creating a new, proprietary, vocabulary term. The term must start with the substring 'ext:'. [1] N/A

Enumerated Vocabulary Descriptions

CFAssociationTypeEnum Enumeration

The enumerated set of values for the type of association between CFItems or between CFDocuments. Changed in CASE 1.1.

Attribute Type Description Multiplicity Privacy
isChildOf String To represent the structural relationship in a taxonomy between parent and child. The source/origin is a child of the target/destination. [1] N/A
isPeerOf String The source/origin is a peer of the target/destination. [1] N/A
isPartOf String The origin of the association is included either physically or logically in the item at the destination of the association. This classifies an item as being logically or semantically contained as a subset of the destination. [1] N/A
exactMatchOf String Equivalent to. Used to connect derived CFItem to CFItem in original source CFDocument. [1] N/A
precedes String The origin of the association comes before the destination of the association in time or order. [1] N/A
isRelatedTo String The origin of the association is related to the destination in some way that is not better described by another association type. [1] N/A
replacedBy String The origin of the association has been supplanted by, displaced by, or superseded by the destination of the association. [1] N/A
exemplar String The target/destination node is an example of best practice for the definition of the source/origin. [1] N/A
hasSkillLevel String The destination of this association is understood to define a given skill level i.e. Reading Lexile 100, Depth Knowledge 2, or Cognitive Level (Blooms Taxonomy) etc. [1] N/A
isTranslationOf String A new token added in version 1.1. The target/destination node is a translation of the source node. [1] N/A

CFAssociationTypeExtEnum Enumeration

The data-type for the 'associationType' attribute for the CFPckgAssociation. This is an extensible enumerated vocabulary. Extending the vocabulary makes use of a naming convention. Changed in CASE 1.1.

Attribute Type Description Multiplicity Privacy
isChildOf String To represent the structural relationship in a taxonomy between parent and child. The source/origin is a child of the target/destination. [1] N/A
isPeerOf String The source/origin is a peer of the target/destination. [1] N/A
isPartOf String The origin of the association is included either physically or logically in the item at the destination of the association. This classifies an item as being logically or semantically contained as a subset of the destination. [1] N/A
exactMatchOf String Equivalent to. Used to connect derived CFItem to CFItem in original source CFDocument. [1] N/A
precedes String The origin of the association comes before the destination of the association in time or order. [1] N/A
isRelatedTo String The origin of the association is related to the destination in some way that is not better described by another association type. [1] N/A
replacedBy String The origin of the association has been supplanted by, displaced by, or superseded by the destination of the association. [1] N/A
exemplar String The target/destination node is an example of best practice for the definition of the source/origin. [1] N/A
hasSkillLevel String The destination of this association is understood to define a given skill level i.e. Reading Lexile 100, Depth Knowledge 2, or Cognitive Level (Blooms Taxonomy) etc. [1] N/A
isTranslationOf String A new token added in version 1.1. The target/destination node is a translation of the source node. [1] N/A
pattern String The regular expression to constrain the structure of the string that MUST be used when creating a new, proprietary, vocabulary term. The term must start with the substring 'ext:'. [1] N/A

CaseVersionEnum Enumeration

The set of values permitted to denote which version of the CASE specification is used to validate the content.

Attribute Type Description Multiplicity Privacy
1.1 String Denotes that the CFDocument is a CASE 1.1 definition. [1] N/A

TargetTypeEnum Enumeration

The set of permitted values for the type of target.

Attribute Type Description Multiplicity Privacy
CASE String Denotes that the association link node points to a CASE-based framework. [1] N/A

TargetTypeExtEnum Enumeration

The data-type for the 'targetType' attribute for a generic Link URI. This is an extensible enumerated vocabulary. Extending the vocabulary makes use of a naming convention.

Attribute Type Description Multiplicity Privacy
CASE String Denotes that the association link node points to a CASE-based framework. [1] N/A
pattern String The regular expression to constrain the structure of the string that MUST be used when creating a new, proprietary, vocabulary term. The term must start with the substring 'ext:'. [1] N/A

imsx_CodeMajorEnum Enumeration

This is the set of primary status report values i.e. the major code assigned to the status block. This is used in conjunction with the 'Severity' structure in the status object. See Appendix B for further information on the interpretation of this set of codes.

Attribute Type Description Multiplicity Privacy
success String Denotes that the request has been successfully completed. If the associated 'severity' value is 'warning' then the request has been partially successful i.e. best effort by the service provider. Other parts of the status information may provide more insight into a partial success response. [1] N/A
processing String Denotes that the request is being processed at the destination or there has been a local transmission failure. This value is used in asynchronous services. [1] N/A
failure String Denotes that the transaction request has failed. The detailed reason will be reported in the accompanying 'codeMinor' fields. [1] N/A
unsupported String Denotes that the service provider does not support the requested operation. This is the required default response for an unsupported operation by an implementation. [1] N/A

imsx_CodeMinorValueEnum Enumeration

This is the set of codeMinor status codes that are used to provide further insight into the completion status of the end-to-end transaction i.e. this should be used to provide more information than would be supplied be a HTTP code. See Appendix B for further information on the interpretation of this set of codes.

Attribute Type Description Multiplicity Privacy
fullsuccess String The request has been fully and successfully implemented by the Service Provider. For a REST binding this will have an HTTP code of '200' for a successful 'GET' request; '201' for a successful 'PUT' request; '204' for a successful 'DELETE' request. [1] N/A
invalid_sort_field String An invalid sort field was supplied and so the sorting was not possible. This would be accompanied by the 'codeMajor/severity' values of 'success/warning' and for a REST binding a HTTP code of '200'. [1] N/A
invalid_selection_field String An invalid selection field was supplied and data filtering on the selection criteria was not possible. This would be accompanied by the 'codeMajor/severity' values of 'failure/error' and for a REST binding a HTTP code of '400'. [1] N/A
forbidden String This is used to indicate that the server can be reached and process the request but refuses to take any further action. This would be accompanied by the 'codeMajor/severity' values of 'failure/error' and for a REST binding a HTTP code of '403'. [1] N/A
unauthorised_request String The request was not correctly authorised. This would be accompanied by the 'codeMajor/severity' values of 'failure/error' and for a REST binding a HTTP code of '401'. [1] N/A
internal_server_error String This should be used only if there is catastrophic error and there is not a more appropriate code. This would be accompanied by the 'codeMajor/severity' values of 'failure/error' and for a REST binding a HTTP code of '500'. [1] N/A
unknownobject String The supplied identifier is unknown in the Service Provider and so the object could not be changed. This would be accompanied by the 'codeMajor/severity' values of 'failure/error' and for a REST binding a HTTP code of '404'. [1] N/A
server_busy String The server is receiving too many requests. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error' and for a REST binding a HTTP code of '429'. [1] N/A
invalid_uuid String The server has received an invalid UUID. This would be accompanied by the 'codeMajor/severity' values of 'failure/error' and for a REST binding a HTTP code of '404'. [1] N/A

imsx_SeverityEnum Enumeration

This is the context for the status report values. This is used in conjunction with the 'CodeMajor' structure in the status object. See Appendix B for further information on the interpretation of this set of codes.

Attribute Type Description Multiplicity Privacy
status String The request has been completed and a response was received from the Service Provider. [1] N/A
warning String The request has only been partially completed. For an asynchronous service a further response should be expected. [1] N/A
error String A catastrophic error has occurred in processing the request and so the request was not completed (the Service Provider may not even have received the request). [1] N/A

OrderByEnum Enumeration

The permitted set of values for the 'orderBy' query parameter.

Attribute Type Description Multiplicity Privacy
asc String No Description [0..1] N/A
desc String No Description [0..1] N/A

Extending and Profiling the Service

This Section is NOT NORMATIVE.

Extending the Service

Profiling the Service

This Service can be profiled. In general, Profiling is used to:

  • Refine which Interfaces are used and which operations are supported for each Interface;
  • Refine the data models by increasing the constraints on the base definitions.

Valid Profiles must be restrictive i.e. optional features can be removed or constraints increased but new features must not be added. A Profile of this service is made by annotating the UML supplied with the documentation for the specification.

It is strongly recommended that a profile of this specification is undertaken either by, or with the close support, of 1EdTech. However, no matter who is responsible for creating the profile artifacts (documents, OpenAPI files, XSDs, etc.), it is strongly recommended that the 1EdTech specification tools are used. This will ensure that the artifacts are consistent with the base specifications and that useful support documentation is automatically produced e.g. creation of a document that summarises the differences between the base specification and the profile. Organizations wishing to produce a profile of this specification should contact the 1EdTech VP of Operations at: operations@1edtech.org.

References

The set of cited documents, normative and informative, that are used to support the technical details in this document;

[CASE-BIND-11]
1EdTech Competencies and Academic Standards Exchange (CASE) 1.1 REST/JSON Binding Final Release 1.0 Document, P.Williams, S.Haught and C.Smythe, 1EdTech Consortium Inc., September 2024, 1EdTech Consortium Inc., https://standards.1edtech.org/case/rest/case-rest-v1p1
[CASE-CERT-11]
1EdTech Competencies and Academic Standards Exchange (CASE) 1.1 Conformance and Certification Final Release 1.0 Document, P.Williams, S.Haught and C.Smythe, 1EdTech Consortium Inc., September 2024, 1EdTech Consortium Inc., https://standards.1edtech.org/case/cert/case-cert-v1p1.
[I-BAT, 06]
1EdTech Binding Auto-generation Toolkit (I-BAT), C.Smythe, 1EdTech Consortium Inc., July 2006, 1EdTech Consortium Inc..
[CASE-IMPL-11]
1EdTech Competencies and Academic Standards Exchange (CASE) 1.1 Best Practices and Implementation Guide Final Release 1.0 Document, P.Williams, S.Haught and C.Smythe, 1EdTech Consortium Inc., September 2024, 1EdTech Consortium Inc., https://standards.1edtech.org/case/impl/case-impl-v1p1.
[ISO 8601]
ISO8601:2004 Data elements and interchange formats - Information interchange - Representation of dates and times, ISO, International Standards Organization (ISO), 2000, International Standards Organization (ISO).
[RFC 3066]
Tags for the Identification of Languages, H.Alvestrand, IETF (RFC 3066), January 2001, IETF (RFC 3066), https://tools.ietf.org/html/rfc3006.txt.
[VDEX, 04]
1EdTech Vocabulary Definition Exchange (VDEX) 1.0, A.Cooper, 1EdTech Consortium Inc., February 2004, 1EdTech Consortium Inc., https://www.imsglobal.org/vdex/vdexv1p0/imsvdex_infov1p0.html.
[RFC 2119]
Key words for use in RFCs to Indicate Requirement Levels, S.Bradner, IETF (RFC 2119), March 1997, IETF (RFC 2119), https://tools.ietf.org/html/rfc2119.txt.
[Security, 21]
1EdTech Security Framework 1.1 Final Release 1.0, C.Smythe, N.Mills, C.Vervoort and M.Mckell, 1EdTech Consortium Inc., July 2021, 1EdTech Consortium Inc., https://www.imsglobal.org/spec/security/v1p1/.
[BCP 47]
Matching of Language Tags (RFC 4647) and Tags for Identifying Languages (RFC 5646), A.Phillips and M.Davis, Internet Engineering Task Force, September 2009, Internet Engineering Task Force, https://www.rfc-editor.org/info/bcp47.
[Privacy, 24]
1EdTech Privacy Framework 1.0 Candidate Final 1.0, C.Smythe and J.McGhee, 1EdTech Consortium Inc., September 2024, 1EdTech Consortium Inc., https://www.imsglobal.org/spec/privacy/v1p1/.

IP Disclosures

The following participating organizations have made explicit license commitments to this specification:

Organization Name Date election made Necessary claims Type
Common Good Learning Tools 15th January 2025 No RF RAND (Required & Optional Elements)
Infinite Campus 23rd January 2025 No RF RAND (Required & Optional Elements)
UNICON INC. 14th January 2025 No RF RAND (Required & Optional Elements)

List of Contributors

The following individuals contributed to the development of this document:

Name Affiliation Role
Colin Smythe 1EdTech Consortium (USA)
Bob Grogan Elumen (USA)
Mark Leuba 1EdTech Consortium (USA)
Joel Hernandez Elumen (USA)
Chris Houston 1EdTech Consortium (USA)
Jared Booth HMH (USA)
Joseph Chapman D2L (Canada)
Jeroen Hamers Kennisnet (Netherlands)
Jamey Hynds Katy ISD (USA)
Bob Schloss IBM (USA)
Raymond Baranoski Safari Montage (USA)
Davant Stewart Houston ISD (USA)
Diana Bidulescu Houston ISD (USA)
Clyde Boyer Trinity Education Group (USA)
Deb Everhart Cengage (USA)
Christine Case Trinity Education Group (USA)
Brian Kubota Pearson (USA)
Jeramy Gatza Florida Virtual School (USA)
Andy Kuritizky Edmentum (USA)
Lisa Mattson 1EdTech Consortium (USA)
Hugh Norwood Trinity Education Group (USA)
Henk Nijstad Kennisnet (Netherlands)
David Mayes Gwinnett County Schools (USA)
Robert Pangborn IBM (USA)
Steve Polyak ACT (USA)
Brandon Dorman ACT (USA)
McCall Smith Instructure (USA)
Stewart Sutton Dublin Core (USA)
Marcia van Oplo Kennisnet (Netherlands)
Jennifer Reichlin Pearson (USA)
Michele Wagner Baltimore County Public Schools (USA)
Jennifer Whiting District School Board of Pasco County (USA)
Avi Yashchin IBM (USA)
Pepper Williams Common Good Learning Tools (USA)
Susan Haught 1EdTech Consortium (USA)
Viktor Haag Desire2Learn (Canada)
Angela Ingram GaDOE (USA)
Heather Carle Territorium (USA)
Brian Wales SAFARI Montage (USA)
Luke Zenger Infinite Campus (USA)
Scott Murray PowerSchool (USA)
Ben Herndon PowerSchool (USA)
Christian Clark Southern New Hampshire University (USA)
Catherine London Southern New Hampshire University (USA)
Carrie Vail PowerSchool (USA)
Kristen Morton PowerSchool (USA)
Darcy Wither Desire2Learn (Canada)
Diego del Blanco Unicon, Inc. (USA)
Davonne Eldridge North Dakota Information Technology Deparment (USA)
Emma Lee University of Montana (USA)
Joshua Heyman Southern New Hampshire Universtiy (USA)
Joe Green Territoruim (USA)
Christophe Konstantinos TAO Testing (USA)
Keith Osburn Georgia Department of Education (USA)
Lori Griffin SAFARI Montage (USA)
Lisa Keeter Kentucky Department of Education (USA
Monica Dalvi Amplify (USA)
Michael Moore Desire2Learn (Canada)
Paul Katula Maryland Department of Education (USA)
Radian Baskoro PowerSchool (USA)
Shana Rafalaski SAFARI Montage (USA)
Steve Buettner Edina Public Schools (USA)
Tracy Korsmo North Dakota Department of Public Instruction (USA)
Wendy Stephens South Carolina Department of Education (USA)
Taryn Sullivan Google (USA)

Changelog

Changelog entries are not listed yet.

Revision History

VersionDoc VersionDateComments
Final Release2017-07-07The original Final Release. This declares the standard ready for public adoption.
Final Release2025-01-24This is the second release of this specification. A number of data model changes have been made. There are no changes to the service model i.e. the set of endpoints.