Soliciting New Verbs

Soliciting New Verbs

  • Comments 19

With the recent changes in v2 to increase the visibility of the cmdlet design guidelines, we want to make sure we have a solid set of verbs on the approved verb list before we ship v2. We've already talked with a number of partners and customers and have made some recent changes to the verb list. In addition, we'd love to have feedback from our community on any holes you perceive we have in our current list of approved verbs.

To provide some context, here are the things we think about when deciding whether to add a new verb:

  • Little or no overlap with existing approved verbs
  • Broadly applicable to multiple technologies - must be domain agnostic
  • Used consistently with similar meaning across multiple contexts
  • Pairing with an opposite is good, but not required

When suggesting a new verb, it's most helpful if you can include the following information in your suggestion:

  • Verb name
  • Description
  • Category
  • List of at least 5 significantly different applicable domains
  • List of at least 3 alternative verbs from the approved list
  • Pair with (optional)

For example, we recently approved Open and Close as new verbs in v2. Our internal discussions boiled down to the following:

  • Verb name: Open
  • Description: To set a resource to its opened state or make it accessible, visible, or available
  • Category: Common
  • List of at least 5 significantly different applicable domains: file, port, dialog, door, archive, container, account, mailbox, queue, chamber, scriptblock
  • List of at least 3 alternative verbs from the approved list: Set, Use, Enable, Show
  • Pair with: Close

Here is our current list of approved verbs:

Verb Category
------ -------------
Add Common
Clear Common
Close Common
Copy Common
Enter Common
Exit Common
Format Common
Get Common
Hide Common
Join Common
Lock Common
Move Common
New Common
Open Common
Pop Common
Push Common
Redo Common
Remove Common
Rename Common
Reset Common
Search Common
Select Common
Set Common
Show Common
Split Common
Switch Common
Undo Common
Unlock Common
Backup Data
Checkpoint Data
Compare Data
Compress Data
Convert Data
ConvertFrom    Data
ConvertTo Data
Dismount Data
Edit Data
Expand Data
Export Data
Import Data
Initialize Data
Limit Data
Merge Data
Mount Data
Out Data
Publish Data
Restore Data
Save Data
Unpublish Data
Update Data
Complete Lifecyle
Disable Lifecycle
Enable Lifecycle
Install Lifecycle
Invoke Lifecycle
Register Lifecycle
Restart Lifecycle
Resume Lifecycle
Start Lifecycle
Stop Lifecycle
Suspend Lifecycle
Uninstall Lifecycle
Unregister Lifecycle
Wait Lifecycle
Debug Diagnostic
Measure Diagnostic
Ping Diagnostic
Repair Diagnostic
Resolve Diagnostic
Test Diagnostic
Trace Diagnostic
Connect Communications
Disconnect Communications
Read Communications
Receive Communications
Send Communications
Write Communications
Block Security
Grant Security
Revoke Security
Unblock Security
Use Other

Thanks,
Dan Harman
Program Manager
Windows PowerShell

Leave a Comment
  • Please add 5 and 6 and type the answer here:
  • Post
  • Verb name: watch

    Description: used to watch process in action and potentially alert if a certain even triggers  

    Category: Diagnostic

    List of at least 5 significantly different applicable domains: file, account, process, copy, move, search, merge

    List of at least 3 alternative verbs from the approved list: Test, Measure, Show

    Pair with: unknown

  • How about Upgrade as this is a common lifecycle concept for administrators and the other terms (namely update and install) have different connotations that will potentially cause confusion.

    Proposed upgrade verb in template format:

    Verb name = Upgrade

    Description = Upgrade is used to perform major version or minor patch level changes to a product, operating system, data, or files. Upgrade may not be reversible (See downgrade) depending on the inherit upgrade abilities and structure of the item being upgraded.

    Category = Lifecycle

    Domains = SQL Server, SharePoint, other server applications or even file types.

    Alt verbs = Set, Update, Install

    Reciprocal verb would be Downgrade

  • What about Encode/Decode (as in Encrypt/Decrypt or Base64, or BarCodes or Morse Code) ... what verb pair on there you would stand in for that?

  • We felt that the Convert verbs cover those scenarios well. The .NET Framework even follows this by hanging the Base64 methods on the Convert class.

    Lee Holmes [MSFT]

    Windows PowerShell Development

    Microsoft Corporation

Page 2 of 2 (19 items) 12