The ICM$NAME attribute is the standard name attribute for
an item type. It is an optional attribute for nonhierarchical item
types and is required for hierarchical item types.
You can add the ICM$NAME attribute to the root
component of any new or existing item type, except the part type class.
The ICM$NAME attribute can be applied to documents, folders, or any
data that is returned while performing a browse or a search. As the
standard name attribute, the ICM$NAME attribute is useful for sorting
and querying operations on item types, such as sorting results by
name and resolving name-based paths.
The ICM$NAME attribute has the following characteristics:
- It is a predefined user attribute.
- It cannot be updated or deleted.
- Its value does not have trailing blanks
- Its data type is VARCHAR with length 256.
- It cannot be added to any user-defined attribute groups.
- When it is created, its attribute ID conforms to the user attribute
ID generation rule (1 is added to the maximum). Therefore, its attribute
ID is greater than or equal to 1000 and is different on different Content Manager EE systems.
When the ICM$NAME attribute is added to a nonhierarchical item
type, it has the following default component attribute properties.
Unless otherwise noted, these properties can be changed:
- Nullable, if added to an existing nonhierarchical item type. This
property cannot be changed.
- Not nullable, if added during the creation of a nonhierarchical
item type
- Not unique. This property cannot be changed.
- Not text-searchable
- Not represented
- No default value
When you provide a value for ICM$NAME, there
is no restriction on the characters you can use. However, all the
trailing blanks in the value are removed by the library server. Therefore,
if you have provided an ICM$NAME value with trailing blanks, those
trailing blanks are not visible in any search results. If you provide
an ICM$NAME value with a string consisting entirely of blanks, its
value is converted to an empty string and error ICM7016 is returned
from the library server.
The following restrictions apply for an ICM$NAME attribute of a
nonhierarchical item type. You cannot:
- Update the uniqueness property of the ICM$NAME attribute after
it has been added to an item type. If you attempt to do so, the library
server returns error ICM7123.
- Add the ICM$NAME attribute to a child component. If you attempt
to do so, error DGL7351A (DK_ICM_MSG_HIERARCHICAL_CHILD_COMPONENT_USE_ICMNAME_INVALID) is returned.
- Add the ICM$NAME attribute to a user-defined attribute group.
If you attempt to do so, error DGL7353A (DK_ICM_MSG_HIERARCHICAL_ATTR_GROUP_USE_ICMNAME_INVALID) is returned.
To get the ICM$NAME attribute value of an item type,
call the getName() method of its DKDatastoreICM object.
For more information, see the Application Programming Reference.