2.3 Mappings to Pass from Secure Data PIM to Secure Data PSM
In the same way that methodologies for relational or OR DBs propose some rules for
the transformation of a conceptual schema into a standard logical one, in MIDAS,
mappings to pass from the data PIM to the data PSM are proposed. In this work, we
have defined the necessary transformation rules to obtain a secure data PSM from the
secure data PIM. Now, we will show these rules to collect the characteristics of
security taking as a basis the work of [17], where the different mappings to obtain the
schema of an XML DB were defined.
• Transformation of the secure data PIM: The data conceptual model, that is,
the secure data PIM, is transformed, at the PSM level, into an XML schema
called ‘Secure Data PSM’. This will be represented with a UML package
stereotyped with <<Secure XML SCHEMA>> including all components of the
secure data PSM. Furthermore, it will contain the security attributes
(securityLevel, securityRoles and securityCompartments) of the secure data PIM.
These attributes will be defined within the XML schema as global elements.
These security attributes could have been included as schema attributes but if
they were represented in such a way, they would not be considered first order
elements and the fact that they could have a multiple maximum cardinality could
not be collected either.
• Transformation of the User Profile class: This class includes the information
that we want to record about one or several users. It will be transformed by
including a global element stereotyped with <<User Profile ELEMENT>>, that
will contain a sequence complexType with all class attributes as subelements.
• Transformation of secure classes: In a generic way, a UML class is transformed
into an element of the XML schema with the same name as the class it comes
from [17]. To transform secure UML classes, stereotyped with <<SecureClass>>,
we have to include the secure characteristics that they have too. Secure classes
can have three specific attributes: securityLevel, securityRoles and
SecurityCompartments. They will be transformed into secure elements
stereotyped with <<Secure ELEMENT>>. Each secure element will contain a
complex type of sequence type, that will contain as subelements, among others,
the secure attributes, indicating with the subelements attribute maxOccurs the
number of possible instances of the security attributes.
• Transformation of secure attributes: Due to the fact that the attributes of a
class, according to the proposal of [17], are transformed as subelements of the
element that represents the UML class to which those attributes belong, if an
attribute has its own security attributes associated with it, these attributes will be
represented as subelements of the element that represents the corresponding
attribute. Thus, the security attributes defined within an attribute will be
transformed into <<Secure ELEMENT>> subelements.
• Transformation of secure associations: Regarding the transformation of
associations, in [17] it was carried out a detailed study of the most appropriate
way to map these associations at the PSM level. The associations between two
classes are transformed, in a generic way, by including a subelement in one of the
elements, corresponding to one of the classes implied in the relationship with one
or several references to the other element implicated in the association. If it was a
39