A ClassificationScheme object represents the highest-level container object in a file plan. It enables a hierarchical grouping of RM folders into record categories, record folders, and volumes within a file plan.
This hierarchical folder structure represents the business functions of an organization, and allows you to aggregate records under different folders within a classification scheme based on business functions. In addition, a classification scheme provides a logical partitioning of objects within a file plan. You can perform various operations--such as relocate, inactivate, or delete--on objects that you create within a classification scheme.
You can create multiple ClassificationScheme objects in the Records Management folder, which represents the root folder for file plan entities. To create a ClassificationScheme object, call the createClassificationScheme method on an RMObjectStore object. You must specify a unique name for the ClassificationScheme object along with its properties and permissions. In addition, the name of the object cannot contain special characters such as \ / : * ? " < > |.
// Creates a ClassificationScheme object
public void createClassificationScheme(String asName, Properties aoProps,
Permissions aoACLs, RMObjectStore aoRMOS)
{
ClassificationScheme loCS = aoRMOS.createClassificationScheme(asName, aoProps,
aoACLs);
}
The topics in this section describe how to apply a naming pattern to objects created under a classification scheme and how to retrieve ClassificationScheme objects within a file plan.
// Creates a Pattern object
public void createPattern(Properties aoProps, Permissions aoACLs, RMObjectStore aoRMOS)
{
RMCustomObject loPattern = aoRMOS.createPattern(aoProps, aoACLs);
}
//Associates a Pattern object with a PatternLevel object
public void createPatternLevel(Properties aoProps, Permissions aoACLs,
String asPatternGUID, RMObjectStore aoRMOS)
{
RMCustomObject loPatternLevel = aoRMOS.createPatternLevel(aoProps, aoACLs,
asPatternGUID);
}
To associate the Pattern object with a ClassificationScheme object, call the setPatternValue method on a ClassificationScheme object. You specify an existing Pattern object in the aoPattern parameter. Alternatively, you can call the setProperties method and pass in a Properties collection containing the pattern property to the ClassificationScheme object.
You can retrieve ClassificationScheme objects present in an object store in the following ways:
//Retrieves ClassificationScheme objects
public void getClassificationSchemes(RMObjectStore aoRMOS)
{
ClassificationSchemes loCSs = aoRMOS.getClassificationSchemes();
Iterator loIterator = loCSs.iterator();
while (loIterator.hasNext())
{
ClassificationScheme loCS = (ClassificationScheme)loIterator.next();
}
}
//Retrieves a ClassificationScheme object
public ClassificationScheme getClassificationScheme(RMObjectStore aoRMOS,
String asCSGUID)
{
ClassificationScheme loCS =
(ClassificationScheme)aoRMOS.getObject( RMType.RM_TYPE_CLASSIFICATIONSCHEME,
asCSGUID);
return loCS;
}
//Retrieves a ClassificationScheme object
public ClassificationScheme getClassificationScheme(RecordCategory aoRC)
{
ClassificationScheme loCS = (ClassificationScheme)aoRC.getParentFolder();
// where aoRC is an object of RecordCategory, which is directly contained in
// a ClassificationScheme object
return loCS;
}
//Retrieves a ClassificationScheme object
public ClassificationScheme getClassificationScheme(RMObjectStore aoRMOS,
String asCSGUID)
{
Folder loFolder = (Folder)aoRMOS.getObject( BaseObject.TYPE_FOLDER, asCSGUID);
ClassificationScheme loCS = aoRMOS.getClassificationSchemeInterface(loFolder);
return loCS;
}