CAPÍTULO I: MARCO CONCEPTUAL Y NORMATIVO
4. Convergencia en materia de desarrollo e integración fronteriza entre el Perú
4.3 A nivel de instituciones de los Ministerios de Relaciones Exteriores
Following the layered operator framework, we identify and represent changes and their at- tributes using a metamodel. Whenever a change operation is executed, we store the change operations which are additions and deletions of classes, data properties, object properties, instances, axioms, etc. The model captures information about the change operations. This information is useful to handle composite changes and domain-specific patterns. The meta- model of a change is given in Figure4.9and an example of an atomic change operation is depicted in Figure4.10.
Figure 4.9: A metadata model for change operations
4.5.2.1 Change
Atomic change represents a single change operation which performs a single task and is represented by a single node. Composite change is an aggregation of atomic changes. A change contains metadata such as on which entity, by whom and when a change is requested
Figure 4.10: An example of atomic change operations
and implemented. It also contains the change operation, the OCMS element, the specific entity and other related information about the change. This information is treated as a node in the graph and is linked to the change node using edges with descriptive labels. A complete specification for an atomic change operation has the following information.
Operation. The action we want to implement in the ontology is represented by the op-
eration. The operation can be addition, deletion or modification in case of atomic change operations and merge, copy, split, etc., in case of composite change oper- ations. We represent modification as a series of additions and deletions, thus, the operation mainly contains addition and deletion operations. An addition operation introduces an entity which was not present in the OCMS in the previous version. A deletion operation removes an existing entity from the OCMS.
A change has an operation which can be either addition or deletion. The change and the operation nodes are connected by an edge represented as a directed arrow with a label hasOperation.
Target Entity. A target entity represents the changing entity of the OCMS. The type
of the entity can be a class, an object property, data property, restriction, axiom, or instance which are defined in the OCMS graph. The target element is represented as a node and is connected to the change node with a directed edge hasTargetEntity. For example, a change operation which adds a class can be represented using three nodes, the change node, the operation node, which is add, and the target element
node, which is class.
Parameter. A parameter represents one or more of the actual entities involved in the
change, in our case the IRIs. A change may have one or more parameters. Each of the parameters has attributes to distinguish one from the other.
The parameter value attribute indicates the value of the specific parameter. For
example, the above change operation can be applied to the parameter cngl:#person
The parameter order indicates the order in which the parameters appear in the
change. The order indicates the dependent and antecedent entities. For example, a parameter with order equal to 0 indicates that the parameter appears at the beginning of the change operation.
The parameter type indicates the type of the parameter. In the above example, the
type of the parameter is class, which indicates that this specific parameter is a class in the OCMS. This attribute gives important information when we have mixtures of pa- rameters in the change. For example, Add classAssertion ( cngl:#inst1, cngl:#Person) the first parameter with order 0 is Inst1 and its type is instance. The second parameter with parameter order 1 is Person and its type is class. A parameter is connected to the change node using a directed edge labelled hasParameter and a change operation may have more than one parameter.
Creator. The creator represents the current user who requested the change operation. This
node is essential to provide information about who requested and implemented the change operation. This node is connected to the change node using a directed edge labelled hasCreator.
Time stamp. A time stamp is used to record the time at which the change operation is
implemented. This node stores the date and the time the change is implemented. It includes the seconds in microseconds. This node is connected to the change node using a directed edge hasTimeStamp.
changes in a change log. Change Id represents the value that is used to identify a given change uniquely. The change node is connected to the change Id node with a directed edge labelled hasChangeId.
Change order. When we represent a composite change operation, we want to keep the
order at which an atomic change is executed. Change Order enables us to know which atomic change operation is executed first and which one follows next.
Statement type. The reasoning type represents the type of the statement the user is chang-
ing. The reasoning type is eitherABox or T Box statement. This information serves as an input for the change impact analysis process.
A change can be a requested change or a derived change. Two special nodes are used from the change node to indicate the change is either a requested change or a derived change. A requested change is a change which is captured as an explicit change request. Derived changes are changes that are automatically generated to correctly implement the requested change in a given ontology. A complete change is a change which is the union of the requested change and the derived changes. Capturing this information is essential to deter- mine the order of execution of the complete change operation. The following table explains the actual information stored about a change operation in an xml file.
<FinalChange> <Change> <ChangeId>1</ChangeId> <TimeStamp>2012/05/22 18:59:47:5947</TimeStamp> <ChangeType>generatedChange</ChangeType> <Creator>Yalemisew</Creator> <Order>1</Order> <ChangeOperation>Add</ChangeOperation> <TargetEntity>SubClassOf</TargetEntity> <Parameter Type="Class" Porder="0">
<http://www.cngl.ie/University.owl#MastersStudent> </Parameter>
<Parameter Type="Class" Porder="1">
<http://www.cngl.ie/University.owl#Person> </Parameter> <StatementType>TBox</StatementType> </Change> <Change> <ChangeId>2</ChangeId> <TimeStamp>2012/05/22 18:59:47:5947</TimeStamp> <ChangeType>generatedChange</ChangeType> <Creator>Yalemisew</Creator> <Order>2</Order> <ChangeOperation>Add</ChangeOperation> <TargetEntity>SubClassOf</TargetEntity> <Parameter Type="Class" Porder="0">
<http://www.cngl.ie/University.owl#PHDStudent> </Parameter>
<Parameter Type="Class" Porder="1">
<http://www.cngl.ie/University.owl#Person> </Parameter> <StatementType>TBox</StatementType> </Change> ... </FinalChange>