Read First: Part Specification Read Next: forPartSpec/refersToRelation, connectedByRelationPart/connectsObjectPart This is for specifying the connections between parts. It is specialized from Part Specification, because relations are treated as parts just like objects (relations are a kind of object type in OOIE). For example, when a composite object type is instantiated, like a type of car, the objects are all created, like the engine and wheels, and the connections are established also, like between engine and wheel. In OOIE, establishing a relation is done by instantiating a relation type. So all the parts of a type, both objects and relations, are likewise treated as types, then instantiated. This information is need to specify a relation part: 1) The type of relation used for the connection. This is modelled by forPartSpec/refersToRelation. 2) The object parts that will fill the places of the relation. This is modelled by connectedByRelationPart/connectsObjectPart. For example, suppose we want to model the departments of a company and the information flow between them. The object parts are the departments and the relation parts are the information flows. We create a relation type InformationFlow, then make an instance of Relation Part Specification for each flow connection between departments. We use forPartSpec/refersToRelation to refer the relation parts to InformationFlow, and connectedByRelationPart/connectsObjectPart to specify which departments fill which places in each information flow relation. To simplify the meta-model, it is assumed that the places are ordered in the relation, and that connectedByRelationPart/connectsObjectPart will adopt the same ordering when specifying objects to fill the places. Composite relations Although this meta-entity is for specifying relations to be parts of composite objects, it is also used in an important way for relations that are wholes, ie, relations that have parts. For example, suppose two companies are involved in a partnership to develop a product, and you want to model this relationship. The relation will have parts, in particular, it will have relation parts that connect people in the two companies. For example, the lawyers will be talking to each other, the developers to each other, managers, etc. This particular composite relation will only have other relations as parts, no object parts (a "cable"). A composite relation will always have some relation parts that connect to objects outside the composite. If there were no relation parts referring outside the composite, then the composite would be a self-contained object, not a relation. Composite relations can have object parts also. For example, the relation between two people calling each other on the phone was object parts like the receivers and switches. It will also have relation parts that connect those object parts, like wires and microwave connections. Some of the relation parts must connect out of the composite, and in this case, it would be the relation between the receivers and the people using the phones.
Subtypes: None