Version 9.6
 —  Object Type Management  —

What is a Type?

A type (also called an object type) is analogous to a class in object-oriented programming and describes a kind of object that the registry can store. Objects abstract the real-world entities and each object belongs to a particular type which defines its characteristics and behavior.

CentraSite includes many predefined types. Any custom type that you add to CentraSite is treated as an asset type (i.e., instances of that type are treated as assets).

Types are system-wide objects, meaning that they apply to all organizations. Consequently, all organizations within a particular instance of CentraSite use (or have access to) the same global set of types.

A type is made up of attributes. Attributes hold data about an object. When a type defines an asset (i.e., if it is an asset type), the attributes that make up the type are assigned to profiles. Profiles determine how the type's attributes are grouped and presented when an instance of that type is displayed in CentraSite Control or the CentraSite plug-in for Eclipse.

Attributes are grouped by profile when displayed in a CentraSite graphical user interface

graphics/screen_AttibutesAndProfiles.png

Asset types also include an additional set of properties called advanced settings. These properties determine how instances of that type are to be managed by CentraSite. Among other things, the advanced settings for an asset type determine whether assets of the type are visible in the catalog browser, whether they can be used with reports and/or policies, and whether they can be versioned.

Types are described in detail in the following sections.


Attributes

An attribute represents an individual characteristic, property or piece of information about an asset. For example, the asset type for a Service includes attributes that identify the name of the service, provide the service's endpoints, identify the owner of the service, supply links to programming documentation and so forth.

All types that represent assets include the following basic attributes:

Attribute Description
Name

The name under which the asset is cataloged.

Description

A descriptive comment that provides additional information about an asset.

Key

The Universally Unique Identifier (UUID) that is assigned to the asset and uniquely identifies it within the registry. CentraSite automatically assigns a UUID to an asset when the asset is added to the registry.

Version

The user-assigned version identifier for an asset. The user-assigned identifier can be made up of any sequence of characters. It is not required to be numeric.

System Version

The system-assigned version number that CentraSite maintains for its own internal use. CentraSite automatically assigns this identifier to an object when a version of the object is created. The system-assigned identifier is always numeric and always has the format:

MajorVersion.Revision

Where:

  • MajorVersion is an integer that represents the asset's version number. This value is incremented by one when a new version of the asset is generated (e.g., 1.0, 2.0, 3.0).

  • Revision is an integer that represents an update to a particular version of an asset. When the revisioning feature is enabled for CentraSite, the Revision number is incremented each time a change is made to the object (e.g., 1.0, 1.1, 1.2).

An asset's System Version attribute cannot be deleted or modified by a user.

Created

The date on which the asset was added to the catalog. CentraSite automatically sets this attribute when a user adds the asset to the catalog. Once it is set, it cannot be modified.

Last Modified

The date on which the catalog entry for the asset was last updated. CentraSite automatically updates this attribute when a user modifies any of the asset's attributes.

Submitting Organization

The organization to which the asset belongs.

Owner

The user who currently owns the asset. CentraSite automatically sets this attribute when a user adds the asset to the catalog.

Lifecycle State

The asset's current lifecycle state. If a lifecycle model has been associated with an asset type, CentraSite updates this attribute as the asset passes through its lifecycle.

An asset can also have any number of additional attributes that are specific to the asset's type. For example, an asset might include attributes that do the following:

Attribute Data Types

When you add an attribute to a type, you specify the attribute's data type. The data type determines what kind of information the attribute can hold. After you add an attribute to a type, the attribute's data type cannot be changed.

The following table lists the data types that you can assign to an attribute. Most types can be configured to hold a single value or multiple values (i.e., an array of values).

Data Type Description
Boolean

Holds a "true" or "false" value.

Note:
When a Boolean value is displayed in theCentraSite user interface, it's value is generally displayed as "Yes" (if the attribute's value is true) or "No" (if the attribute's value is false) .

Classification

Holds references to one or more categories in a specified taxonomy. You use this type of attribute to classify assets according to a specified taxonomy.

Computed Attribute

Holds a value that is supplied by a user-defined Java plug-in.

Once you have defined a computed attribute, you can use it in CentraSite Control in the same way as any other attribute. You can, for example, assign the attribute to a profile or reorder the attribute position within a profile.

Date/Time

Holds a timestamp that represents a specific date and/or time.

Duration

Holds a value that represents a period of time as expressed in Years, Months, Days, Hours, Minutes and Seconds.

Email

Holds an email address. This data type only accepts values in the format:

anyString@anyString

Note:
When a user enters a value for an Email attribute, CentraSite verifies that the value conforms to the format above, but it does not attempt to validate the address itself.

File

Holds references to one or more documents that reside in CentraSite's supporting document library or at a specified URL.

You can use this type of attribute to attach documents such as programming guides, sample code and other types of files to an asset.

IP Address

Holds a numeric IP address in the v4 or v6 format.

Multiline String

Holds a string of text. When this type of string is displayed in a CentraSite user interface, the string is displayed in a multi-line text box and lines of text are wrapped to fit the width of the box. (Compare this with the String data type described below.)

The Internationalized option allows you to store the text in internationalized string format. For more information about the Internationalized option, see the String data type, below.

Number

Holds a numeric value. When you define an attribute of this type, you can specify the number of decimal positions that are to be shown when the attribute is displayed in a user interface. If you do not want to restrict the number of decimal positions that the user interface displays, choose the Maximum Precision option to display all positions.

You can optionally assign a label such as "Seconds", "tps", "KB", "EUR" or "$" to attributes of this type, and specify whether this label is to appear as a prefix or a suffix when the attribute's value is displayed in a user interface.

Note:
The underlying data type for this kind of attribute is a Java double.

String

Holds a string of text. When this type of string is displayed, it is displayed in a single-line text box. If a value exceeds the width of the box, the excess characters are simply not displayed.

The Internationalized option allows you to create a String attribute that holds different values for different locales. In CentraSite Control, for example, if a user logs on to CentraSite in an English locale and he or she assigns a value to an Internationalized String attribute, that value will be visible to other users with English locales. If a user in a German locale were to view the attribute, the attribute would appear empty because it has no value for the German locale. If the German-locale user were to subsequently assign a value to the attribute, the attribute would then have two String values: one in English and one in German.

When CentraSite Control displays an Internationalized String, it displays the value associated with the user's current locale. In the example described above, it would show the English value to users with English locales and the German value to users in German locales. Users in other locales would see an empty attribute until a value for their locale had been assigned to the attribute.

The Enumeration option allows you to specify a list of allowed values for the attribute.

URL/URI

Holds a URL/URI. This type of attribute only accepts values in the form:

protocol://host/ path

Where:

  • protocol is any protocol that java.net.URL supports

  • host is the name or IP address of a host machine

  • path (optional) is the path to the requested resource on the specified host

Relationship

Holds references to other registry objects. You use this type of attribute to express a relationship between an asset and another object in the registry.

Attribute Names

An attribute that is one of the following types has two names associated with it: a display name and a schema name.

Boolean
Date
Duration
Email
Multiline String
IP Address
Number
String
URL

The display name for these types of attributes is the name that is displayed by the CentraSite Control and CentraSite plug-in for Eclipse user interfaces. An attribute's display name can consist of any combination of characters, including spaces.

The following are all valid display names:

   Business Owner
   Amount (in $)
   Numéro de téléphone
   Avg. Invocations/Minute
   1099 Code

You can change an attribute's display name at any time.

The attribute's schema name is the name that CentraSite actually gives to the underlying JAXR-based slot that represents the attribute in the registry. This name must be NCName-conformant, meaning that:

For more information about the NCName type, see http://www.w3.org/TR/xmlschema-2/#NCName.

If you do not specify a schema name for an attribute, CentraSite automatically generates a default schema name based on the attribute's display name. It does this by taking the attribute's display name and replacing any spaces in the name with underscore characters (_) and/or by removing any invalid character in the name.

If you explicitly specify a schema name which is not NCName-conformant, CentraSite will request that you change it to an NCName-conformant name.

The following table describes the default schema names that CentraSite would generate for the display names shown above.

For this Display Name… CentraSite would generate this schema name… The resulting schema name is…
Business Owner Business_Owner Valid. You would not need to change the schema name.
Amount (in $) Amount_in_ Valid. You would not need to change the schema name.
Numéro de téléphone Numéro_de_téléphone Valid. You would not need to change the schema name.
Avg. Invocations Minute Avg._Invocations_Minute Valid. You would not need to change the schema name.
1099 Code _099_Code Valid. You would not need to change the schema name.

Note also that an attribute's schema name must be unique within the type (i.e., two attributes in a type cannot have the same schema name).

After the attribute is created, you can no longer change its schema name.

Names for the Other Attribute Types

The concept of display names and schema names does not apply to the following types of attributes:

Classification
File
Relationship

These types are not represented using JAXR-based slots and, therefore, do not require underlying schema names. These attributes have one name, which can consist of any combination of letters, numbers or special characters (including spaces).

Computed Attributes

CentraSite Control offers you the possibility to add computed attributes into asset type definitions and profiles; this allows you to define attributes which require complex computation in Java and then implement them as a Java plug-in, thus overcoming the limitations of predefined attribute types. You could, for example, make attribute values localizable by using computed attributes.

A computed attribute must describe its scale for the rendering within the profile of the asset type.

For a Java-based plug-in for a computed attribute, you create a jar file that contains the plug-in definition, and you load the jar file via CentraSite Control into the repository.

After you have added a computed attribute into a profile definition, you can perform administration tasks on the computed attribute in the same way as for normal attributes. For example, you can define the ordering of the attributes in a profile, regardless of whether they are standard attributes or computed attributes.

Top of page

Profiles

Profiles are used to manage the presentation of attributes in the user interface. They determine how the attributes are grouped when an instance of the asset type is displayed. When you display an asset in CentraSite Control, for example, the attributes associated with a particular profile are grouped together on a tab.

In CentraSite Control, profiles appear as tabs

graphics/screen_ProfileTabs.png

When you define an asset type, you specify the profiles on which its attributes are to be displayed. CentraSite does not require an attribute to be assigned to a profile. If you do not assign an attribute to a profile, the attribute will not be visible in the user interface (the attribute will still be available via the API). You can assign an attribute to multiple profiles if you want it to appear on multiple profiles (tabs) in the user interface.

You can define any number of profiles for an asset type. You can specify the order in which you want the profiles to appear when an instance of the type is displayed. You can also specify the order in which attributes are to be displayed within each profile.

Generic Profiles

In addition to the profiles that you define, CentraSite provides several predefined profiles, called generic profiles, which you can optionally include in an asset type.

The generic profiles contain system-defined attributes and controls. The information on the generic profiles is generated by CentraSite. You cannot customize the content of the generic profiles or add attributes to them. You can, however, select which of these profiles you want CentraSite to include with an asset type.

Generic Profile Description
Summary Available only for Service, XML Schema, Application Server, BPEL Process, Interface and Operation asset types. Provides basic information about the asset. For a service asset, this profile includes a list of the operations and bindings that the service provides. For a BPEL Process, Interface or Operation asset, the profile shows basic information such as the asset owner, but includes no type-specific attributes.
Consumers Displays the list of users and applications that are registered to consume the asset. This profile also contains controls for registering an application, a user or a group as a consumer of the asset.
Subscriptions Displays the list of users who are registered to receive notifications when changes are made to the asset.
Classification Displays the list of categories by which an asset is classified. This profile also contains controls for adding "ad hoc" classifiers to an asset.
Associations Displays the list of objects to which the asset is related. This profile also contains controls for establishing "ad hoc" relationships between an asset and other objects in the registry.
Permissions Displays the asset's instance-level permissions. This profile also contains controls for modifying the asset's instance-level permissions.

To view all of the instance-level permissions for an asset, a user must have Modify or Full permissions on the asset. To edit the instance-level permissions for an asset, a user must have Full permissions on the asset. If a user has only View permission on an asset, the Permissions profile shows only that particular user's permissions for the asset.

Versions Displays the versioning history for an asset and provides links to earlier versions and revisions of the asset. This profile also contains the controls for generating a new version of the asset, purging older versions of the asset and reverting to a previous version of an asset.
External Links Displays the list of links to external documents and files that are attached to the asset. This profile also contains controls for attaching documents and files to an asset.
Object-Specific Properties Displays the list of object-specific properties that have been assigned to an asset. An object-specific property consists of a key, which identifies the name of the property, and an optional String value, which contains the data associated with the property. (A property's value can be null.)

Object-specific properties are used to hold information about an instance of an asset when there is no predefined attribute to hold that data. Typically, they are used in one-off situations to attach ad-hoc data to an instance of an asset. For example, if you were managing a certification effort, you might use an object-specific property to identify the set of assets that required certification.

Audit Log Displays the update activity associated with an asset. This profile lists each change that has been made to an asset (including changes in an asset's lifecycle state) and identifies the user that made the change.
Members Available for only Package and IS Package types. Displays the list of objects to which the asset is related. This profile also contains controls for establishing "ad hoc" relationships between an asset and other objects (assets, users, organizations etc) in the registry.
Performance Displays the run-time performance metrics associated with an asset. If you are using webMethods Mediator, webMethods Insight or another run-time monitoring component to log performance metrics for an asset, CentraSite displays those metrics on this profile.

Note:
The Performance profile is displayed for virtual services regardless of whether you enable or disable it for the Service asset type. In other words, when you disable the Performance profile for the Service asset type, CentraSite removes the profile from service assets, but continues to display it for virtual services.

Events Displays the run-time events associated with an asset. If you are using webMethods Mediator, webMethods Insight or another run-time monitoring component to log run-time events for an asset, CentraSite displays those events on this profile.

Note:
The Events profile is displayed for virtual services regardless of whether you enable or disable it for the Service asset type. In other words, when you disable the Events profile for the Service asset type, CentraSite removes the profile from service assets, but continues to display it for virtual services.

Policies Displays the list of design/change-time policies and run-time policies that are applicable to an asset (i.e., it displays all the policies whose scope encompasses the displayed asset).

Note:
The Policies profile is displayed for virtual services regardless of whether you enable or disable it for the Service asset type. In other words, when you disable the Policies profile for the Service asset type, CentraSite removes the profile from service assets, but continues to display it for virtual services.

Processing Steps Available for Virtual Service, Virtual XML Service and Virtual REST Service types.

For a Virtual Service, displays the protocol (HTTP , HTTPS or JMS) and SOAP format (1.1 or 1.2) of the requests that the service will accept.

For a Virtual REST Service or Virtual XML Service, displays the protocol (HTTP or HTTPS) of the requests that the service will accept. Also, you specify the HTTP methods (GET, POST, PUT, DELETE or Use Context Variable) that are supported by the native service.

This profile also contains the request routing methods and protocol for authenticating the requests.

Deployment Available for Virtual Service, Virtual XML Service and Virtual REST Service types. Displays the list of virtualized services that are ready for deploying in the webMethods Mediator target.

Computed Profiles

CentraSite Control offers you the possibility to add computed profiles into asset type definitions; this gives you the option to define your own profile, which means that you can implement your own algorithms for calculating the values you wish to represent. You could for example aggregate or compute attribute information from embedded or linked objects.

You can combine the attribute specific profile and the generic profiles layout concept in a single computed profile.

Computed profiles let you create your own layout by using a UI Rendering Concept. You can also specify your own rendering logic to display the computed values. You could, for example, create a custom display of performance metrics as a graphic or an animation.

A computed profile can be implemented as a Java plug-in. For a Java-based plug-in for a computed profile, you create an archive file that contains the plug-in definition, and you load the archive file via CentraSite Control into the repository.

After you have added a computed profile into the asset type definition, you can perform administration tasks on the computed profile in the same way as for normal profiles. For example, you can define profile-based permissions, and you can define the order of the computed profile relative to the other profiles in the asset detail display.

Assigning Permissions on Profiles

You can restrict access to individual profiles by setting profile permissions on an instance of an asset. Doing this enables you to control who can view and/or edit the attribute values on a particular instance of a profile. For more information about controlling access to individual profiles within an asset, see Setting Permissions on an Asset in the document Using the Asset Catalog.

Important:
Profile permissions restrict access at the UI level but not the API level. At the API level, profile permissions are irrelevant. If a user has view permission on an asset, he or she can access all of the asset's metadata through the API, regardless of whether profile permissions exist for the asset.

Top of page