An application acts as a central place where all application-dependent
associations to these other administration objects are defined. The application
members (the types, relationships, and so on) can have different levels of
protection (private, protected, or public). This protection also extends to the
objects governed by them. For example, if you mark a relationship as protected,
all connections of that type are also marked as
protected.
You can design your application's data model such that you can mark
part or all of it as private or protected. The data you mark private cannot be
accessed from any other project while the data you mark protected can only be
viewed and not modified. If your company is working on a top-secret government
project, you will need to mark the data connected to this project as private to
avoid any accidental viewing or modification of data. You can do this by
assigning an owning application to your project.
The advantage of assigning an owning application to a project is that
it ensures data integrity. All modifications to the data are handled by the
owning application code which performs all necessary checks to ensure complete
data integrity. This prevents any unintended mishandling and possible
corruption of data. Thus, when an
Collaboration and Approvals
product (or any custom application) tries to access data marked private or
protected by connecting to the server, it has to specify the name of the owning
application containing that data. You can specify an application name only in
the Studio Customization Toolkit.