HP 3000 Manuals

MODIFY RELATIONSHIP [ HP SYSTEM DICTIONARY XL SDMAIN ] MPE/iX 5.0 Documentation


HP SYSTEM DICTIONARY XL SDMAIN

MODIFY RELATIONSHIP 

Modifies a relationship.

Syntax 

     M[ODIFY] R[ELATIONSHIP] entity-name1 
                            ,entity-name2 
                           [,entity-name3]
                           [,entity-name4]
                           [,entity-name5]
                           [,entity-name6]
             ;R[ELATIONSHIP-]T[YPE] = entity-type-name1 
                                     ,entity-type-name2 
                                    [,entity-type-name3]
                                    [,entity-type-name4]
                                    [,entity-type-name5]
                                    [,entity-type-name6]
            [;R[ELATIONSHIP-]C[LASS] = relation-class-name] 
            [;A[TTRIBUTE-]L[IST]=([ attribute-name1=[attribute-value1]]
                                  [,attribute-name2=[attribute-value2]]
                                                  .
                                                  .
                                                  .
                                  [,attribute-nameN=[attribute-valueN]])]
            [;C[OMMON] = [ common-entity-name1 
                          ,common-entity-name2 
                         [,common-entity-name3]
                         [,common-entity-name4]
                         [,common-entity-name5]
                         [,common-entity-name6]]]
            .

Parameters 

entity-name(N)        Name of the entity involved in the relationship
                      whose attributes are to be modified.

entity-type-name(N)   Name of the entity type involved in the
                      relationship type.

relation-class-name   Name of the relationship class.

attribute-name(N)     Name of the attribute to be modified.

attribute-value(N)    New value for the attribute being modified.

common-entity-        Name of the entity involved in the relationship in
name(N)               the common domain whose attributes are to be shared
                      by the local domain relationship being modified.
                      You cannot specify this keyword if the dictionary
                      is open in the common domain.  If you specify this
                      parameter, then the attribute list can only contain
                      the following attributes:

                      scope-owner         Name of the new owner scope

                      sensitivity         Access rights to the
                                          relationship

                      relationship-       Logical order of a child entity
                      position            (the second entity in the
                                          relationship) relative to all
                                          other child entities for the
                                          same parent entity of the same
                                          relationship type

                      If you specify attributes other than these in the
                      attribute list, then you must not use this
                      parameter.  If you specify common and do not assign
                      a value to it, the existing link to the
                      relationship in the common domain is deleted.

Description 

System Dictionary automatically assigns values for the following
attributes and you cannot modify their values:

     date-created
     date-changed
     scope-changed

If the attribute is of type boolean, character, floating, or integer and
you specify the name, but do not assign a value, the default value from
the attribute's edit values is used.  If the attribute does not have any
edit values, then the System Dictionary default value for the attribute's
data type is used.

     boolean   :  false
     character :  ASCII blanks
     floating  :  Floating point zero
     integer   :  Binary zero

If the attribute is of type alias and you specify the name, but do not
assign a value, the alias value is deleted.

If the attribute is of type variable and you specify the name, but do not
assign a value, the variable length attribute's text is deleted.

If the attribute is of type boolean the only values allowed are true and
false (may be abbreviated T and F, respectively).

To modify or add a variable length attribute, you must enclose the new
text within quotes.  If the attribute is already associated to the
relationship, the original text is replaced with this new text.  To
replace only part of the text, refer to the EDIT RELATIONSHIP command.

To create an alias attribute value, specify the alias attribute name and
assign it an alias value.

To modify an attribute of type alias or character, you must enclose the
value in quotes if it includes any invalid characters (See "User-Defined
Names" in Chapter 3) or is greater than 32 characters in length.

If the relationship is assigned an alias, it is associated with the
second entity in the relationship.  Only the second entity in the
relationship may have an alias, regardless of how many entities form the
relationship.  Therefore, relationship aliases are typically useful only
with binary relationships.  If sensitivity is the attribute to be
modified, the valid values are:

private       Only the owner scope is allowed access to the relationship,
              unless it assigns access to other scopes by associating
              the relationship to the scope by means of the ADD
              SCOPE-RELATIONSHIP command.  The default is private.

read          Any scope with read capability may read the relationship.
              The owner scope may, in addition, assign modify access to
              other scopes by associating the relationship to the scope
              by means of the ADD SCOPE-RELATIONSHIP command.

modify        Any scope with read capability may read the relationship.
              Any scope with create capability may read and modify the
              relationship.

If the sensitivity is modified from read or modify to private, all scopes
that previously had access to this relationship will no longer have
access, unless the relationship is explicitly associated with the scope.

The relationship-position attribute is treated specially by the system.
This attribute is used as a sequencing number to order relationships with
the same parent entity (i.e.  to represent the order of elements in
a record).  Accordingly, two relationships of a type with the
same entity in the first position cannot have the same value for
relationship-position.  If specified without a value, the system assigns
a relationship-position value to place the relationship at the end of the
current list (assigns a value of greater than the largest currently
assigned to another relationship with the same parent entity).  Note that
this is different from other default values as the default depends on the
values assigned to other relationships and is different for each
relationship.  As defaulting the relationship-position value can cause
the reordering of a relationship list, you should consider the effects
before assigning a default value for this attribute.

If the relationship is linked to a relationship in the common domain, the
sensitivity for this relationship cannot be changed to a sensitivity
greater than the sensitivity of the relationship in the common domain.

To link the relationship to a relationship in the common domain, the
current version must be linked to a version in the common domain.

Open Mode:       Shared-update or exclusive-update

Scope:           DA scope or any scope with create capability and modify
                 access to the relationship

Example 

The following example modifies the inventory-control contains item-master
relationship of the relationship type image-database contains
image-dataset.  The blocking-factor was changed to 256 and the capacity
was changed to 501.

     >MODIFY RELATIONSHIP inventory-control, item-master; 
     >>RELATIONSHIP-TYPE = image-database, image-dataset; 
     >>RELATIONSHIP-CLASS = contains; 
     >>ATTRIBUTE-LIST = (blocking-factor = 256, capacity = 501).
     >


MPE/iX 5.0 Documentation