AssetBean

Name AssetBean
Usage HandcarLearningService
getActivityAssets getAssetsInBank getAssetInBankById getAssetById getAssetsByIds createAssetInBank updateAssetInBank deleteAssetInBank
AssetBasedActivityBean
Type Complex

Description

An asset can be any tangible piece of data but for our purposes now it is an asset that can be consumed by a student to become
proficient in an objective.

It might be a movie, or simulation or web page, or image or song.

OSID reference: Asset

Structure Definition

ShortName Name Type Description Required? Read only? Implementation Notes
id Id String Unique identifier for the object within the service.

You DO NOT HAVE TO SET THE ID -- the service constructs it for you when you create an object.

However... You MAY set it to an "alias" by which you which to later access this object. The alias id MUST be unique across
all aliases for that kind of object.

The alias id is composed of 3 parts... namespace : identifier @ authority.

If a namespace is supplied it must match the namespace of the type of object being created, if not supplied the namespace
defaults to the namespace of the type of the object being created.

If the authority is supplied it must be the "USER-ALIAS" if not supplied then this authority will be used as the default.


Even if you do supply an alias Id when creating the object then the service still constructs and assigns an new unique
internal id for the object BUT it also adds the ID you supplied as an aliasId.

Note: if you do not assign an alias when you create the object you can assign one using the id service, addAliasId method.



The id is expected to be unique and should be treated as if the id is opaque. Opaque means that no consumer should
interrogate the structure of the string but should just manipulate it as a whole.

Having said that, there two things you should know about ids: (1) They should follow this structure:
namespace:identifier@authority . (2) All ids passed through the RESTful interface have been encoded so they do not mess up
URLS when fetched when used as parameters to fetch a particular object. They are decoded back when passed back in. This is
applied not just to this ID field but ALL ids passed in as parameters and fetched back as fields on beans.

These two issues should NOT make a difference to any processing, it just explains the structure you would find if you
examined the contents of an id.

OSID reference: Id *
Required Read only on updates  
genusTypeId Genus Type Id String The genus type of the object.

This is a code that indicates the detailed type of an object, it represents a further breakdown of the object into
sub-categories.

For example in MC3 Learning Objectives have two main types: (1) TOPIC (2) OUTCOME

The name and description of the type can be found by calling the type service.

OSID reference: OsidObject
Required    
displayName Display Name DisplayTextBean Get the name of the object to be displayed on the screen to a user.

All objects MUST HAVE A DISPLAY NAME.

OSID reference: OsidObject
Required    
description Description DisplayTextBean The description of the object

The consumer might have to interrogate the format type to properly display the the description on the screen.

In particular some of the objectives have LATEX markup in them that needs to be translated to display appropriately.

OSID reference: OsidObject
     
providerId Provider Id String The id of the provider of this asset.

This is a resource id that points to the person or organization that provides the asset

OSID reference: Asset
     
brandingIds Branding Ids StringList The ids of other assets that provide branding for this asset.

Gets a branding, such as an image or logo, expressed using the Asset interface.

OSID reference: Asset
    not implemented always returns empty list
license License DisplayTextBean The license to this asset.

Gets the terms of usage. An empty license means the terms are unknown.

OSID reference: Asset
    not implemented always returns null
title Title DisplayTextBean The title of this asset

Often is the same as the display name but may be different and hold the official or formal title of the asset underwhich
it's copyright is registered.

OSID reference: Asset
     
publicDomain Public Domain boolean Indicates if this asset is in the public domain

OSID reference: Asset
     
copyright Copyright DisplayTextBean The copyright statement, if any, associated with this object

OSID reference: Asset
    not implemented
copyrightRegistration Copyright Registration String The copyright registration, if any, associated with this object

OSID reference: Asset
    not implemented always returns null
canDistributeVerbatim Can Distribute Verbatim boolean Indicates if this asset can be distributed verbatim

By "verbatim" we mean that it can be distributed without any changes at all to it's content.

OSID reference: Asset
     
canDistributeAlterations Can Distribute Alterations boolean Indicates if this asset can be distributed with alterations

By "alternations" we mean that it can be distributed with changes to it's content.

OSID reference: Asset
     
canDistributeCompositions Can Distribute Compositions boolean Indicates if this asset can be distributed as part of a composition

By "composition" we mean that it can be distributed when it's content is combined in some way with other assets

OSID reference: Asset
     
sourceId Source Id String The source of this asset

The "source" is the original owner of the asset which may or may not be the creator of the asset.

This source point to a Resource which can be a person or organization.

OSID reference: Asset
     
providerLinkIds Provider Link Ids StringList The ids of provider links to this asset

A "provider" is the person or organization responsible for providing the content of this asset, for a book it might be the
publisher.

These providers point to a Resource which can be a person or organization.

OSID reference: Asset
    not implemented always returns emptylist
createdDate Created Date Date The date the content of this asset was actually created

Note: this is not a date/time stamp indicating when this asset object was created in the repository but the date of the
content was originally created

OSID reference: Asset
     
published Published boolean Indicates if this asset has been published or not.

Publication is a "legal" term indicating if this asset has been released or made available to the public.

OSID reference: Asset
     
publishedDate Published Date Date The date this asset was published

Publication is a "legal" term indicating if this asset has been released or made available to the public.

OSID reference: Asset
     
principalCreditString Principal Credit String DisplayTextBean String that describes who should get credit for the creation of this asset

Typically it is the authors and creators of the content but may be organizations involved in the production of the work

By "principal" we mean the primary authors or creators not necessarily everyone who contributed to it's creation.

OSID reference: Asset
     
assetContents Asset Contents AssetContentBeanList The contents of this asset

The contents are different representations of this asset. Often the different contents indicate the resolution or format of
the asset, for example a thumbnail and a jpeg representation of a picture would be two different representations of the
asset and each would then be different contents.

OSID reference: Asset
     
compositionId Composition Id String The id of the composition object

A composition is some sort of combination of an asset with another asset. This id points to an OSID composition object
which describes how this asset was composed and what other assets were involved in this asset's creation.

OSID reference: Asset
     
current Current boolean Indicates if the object might be stale or if it was freshly pulled from the underlying data store.

If the object was fetched from a cache then this value should be false.

OSID reference: Identifiable
Required Read only  
sortKey Sort Key String Sort key that can be used to sort this object when in a list.

This value is NOT persisted but is calculated based on the query that was used to fetch the objects.

For example the larger the value the more relevant the keyword search applies to this object.
     
extensionRecord Extension Record ExtensionRecordBean Extension Record for this object if the method requested that the extension record be
included.
     
auditTrail Audit Trail AuditTrailBean Audit trail information about when this object was created/updated      

JSON Structure

{
     "type" : "Asset",
     "id" : "id",
     "genusTypeId" : "id",
     "displayName" :  {
          "languageTypeId" : "id",
          "scriptTypeId" : "id",
          "formatTypeId" : "id",
          "text" : "XXXX"
          },
     "description" :  {
          "languageTypeId" : "id",
          "scriptTypeId" : "id",
          "formatTypeId" : "id",
          "text" : "XXXX"
          },
     "providerId" : "id",
     "brandingIds" : ["id", ...],
     "license" :  {
          "languageTypeId" : "id",
          "scriptTypeId" : "id",
          "formatTypeId" : "id",
          "text" : "XXXX"
          },
     "title" :  {
          "languageTypeId" : "id",
          "scriptTypeId" : "id",
          "formatTypeId" : "id",
          "text" : "XXXX"
          },
     "publicDomain" : true,
     "copyright" :  {
          "languageTypeId" : "id",
          "scriptTypeId" : "id",
          "formatTypeId" : "id",
          "text" : "XXXX"
          },
     "copyrightRegistration" : "XXXX",
     "canDistributeVerbatim" : true,
     "canDistributeAlterations" : true,
     "canDistributeCompositions" : true,
     "sourceId" : "id",
     "providerLinkIds" : ["id", ...],
     "createdDate" : "YYYY-MM-DD",
     "published" : true,
     "publishedDate" : "YYYY-MM-DD",
     "principalCreditString" :  {
          "languageTypeId" : "id",
          "scriptTypeId" : "id",
          "formatTypeId" : "id",
          "text" : "XXXX"
          },
     "assetContents" : [ {
          "id" : "id",
          "genusTypeId" : "id",
          "displayName" :  {
               "languageTypeId" : "id",
               "scriptTypeId" : "id",
               "formatTypeId" : "id",
               "text" : "XXXX"
               },
          "description" :  {
               "languageTypeId" : "id",
               "scriptTypeId" : "id",
               "formatTypeId" : "id",
               "text" : "XXXX"
               },
          "assetId" : "id",
          "accessiblityTypeIds" : ["id", ...],
          "dataLength" : 999,
          "url" : "XXXX",
          "current" : true,
          "sortKey" : "XXXX",
          "extensionRecord" :  {
               "recordTypeIds" : ["id", ...],
               "recordProperties" : [ {
                    "displayName" :  {
                         "languageTypeId" : "id",
                         "scriptTypeId" : "id",
                         "formatTypeId" : "id",
                         "text" : "XXXX"
                         },
                    "description" :  {
                         "languageTypeId" : "id",
                         "scriptTypeId" : "id",
                         "formatTypeId" : "id",
                         "text" : "XXXX"
                         },
                    "recordTypeId" : "id",
                    "value" : "XXXX",
                    "displayLabel" :  {
                         "languageTypeId" : "id",
                         "scriptTypeId" : "id",
                         "formatTypeId" : "id",
                         "text" : "XXXX"
                         },
                    "associatedId" : "id"
                    },
                    ...],
               "associatedId" : "id"
               },
          "auditTrail" :  {
               "addedBy" : "XXXX",
               "addedOn" : "YYYY-MM-DDThh:mm:ss",
               "updatedBy" : "XXXX",
               "updatedOn" : "YYYY-MM-DDThh:mm:ss",
               "comment" : "XXXX"
               }
          },
          ...],
     "compositionId" : "id",
     "current" : true,
     "sortKey" : "XXXX",
     "extensionRecord" :  {
          "recordTypeIds" : ["id", ...],
          "recordProperties" : [ {
               "displayName" :  {
                    "languageTypeId" : "id",
                    "scriptTypeId" : "id",
                    "formatTypeId" : "id",
                    "text" : "XXXX"
                    },
               "description" :  {
                    "languageTypeId" : "id",
                    "scriptTypeId" : "id",
                    "formatTypeId" : "id",
                    "text" : "XXXX"
                    },
               "recordTypeId" : "id",
               "value" : "XXXX",
               "displayLabel" :  {
                    "languageTypeId" : "id",
                    "scriptTypeId" : "id",
                    "formatTypeId" : "id",
                    "text" : "XXXX"
                    },
               "associatedId" : "id"
               },
               ...],
          "associatedId" : "id"
          },
     "auditTrail" :  {
          "addedBy" : "XXXX",
          "addedOn" : "YYYY-MM-DDThh:mm:ss",
          "updatedBy" : "XXXX",
          "updatedOn" : "YYYY-MM-DDThh:mm:ss",
          "comment" : "XXXX"
          }
}