Author: Claudia Feng

  • The asset lifecycle, from brief to archive

    The asset lifecycle, from brief to archive

    Somebody searches the library, finds four versions of the same product shot, and has no way to tell which one is current. So they ask in a channel, someone answers from memory, and the wrong one goes to print.

    The library was not wrong. It contained all four. It just had no opinion about any of them, because the only states it modelled were present and absent.

    Short answer: an asset needs a state, the state needs to be visible in search, and every transition between states needs a defined trigger and a recorded actor. Seven states cover almost every enterprise case: draft, in review, approved, published, superseded, expired, archived. Without them a DAM is a well-indexed pile, and people go back to asking colleagues, because a colleague at least has an opinion.

    An isometric seven-station production loop connected by a raised cyan track, with a siding dead-ending at an amber buffer where carriers have piled up

    The seven states

    Draft. In the system, not usable. Working files, first cuts, material awaiting selection. Excluded from default search. The reason to hold drafts at all is that the alternative is people holding them on desktops, where they are invisible and unbacked.

    In review. Submitted for approval, with a named approver and a due date. Visible to the review path only.

    Approved. Cleared for use. This is the state most search should default to, and getting that default right is most of what makes a library trustworthy.

    Published. In active use on at least one surface. Distinct from approved, and the distinction matters: approved means allowed, published means currently out there. You cannot execute a recall without knowing which assets are published and where.

    Superseded. A newer version exists. Still resolvable, because things printed last year should keep working, but never offered as a new choice.

    Expired. Rights have ended. Not deleted, not usable. Findable deliberately, invisible by default. The behaviour required at this transition is the subject of rights and expiry as first-class asset data.

    Archived. Past active life, retained for record or legal reasons. Often on cheaper storage, often with slower retrieval, and that is fine as long as the metadata stays in the main index so people can find out it exists.

    Most implementations model three of these. The four that get skipped, published, superseded, expired and archived, are exactly the four that determine whether the library can be trusted.

    A state machine of seven labelled nodes with directed cyan arrows, the expired node amber and a dashed amber arrow bypassing review

    What each transition requires

    A state is only meaningful if the transition into it is controlled. Three properties per transition, every time:

    • A trigger. Human action, elapsed time, or an event from another system. Write it down. Transitions with no defined trigger do not happen.
    • A recorded actor. Who or what caused it, with a timestamp. This is your audit evidence and it should be a by-product of the transition, not something anyone assembles later.
    • A downstream consequence. What else changes. Search visibility, notifications, cache invalidation, an event emitted to consuming systems.

    That third property is where implementations usually fall short. An asset that becomes expired inside the DAM while remaining live on a public page has changed a field, not a state. The event mechanism that closes that gap is covered as pattern two in integration patterns for an enterprise DAM, and notification hooks are the usual implementation.

    The unofficial path

    There is always one. In most organisations it is approved-to-published without passing through review, because a deadline moved and someone with authority said go.

    Do not design it out. Design it in, with a record.

    An emergency path that requires a named override reason and a nominated approver gives you three things: the work gets done, the exception is visible, and the exception rate becomes a metric you can review. An emergency path that does not exist officially gets used anyway, off-system, and produces no record at all.

    Exception rate is one of the more useful numbers in the whole governance framework. A rising override rate means the standard path is too slow, which is a process problem you can fix rather than a compliance problem you can only report.

    Versions, variants and derivatives

    Three different things, routinely conflated, and the conflation is why version questions are so hard to answer.

    A version is the same asset, changed. Retouched, colour corrected, updated logo. Linear history, one current version, older ones retained. Platform-level version management handles this, and it should be automatic rather than a naming convention.

    A variant is a deliberately different asset in the same family. The winter version of the campaign key visual, the alternate model, the horizontal composition. These are siblings, each with its own lifecycle state, and they are not versions of each other even though people file them that way.

    A derivative is a mechanical output. The 400px crop, the WebP conversion, the CMYK export. Under a derivation model these are not stored at all, they are produced from the current version on request, which means they cannot be stale and they have no lifecycle of their own. That is the property discussed in single source of truth is an architecture.

    If your library treats all three as “files that look similar”, version questions become unanswerable, which is the situation described at the top of this piece.

    Where does retention fit?

    At the end, and it is the part almost every implementation defers indefinitely.

    Retention means two decisions per asset class: how long it is kept after active use, and what happens then. Records management has a century of thinking on this and the principles carry over directly, with one difference specific to visual material: images of identifiable people carry obligations under GDPR that do not attach to most other document types, so “keep everything forever” is not the risk-free default it appears to be.

    Practical guidance:

    • Set retention by class, not by asset. Product photography, campaign material, event photography, brand assets. Four to six classes covers most estates.
    • Default to retain, but define the exceptions. Material with identifiable people and material with expired third-party rights are the two classes where indefinite retention is an active risk.
    • Never hard-delete without an approval path. Deletion is the one irreversible operation in the whole system and it deserves a named approver and a record.
    • Archive is a state, not a location. Moving to cheap storage is an implementation detail. What matters is that the asset stays findable and its metadata stays in the index.
    A cold storage archive aisle receding into darkness, one shelf pulled out and lit from within by a cyan strip, a single amber lamp far down the aisle

    Starting before the asset exists

    The highest-leverage change available in lifecycle design is to start it at the brief rather than at the upload.

    When a shoot is commissioned, everything you will later ask a cataloguer to guess is already known and written down: the campaign, the products, the market, the intended channels, the licensing terms negotiated with the photographer. Capturing that as a record before any asset exists, then attaching arriving assets to it, converts cataloguing from an act of reconstruction into an act of association.

    The difference in both cost and quality is substantial, and it removes most of the contribution burden that drives the pattern in why DAM rollouts fail. It also means the rights fields are populated by the person who actually negotiated the rights, which is the only person who reliably knows them.

    Very few organisations do this. The ones that do have noticeably better libraries, and it is a process change rather than a platform feature, so it is available to you regardless of what you have bought.

    Keep the model small

    Seven states is not a target, it is a ceiling. If your workflow diagram has fourteen states and nine conditional branches, it will be implemented once, understood by two people, and routed around by everyone else.

    The test is whether a contributor can describe the lifecycle from memory. If they cannot, it is not a lifecycle, it is a specification, and specifications do not govern behaviour.

    The field model that carries the state is in the metadata schema an enterprise actually needs, status as a search facet is covered in designing a taxonomy people actually use, and the reason any of it matters is in what enterprise DAM actually is.

  • Designing a taxonomy people actually use

    Designing a taxonomy people actually use

    The taxonomy workshop produces a beautiful structure. Seven levels deep, mutually exclusive at every branch, exhaustively covering the material. The person who built it can find anything in it in four seconds.

    Nobody else can find anything in it at all, and within a year half the assets are sitting in a top-level folder called To Be Sorted.

    Short answer: stop building a tree and build facets. A tree forces one classification and requires the user to guess the designer’s mental model. Facets let several independent dimensions intersect, so anyone can start from whichever one they happen to know. Three to six facets with governed vocabularies will outperform any hierarchy you can design, and they are far easier to maintain.

    A card index drawer pulled half out of a dark cabinet, front tabs neat under a cyan light, rear tabs degrading into mismatched handwritten additions in amber shadow

    Why deep hierarchies fail

    Three reasons, and only the third is about the design.

    Users do not know where things go. A hierarchy asks you to reproduce the classifier’s reasoning. Is a photograph of a product being used by a customer filed under Product, under Lifestyle, or under Campaign? Any answer is defensible, which means the filer guesses and the searcher guesses differently.

    Real material does not partition cleanly. Taxonomy in the strict sense) requires mutually exclusive categories. Marketing assets are not mutually exclusive. A single image is simultaneously product photography, spring campaign, German market, approved, and licensed until 2027. A tree makes you pick one of those as primary and hide the rest.

    Depth multiplies error. Each level is a decision with a failure rate. Seven levels at ninety percent accuracy each gives you a bit under fifty percent chance the asset is where anyone expects. That is not a training problem, it is arithmetic.

    The facet model

    Replace the single hierarchy with a small number of independent dimensions. A query is the intersection.

    A typical enterprise set:

    • Asset type. Photography, illustration, logo, video, document, icon. Shallow and closed. Rarely more than a dozen values.
    • Business context. Brand, business unit, or product line, depending on how your organisation is actually shaped. This one mirrors the org chart and therefore needs a refresh path when the org changes.
    • Subject. What is depicted. The largest vocabulary and the one most worth basing on a standard rather than inventing, since the Getty vocabularies already cover most subject, material and place terms.
    • Market or locale. Where it may be used. Closed list, taken from wherever your organisation already maintains market codes.
    • Status. Draft, in review, approved, superseded, expired. Small, closed, and the single most valuable facet in the set, because it is what turns a library into something you can trust.
    • Rights. Owned, licensed, restricted, expired. Also small, also closed, and it carries the legal exposure described in rights and expiry as first-class asset data.

    Six facets, each shallow, each independently selectable. That structure answers “approved product photography cleared for Germany” without anyone knowing a folder path, and it answers “everything expiring next quarter” too, which no tree does.

    Note what is not in the list: date and campaign. Both are usually better as filters over structured fields than as facets, because they are continuous or unbounded, and unbounded facets become scroll lists nobody reads.

    Two taxonomy trees compared: a deep narrow amber corridor of single-child nodes, and a shallow wide cyan tree with cross-cutting facet chips beneath it

    How deep should a facet go?

    Two levels. Three at the absolute limit, and only for subject.

    The reason is that a facet is displayed as a list you scan, not a path you traverse. Past about thirty visible values, scanning fails and people stop using the facet. If a dimension genuinely needs more values than that, it wants type-ahead search rather than a browsable list, and that is a different interface affordance.

    The practical rule I use: if a facet value has fewer than about five assets under it and is not going to grow, it should not be its own value. Merge it upward. A vocabulary with two hundred terms where a hundred and forty are used once is a vocabulary that has failed and is generating noise.

    Governing the vocabulary

    This is the part that determines whether the taxonomy is alive in three years or fossilised.

    Someone owns each vocabulary. Named. With a documented process for proposing, approving and retiring terms. Unowned vocabularies grow monotonically, because adding is easy and removing is frightening.

    Additions require a case. Not a hard case, but a stated one: what search failed without this term. That single question kills most requests and improves the rest.

    Synonyms map to a preferred term. Auto, Car, Vehicle and Automobile should be one concept with three non-preferred labels, not four terms. ANSI/NISO Z39.19 is the standard covering exactly this construction and is worth reading once before you build.

    Deprecation is a state, not a delete. Retire a term and remap existing assets. Never delete a term that is in use, because the assets do not disappear, they just become uncategorised.

    Review quarterly, with data. Term usage counts, zero-result searches, and facet click-through. Half an hour of numbers prevents years of drift.

    Where does free tagging fit?

    Somewhere between “useful” and “a slow-motion disaster”, depending entirely on governance.

    Open tagging feels democratic and produces product, products, Product, product-shot and prodshot inside a quarter, at which point the tag facet is noise and people ignore it. If you want the flexibility, the workable compromise is a two-tier arrangement: a governed vocabulary that drives facets and filters, plus a free-text keyword field that feeds full-text search only and never appears as a facet. Users get to write what they like, and the navigation stays clean.

    Automated tagging changes this calculation somewhat, and it is worth being precise about how. Machine analysis is consistent, which is its main advantage over human tagging: it will call the same thing by the same name every time, which is exactly what human taggers fail to do. It is also frequently generic, and it does not know your business vocabulary. Cloudinary’s asset analysis will reliably tell you an image contains a person, a chair and daylight. It will not tell you it is the Q3 campaign key visual.

    So the sensible split is: machine tags populate the subject facet and full-text search, humans populate business context, status and rights. Machines are good at what is in the frame and useless at what it is for.

    A search refinement figure with a pool of assets narrowing through four filter bands, one amber band letting almost nothing through

    How do you tell if the taxonomy is working?

    Four numbers, collected quarterly. Same discipline as the schema review in the metadata schema an enterprise actually needs, and often the same meeting.

    • Zero-result rate. Proportion of searches returning nothing. Above about ten percent and your vocabulary does not match how people talk. Read the actual failed queries; they will tell you which terms are missing in the users’ own words.
    • Facet usage distribution. Which facets get clicked. A facet nobody uses should be demoted to a plain field. This is the metric that gives you permission to remove things.
    • Term concentration. If ten percent of your terms carry ninety percent of the assets, the vocabulary is too coarse in the middle. If most terms have one asset, it is too fine.
    • Time to first useful result. Hard to instrument precisely, easy to observe. Sit with five people, watch them find something, and count the steps. Twenty minutes of observation beats a month of analytics.

    Do not do this in a workshop

    The most reliable way to build an unusable taxonomy is to design it in a room with the six people who know the material best. They share assumptions the rest of the organisation does not have.

    Build the first draft from evidence instead: the search logs you already have, the folder names people actually created, and the words used in the briefs that commissioned the material. Then test it on people who were not in the room, with real retrieval tasks, before it goes anywhere near production.

    The taxonomy is not a deliverable, it is a running service. Treating it as a project that finishes is the reason so many of them are dead by year two, which is one of the mechanisms behind why DAM rollouts fail. It also has to survive the state changes described in the asset lifecycle, and it only matters at all because of the argument in what enterprise DAM actually is.