Asset
An Asset represents some digital
content. Example assets might be a text document, an
image, or a movie. The content data, and metadata
related directly to the content format and quality, is
accessed through AssetContent. Assets,
like all OsidObjects, include a type a
record to qualify the Asset and include
additional data. The division between the
Asset Type and
AssetContent is to separate data
describing the asset from data describing the format
of the contents, allowing a consumer to select among
multiple formats, sizes or levels of fidelity.
An example is a photograph of the Bay Bridge. The
content may deliver a JPEG in multiple resolutions
where the AssetContent may also desribe
size or compression factor for each one. The content
may also include an uncompressed TIFF version. The
Asset Type may be
"photograph" indicating that the photo itself is the
asset managed in this repository.
Since an Asset may have multiple
AssetContent structures, the decision of
how many things to stuff inside a single asset comes
down to if the content is actually a different format,
or size, or quality, falling under the same creator,
copyright, publisher and distribution rights as the
original. This may, in some cases, provide a means to
implement some accessibility, it doesn't handle the
case where, to meet an accessibility requirement, one
asset needs to be substituted for another. The
Repository OSID manages this aspect outside the scope
of the core Asset definition.
Assets map to AssetSubjects.
AssetSubjects are
OsidObjects that capture a subject
matter. In the above example, an
AssetSubject may be defined for the Bay
Bridge and include data describing the bridge. The
single subject can map to multiple assets depicting
the bridge providing a single entry for a search and a
single place to describe a bridge. Bridges, as
physical items, may also be described using the
Resource OSID in which case the use of the
AssetSubject acts as a cover for the
underlying Resource to assist
repository-only consumers.
The Asset definition includes some
basic copyright and related licensing information to
assist in finding free-to-use content, or to convey
the distribution restrictions that may be placed on
the asset. Generally, if no data is available it is to
be assumed that all rights are reserved.
A publisher is applicable if the content of this
Asset has been published. Not all
Assets in this Repository
may have a published status and such a status may
effect the applicability of copyright law. To trace
the source of an Asset, both a provider
and source are defined. The provider indicates where
this repository acquired the asset and the source
indicates the original provider or copyright owner. In
the case of a published asset, the source is the
publisher.
Assets also define methods to facilitate
searches over time and space as it relates to the
subject matter. This may at times be redundant with
the AssetSubject. In the case of the Bay
Bridge photograph, the temporal coverage may include
1936, when it opened, and/or indicate when the photo
was taken to capture a current event of the bridge.
The decision largeley depends on what desired effect
is from a search. The spatial coverage may describe
the gps coordinates of the bridge or describe the
spatial area encompassed in the view. In either case,
a "photograph" type may unambiguously defined methods
to describe the exact time the photograph was taken
and the location of the photographer.
The core Asset defines methods to perform general
searches and construct bibliographic entries without
knowledge of a particular Asset or
AssetContent record Type.
| Name | Syntax | Many | Description |
|---|---|---|---|
| Identifiable | |||
id |
id | the Id |
|
| Extensible | |||
recordTypes |
type | ⋆ | the record types available |
| Browsable | |||
properties |
Property | ⋆ | a list of properties |
| OsidObject | |||
displayName |
displaytext | the display name | |
description |
displaytext | the description | |
genusType |
type | the genus type of this object | |
| Sourceable | |||
providerId |
id | the provider Id |
|
provider |
Resource | the provider | |
brandingIds |
id | ⋆ | a list of asset Ids |
branding |
Asset | ⋆ | a list of assets |
license |
displaytext | the license | |
| Name | Syntax | Many | Description |
|---|---|---|---|
title |
displaytext | the title of this asset | |
isCopyrightStatusKnown |
boolean | true if the copyright status of this asset is known,
false otherwise. If false, isPublicDomain(),
canDistributeVerbatim(), canDistributeAlterations() and
canDistributeCompositions() may also be false. |
|
isPublicDomain |
boolean | true if this asset is in the public domain,
false otherwise. If true,
canDistributeVerbatim(), canDistributeAlterations() and
canDistributeCompositions() must also be true. |
|
copyright |
displaytext | the copyright statement or empty text if none available. An empty text does not imply the asset is not protected by copyright. | |
copyrightRegistration |
string | the copyright registration. An empty string means the registration status isn't known. | |
canDistributeVerbatim |
boolean | true if the asset can be distributed verbatim,
false otherwise. |
|
canDistributeAlterations |
boolean | true if the asset can be modified, false
otherwise. If true, canDistributeVerbatim() must
also be true. |
|
canDistributeCompositions |
boolean | true if the asset can be part of a larger composition
false otherwise. If true,
canDistributeVerbatim() must also be true. |
|
sourceId |
id | the source Id |
|
source |
Resource | the source | |
providerLinkIds |
id | ⋆ | the provider Ids |
providerLinks |
Resource | ⋆ | the provider chain |
createdDate |
datetime | the created date | |
isPublished |
boolean | true if this asset has been published, false if unpublished
or its published status is not known |
|
publishedDate |
datetime | the published date | |
principalCreditString |
displaytext | the principal credits | |
assetContentIds |
id | ⋆ | the asset content Ids |
assetContents |
AssetContent | ⋆ | the asset contents |
isComposition |
boolean | true if this asset is a composition, false otherwise |
|
compositionId |
id | the composition Id |
|
composition |
Composition | the composition |
Asset Content
AssetContent represents a version of
content represented by an Asset. Although
AssetContent is a separate
OsidObject with its own Id
to distuinguish it from other content inside an
Asset, AssetContent can only be accessed
through an Asset.
Once an Asset is selected, multiple
contents should be negotiated using the size, fidelity
requirements, or application evnironment.
| Name | Syntax | Many | Description |
|---|---|---|---|
| Identifiable | |||
id |
id | the Id |
|
| Extensible | |||
recordTypes |
type | ⋆ | the record types available |
| Browsable | |||
properties |
Property | ⋆ | a list of properties |
| OsidObject | |||
displayName |
displaytext | the display name | |
description |
displaytext | the description | |
genusType |
type | the genus type of this object | |
| Name | Syntax | Many | Description |
|---|---|---|---|
assetId |
id | the asset Id |
|
asset |
Asset | the asset | |
hasDataLength |
boolean | true if a length is available for this content,
false otherwise. |
|
dataLength |
cardinal | the length of the data stream | |
data |
DataInputStream | the length of the content data | |
hasURL |
boolean | true if a URL is available, false otherwise |
|
uRL |
string | the url for this data |
Composition
A Composition represents an
authenticatable identity. Like all OSID objects, a
Composition is identified by its Id and
any persisted references should use the Id.
| Name | Syntax | Many | Description |
|---|---|---|---|
| Identifiable | |||
id |
id | the Id |
|
| Extensible | |||
recordTypes |
type | ⋆ | the record types available |
| Browsable | |||
properties |
Property | ⋆ | a list of properties |
| OsidObject | |||
displayName |
displaytext | the display name | |
description |
displaytext | the description | |
genusType |
type | the genus type of this object | |
| Containable | |||
isSequestered |
boolean | true if this containable is sequestered, false
if this containable may appear outside its aggregate |
|
| Operable | |||
isActive |
boolean | true if this operable is active, false if it is
inactive |
|
isEnabled |
boolean | true if this operable is enabled, false if the
active status is determined by other rules |
|
isDisabled |
boolean | true if this operable is disabled, false if the
active status is determined by other rules |
|
isOperational |
boolean | true if this operable is operational, false
otherwise |
|
| Sourceable | |||
providerId |
id | the provider Id |
|
provider |
Resource | the provider | |
brandingIds |
id | ⋆ | a list of asset Ids |
branding |
Asset | ⋆ | a list of assets |
license |
displaytext | the license | |
| Name | Syntax | Many | Description |
|---|---|---|---|
childrenIds |
id | ⋆ | the composition child Ids |
children |
Composition | ⋆ | the composition children |
Repository
A repository defines a collection of assets.
| Name | Syntax | Many | Description |
|---|---|---|---|
| Identifiable | |||
id |
id | the Id |
|
| Extensible | |||
recordTypes |
type | ⋆ | the record types available |
| Browsable | |||
properties |
Property | ⋆ | a list of properties |
| OsidObject | |||
displayName |
displaytext | the display name | |
description |
displaytext | the description | |
genusType |
type | the genus type of this object | |
| Sourceable | |||
providerId |
id | the provider Id |
|
provider |
Resource | the provider | |
brandingIds |
id | ⋆ | a list of asset Ids |
branding |
Asset | ⋆ | a list of assets |
license |
displaytext | the license | |