Skip to end of metadata
Go to start of metadata
Help Improve Content
Like the Kuali Student (KS) software, the supporting documentation belongs to the Community. If you see errors or missing information in the KS documentation, or if you have a suggestion for improving it, we welcome your input or help. You have a few options:

The service contracts used in Kuali Student define the integration points between modules and the core infrastructure and between the modules themselves. Unlike systems where there are separate internal (or private) interfaces and external (or public) interfaces, the Kuali Student System uses services for both, allowing various modules or service implementations to be substituted. Although there is no part of the Kuali Student System that is required, the Service Contracts must be used in the prescribed ways. Therefore, the design and stability of the service contracts is critical.

There are two classifications of service contracts in Kuali Student:

  • Business Services: Business services contain the capabilities required to accomplish processes within a specific business domain.
  • Entity Services: Entity services are business agnostic in that contain capabilities that are requires across multiple domains within the enterprise.

How to Use This Index

This page provides an overview of the service contracts for Kuali Student including the most current version and links to the detailed service contract. In the table below, click on Javadoc to view the contract in Javadoc format, or click on Description to view the contract in a more human-readable form on the Wiki.

Service

Documentation

Type

Version

Description

Academic Time Period (ATP) Service

Description or Javadoc

Class Core

2.0

The Academic Time Period Service manages Academic Time Periods (ATPs) and their associated Milestones. The service provides a flexible but structured way to define the various time frames that are used throughout the definition, offering and scheduling of Learning Units. This is a catalog service with basic operations.

Canonical Learning Unit (CLU) Service

Description or Javadoc

Class I

2.0

The Canonical Learning Unit Service supports the management of Canonical Learning Units (CLUs). This includes the development and approval of new Learning Units and substantive changes to existing Learning Units. A Learning Unit (LU) is any learning-related activity that needs to be tracked by the institution or the learner. Examples of learning units include the traditional curriculum of courses and degrees, professional and extension programs, and non-academic activities such as leadership development and service learning. All credit and non-credit learning activities, whether traditional or non-traditional, are learning units.

Comment Service

Description or Javadoc

Class Core

2.0

The Comment Service allows for the creation and management of user comments and tags associated with other objects across the system. There is no expectation that the objects know anything about the tags or comments; therefore objects can be deleted from the system even though tags or comments referencing those object may exist.

Course Service

Description or Javadoc

Class II

2.0

A course is a specified area of knowledge contained and taught independently from other areas of knowledge that may or may not be related. Courses typically have specific learning objectives, defined student learning outcomes and assessments. They can be recognized for academic credit or not. Courses can be delivered in various instructional formats such as lecture, lab, discussion, seminar, colloquium, etc. A course would utilize at least one instructional format, but often will use more than one.

Dictionary Service 1.0

Description or Javadoc

Class I

1.0

The Dictionary Service subinterface provides information as to the data configuration of the service. This information is limited to things such as cardinality, field length, allowed values, etc. and does not include direct information as to cross-field validation. All services referring to dynamic attributes must extend this interface.

Dictionary Service 1.1

Description or Javadoc

Class I

1.1

Added support for marking the "other" field when a cross-field constraint failed and support for warnings.

Document Service

Description or Javadoc

Class Core

2.0

The Document Service supports the management of document objects. Relations between stored documents and external entities are managed through the respective entity service.

Enumeration Mgmt Service

Description or Javadoc

Class Core

2.0

Enumeration Management service is only accessed by authorized callers configuring some piece of the system. The code identifies the value within an enumeration.

Learning Objective Service

Description or Javadoc

Class I

2.0

The Learning Objective Service supports the management of formal learning objectives. This is primarily a catalog service with basic operations.

Learning Result Catalog Service

Description or Javadoc

Class I

2.0

The Learning Result Catalog service supports the management of learning results. It provides the basis for defining the result types and values that can be associated with the catalog LU (CLU), the offered LU (LUI), and the specific student (LPR).

Message Service

Description or Javadoc

Class Core

2.0

Manages locale specific messages for internationalization. A message is unique in the context of locale and group. The locale parameter allows for operations pertaining to messages whose locale is different from that of ContextInfo locale information.

Organization Service

Description or Javadoc

Class Core

2.0

This service manages organizational units that have a relationship to the institution. The organizations may be internal and include officially recognized organizations (e.g. Departments, Faculties, Schools) or unofficial organizations (e.g. clubs or student groups), or they may be external organizations (e.g. companies, other institutions, government, associations). This service also manages the relationships between people and organizations.

Program Service

Description or Javadoc

Class II

2.0

A program is a prescribed grouping of learning units such as courses, activities, competencies, learning objectives, and/or institutional/core requirements that lead to a recognized body of knowledge. Programs may also include requirements as to the order, timing, performance, and results (e.g. GPA) of the grouping of learning units that make up a program. The end result of a completed program may be an acknowledged level of accomplishment (e.g. a major, minor or concentration) or a credential (e.g. certificate, degree, etc.)

Proposal Service

Description or Javadoc

Class I

2.0

The Proposal Service supports the management of Proposals. The proposal is general and can be associated with any arbitrary entity in the system, for example, a learning unit. Proposals have types that capture the activity being proposed, for example, Creating a new course or Updating the prefix for a set of courses or Launching a new student club.

Search Service

Description or Javadoc

Class I

2.0

The Search Service supports the creation of typed searches that query the underlying data store and return results in tabular form. Conceptually it can be viewed as a wrapper for predefined (typed) SQL statements. It has two main purposes:

  1. The definitions of searches to meet specific purposes without modifying the contract.
  2. The definition of searches that return data other than objects and their attributes, for example counts or sums.

State Service

Description or Javadoc

Class Core

2.0

State service is used for managing the following: valid States of an object, constraints associated with a state change and propagation triggered by a State change. It also describes a way to manage constraint and propagation of States.

Statement Service

Description or Javadoc

Class Core

1.0

The Statement Service subinterface supports the management of statements, requirement components, and their attachment to objects.

Type Service

Description or Javadoc

Class Core

2.0

Type service is Kuali Student's generic way of reading type information. Type service exposes information about a specific type and also the relationship between types.

Version Management Service

Description or Javadoc

Class Core

2.0

The Version Management Service inspects versions of an object. The Version Management Service is used in conjunction with another service to examine the version history of an object. This service provides access to the identifiers to retrieve older or future versions of objects from their respective services.

The Version Management Service is only useful when used in conjunction with another service that supports versioning.

  • No labels