4. Two Approaches to Metadata
• External system
– Metadata stored in a database, a CMS, or some other system separately
from the document content
– Pros: Optimized for searching, available in canned systems
– Cons: Overhead of separate systems, data aren’t attached to what they
describe
• Internal (embedded) system
– Metadata stored directly in the documents themselves
– Pros: Data are attached directly to what they describe, easy to
edit/update
– Cons: Not as widely supported in canned systems, might have to build
your own support tools
5. Our Metadata Scheme
• We chose an embedded system
– Cost of canned CMS was prohibitive
– Already had many CMS features in our source control system
– Allowed us to design the system to suit our needs
– Allowed us to grow the system incrementally
6. Metadata Structure
• We break our metadata into two basic types:
– Attribute metadata, things that tend to be fixed for a given piece
of content
• Owner, project, reference documents
– Status metadata, things that tend to change over time
• Revisions, write status and review status
7. Attribute Metadata
• This is encapsulated in a <metadata> element near the top of
each piece of content
• Metadata contains information on the document or fragment:
– The document’s owner
– Any technical contacts for the document (engineers, statisticians)
– Reference documents relevant to the material (designs, functional
specs, primary sources)
– General revision information that would affect the whole
document or fragment
9. Status Metadata
• Status metadata appears inline in the document in a
<revision> element
• Revisions give information on various aspects of a document
change:
– Who made the change
– When it was made
– The version of the project to which the change applies
– A comment describing the change
– Writing status (to do, writing, ready for edit, complete, deferred)
– Review status (pending, complete)
11. Tools for Managing Metadata
• Edit tags
– Metadata is part of DTD, so we can just edit the tags as
necessary
– BUT, this was awkward and error-prone
• Specialized tools
– AE customizations to streamline the process
• Remind authors to add metadata when they create/change
content
• Custom dialog to make editing metadata easy
• Auto-complete as much as possible to minimize overhead
12. AE Customizations: Display of Metadata
• Highlighted in green
• Menu item allows hiding/showing of metadata
• (Demo)
14. AE Customizations: Entering Attribute Metadata
• When new content is created, author is prompted and basic
metadata is created automatically
• Author must enter information on technical contacts or
reference documents
16. AE Customizations: Entering Status Metadata
• When a change is made to content, on save the user is
prompted to add a revision element for each topic changed
• Custom dialog auto-inserts author’s ID and today’s date
• Author supplies the rest of the information for each topic
changed
18. AE customizations: Metadata Reports
• Menu item to get summaries of the metadata for a document
or project
• Summary report is dynamic HTML
• Report can be sorted and filtered based on any of the revision
attributes
21. AE Customizations: Metadata Reports
• We can also produce PDF output which includes revision
information in one of two formats:
– Inline revision information
– Summary table at the top of each document
25. To do
• Still on the wish list:
– Automatic notification of content changes
• To owner of document (if author of change is not owner)
• To owners of documents or projects that contain references to
that content
– Automatic notification of status changes
• Notify editors when revisions are marked “ready for edit”
• Notify production staff when documents are marked “complete”