A Project of
|Guidelines||Rants||Patterns||Poems||Services||Classes||Press||Blog||Resources||About Us||Site Map|
Describe what you create--with metadata
Metadata is information about information. We need metadata about each object so we can track, customize, personalize, search, and publish that content.
You may have heard metadata called
Creating metadata that describes an object allows us to
Metadata consists of a name and a value. For example
The name of an attribute is the type of information it provides (creation date, modification date). The name, therefore, is generic, like a standard question:
The value is the answer to the question. The value is local to the object.
If Susan wrote this object, her name gets plugged into the Author
attribute as its value. <description author="Susan">
Programmers, then, describe an attribute and its value as a "name/value pair."
Generally, if you want your audiences to read some text, you make that into an element. If you want to hide this information from your audiences (such as internal pricing, or author name), you often put that information into an attribute. Attributes are behind-the-scenes descriptions of your elements.
An attribute describes a particular instance of an element, so, like a parasite fish, it swims along with the object. The attribute lives inside the object, and goes wherever it goes.
You might think of an attribute as a characteristic of the element, an adjective modifying the noun. Example: Color is an attribute, and red may be a reasonable value for that attribute, but in reality, redness cannot be detached from the object itself. You cannot separate the paint from the barn.
During planning, your job is to figure out what questions an administrator, an author, or a user might ask about an object, in order to operate on it.
You need to create a taxonomy (an ordered hierarchy) of attributes, with standards for their values.
Key question: What criteria would an author, a production person, an administrator, or a member of one of your audiences use to find this particular object?
Here are a number of attributes:
You must set some standards for the values you will accept for each attribute.
Once defined in your Document Type Definition or Schema, an attribute can only have the type of values you specify there. You may set constraints like these:
To get the benefits of metadata, it must be
But most people are erratic in the way they enter metadata.
So don't count on your authors to get all the metadata right. Even if you force them to check in a new object by filling out a form designed to collect the metadata, they will find ways around you.
Some ways to get more complete metadata
You need a metadata group
What if an author discovers that, really, there ought to be another attribute, to distinguish this object from others she has worked on?
What if marketing comes up with a new business rule that depends on a new attribute, such as Flavor?
You need some kind of committee to supervise metadata, resolving questions such as
Because metadata affect workflow, searching, assembly, and publication, this committee needs to be open to requests from the rest of the content management team, and from your stakeholders in marketing, documentation, tech support, sales, and throughout the enterprise.
Some attributes must be attached to every object; others may depend on the nature of the object.
And every time you bring in a new group to contribute content, they bring with them new categories of information, ways of thinking about their content. Sometimes your existing attributes will do, perhaps plumped out with some new values. Other times, you have to create new attributes just for them.
You need an attribute if you want to use those values as criteria, to find it, display it, hide it, transform it, or send it to some other system.
1. Explain why metadata is critical to the success of your system.
2. List every attribute, with the constraints on the values. Give examples of acceptable values, and unacceptable values.
3. Show how to enter the values, in your system.
Next: Create a formal model
Writing that Works!