asset database (asset identifiers and metadata including
metadata editing capabilities, and pointers to files)
file storage (locally or in the cloud; this is where
image files etc. reside and where the asset database points
to)
image processing engine (creating preview images, and
cropping images for export)
video conversion engine (taking stills from videos, and
transcoding into Web-friendly formats)
file metadata extraction and embedding engine (for IPTC,
EXIF, XMP metadata and office document text contents)
ingestion engine (combining the above engines to process
files and move them into the asset database and file
storage)
search engine (fulltext and metadata search across
assets)
collections database (where users can organize assets in
collections)
rights management database (usage rights and usage
tracking for assets)
controlled vocabulary database (thesaurus, country and
keyword lists etc., with editing capabilities)
workflow database (tracking which assets are in which
stages of a workflow, in which status and assigned to which
user – e.g. approval, rights clearance)
user roles and permissions database (defining which users
have which permissions on assets, using ACLs)
asset publishing engine (adapters for sharing, publishing
assets on Facebook etc.)