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