9. An article comprising a storage media which excludes signals per se containing instructions that when executed, causes a processor system to: receive a request to modify a data file by an application program; determine a file type for the data file where the file type is one of an immutable file type, a locking required file type, and a locking preferred file type; access a set of locking semantics based on the file type; and determine whether the application program has permission to modify the data file based on the locking semantics, wherein the locking semantics require a network connection to a locking server for editing when the file type is the locking required file type, the locking semantics do not require the network connection to the locking server for editing when the file type is the immutable file type, and the locking semantics for the locking preferred file type only require the network connection to the locking server for editing when the network connection to the locking server is available, wherein a lock is granted to the application program if the file type is the locking preferred file type and the network connection to the locking server is not available.
9. An article comprising a storage media which excludes signals per se containing instructions that when executed, causes a processor system to: receive a request to modify a data file by an application program; determine a file type for the data file where the file type is one of an immutable file type, a locking required file type, and a locking preferred file type; access a set of locking semantics based on the file type; and determine whether the application program has permission to modify the data file based on the locking semantics, wherein the locking semantics require a network connection to a locking server for editing when the file type is the locking required file type, the locking semantics do not require the network connection to the locking server for editing when the file type is the immutable file type, and the locking semantics for the locking preferred file type only require the network connection to the locking server for editing when the network connection to the locking server is available, wherein a lock is granted to the application program if the file type is the locking preferred file type and the network connection to the locking server is not available. 11. The article of claim 9 , further comprising instructions that when executed, causes a processor system to: determine the file type is a locking required or a locking preferred file type; determine a network connection to a locking server is available; request locking instructions from the locking server; and provide a response to the request to modify based on the locking instructions.