Many of the CatDV tags listed above define a clip or catalog variable that contains the values being displayed. It is up to the JSP itself to display the desired attributes of the object. (Note that ‘attributes’ might also be referred to as fields or properties, or as columns when they’re displayed in a table.) Each attribute has a name such as “Name” or “Tape” by which it is known – all the available clip and catalog attribute names are shown in the lists below.

The value of an attribute can be displayed using syntax such as <%= clip.get(“Name”) %> within a JSP page. There are several variants of this call, all of which accept at least one parameter that defines the attribute name. get() will display the value as a string of text, or display an empty string if the attribute has no value. get_t() is similar but returns “&nbsp;” if the attribute is empty, which is sometimes necessary when displaying values in an HTML table. More generally, get() with two parameters returns the second string if the attribute is empty, for example get(“WhoCreated”, “N/A”). get_limit() takes a parameter which defines how many characters to display at most – if the text is longer than this limit it is truncated and an ellipsis “…” is shown. If you’re unsure which attributes might be available then the keys() method returns a Java Enumeration of all the property keys.

When a tag is intended to display a list of objects (such as all the clips in catalog) it will iterate over the list and set the variable to each row in succession.

Catalog object

The following attributes are defined for catalogs:

ID The numeric id of the catalog.
NumClips Number of clips in the catalog. (Number of matches if performing a query.)
Name The catalog name.
Comment The catalog notes.
WhoCreated Which user first created the catalog.
WhoSaved Which user last modified the catalog.
WhoPublished Who published the catalog to the database.
Modified When was the catalog last modified.
Version Which version of CatDV Pro last saved the catalog.
Tapes All the unique tape name(s) of clips in the catalog.
ClipTypes All the different clip types represented in the catalog (eg. DV, MOV, JPEG, LOG, etc.)
Info A brief status text about the query.
MinGMTDate The earliest record date of any clip in the catalog.
MaxGMTDate The latest record date of any clip in the catalog.
GMTRange A summary of the range of dates covered by clips in the catalog.
MinFileDate The earliest file modification date of any media file in the catalog.
MaxFileDate The latest file modification date of any media file in the catalog.
UserName CatDV user name who owns the catalog (Enterprise server only)
GroupName CatDV group that owns the catalog (Enterprise server only)


Clip object

The following attributes are defined for clips:

ID The numeric id of the clip.
CatalogID The numeric id of the catalog that this clip belongs to.
CatalogName The name of the catalog the clip belongs to.
CatalogNotes The comments of the catalog the clip belongs to.
Name Clip name.
Tape Tape or reel name
In Start of clip (timecode)
Out End of clip (timecode)
In2 Start of selection within clip (timecode)
Out2 End of selection within clip (timecode)
Duration Duration of clip (timecode)
Bin Bin name
Timecode The timecode format (eg. 2997 for drop frame NTSC, or 25 for PAL)
Notes Clip notes field
Type Clip type
SeqNum Sequence number of clip within its import source
Transition Transition (for clips that came from importing an EDL)
Modified Date the clip entry was last modified
ImportNotes Import warnings
DVTC The timecode valid embedded in the DV stream (usually same as In)
Marked Whether the clip is marked or not
Hidden Whether the clip is marked as being hidden
SourceMedia The source media filename (for clips imported from a media file)
Audio The audio format of the clip (if imported from a media file)
Video The video format of the clip (if imported from a media file)
Importer The QuickTime importer used to import the media file
QTTracks A list of tracks in the movie (if imported from a media file)
Metadata QuickTime user data (eg. Exif metadata tags)
DataRate The data rate (if known)
MediaSize The size of the media file (if known)
IsStill Is this a still image?
Format A summary of the format of the media
RecDate The original date of recording (if known, eg. from DV metadata)
ClockAdjust Any camera clock adjustment (from local time to GMT)
GMTDate The record date or media file date (corrected for GMT if relevant)
DVInfo An encoded version of the DV metadata
PosterID The ID of the poster thumbnail
Poster.IMG This returns an <IMG SRC=…> tag that will display the poster thumbnail for the clip at maximum available size.
Poster.SMALLIMG This returns an <IMG SRC=…> that returns the poster thumbnail for the clip scaled so it is no larger than 48×36 pixels in size.
Preview.URL The URL of the preview movie (if available)
Preview.LINK This returns a complete link including an appropriate icon, whether or not the preview is available, ie. <A href=…><IMG SRC=…></A>
User1, …, UserN These return the user-defined attributes of the clip. Note that the user-defined names of these attributes are not stored in the database and are used for display in the client application only. Within the get() call it is necessary to use the numeric id of the user attributes, for example “User11” might correspond to “Project”, but if you customize the JSP you can of course display your own label that correctly describes the field.
DataRate.RAW Unformatted data rate (bytes/sec)
MediaSize.RAW Unformatted media file size (bytes)
AllThumbnails.IMG Sequence of <IMG…> tags containing all the available thumbnails for the clip (between the clip’s In and Out point). (For practical reasons this is limited to a maximum of 16 thumbnails.)
MediaDate Modification time of the media file


Not all these properties will be set for all clips or catalogs.

Sorting tables

Tags that display a list of objects (<catdv:browseDatabase> and <catdv:cliplist>) may accept a request parameter “order” that defines the sort order of the results returned. This is the name of one of the properties (as listed above), and may be preceded by “–” to reverse the sort order.

The example browseDatabase.jsp shows how to display a header row by iterating over the column names and highlighting the background colour of the column that is being sorted on.

Adding clip basket functionality

It is possible to customize the web site so that users can add search results to a “clip basket” and then send an email (to you as the site administrator and/or to themselves as a reminder) expressing an interest in those clips. There are three steps to do this:

1. Edit the clip.jsp file to add the following:

<form action=”clipBasket.jsp” method=POST>

<input type=”hidden” name=”add”

value=”<%= request.getParameter(“id”) %>” >

<input type=”submit” value=”Add To Basket”>


2. Edit the WEB-INF/web.xml file to enter details of an SMTP mail server that the servlets can use to send emails.

3. Edit clipBasket.jsp to specify the site owner’s email address (in two places, both as a hidden and as a visible field), and customize the subject field if required.