A Behaviors Quick Reference

The following pages contain a quick reference for Oracle Communications Order and Service Management (OSM) behaviors which you can print and keep as a work aid.

For comprehensive information on behaviors, see "Modeling Behaviors."

OSM Behavior Type Overview

Table A-1 provides an overview of the OSM behaviors.

Table A-1 Behavior Type Overview

Behavior Type Name Order Synopsis Default Applies To Parent/Child Inheritance

Calculate Behavior

1st

Calculates the value of the data instance node.

None

All value nodes.

Does not inherit.

Style Behavior: Appearance Facet

2nd

Specifies the appearance of a data instance node:

  • DEFAULT: the default appearance should be used

  • FULL: all choices should be rendered at all times.

  • COMPACT: a fixed number of choices should be rendered, with scrolling facilities as needed.

  • MINIMAL: a minimum number of choices should be rendered with a facility to temporarily render additional choices.

Data type specific.For Boolean type fields: CompactFor Lookup type fields: Minimal

Boolean and Lookup type value nodes.

Nodes with Lookup behaviors that have only one displayed column.

Does not inherit.

Style Behavior: CSS Style Facet

2nd

Specifies the HTML CSS style attributes of the data instance node and label.

None

All value and group nodes.

Does not inherit.

Style Behavior: CSS Class Facet

2nd

Specifies the HTML CSS Class name of the data instance node and label.

None

All value and group nodes.

Does not inherit.

Style Behavior: Newline Facet

2nd

Specifies whether a line-break is inserted before the node causing it to be displayed at the start of a new line.

False

All value nodes.

Does not inherit.

Style Behavior: Secret Facet

2nd

Ensures unauthorized users are now allowed to view the contents of nodes containing sensitive information.

True

All value nodes except for modifiable (read/write) lookups and boolean values.

Does not inherit.

Style Behavior: Layout Facet

2nd

Specifies the organization of a group's child nodes into tabbed pages.

None

All group nodes.

Does not inherit.

Style Behavior: Location Facet

2nd

Specifies the tabbed page that this group will be placed in.

None

All group nodes.

Does not inherit.

Information Behavior

3rd

Specifies the label, hint, and help information for the data instance node.

None

All value and group nodes.

Does not inherit.

Relevant Behavior

4th

Indicates whether the data instance node is currently relevant. Data instance nodes with this property evaluating to false are not displayed in the view. If this property is False, other behaviors for this node are not evaluated.

True

All value and group nodes.

If any ancestor node evaluates to false, this value is treated as false. Otherwise, the local value is used.

Lookup Behavior

5th

Specifies a set of dynamic generated choices for the data instance node.

Static lookup values (if any) specified in the OSM Model data dictionary.

All value nodes that are of type lookup, number, or text.

Does not inherit.

Constraint Behavior: Attachment Facet

6th

Specifies a condition that needs to be satisfied for the associated order attachment content to be considered valid.

NOTE: This facet is only supported through programmatic behavior implementations.

True

Attachment nodes.

Does not inherit.

Read Only Behavior

7th

Describes whether the value is restricted from changing. This behavior overrides the static read-only value specified in the OSM Model View Node.

Default specified by the static read-only value on the OSM Model View Node.

All value and group nodes.

If any ancestor node evaluates to true, this value is treated as true. Otherwise, the local value is used.

Event Behavior

8th

Specifies an action to perform when a given event occurs.

None

Value nodes.

Does not inherit.

Constraint Behavior

N/A

Specifies a condition that needs to be satisfied for the associated data instance node to be considered valid. If the condition is not satisfied (evaluates to false), then messages are displayed to the user.

True

All value and group nodes.

Does not inherit.

Data Instance Behavior

N/A

Defines a container in which instances can be declared.

It has no affect on the user interface display of the element for which the behavior is defined.

None

All elements and structures

Children. (Applies to element relationships within a structure. This is different than the inheritance of behaviors between the data dictionary, order, and task levels.

Common Behavior Elements

This section describes the syntax for declaring common behavior elements.

Annotation Element

<annotation>
   <documentation lang=“NCName">… </documentation>
</annotation>

Description Element

<description>string</description>

Instance Element

<instance name=“NCName" lang=“NCName"
   xsi:type=“inlineInstanceType|externalInstanceType">
   For inlineInstanceType, any valid XML document is allowed up to
   4000 characters in length.
   For externalInstanceType, adapter followed by parameter*, and cache*
</instance>

Adapter Element [externalInstanceType]

<adapter>com.mslv.oms.view.rule.adapter.ObjectelAdapter
   |com.mslv.oms.view.rule.adapter.OrderAdapter
   |com.mslv.oms.view.rule.adapter.XMLAttachmentAdapter
   |com.mslv.oms.view.rule.adapter.XMLFileAdapter
   |javaClassNameType<
/adapter>

Parameter Element [externalInstanceType]

<parameter name=string">string-expr</parameter>

Cache Element

<cache>
   <scope>NONE|NODE|SYSTEM</scope>
   <timeout>positiveInteger</timeout>
   <maxSize>positiveInteger</maxSize>
</cache>

Expression Element

<expression>boolean-expr</expression>

Declaring Behaviors in OSM XML Model

This section describes the syntax for declaring behaviors in OSM XML model.

Data Dictionary Level

<dataDictionary>   element+
   <element name=nameType" xsi:type=“booleanType|currencyType|dateType
    |dateTimeType|phoneType|groupType|textType|numericType|lookupType">
      description, viewRule*, followed by type specific content
    </element>
</dataDictionary>

Master Order Template Level

<masterOrderTemplate>
   dataNode+
   <dataNode element=NCName">
      viewRule*, followed by dataNode*
   </dataNode>
</masterOrderTemplate>

View Level

<viewNode element=NCName">
   editable?, minOccurs?, maxOccurs?, viewRule*, viewNode* 
   <editable>boolean</editable>
   <minOccurs>unsignedInt</minOccurs>
   <maxOccurs>unsignedInt</maxOccurs>
</viewNode>

Data Provider Overview

Table A-2 provides an overview of the built-in and custom data providers. See "Using Data Providers to Retrieve Data" for details.

Table A-2 Data Provider Overview

Data Provider Synopsis Parameter

Custom

Uses data provided by a custom-defined Java class.

Implementation-defined

JDBC

Lets OSM query any JDBC database, then use the results within a behavior.

oms:dataSource, oms:sql, in:1 . . . in:n?, out:1 . . . out:n?

Objectel

Uses results of an Objectel Server Extension as an instance.

obj:extensionName, obj:jmsFactory?, obj:queue?, obj:allowErrorResponse?. Other parameters passed to Objectel

Order

Uses data from any OSM order as an external instance.

oms:OrderID, oms:View | oms:OrderHistID

Property File

Retrieves an external Java property file with a given name from the classpath.

oms:url

SOAP

Lets you open up OSM to web services, using the HTTP protocol.

soap.endpoint, soap.action?, soap.envelope, soap.body, soap.header?, oms:credentials.username?, oms:credentials.password?, oms:credentials.scope.host?, soap.allowErrorResponse

XML Attachment

Uses an XML attachment from any OSM order as an instance.

oms:OrderID, oms:FileName

XML File

Uses an XML file from any URL as an instance.

oms:url

XML Validation

Validates a provided XML instance document according to a user-defined schema. The document may be either a URL or an element. The schema may also be a URL or an element.

document, schema

Programmatic Behavior Implementation Overview

Table A-3 provides an overview of the programmatic behavior implementation.

Table A-3 Programmatic Behavior Implementation Overview

Rule Type Name Java Interface Method Names Parameter Types Return Types

Calculate Rule

com.mslv.oms.view.CalculateRule

calculate_<mnemonic>

com.mslv.oms.view.rule.ViewRuleContext

org.w3c.dom.Node

Any Java primitive or descendent of java.lang.Object

Style Rule:

Appearance Facet

com.mslv.oms.view.StyleRule

appearance_<mnemonic>

com.mslv.oms.view.rule.ViewRuleContext

org.w3c.dom.Node

int

NOTE: Return value must be one of FULL_APPEARANCE,COMPACT_APPEARANCE, MINIMAL_APPEARANCE defined on the StyleRule interface

Style Rule:

CSS Style Facet

com.mslv.oms.view.StyleRule

style_<mnemonic>

styleForLabel_<mnemonic>

com.mslv.oms.view.rule.ViewRuleContext

org.w3c.dom.Node

java.util.Map<String, String>

Style Rule:

CSS Class Facet

com.mslv.oms.view.StyleRule

cssClass_<mnemonic>

cssClassForLabel_<mnemonic>

com.mslv.oms.view.rule.ViewRuleContext

org.w3c.dom.Node

String

Style Rule:

Newline Facet

com.mslv.oms.view.StyleRule

newline_<mnemonic>

com.mslv.oms.view.rule.ViewRuleContext

org.w3c.dom.Node

boolean

Style Rule:

Secret Facet

com.mslv.oms.view.StyleRule

secret_<mnemonic>

com.mslv.oms.view.rule.ViewRuleContext

org.w3c.dom.Node

boolean

Information Rule

com.mslv.oms.view.InformationRule

information_<mnemonic>

com.mslv.oms.view.rule.ViewRuleContext

org.w3c.dom.Node

java.util.Map<String, String>

Relevant Rule

com.mslv.oms.view.RelevantRule

relevant_<mnemonic>

com.mslv.oms.view.rule.ViewRuleContext

org.w3c.dom.Node

boolean

Lookup Rule

com.mslv.oms.view.LookupRule

lookup_<mnemonic>

com.mslv.oms.view.rule.ViewRuleContext

org.w3c.dom.Node

String[ ]

String[ ][ ]

java.util.Map<Object,Object>

java.util.Collection<Object>

Constraint Rule

com.mslv.oms.view.ConstraintRule

constraint_<mnemonic>

com.mslv.oms.view.rule.ConstraintContext

org.w3c.dom.Node

String[ ]

com.mslv.oms.view.rule.ConstraintResult

com.mslv.oms.view.rule. ConstraintResult[]

java.util.List<com.mslv.oms.view.rule. ConstraintResult>

Constraint Rule

Attachment Facet

com.mslv.oms.view.ConstraintRule

constraint_attachment

com.mslv.oms.view.rule.ConstraintContext

org.w3c.dom.Node

java.io.InputStream

String[ ]

com.mslv.oms.view.rule.ConstraintResult

com.mslv.oms.view.rule. ConstraintResult[]

java.util.List<com.mslv.oms.view.rule. ConstraintResult>

Read Only Rule

com.mslv.oms.view.ReadOnlyRule

readonly_<mnemonic

com.mslv.oms.view.rule.ViewRuleContext

org.w3c.dom.Node

boolean

Event Rule

com.mslv.oms.view.EventRule

event_<mnemonic>

com.mslv.oms.view.rule.ViewRuleContext

org.w3c.dom.Node

java.util.Map<String, String>

NOTE: Map key must be EventRule.VALUE_CHANGED_EVENT.

Map value must be one of EventRule.REFRESH_ACTION or EventRule.SAVE_ACTION