The „assets“ (as in „Digital Asset Management“), the main entities of any DAM system, are called „documents“ in DC-X: Database records containing text content along with structured metadata, and with zero or more attached files (stored in the filesystem, not in the database).
All content is stored in Unicode, encoded as UTF-8, meaning that almost every language and special character can be handled. Text content is represented as XHTML (which is HTML with a slightly stricter syntax to make it XML-compliant), thus supporting formatted, „rich“ text.
Metadata values consist of a field name, (plain) text content and (optional) attributes. DC-X comes with a comprehensive list of common field names based on standards like IPTC IIM, EXIF, XMP, IPTC Photo Metadata, Dublin Core, NewsML, NITF and PRISM. Each installation can define an unlimited number of additional custom fields, along with a datatype (string, date, number etc.) and the number of occurrences (multiple or not).
Metadata fields can be configured to use a look-up list (stored in the topic map which we’ll write about in a forthcoming post). Values from look-up lists are referenced in the document, not copied into them, which allows you to re-label them globally just by editing the list. And the look-up list supports translations into multiple languages out of the box. DC-X will by default automatically add list values as documents are coming in with new values.
DC-X supports multi-language documents, so each text body or metadata value may have a language attribute.
Each document belongs to exactly one document pool, which may help in structuring assets. A special field is the unique hash which can be left blank, but will cause automatic rejection of duplicates if filled in. In addition, every document is being assigned a globally unique identifier.
Files are stored in the filesystem and represented through a database record pointing to their location and holding common metadata like the file format, size, image dimensions etc. The document points to zero or more of these file database records, these are the files „attached“ to the document.
Here’s an example: When an image file is imported, a document record will be created with structured metadata read from EXIF, XMP and IPTC. Text content (an image caption or description) will be stored in the document body. The original file will be stored in the filesystem exactly as it came in – it will never be altered by DC-X. A file database record (with the property „type=original“) will point to its location and be linked to the document. Thumbnail- and layout-sized preview images will be generated, each with their own database record, again linked to the document (with „type=thumbnail“ and „type=layout“, respectively).
An unlimited number of files can be attached to a document. Custom values for the „type“ property can be defined. In addition to the „type“ property, there’s „variant“ and „version“ properties. File variants mean that separate branches of a file can be stored and still point to the same document, for example an alternate version of an image with a blacked-out number plate (along with its own preview images). When a file is being changed, it usually won’t be deleted, but be kept and marked as an outdated version so that it can be viewed or restored as needed.
Differences compared to DC5: Text content is now XHTML instead of plain text. The default list of field names is much more comprehensive. Fields now have a datatype. Field values pointing to look-up lists are new. Multi-language support has been added, as well as file variants and versions.