CONTENTS Title Page Copyright Page Preface 1 Introduction to CMS 1.1 Overview 1.2 CMS Concepts 1.2.1 Libraries, Elements, and Generations 1.2.2 Groups and Classes 1.2.3 Reservations and Replacements 1.2.4 Review 1.2.5 History and Remarks 1.2.6 Reference Copies 1.2.7 Lines of Descent and Variant Generations 1.2.8 Concurrent Reservations 1.2.9 Merging and Conflicts 1.2.10 Security 1.2.11 Events and Notification 1.3 Invoking CMS 1.4 Getting Help 1.5 Sample Session 1.6 Command Summary 2 Using CMS with OpenVMS DECwindows Motif 2.1 Invoking CMS 2.1.1 CMS Menus 2.2 Getting Help 2.3 Displaying CMS Information in OpenVMS DECwindows Motif 2.3.1 Displaying More Than One View 2.3.2 Restricting Views 2.3.3 Customizing Your Initial View 2.3.4 Expanding and Collapsing CMS Objects 2.3.4.1 Double Clicking 2.3.4.2 Choosing a Function 2.3.4.3 Using the Pop-Up Menu 2.4 DECwindows LSE/CMS Integration 2.4.1 Creating an Element in the CMS Library 2.4.2 Fetching a Generation of An Element From the CMS Library 2.4.3 Reserving an Element in the CMS Library 2.4.4 Replacing an Element into the CMS Library 2.4.5 Performing CMS Differences Operations 2.4.6 Performing CMS Differences Between an LSE Buffer 2.4.7 Using the SHOW ATTRIBUTES Command 2.5 CMS Command Correspondence 2.6 Sample CMS OpenVMS DECwindows Motif Session 2.6.1 Creating a CMS Library 2.6.2 Creating an Element 2.6.3 Displaying Two Views 2.6.4 Inserting a Generation into a Class 2.6.5 Reserving an Element 2.6.6 Modifying an Element 2.7 Customizing Your CMS OpenVMS DECwindows Motif Interface 3 Libraries 3.1 Creating Libraries 3.1.1 Creating the Directory 3.1.2 Creating the Library 3.1.3 Creating Elements in the Library 3.1.4 Creating a Reference Copy Directory 3.2 Using Libraries 3.2.1 Setting Libraries 3.2.2 Modifying Library Lists 3.3 Controlling Occlusion in Multiple Libraries 3.3.1 Occlusion of Multiple Object Types in a Command 3.3.2 Examples 3.4 Library Locking 4 Elements and Generations 4.1 Relationship Between Elements and Generations 4.2 Manipulating Elements and Generations 4.2.1 Creating Elements and Generations 4.2.2 Fetching an Element Generation 4.2.3 Reserving an Element Generation 4.2.4 Replacing an Element Generation 4.2.5 Monitoring Element Changes 4.2.6 Displaying Information About Elements and Generations 4.2.7 Deleting Generations 4.3 Concurrency 4.3.1 Concurrent Access 4.3.2 Concurrent Reservations 4.3.3 Concurrent Replacements 4.4 Delta Files 4.5 Element Attributes 4.5.1 The History Attribute 4.5.2 The Notes and Position Attributes 4.5.3 The Reference Copy Attribute 4.5.4 The Review Attribute 4.5.5 Examples of Using Element Attributes 5 Groups and Classes 5.1 Overview 5.1.1 Groups 5.1.2 Classes 5.1.3 The Difference Between Groups and Classes 5.2 Manipulating Groups 5.2.1 Creating Groups 5.2.2 Inserting Elements into Groups 5.2.3 Retrieving and Removing Elements from a Group 5.2.4 Displaying the Group Structure of a Library 5.2.5 Deleting Groups 5.3 Manipulating Classes 5.3.1 Creating Classes 5.3.2 Inserting Element Generations into Classes 5.3.3 Retrieving and Removing Generations from a Class 5.3.4 Displaying the Class Structure of a Library 5.3.5 Deleting Classes 5.4 Group and Class Attributes 6 Variants and Merging 6.1 Lines of Descent 6.1.1 Creating a Variant Generation 6.1.2 Accessing Variant Generations 6.1.3 Ancestor and Descendant Generations 6.2 Merging Two Generations of an Element 6.2.1 Merging Element Generations 6.2.2 Conflicts in the Merging Process 6.2.3 Verifying Merged Changes 7 Security Features 7.1 OpenVMS File Access 7.1.1 Assigning UIC Protection 7.1.2 Assigning OpenVMS ACL Protection 7.1.2.1 Using OpenVMS ACLs on Directories 7.1.2.2 Using OpenVMS ACLs on Files 7.2 CMS ACLs 7.2.1 Creating CMS ACLs 7.2.1.1 ACE Format 7.2.1.2 Access Types 7.2.1.3 ACL Format 7.2.2 Specifying ACLs with Commands 7.2.2.1 Examples of ACLs on Commands 7.2.3 Specifying ACLs with Other CMS Objects 7.2.3.1 Specifying ACLs on Elements, Groups, and Classes 7.2.3.1.1 Examples of ACLs on Elements, Groups, and Classes 7.2.3.2 Specifying ACLs on Element Lists, Group Lists, and Class Lists 7.2.3.2.1 Examples of ACLs on Lists 7.2.3.3 Specifying ACLs on Libraries and History 7.2.3.3.1 Examples of ACLs on History and the Library 7.3 OpenVMS BYPASS Privilege and CMS BYPASS Access 7.4 Combining OpenVMS and CMS Security Mechanisms 7.4.1 Example of Protection Scheme Using OpenVMS and CMS Mechanisms 8 Event Handling and Notification 8.1 Event Handling 8.1.1 Specifying Action ACEs 8.1.2 Detecting Events 8.1.3 Using Your Own Event Handler 8.2 Notification of Events 8.3 Examples 9 Library Maintenance 9.1 Command Rollback 9.2 Verifying Data in a CMS Library 9.2.1 Using VERIFY/RECOVER 9.2.2 Using VERIFY/REPAIR 9.2.3 Correcting Errors 9.2.4 Reference Copies 9.3 Maintaining Library Efficiency 9.3.1 Deleting History Records 9.3.2 Deleting and Archiving Element Generations 9.4 Unusual Occurrences 10 Command Syntax 10.1 Command Format and Prompting 10.2 Command Parameters 10.2.1 Directory Specifications 10.2.2 Remarks 10.2.3 Element Names 10.2.4 Element Expressions 10.2.5 Element Generations and Expressions 10.2.6 Group Names 10.2.7 Group Expressions 10.2.8 Class Names 10.2.9 Class Expressions 10.3 Comma Lists 10.4 Command Qualifiers 10.4.1 Qualifier Values 10.4.1.1 File Specifications 10.4.1.2 Time Values 10.4.2 Qualifier Defaults 10.5 Wildcard Expressions 10.5.1 Single-Character Wildcards 10.5.2 Partial- and Full-Field Wildcards 10.5.3 Canceling Wildcard Transactions 10.6 Command Abbreviations A Summary of CMS Interface Functional Mappings B CMS Library Storage Method C System Management Considerations C.1 Library Backup C.2 System Time Errors C.3 Quotas