������� � ���� �� �� ��������� ��� ��
�������� �� �� ����� � ���
����� ����� ����� ��������������
��� �� � �
�
��������
��� ������� �� ��� � �� �������� �������� ��� ����� �������� ��� ��� ������ ����� � ��� �� ��� �� ��������� ��� ����������� ������ � ��� �������� �� ����� ��� ���������� �� ����� ���� ����� ��� �������� � ���� �� ���������� ���� ����� � ������ �������� ��������� ��������� �� ��� ������������������� �� ��� ���� ������� �������� ������ �� ������ ���� ��� ��������������� ������� ����� � ��� ��������� ���� ��������� �� ��� ����� � �������� ������� � ������ � ���!������ �� ��� ����� �� ���� �"���� �� � ������ ��� ������� ��� ������� �� ���� ���������� ������ �� �������� �� ��� ������ �� ����������� ��� ������� �� �������
���� ����� #��� �� ��� ���� #�� ����� �������� �� � �������� ��������$% ��&'(�) �� ��!���� � ���� ����������� � ������ �������� ������ ���� �������� ��� ���� ��� � ���� �� ��� ������ ��� #�� ���������� ���� ���� �"� ������� ����� ������ *���������� � ���������� ���� $� ����� ��) ������������������ �� � �������� ��� ��� �� ��������� ��� ��������� ����� ����� ������� ���� �� ����� �����"���� ������ �� ���� �� ���� +���� ��� ��������� ������������� % ��&'(� �� *���������� �� ���� ����������
���� ���� �� ���������������������������� ���� �
������! �� �����"��������#�$�$�$� ������%
��$#�&� &�� �'�" � �%
��!�(& �$%(����� � )&"�� *�& &�� *�+&����$�
��� �$ ,���"��$ �� �$ -$��� &# .$'���!�(& �$%
��!�!�$� ��%/���� ,0+�������!�!�$� ��%
��!�(��$%1� $� (�$&���!�(��$%
��!��� $%�������������!��� $%
��!��$#�&� &��%(�& ���2 $�����$ �$ ��&'&�& � ��
"&�� 31, #�� �&����� #����$�$� $�
�& � #�� ��&� �&����� � #�$� $
�� ����&$ ��� �$ $��� &# �$'�
(�$ #�� ��&� �&����� #�� '$ "$� �
#�$� $ '&����4 ��$� 5��� #��"$�
6 ��� �&#"$ ��� � ��� �71,896,
� ��,��&#�
���!��$#�&� &��%
��!�,���"��$%$����!�,���"��$%
���$#�&� &��%
�����%
,
��������
� ������� �
� �������� �
,�� ���������� ��� ��� � ��� ������ � � � � � � � � � � � � � � � � � � -
,���� ������� ������ �������� ��������� ��� ����������� � � � � -
,���, ������ ������ ����������� ������ ��� �������������� � � � .
,���/ ��� ������ ������ � � � � � � � � � � � � � � � � � � � � � � .
,�, ������� ���� ��� !"��"�� � #���� �� �������� � �$��� !����������� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � .
,�/ ��#� � ��%���� #���� � � � � � � � � � � � � � � � � � � � � � � � 0
,�/�� ��%���� ��� !�������&��� ������ � � � � � � � � � � � � � � 0
,�/�, ��%���� ��� !���������������� ������ � � � � � � � � � � �1
,�2 ��� '�������� � ��� ������ ��( � � � � � � � � � � � � � � � � � �/
,�2�� �������(�� ���)�� '������� *�'� ��� �������� #���� � � �/
,�2�, ������ ������� �� ��� ��(� +�&,-� ���'."�' ��� �(��� �2
,�3 �'� � /����� ��������� '������� �� "(0���"������� #����� � � ,�
,�3�� �' !���� ��������� � /��$ � ��� !������ ��� ����� +�������� ,�
,�3�, "!'� � ������� !��������� '������� �� �' ������ � � � ,,
,�3�/ *�' �������� ���������� ,*��-� ������� ������1�����&����� �� �' ������ � � � � � � � � � � � � � � � � � � � ,/
,�4 !��������� ��������� /������1��� !���������� � � � � � � � � � � � � ,2
,�- &���� '���� �� "(0���"������� '��� � � � � � � � � � � � � � � � ,4
� � ���� ����� �� � � �� ��� ����� � ���� ��� ���� ������� !
/�� ���������� � ��� ���� � � � � � � � � � � � � � � � � � � � � � � ,.
� � ���� �� � � � ���� �� �� � "#$ %&
2�� �������� ��������� � � � � � � � � � � � � � � � � � � � � � � � � � � /1
2�, ��� ������� ��� ���'."�' �� �' � � � � � � � � � � � � � � � /�
2�,�� 2������ ������� � � � � � � � � � � � � � � � � � � � � � � � /�
2�,�, ��� "������# ���������� � � � � � � � � � � � � � � � � � � � /,
2�,�/ !���� ��%������� � � � � � � � � � � � � � � � � � � � � � � � � /2
2�,�2 !���� ����������� � � � � � � � � � � � � � � � � � � � � � � � /.
2�,�3 !��(�������� � !���� ����������� � � � � � � � � � � � � � � /0
2�,�4 �������# ��%������� � � � � � � � � � � � � � � � � � � � � � � 21
2�,�- �������# +���������� � � � � � � � � � � � � � � � � � � � � � 23
2�,�. 3���� �� ��� (�4����� 3������� �� ���'."�'5 �' � � 31
2�,�0 6�$ �� ��������� ��� �' 3������� �� ���'."�' � � � � 3�
� '��� ��� (����)���� ���*�� +�#$,��$- .+/0�1 �� /2$� � 34
3�� ����������� +�& ����������� �� &�'��� &��� � � � � � � � � � � � � 3,
3�, ����������� +�& ����� �� &�'��� ���� ��� +���� � � � � � � 3,
3�/ ����������� ���'."�' "��������� �� &�'��� ���� ��� +���� � 3/
/
� � ���� �� � � � .���� �� �5�� ��� 3�4�� ��# ���'."�' �� ��� ������� ��� ���� �� +���� � � � � � � � � � 324�, +���� ��� ���������� �� �' !������������� � � � � � � � � � � � � � 34
4�,�� ��������� ���%������ � � � � � � � � � � � � � � � � � � � � 344�,�, +��� ���%������ � � � � � � � � � � � � � � � � � � � � � � 3-4�,�/ ��������� �� �' ����������5+���� � � � � � � � � � � � � � 3.
4�/ +���� ��� ���������� $��� !��������� �������� � � � � � � � � � � � � 304�/�� ��������� ���%������ � � � � � � � � � � � � � � � � � � � � 304�/�, +��� ���%������ � � � � � � � � � � � � � � � � � � � � � � 304�/�/ ��������� �� !� ����������5+���� � � � � � � � � � � � � � � 304�/�2 !�7&����� �������������� � ��� ����������� &��� ��!�8�
�� &�'��� � � � � � � � � � � � � � � � � � � � � � � � � � � � 4�
� "� � ��� ���+� � �)�� �� ��� ���� � ����� �� � 67�#$ 8%-�� ��� !������������ (��$��� *�' ��� �(����� #����� ��� ����
"������# � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 4/-�, ��� ���� ������� ���������� � *6��' � � � � � � � � � � � � � 43-�/ !��)��� *6��' �������� � � � � � � � � � � � � � � � � � � � � 40
� '��� "� � ��� ���+� � +�9� ��� ���� � ����� �� � :�5� �4.�� ��� 9��� !������ � � � � � � � � � � � � � � � � � � � � � � � � � � -�.�, !��)��� ��������� � � � � � � � � � � � � � � � � � � � � � � � � � -,
(���� � �� ������� �
;����� $ �� �� �3 �� 5�(,*����6������"�� � � � � � � � � � � � � � � � � � � � � � � � � -3 �, 5��,*����%7�"�� � � � � � � � � � � � � � � � � � � � � � � � � � � -3 �/ 8������ 6�,5�� � � � � � � � � � � � � � � � � � � � � � � � � � � -3 �2 9���������%������,9������*��� � � � � � � � � � � � � � � � � � � -3 �3 8���,*����6����� � � � � � � � � � � � � � � � � � � � � � � � � � � -3
� (���� � + ������ �37�� 5�� 6����� ��� 9��������� %������� � � � � � � � � � � � � � � � -37�, :�������� *������ 9��� ��� ��� 5���� ;"�� �� � � � � � � � � -3
� ��� ���� ��
� �����������
��� ������� �� ��� � �� ������ �������� �� � ������ � ������� ��� ��� ������ ����� �� � ��� �� ��� �� ��!���� ��� ��� ����������� �� ���� ������� ��� ����� �� ��� ������� ����� ���� ���� � ����� �� ���� �� ������������� �� ����� ���� ��<����� �� �� ��������� �� ������ ��� � �������� ������� ����������� ������ � ��� ���� �������� ����������� ���� ��� ������������������ +���� ��� ������ +��� �� ��� ��=������ +������� ��������� ���� �� ��������� ���� ����� � ������ �" ������ ��������
�������� ��������� �� � ���������� ���� ���� � ���� � �������� ����������� ����������� ��!���� �������� ���!� ����� �� ��� ��� ��������� ����������� ��� ��������� ������� ���� ������ ����� �����������
2
9�������� � �������� ������ % ��&'(� �"���� ��� ������� ����� ������������� �� ���� �� ������ ���� ������ ��� ��� �����" �� ��!��� �� �� � ���������� 5��� % ��&'(� ���� � ����� �� �������� ����� ��� �������� ����� ���;������ �� ���������� �� ���� �� ��"� ������� $����� �� ���������) �� � ������������� ������� $����� �� �� ���� �� ����� �� ���)�
���� �� ���� ������ ��� �� ������ � ������ �������� ��� ������� ����������� ����� ���� ��� #�� ����� �������� ��� � ���� �� � ������ �������� ��� �������% ��&'(� ����������� ��� #�� �� � ���� ���������� �������� ���� � ��������� ��� ��� ������� ����� �"����� ���� ������ �� � ���� ���������� *����������#�� ��� % ��&'(� ����� ��� ���� ��������� ���������� ������� $����� ��)��� ��������� $ �� ������)� �� ����� ��� ���� ��=������ ���� �� ��� % ��&'(������ �������������
% ��&'(� �� ���� �� ������ ���� ����� $%�)� %� ������� ��� ������� �������� �� ������!������ �� ����� ��!������� ��� ���������� 7�� �� �������� �������� � ������ ��!���� ��� ������� ���������� ���� ����� ���� �� ��� ��� �� ������� �������� ��������� ��� �������� ���� ��� ������� ���� ��� ��� �������>�� ���� �� ��� ������� �� ��� ��� % ��&'(� ����� � ���� �� � ����� ��������� ��������� $�����"���� ������ �����") �� ���������� ��������� $�������� #�� ��������)� (� �� ���� ����� ���� ��� ������ ��������� ��� � ������������� !��������� ������
������� % ��&'(� �� �" ������� ������ �� ������ � ����� �� �����"���� ������ ����������� �� �� ��� ������ �� ������� ����������� *�� �"�� ��������� �� ������ $�����) ��� ��� � �������� ��������� �� ���� �" ������������� ��� ������ ��������� ��� ������ ����� $�� ��) ���� ������� �� ��� #���������� ��� % ��&'(�� ��� ���� ������� ��� � ���� �� ������ ������� �� ������� �� ���� �� ��������� �����������
*���� �� �" ��������� ���� ����� �� ��� #�� ����� ��������� ����� ����� �� �������� ������ �������� ��� ��� % ��&'(� ��� ��� ����� �"�������� ��� #������� ����� � ��� �� �� ��������� �� ���� �������� 7�� ��� ����� ��� ��� ����� ������ ��������� ��� ���� ���� ���� ���� ���� �� � �������� ������ �� �� �� ������ �?�������� �� #��@� ���������� �������� '9�� ��� ���������� ������������ �� ���� ��� ��������� �� ����������� ��� ��!������ �� ������ ��� �"���������� �������� ���� ���� ��!������� ��� �������� �� ��� ��� �� �� ��!�� ��� ��������� �������� ��� ������� �� ���������� �������� �� ��� ��������������� ����!��� ��� �������� �� ?���� ��=����� ���� ��� ������ ������ ���� ����� ��"��� ������������ ��� ���������� �������� ���� ��� ��� �"��������� �������� �� ����� �� ���� ?���� �������� ��� �� ������ ���� �� ��� ��������� �� ��� ����������� ��� ��������
��� ���������� �� #�� ����� �������� ��� ��� % ��&'(� �������� ������������� �������� ��� ��� ����� �"������� �� ������ ��� �������� ��� ����������� ����� $6;%;)� *����� � ����� ��� �������������
��� � �������� ������� ���� � �� �� �"������ ���� ���� ��� �" ��� ��������� �� 5�� �������
��� ������������ �� ���� ������ �� ����� #�� ������ ���� �� ���� �� ������ �� ��� �" ��� �������� �� ��� �������� 5�( ������� 9�������� �� ���������
�� ���� �������� ��� �� �������� �� ������ ��� ���� ��� ������
3
UML Editor Constraint DiagramEditor
Flora Fact base
XML format
FloraInterpreterontology
DAML
Flora rules/queries
Class−diagramin XMI
Flora Schema
DAML−LRules
DAML Check−Engine
XML Document
XML2FloraDB
XMI2FloraSchema
Save Save
EditEdit
CD2Flora
/RDF document
*����� �A ����������� ������� �� ��� ������� �� ������� ����������� ��������
������ ��� % ��&'(� �"������ �� �� ���� �� ������ �� �������� ���������� ���� �� ����������� ������� ���� �� ��������� ��� 6;%; ���� � ��������$*������) ������ �� �� �� ��� ��������� ������ ��� ��� ���������� ����������� % ��&'(��
��������� ���� !�� ���������� � ����� ����� �� ��� % ��&'(� #���������� �� *������ �������� ��� ����� �� ������ ���������� � ������� ��� ���������� �������� $ ��� ��� �"��������) �� *������ ����� �� �����"��� ���� ���������� 5�� ��������� $���� ���������) �� *������ ������
��� 6;%; �� ������������ � � �������� ��� ������ ��������� �� 5�����"������ ���� ���� ����� � ������� �" ������� ���� ��� ������ ��������� ���+��� �� ���B� �������� �� �����
��� ���� �� ��� ������ �� ���������� �� �������A�!��� � � �������� ��� ����� �� ��� ������?��� ���� �� ��� ���� �� ��� ����������!��� � � �������� ��� ������������ �� ��� 6;%; �����������!��� � � �������� ��� �� ��� ���� % ��&'(� �� #�� ����� ����������!��� � � �"������ ��� 8%*$6) ��� % ��&'(� ��� � ���������� �� *��������!��� � � �"������ ���� % ��&'(� ��� ��� ���@� ��� ��� ���������� ������ ��=����� ���� ���� �����������!��� � � ����� ��� ��� 6;%; ����������� �� ���� �� � ����� ��� �����������������!��� � � ��������� ��� ��� 9�� ���C8������ ������ ��� � ���� �� ����>������� ���� ��� 6;%; �� ������ � ������ ��������� ������ ���� �� +�����!��� � ���� � ��� �����
���� �� ����� �� �������� �� �� �� �� � �� �����
4
� ��� �����
���� ������� ���������� ������?��� ��� ����� �� ���� ���� ��� ��� ���� ������� �������
��� ���������� ��� ��� � ��� ������
(� ��� �������� �� ��� ���� ��� ��������� ���� ��� ����������A
9����� � ������ ����������� ��� ��� � ���!������ �� % ��&'(� ������������� ��� �� �� � ����� ��� ������ ��������� ��� 9�
��� ������ ��������� � ���!������ ������ � ���� �� � ������ ������ 9'�D'6��9� 9'�D'6��9 ���� �� ������� ��� ������� � ������� �����" ���� $ 6�) ������� ����� ������� ��� ������ ������� $��� ������� ,�, ��� � ���� �������������������� �� 9'�D'6�)� ��� � ���!������ ������ � ���� �� ����� �� ������������ 6� �� ������������� ������� $��� ������� ,�/ ��� ��!������ �� �����")�
��� � ���!������ ��� �������� �� � ������� �� % ��&'(�� �� ���������������� �������� ��� ��� �������� �� $��� ������� ,�2�,)� *���������� �������� � ������ �������� ��� ����� ��� � ���!������� �� �� ������� �� �����������#���
��� ���� ��� ������� ��� �� ������� ����� ������ (� ��� ������� ���� ( � ������� �� ��� ���� ������� �� �� ������� �� ���� ��� ������ ���� ���������������C�� ������������ ��� ���� ���� ��� � ��� ������� ���� ��������� *�����, ����� � ����� �������� �� ��� ��� ���� ��� � ��� ������ ��� ������
������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������
������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������
��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������
��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������
��������������������������������������������������������������������������������������������������������������
��������������������������������������������������������������������������������������������������������������
July DecPhase 1 Phase 2 Phase 3
*����� ,A ��� ��������� ��� ���� ��������� ������� ��� ����� �������
�#�#� � � �� ;����� �< �� � �))������ �� ������ ��
��� !��� ������ �� ��� ������ ��� ������� � ��� ������� ��� ��������� ��������������� ���� ��� ��� �������E�� �� ��� ������� ,�
��� ������ ��� �� #�� �� �������E� % ��&'(� ��� �������E�� ����� ����� ����� ��� �� ��� ������ ��� ������ �� ���� ������� ( ���� � ��� ���� ������� ���� �� ��� (6' 9 � ���!������ F��G �� ���� �� �������� �� �� ����������� �� �9 ����� ����� �� ��� � 5 ������ F,,G�
-
�#�#� # ���� ;����� �5����� - +�� � �� ��)�������
��� ���� ���� �� ���� ���� �� ���������� �� ��� ������ ��� �� ���� ���������� ( �������� �� ����� �� ��� ������ ���� �� ��� �� ������ ��� ��������
���� �� ��� �� �����
�� ��� ��������� ��� �� ��� � ������ ������ 9�9'�D'6� �� ��� ���� ������ 9 ������� ��� ������ 6��� �� ��� !��� ���� ( ��� ���������E�������� ���� ��� +����9'�D'6� ������ ����� ���� ��� ���� ����� ����� +��� �������� 7�� ����� �� ���� 6� ����� ���� ������ ��� ��� �� ������ ������ 6� �� ������� �� ���� ���� ��� +����9'�D'6� ��������������� ���� � ������ ��������� � ���!������ ��� +��� ������ � ��������
,� � ������@� ��� % ��&'(� �� ��� � ���!������ ��������� ��� % ���� �������� �� ��� !������� � ������ ��� ���������� % ��&'(�$��)� ���!������� ��� �������� ��� ��� ��� �� ��� ������� ������� ��������� ����� ���� �� ������ �� ���� ��� ��� ����� (������ ( ���� � *�������������
��� ������ 9'�D'6� ���� ��� % ��&'(� �� ��� � ���!������ ����������� ���� �����@� ���� ���� ������ ���� �������� ����� ����� ��� � ���!���������� ���� ������ �� ��� ���������� ��������� 6������ 3 ���� ����� ������ ���������� ��� ������ ������ ������ % ��&'(� ��� *�������
(� ��� ������ ���� ���� ( ������ ��=����� ������ ������?��� ���� ��� ���� ����������� �� �������� ��� ������� ����������� ������ ����� /���
�#�#� �� ;����� �� ��2")
� ����� �� !���� , ��� ��>�� ��� �� ��� ���� ��� ������ ��� � ��� �� ����������� ������� ������� ���� �� ����������� ��� ����� ( ����� ���� ����� �� ��������� ��������� � ���!������� ��� !���� ����� ��� ������� ���� �� ��� ���������� �� ( ���� ����� ������� �� ���� �� �� ���� ������ ��� ��� !��� ����������� �� ���� ���� ����� ��� ������ �� ���� !��� ������� �
��� ������� ���� ��� ������� � ����� �� �������� � ������ �����������
����� ��� ��� ������� �� � ��������� �� ��� ���������� ��������� ��������E�� ��� ��<����� �� ������� �� ����� ���� ��� ��������� �� ������ ����������� ��� ������ ����������� ������������ �������� �<������ ���� �� �� �������� ��� �� ��������� � ����� �� ��� �� ������������
���� ����� ���� ��� �������� ������ �� ��������E�� �������������� ��� !������ ����� � �� ������ � ?���� ��� ����� ������� �� ��� �������� ������� ������� ���� �� �� ����� �� �� ��������� ������ ����� �� ��������� ��� ������ ������ ����� ����������� ��� � ��������� �� ��� �� �� �� ������ � ������� �������� ������� ����� �� �� ��� � ��������� ���� ��� ��" ���� �� ����������� ������� ������ ���� � �������
������ �� ������ ����� � �� �������� ����������� �� ������������� ���������������� ��� �������� ���� �� ���� � ����� �� �� ����� ���������� �������� ��� ��" ������� >��� � ������� �=���������� ��� �������9'�D'6� F�.G �� � +��� ������ ����
.
*����� /A ��� ������� ���� �� �������� ��� ������ ���� � ������ ��� ��� ���������� � �������� ���� ��� ������� ����� �������� ��� ���� �� ���������� ���� ������������ � ���� ������� ��� ��� ������ � ������ ��� �� ������ �� ��� ������������� ���� �� �� ��� !"#$
��� ���� � ������� ����
(� ������� �������� ���� ������� ����������� �� ����� ��� ����������� ���� ������ ��� ���� ��� ���������� ���������� (� ������������� �� ������� ������������ ������� ����������� ��� ���� ��!��� � ��� ������ �� ��� ��������� ��������� ���� ��� ������ �� � �������� �� �������� � � ��� �� ����� ���������������� ������� ��� ������ �� ��� ��������� ����� ����� ���� ��� � ���� ������ ��!��� ���������
��� ��!������ �� ������������������� �����" �� ������� ������� ���� ����� ����� �������� �� ��� ���������������� �����"�
�#�#� +�9 � ��� (��<�2/��� ��)����
��� 7H* $7������H��� *���) �������� F,3G ��� ���������� �� ��� ���� �031���� ��� ����� ���� ��� ���� ������ ����������� �� ��� � ���!������ ����������� �����"������ �����"� #������ ������ ����� ���������� �������� � ���!�������� ��� 7H*� �� ;"������ 7H* $;7H*)� �� ��� ������������� �� ��!����� ����� ��������
��� ��� �������� �� �������� ��� ��� ���� ������ ���� ��� ����������E���� ����� �� �����"������ ���������� ( ���� ��� ��� ����� �������������� �� ������"��
7H* ������� �������� �� � ��� �� � ������ ���� ���� ���� ���� ���� �������� �� ��� ��������� ���� �� ��� ������ @AAI@ �� ���� �� ������ �� ������ ���� �� ����� � ��� ��?����� �� ������ �� ��� ���������� ����� ��� ������������� ��� ���� ������� ��� ������
6����� �������� � ������� $@J@ ��� @K@) ��� ������ ���� ����� ��� ���� ���� �� ����������� �� �������� ���������� $�� ������� � ��� ��������������� �� � �� ! ����� ��� ! ��� ���)�
�� ����������� �� � �������� ��� �� ������ � ��������
0
��� ����� ������� �����! ���! "# ����� ��� ������ �� ������ ����������� ��������� � ��������� �� � ��?����� �� ���������� ������ $� ��?����� �� �������) �� ������������� ������� �� �� ��� � �������
�� � ������� � ���!� ����� ���� �� �� �� ����� � �� ����� � �������� �� ��� ������
��� 7H* �������� ��� � ���� ������� ���������� (� �������� �� ��� �������������� $@AAI@)� ��� & � ������ ���������� ���� ��� ����� ������ ����� ����������� L ����� ��� ����� ������ ����� ��� �� ���� ������ :������ � ����������� @M@ �������� ����� ��������� �� ������������ �� �� ����� � ��������� �� ������������ ��������� ���� �� �� �� >��� ��������� ������
$ ���� %&��� ��������� 7H* ������� ��!��� ��� �����"������ �����" ��� � ��� �� ��������J ������K AAI $!��� J���� ����K !��J���� ����K AAI J����K
M J����K N J���� ����KJ����K AAI J���K AI J�" �������KJ���K AAI $���EM ��O)�
J�" �������KAAI J���K & J���K
� ��� ����� �� ��� 7H* �� ���������� �� ����� ��������� ��� ��������� ������������ �� �������$�� ����� �� F,1G)A
�� ��� ���� ��������� ��� ��� ������ �� ��� ���������� ���� �� � ���� ����������� �� ��� ����� �� ��� ��������� �����
,� ��� �� ��� ��������� ����� ��� ���������� ���� �� � ��'����� ����� �� ���������� ������ ��� ������ $���� �� � ����� �����)�
/� ��� (�) ��������� ��� ����������� ������ ���� � �����
� ������ ������ ���� ����� ��� ���� ��� ��������� ������ �� ������ ��������������� ������ ��� ���� �� ��� ���� �� ������ ���� �� ��� ��� � ���� �� ����������� �� � �� � ������ ���� �������� �� ��� ������� ������������ ��� � �� �� �� �
�� ������ � ��� �� �� � ���� ���� ���� �������� ���� �� ������� ���� � ������������ ����� ��� ������� ��� ��� ����� ���� �������� ������� ��� ���� ����� ���� �� ������� ���� ��� ����� ��������� ����� � �� � ���������� ���� �� �� ������ ��� ��!���� ��� �����"��
�� ������ �����"� ���� �� ����� �� ��� ��"� ����������7���� �� �� �"�� �� �� � ������ ���������� �� ������� �� ��� ��� �������
���� �������� ��� ���� � ������� ��� � �������� �� ��� � ���� �� �������� ���������������E���� ���� ����� �� �� �� �� ����� ����� � ������ $� ��?����� �� �������) �� �� �� ��� ���������� �� �� ������ �� ��� ��!��� ��������� ����� ������� ����� �������� ���� ���� 7H* �������� �� �� �� ��� ��������� ���������� �"�� �� 7���� ��� +���99�
�#�#� +�9 � ��� (��<�2+�)���� ��)����
6��� �� ���� �� ������������������� �����" ��� ��<���� �� �� ���� ���������"������ ��������� ��� ������ ���� ��� �� ������� (� ����� ������ ����������� ��������� ��� �����"����������� ����������
�1
begina := b+c;
endb := d+e
program
begin end
stmt list
stmt stmt list
expression
var var
b c
var
a
*����� 2A %����� ������ ��� �� ���&���� �����
� �� �"�� �� �� � �������� ���� ���� �� ��<���� �� �" ���� ���� 7H*��������� �� � ��� �������� ������ *�� �"�� ��� �� +��� � ����� �� �� � @B���@������ � �������� �� � ������� �� �� � @���@ ��� � @����@ ��������� ��� ��������� ������ @������@ �� ��� ������������ �� �" ���� ���� �� 7H* ��� ����� ������ ��� � ��� �� ��� ��������� ����� ��� ������������� ��� ��� ������ ����� ����� ������� $��� �� ������ ���� ��)�
���� ����� ��� ����� ����� ���� ��� ��� ������ �� �" ���� ���� 7H* �� �������� �"�� �� ��� ���� ���� �������� ���� � �������� ����� ���� ��� �����������
����� ��� ���������� �� ������ ����� � ��� ��� �� �����" � ���!������������ ���������������� ���� ������ ���� �� ������ ���������� �� ( ��������� �� ��� �� ����� �� ����� �� ���� ������� ��������� ����� ���� ������ �� �������
6�� 7H* ������ �� ��� ������� ������ �� ����������E� ��� �������� ����������� �������� � $ ���� *� (� �������� � ���� ��� �� �� ��� ������� ��������� �� ��������� � ������� ���� ��� ��� ��� ��������� ������� ���� ��� ��� �������������
$ ���� *& ��� ��������� 7H* ������� ��!��� � ��� �� �������� ���� ��������������� ��!������� �� ������!����J ������K AAI J��� ����K $!��� J���� ����K !��J��� ����K AAI �!����! J���K $� J���K)LJ���� ����K AAIJ����K
M J����K N J���� ����KJ����K AAI J���K AI J�" �������KJ���K AAI $���EM ��O)�
J�" �������KAAI J���K & J���K
��� ������ ���� ����� � �� ��� ���������������� � ���� � $96:@�) ��
����� �� � ������� ����� ��� ��� ����������� ��� ���
��
����������E� ��� �������� ��������� ������� ����� ��� ��� ������ ���� ����� �����
� 9����"����������� �������� ��� ��<���� �� �����������
� H� ����� ��������� ��� ���������� �<����� ������ ���� 96:@� �� ������
��� ������ ����� �� ��� ���� ����������� �� �� ������ ���� � ��� �� ����������� ��� �������
��� ���� ������ � ����� �� �������� ��� ����������� �� �����"������ ��������� �� �� ��� ������ ��� 7H* � ���!������ ���� ����� �� ����� ����������� ����� ���������� ������ ������� �������� $ :@�) ��� ���������� ������� ������ P%� ��� ��� �"�� �� ���������� ���� ����� ���� � ������ ��� :@� ������� � ��� ���� ������ ���� F,1G� ���� ��� ���� � ���� �� ��� ���� ����������������� $���� ��� � 5 ������F,,G)�
��� ���� ���� ����� �������� �������� �� �� ��� � ��� �������� �� ���7H* �������A
� ;��� ����� $��������� ��� ������������) �� ��� 7H* ������� �� ����������� ���� � ��� �� ��������� $��� � ��� �� ��������)�
� ;��� ��������� ���� �� ��� 7H* ������� �� ���������� ���� � ��� ���������� ���� ����� ����� ���� ��� ��������� �� ��� ������ �� ��� ����������� ��������� ����� ������ ������ � ����� �� ��� �������� �� ���������� ��� �������� �������� � ������� ������
� ��� ������ �� : ���� $ ���� * �� ��� ����� �� ���������� ���������(� �� ��� �� �������� ��� ��� ��� ��� ��������� �� ��� ��!�� � ������������ ���� ���� ��� �������� �������� �� ��� ��������� (� ��� ����� ����������� ����� ���� ����� �� �������� � �������� ��� ���������� ���������
��� 7����C+���99 ���������������� ��������� �� ��� ������� ������������� �� ������� ��� ����� � �� �������� ������ ���� ����� � ���� �� ��������� ������������ �� :�� ���� ��� �������� ���� ������� ���� :� ����� ��� �������� �������� 9 $7����) �� +��� $+���99) ������� ������ ��� �������� ������
9 %;� +)���� � �� ������ , ��� F,1G �� � ���� ���������� ��������� �����!���� ��� �����"���� ������ �� ����� ��� ���� �� �� ���� ��� ���������� ������������� � � $;)7H* ������� $���� �� ����� �� $ ���� * ) ��� ��� ��������� ��� ��� ����� �������� $������ ������� ���) �� ����� �� ��� ���� �� ����������� ���� �� ������
9 %;� ������ �������� �� � ������� �� ���� !��������� �������� ������ ��������� ��� ��� ��� ��� ����� ������� ����������� $���� �� � ��� �) �� ������ ��������� $�) ��� �"��������� $) ?�����!������� ��� ����� �� ��� ���������������� �� ��� ��� �� ����� �� ��� ���������� ����� *�������� ��� ���� � ��!����� ��� ��� ���� ��� �����"�������� *���������� ���� ���� �� ��� ���� ��� � �������� �� � �� � ���� �� ��� ���� �� ��� ���� �� ��� �����
������ ������ �� ��� ��!��� �������� �� ��� ���� �� ��� ��������� ��������������
� (� ������ �� ��� �����"������ �������� �������� � ��� 7H* ��������
�,
� �� �����"������� �������� �� ���� ���� � ���� �� ��� ������@� ���������������
�� ��������� ��� �������� ���� ��� � $ ���� * �� ����� ��� ��� ���������� 9 %;� �����"������
8��� ��!���7�����#�� I� �� � ��� F �� � ���� � � ���������� � �������� ��� ������������� ���G
���� � �� � ��� �� � ��������� ?�����!������ ���� ��� ����� �� ��� ������ ������ � ����
(� F,1G � ��� ���� � ���!������ �� '���� ����� 9 %;� �� ��������� �������������� ����� �� ���� ���� �� ���� ����� �� � � ���!������ �������� ��������� ��������� ����� � ���!�������� ��� �� �� ������ �� ���� ��� ���������� �������� �������� ���������
��� ��� !���"���� � ��� ������ ��#
9�������� ��� � �� ������� �� ��� ��� �� ���� �� ��������� ����������������� ���� �� ���� ��!���� ��� ��� ������� ������ � ��� ����� ��� �����@���� �������� ���� ��� ���� �� ��� �������� ���� ����� �� ������� ���� �� ��������� �� ��<����� ������ �� ������� ��� �������� �� �"����� ����������� �����
�� ��������� ���� ����� -.� ��� ����������� 5�� ������ �� �� �� ������� ����� ���������� ���������� ���� ��� ����� $����) �� ��� �������� ������������� ��� ���� �� ��� ��������
7�� 5�� ����� �� ��� ������ �� ������ ����� ���������������� ������������� ����� ��� ����� ������� �� ������������ ��� ��������� ����������� �� ��������� ���� ��� �� ������ ��� ������������ ��� ����� �� ���� ��� �������� �� ����� ��������� ��� �������� �������� ��� �����@� ����� ��� ���������������� ����������
��� �������� ��� ���������� ���� �� ����� ���� ������ ���� ���������� �������� ��� �� ���������� ������ �� ���� ��������� �� �� ����������
���� ������� !��� ����� � ����� ������ ���� �� 5��� ��� ���� ���������� ������������ ���� �� ���� ��������� �� 5���
�#�#� �<��� ��� #����) $������ 6#$� ��� " 5����� ����<
��� �-������� .� /�� �������� $5��) $��� ���� F/2G) �� � ������ ��� �� ���������� ���� �� � �������� ��������� ���� ��� 5�� ��!��� � �������� ��� �������� ����� �� �������� ��������� �� � �����������E�� �����" �� ���������
���� � ���!�� � !"�� ��� �� ����� ��� ��� �������� ��������� ��� ���������� *�� �"�� �� � � � �� ������ ����� ����� �� � !��� ����� ������� ���� �� � �� ������������ (� �������� �� ���� � ����� 5�� ���� � ���!�� ���������� ���� �� 5�� ��������� $������ ���������������)� �� ����!��� ��� ������ ��� �����?������ �� ���������� ��� �� ��!��� ���� ��� ���� ��� �� �������� ��������� �� 5���
� �"�� �� �� � ����������� 5�� �������� ��A
���� � ��� �������� ��������� � ��������� ���� �� �� �������������� �� ��� ������������� � ������ ������� �� ��� ���� � �������� �! ���� ��������� ���� �� � ��� �� ����������������
�/
� ��� �� ��� ����������� � �� �����
� �� �
��������
� �
� � �� ��� �� �� �
����� ���
��� ���� �� �� �
��� ���� �� �
%������ � � �
� ���� �
��� 5�� ��������� �� � �������� ������� ���� �����������
�%� 0������� ,��� ��1�����2 �� ��� �?�������� �� � 7H* �������� ���5�� � ���������� %�% ��!��� ��� ����� ��������� �� � ����������� 5�����������8������� ��� ��" �� !�� F//G ��!������ �������� ��� ��� �� ���� �
��� �� ���������� �� � ��� ������������ ��� ��������� ��� ������� �� 5������������� �� �� ���� �" ������� ���� %�%�� 7�� 5�� 6������ ����� ���������� �����"������ �� ���� �� � ������������ *���������� 5�� 6����� ������ �����E�� ��� ���� �� �� ��� ��� ��" ��� ����� ��������� ���� �� %6% �
���� �� ��� ������� ��� ���� ������� $���� �����"���� ���� ��� �������) ����5�� 6����� ���� ��� �� ����� 7�� ��������� �� ����� ���� 5�� 6����� ��������� ���������� �� � ��� �� ��� ��� ��"����
��" %����& ����� �� F/1G �� � �������� ��� ������������ 5�� ����������� ���� ����� ������� 56�� ������ �� ���� ������ � ���������� ������������ ���� � �� � ��� �� �������� ���� ������� ����� �� ��� �� �� �������� $����� ���� �� � ����) ��� ���������� ���� �� ������ ��� ��� ���56�� �� ��� � �������� �� ��� ��������� �� �� � ������ �������� � ������E��
��� �������� ��� ���� ����� �� 5�� ���������� (� ����� ������ ���� ��!���� ������� ��������� �� �� ��� ��� ����� ��� ���� �� ����� ��������� (� �� ������������� ���� ���� 56�� �� ��!��� �� �� � �������� �� 5��� ���� ����� ���� 56�������� ��� � ���� ��� ����� �����������
��" �� � ���� ���������� ���� ��� ���� �� ����� ������� ( ���� ���� ����������� ��������� ����� 5�� �� � ������ ��� ������������������ �"�������H����� ������ ������ ���� �� ���� 5������������ � ����� ������� ����� ����������� ��� ���� �� ���� ������� �� � ������� ��� ��� ���� �" ��� ��� ��������� 5��� 9�������� ������� ����� �� ��� � ����� ���� �� ���� �� ���� �� ���� ���� ������� *�� �"�� �� ���� ������ ������ � � ���� �� ���� ���������� ����� ����� �" ����� �� 5�� �����"�
�#�#� ��� � #�� � � ��� ���� .+/0�1- +�#$,��$ �� ��5�
9�������� ��� ���� ��� � ���� ����������� ����� ������ ���� �� ������������� �������� ���������� �� �� �� �������� ������ ��� ���� �� ��� ��������
�"� �� ������ � ����� ������ ��� �� ��� ���������� �� ����� �� ����� ��� �����#�� $%� &�� � �������� �� ������ �� ���������� �� $%�� �#�� ��� ���������'((���������)(�&�
�2
���� ��������� ���� ������� ���� �� �� ���� ���� �� �������� ����� ���� ��!����� ��� ������ �� � ������� �� ��� �� ����������� ��� �� �� �� � �� �������� �� ���� ����������� �� �������� �� ��� ���� ���� �������� ��� �� � ��������� ����������� ���� ��� ������� $>��� ����� ���� ��� ������ �������)�
(� �� ��� ���� ��� �� ������ ��� �� ����� ����������� �" ������ �� ����� � ������ ��� �������� ������ �� ������ ���� ��� ������� $������ ���������� �������) ��� ������ ��� ��" � ���������9�������� ��� �� ��� �� �� ��� ��� �������� ��� �� ��� �������� ���� ������� ��� ������� �� ��� ���� ���� �� >��� ����� �� ����� ��� ���� �����@� ��� � ����
��� �������� �� ���� �� ����� ������� ��� ���� ��� � 9���������$/9) �� ��� ��� �� �������� �� ������� ��� ���� �� ��� ��� �������� ������ ���� ����� �� �� ��� �����"� �� ��� ��A Q���� ���� �� ���������R� ������� ���� ��� �� � ���� ��� �� �"�� �� �� ��������� �� ���� ���� �" ����������� �� ��!���� ���������
� ������ ���� ���� ��� �������� �� Q�������� ��R ��� ��� ��� �� ������������ �������� �����@� ���� ���� ��� �������� ������ ���� ����� Q����������R��� ������������ �� �� ���� � ��� �� ���� ����� ��� ����������� ���� �=����������
XML
RDF
RDFS
DAML+OIL
DAML−L
*����� 3A ��� ������ �� ������ ��� ��� ������� ��� ��� ����� � ��� � ������������ �� ��� ����� � ��� � � �� ������ ������ ���� !"�
'�� $8������� %����� ���� *��������) F,0G �� � ��� �� �������� ��!��� ���� /9 ��� �� ���� �� �� ������ �������� ���� ��� ���� ��� �� ���������� ���� ��� � ���?���� ������!��� ���� � 3��� � 4��� �� (�����1� $#8()� �� �"�� �� #8( �� ����"55666&67�& � ���� ����� �� � #8�� #8(�����@� ���� �� �������� � �� �������� �� ����� � ��� ���� �� �>���� ��� �"�� ���� ����� ������ #8(@� �� ����� ������ ������� ����� �� �� ���� ���������
����� �� ���� �� ��� ���� �������� ���� ���� ������� ���������� ��������� ��A
��� ������ �� ��� ������ �� +���� �S����� ��� �� �� ������� �� ��������
��� 8%* �� ����������� �� ���� �������� ����� ���� ����A
���� ���� �� ���������������������������� ���� �
�������9� ����� �� ��������&����&"�$�:;<=���>�������9� ����� �%
��$#�&� &�� �'�" ?? ??%
#�� ��� �� *+��� �� � ������ �� ��� *+"��
�3
� ��$ �$�"�#$??��9� ������(�$&??�%
���9� �������" ���%/���� ,0+��������9� �������" ���%
���9� ����������"��$%$���&�����9� ����������"��$%
���$#�&� &��%
�����%
���� ( ���� ���� ��� 5�� ������ ��� 8%* ������ ������ ����� ������� �"���� ��( ���� ���� ��� ��� 5�� ������� ��� �������'�� ������� ����� ����� ��� 8%*������ ���� ������ ��� ���� �� �� 5�� ��������� �� ���� ���� � ��� ����� ����8%* ������ ����� ��� � ���������� ��������� $���� ����� ��� #8() �� ���� ������ ������ ���� ��� �>���� $���� �� ����) ���� ���� ������������ ��� � �������� ������ ���� ������� ������ ��� ��������
�'�" ?? ??
������ ���� ��� ������ ���� � ���� �� ���� �������� $��� ���� #8( �� ��� ������� ���� ������)� (� �� ���� �� ������� ������� �������� �� ���� ��� #8( ��������� �!����(�� � �� ��� ����������� ����� � �� 8%*� ������ ���� ��������
�� ��� �� ������� ����!�!���� ���� ��������� ����� �� ��������� ���� ��� ��������� ��������� (� ��� 8%* �"�� �� ���� �� ���� ����� ����������� ������������� ��� �������� �� �� �������� �� Q������R� ��� ������ �� Q+���� �S�����R ������� �� �� ������� �� Q�������R� ��������� ��� � ���� ��� ������ ����� ����A
� ���8���� ��� �������� �������� $���� �������� �� ��� �"�� �� ����)�
� � �8���� ��� �"�� �� Q+���� �S�����R ��� Q�������R�
� � �� �� $���� ������ ��������)� ���� ��� ������� ��� �"�� �� �� �������� �� ���� ������� ��� ��>��� �� �� �>���� ��� �>���� �� ����"�� �� ��� ��� ������ ��������� �� ���� ��� ���� � #8(@��
6� ����� ���������� ��� ��� ������ ��������� ��� �!����(�� � ������� �� >���� ���������� ��� �� ���� ��� ���������� ���� ��� ��� ���� ��>���� D�� ��������� ����� �������������� �� ��� ��� ��� �� �� 8%*� ������ ����� ���� ���������� 8%* ��!��� ���
�������� �� ���� ������ �)(!� ����� ��� � ���� �� � ��������� �� ��� ������� ��>��� �� �� �� � �>���� 8%* �����@� ��!�� ��� �� ������ ���� �� ���� �� �������� ����� ����� �� �� ������ ��� �������� ���!� ��� ���� ��� ��!������� ��� 8%* 6����� ���������
��" *��!�(��!� ��� ���� ������� �� 8%*$6)C% ��&'(�� ���� ( �������� � ����� ������������ ����� ��� ����� ��� ����� � ������ � �������� �� �������������� 5�� ����� ���� �������������� ��!��� � ��� �� �������� �����������
���?�� ����� ��� 5�� �������� ��� ���������� ����� ��� �� � ���������� ������ ��� ���������� ��� ����� ��� �� ���������� � ��� #8(� ��� ������� ���� ���������� � ��� ����� ��� #8( ������� ���� ��� ����� ���� $����� �� �������� ���)� � ��� ��� � ����� ��� � ������� ���� ����"�#9666&�& �59����"�� #9666&�� & �59� �� ��������� �� ������� �� ��� � ����� ��� �� �� ��� �" �� ��� ������� ��� ���� +& ,�-+$��,�-# # #+.$��,�-+.& ,�-�
�� ��� ���������� ��� ��� ��������� �� ���� � ��� ��� ����� ���� ��� �� �������
�4
'��� $8%* 6�����) F/�G �� � �������� ��� ��!���� ������ � ���!� �� ������$���� �� ���� ��� �������) �� ���� �� �������� ��� ������� ��� � ���� �������� ���� � ��������� ������� �� �� �������� �� ���� ������ ���� �� ����������� ���� ����� �� �������� � �8���� ������ ���� ������ �� � ���� ���� 8%*��������� ���������� 8%*6 ��!��� ��������� ���� ���� ����� ��� �� ���������� �� �/$�����0& $����� ��� � � ���� �� ��������� ���� �)(! �����)�
��� ������� ��� �� ������ ���� ��� ��!��� �� ��� ������ �� ������ �� ������ � �������� �������� ��� ������ ��������� �� � ������� ���� ��� ����� ��$�������) ����� �� ��� ������ ��� ��� ���� ��� ������� $��� �� ������)� � ��������� �����@� ������� ��� ���������� �� ���� �� ��� ������� #����� � %�%������ ����� ����� ����� � ���!� ����������� �� ��� ��������� �� �� �� 5�� ���������� �� 8%* 6����� ��!��� ��� 8%* ���������� ������ � ����� ������8%*6 ��� � ���� �� � ��� �� ����������� ��������� ��������� ��!��� �����8%*� 8%* �� ���� �� ������� ��� � ���!� �������� �� � �������
� �"�� �� �������� $������ ��:���� �� ��� 8%* �"�� �� ����) ��!����� ��� �� ������ �/� � ��� ����/��! ��� ��� ����� % !��� ���� �� ����������� �"�� �� ���� ����� ���� ���� ����A
�������� �������� �� ���������������������������� ���� �
�������� �� �����������������������#�$�� �%
������$#�&� &�� ����6�??�" ���??%
����� ��$ �����$�"�#$??����@���$� �??�%
���������&� �����$�"�#$?? (�$&??�%
���������$ �����$�"�#$??- �&��??�%
�������$#�&� &��%
������$#�&� &�� ����6�??����"��$??%
����� ��$ �����$�"�#$??����@���$� �??�%
���������&� �����$�"�#$?? (�$&??�%
���������$ �����$�"�#$??- �&��??�%
�������$#�&� &��%
������$#�&� &�� ����6�??(�$&??%
����� ��$ �����$�"�#$??����!��??�%
�������$#�&� &��%
���������%
� �� ��� ��� � 8%*6 ������ �� ������ ������� �� � ��� �� 8%* ����������� ����!��� ���� ��� ��������� $���� ! ������� ��� �������� �� � ��������� �� �� ������ ��� ,����� �� � �����)� ����� ��� ��� ��������� ���� ��� ���������� ����� 8%* ������ ���� �� ���� �������� ���� $�� ������ ���� ��� �������� ��������� �� ��� #8� ����� �� ��� 8%* ������ ����)� ��� ��� �� ��&,��12��2����� ���� � ��� �������� �� ������� ���� ��� ��� #8( Q���#8(R&RTR&R55R������ ���#8( �� ��� #8( �� ��� �������� ���������� ��� �� ����������
��� ���� �� ������ ���������� ��!��� � ��� 8%*6 �������� ���A +���!; �� ��! ���+���:�! ���; �� ��:�! ����� ��� ����� ��� ������ ����; �� ��:� ��� ���� �� ������ � ���� �� ��������� �� �� � ; �� ��� ������+���:� �� ���� � ���� �� ��������� �� �� � ; �� ��� ��� �� ������ ������� ������ ������
��� ���; �� ��:� �� ���� ������ �� ��!�� � ���������� ��� �� ������� ������ ��=����� ���� �������� �� ��������� ��� ���������� ���������� ��������=������ ���� �� ��������� �� ���� 8%*6 �� ������ ��� ��!��� �� ����� ��
�-
��� ������� �� ��������� ���� � �� ����� �� ������ ��� ���� ������� ������ ������ ����� ������� � #8(@�� *���������� �� ������ ��� !��������� ��������� ��������� ���� �� ��� ���� ���������� ���� �� ������� ��� ��������� ��� �������� ��� �������� ���� ��� �������� �� ��� �� ��� ������� ����� �� ��� ���
��� ������� �� ��� �������� �� �� ���� �� ��� ��������� �� ��� �� ����������� ��� �������������� '��� ���� ��� �� ���� ������ ��� ��� ���� ����������� �� ��� ������� ��� ������ �������� ���� �� ������� H����� ���� ��������� �� ��� ���� �� ����� �� ��� ���� �������� �� ���� �� ��� ����� �� ��!����� ����� ���������� ��� ������� $������� ��9����'�C��D�� ����'� ����) �������� ������ � �� ����� ��������� ����� ���� �� ������ � ���� ���������� ����=����� ������ �� ������������ ���� ���������� ���� ������� ���� ��������� �������� ���� �� ����� ������ ���������� ��������� ���� ��� ������ ���� ����������� ������� ����� �� ���� �� ���� ���!��� ���!�������! ���������� ��� ���� ������E�� ���������� ��!�� ����� ����� �� �� ����� �� ����� ������� ������������ ��� ������� ������� ������ ������������� ������ �������
��"30�" $% 8D ���� ����� �������� & '������� (�������� �����)F4G �� ������� �������� ������ ���� ��������� ��� ������ ��� ����������� � ����������� �� ��� ������� �" ����������� �� 8%*6� *�� �"�� �� �� 8%*6 ��� ���������� ���� ��� ����� ;� �� �� � ������� �� ��� ����� )����� �� ���� �� � �������� ���������� % ��&'(� �"����� 8%*6 � ������ ���� ������� ��������� ��������� ���� �� �"���� ������� �?��������� ������ ������� �� �� ������� ����>�������� ������ ������� ����
��� % ��&'(� �������� ��� � ������� �� ��� ����� ��� ���� ���� ��� �$����� ( ���� ���� � �������) $��� ���� ,) ��� ��� ����� $���� �� 7��� ���� ������� ��� ��� �"���� ��� ��������� ��!��� �� �� ������� ����� ����� ��� �������C�"���� ����� ��������� ������� �� ������ ���� ��� ��" ��������������� �� ���������
6������ 2�, ����� ��� ������� �����" �� % ��&'(� ����������� �� ���� ������ ���������� �� ��� ��� �������� ����������� ���� ( ���� ���� ��������� ������������ ���������� ����� ��"������ ���������� �"�����
��� �"���� ��� �������� ��� ���� �� �� 8%*6� ���� ���� ���������� �������+���)�5����; �� ��)� �� ������ ������� ���� ��� �������C �� ������ ������ ����� ���� ���� ���� ���� ���� ��� ���� �"�������� ��� ���8������� ����������� ��� ������� ��� ��� ���� ��� ��������� �� �������
��� ���� ��:� �� ���� ������� ���� � �� ���� �� ��� ������� �� ������� �� ����� (� �� ������ ���� �� ��� �� ��� ������� �� ����� ��� ����� �� 8%*�������� ��������� ���� � �� ��� ���� �� � �� ��������� ������ ��� ������ ����� �� ��� �� ��� �� �� � �"�� �� % ��&'(� ���� ��!���� ��� �� ������ ��� A
�������� �������� �� ���������������������������� ���� �
�������� �� �����������������������#�$�� �
���� �� �����������������������������8�&� �%
�9� ����� �����'�" ?? ??%�����9� �����%
��#��� �� �!����� ��� ��� ����� ��� �� ,,���������� �� � �� ������ �� ��� � �� ������������� �� ����
�.
"��� �������
��9����'� 9� 9,��D�� ����'� D� D,����9���� � 9�
�� 9,
����D�� ���� � D��� D,
���>������� 9� �9,�������'� D�
�� D,�
����(��������� � U"�V�� U",V
��=�����(���������*��� U"�V � U",V
���� �A ��� ����� ������������ ��� '(�)*�+)�
�����@���$� � ����6�??�� �$�??%
�&�+$�$9� �����$�"�#$??#�&��??�%
���������&� ����%
���������$ ����%
������@���$� �%
��� 6� ���"# &�� �� �$ ?#�&��? ����$� � ���
��������%
H����� ���� ��� % ��&'(� �� ������ �� 8%* ������ ���� ����������� ��� ���������� ���� ��� ��������� �� 8%*6C% ��&'(� �� ��� ��� ��������+��&,4� (!��)��&,��12# # # 2- �� � ��������� ��� ��� �?�������� +��&,�!����(�� � # # #-+��&,�)(! ��&,�!� /��!12��&,4� (!��)2.-�
��� !��� ����� �� �� �� �� ������ ���� ���� �������� �� � :���� $������ � ����� ��!��� �� ��� % ��&'(� ��������)� ���� �� ��� ��������� �� ���� ���� �������� ���� �� ��������� � ��� �������� ������ ����� � ��� ������� ���� �� �� ��� ������� �� ���� �� ����� ��� % ��&'(� �������� ���!��� ��� ��� �����5 ���� �� ������ $�������� �� � ����; �� ��)� ���8%*6 �����C������)� �� �����@� ���� �� ������ ������ ��� ��� ��� 8%*6�� % ��&'(� ������� �� ����� �� ������� �� �� ����� �� � ������ �������� �� ��� 8%*6C8%* ���� ������ ������� �� ��� �?�������� % ��&'(� �� ������C��������
��� �"���� ��� �� % ��&'(� �� � ������ �"������� �� 8%*6� ��� ������=������ �� ��� ���� ���� ��� � $���� ,)� 9���� ������������ ��� �� �� ����� ������ ������� ������� ���� ����� ������� ���C�� �� ���� ���������������� �"���� ��� ���� � ���� �� ������ �?���������C���������� �� ��!�� ������������� ��� ����� ������������ �������� ����� � ������� ���� �� �������� ������� ������ ��� ��������
��� ��������:� � ������ ������� ��� ����� ����� �� ��� ��� ������ �� ������������� ������ ��� ����:�5���� ������:� � ������ ������� ��� �����C�������������� � ���� �� �������� ��� ��:� �� ���� �� ��!�� � ����� � ����������� ��� �������������
��� � ������� �+���5���+��� ��� ���� �� �������� � ����� �� ����@� ������� ��� ����� ������ ���<��� ������� ��� ����� �� ��� �>���� ������ ��� ����� �������� ��� ����� �� ����� � ��� ���� ��� ����������� ������������ �� �� ������ ��
�0
������ �������� �� �� ��� ��� �� ������� � ������ �� � �� ����� � � �� ��� �������� �� ��� ��������� ��� ����� � ��� �"����� � �������� ������� ��� ?����!������������� ������������ ��� ���� �������� ��� ����������� �� ���� ������ ������� ������ ���� � �� ��� �� ���� �� ��
*���������� � ��� ��������� �� ��� ; �� �� ����� �� ��!���� , ���������; �� �� ����� ���� ��� �������� �� ���� �� ����������� 3��'��; �� �� ��������� ��� �� ���� ���� ��� ��� �>��� ��� ���� ��>���� 3��������; �� ����������� ���� �� �>��� ��� ���� � ��� ����� �� ��� ��>���� ����� � �������
9���������� �������
��� ������'� �9������'� 9� � � � �� 9H������������'� 9� � � � �� 9H���'� U"�� � � � � "�V��9���� �D�9���9���� D�9���P���� D�U"V���9����������W �D�9��"9����������W ��D�9�����������W � �������9���������� �D��"9���������� ��D����������� � ��
���� ,A ��� ����� ������������ ��� '(�)*�+)�
��� � ������� �� �������� ���� ����� ��� ������������ ��� ����� � ��������% ��&'(� �� ���� �� �������� �� ���� ����� ����� ��� � ������� ����� ������ ����� ��� � ����� �� �������� ����� ���� ������� �������� ��������� $���F�1G ��� ��� �������� ������ %� ��� % ��&'(�)� % ��&'(� ���� ���� ������ �� �������� ����� ������ ����� �"���� �<����� ��������� ������� ���� ���� ����� (� � ���� �" ������� ����� ����� ��� ���� �� �� �� 8%*6 �� ���������������� ��� ��� ��������� �������
(� ������� 4�� ( ������� ���� ��� � �" ������ ���� % ��&'(� ��� �������@� ��
��"5" ���.'/�!� ���� � ��� ��"� ����� �� ��� @����@� �� ���� ������ ���������� �� ��� ��� ���� ������� ���������� ���� ��� ����� �� ��� ��������� ����� ��������� ����� ����� �"���� ��� �������� ����� ����� �� % ��&'(� ��������� �"���� ��� ����������� �� ������ ���� ����������� �� �������� ���% ���� �������� ��� ��� ��� ��� ��!���� ����� ��� ����� � �� ?�������� �������� ��� �" ���������� (� ���� ���� ������ � ���� �� ��� ���� ������� $����� ��� ����� �� �������� �����) ���� �� D����� ������� ����� �<����� ������� �"������� ���� �������� � �"�� �� 5�� � �������� ��� ����� �� 8����� F/G�
,1
��� $�!� � %��"�& ����&&��� !���"��� �� �#'�����������������
��� ��������� �� ��� ��" ��������� ������� ���!�� ���� ��� ��� �� ������� *���"�� �� ������������ �� ����� �������� ������ � ���������� ������� !��� ��������� � ��� ���� ��� ��� ����������� ��� �� ������ ������ �� �� �� ������� ��� ����� ���� ��������� ��������� ��������� � ��� ��� ��" �� ���������� ��������� �� ���� ����� �� � ����� �������� ���� ��� ������� �������� �� ��������
��� �������� ����������� �������� �� �� �"�� ���� ���� �� ����� �� ���� ������������
��� !��� ��� �� ���� ������� �������� ��� ����� �� #��� � ���������E����
������ �������� �������� ���� ��� ������� ������ �� �>��� �������� ��������#�� �=��� � ��� ��=����� ����� ������ ���� ��� �� ��� ����� ���� ( ���� ��������� �� ���� ��� �8��� ��������� ��� � ��� ���� �������� �� ��� ��=������������� ��� F�0G�
���� ���� '9� �� ���� ���B� ��������� '9� �� � �������� ����� ������������ �� �" ���� ��������� ����������� �� ��� #�� ������� ������� '9� ���������@� ������ ���� ��� ������� �� ��� ������ �� �� ������ �� ���������� ��� ��� ��#�� �� ��� �������
�� �� ��� ��� ��� �������� 5�� ������ ��� #�� ������� 5�(� �� ����������
�#�#� "#$ (���� + ������� � � �* � ��� (������ �� ��� � .���� �
(� �>������������ ���������� ��� ����� � �� � ���� �� �������� �� ���������#�� �=��� ����� �������� �� ��� �����
9���� �������� ���� ������� ��� ����� ��������� �� ���� ����� �� ��� ��������������� *����� 4 ����� � ����� ������� ���� ���� ��� ���� #�� ��������� ����������
� +����� ��� �� �������� � �"�� ���� ����� ������A ��� ���� �� ��������� ��� ��������� �� ��� ����� ��� ��� � �������� �� ��� ������ ��� #��������� �� � ����� �� ��� ���� �� �� �� ����������� ���� �� +����
� $��� ��=���� �� �� �������� � ����� ����� ���� ����� ������ ����� ����� ������� �� ��� �� �� ������ ���� ������� +� ��� <����� �� !���� 4�:�������E����� ��� ��� ���� ������� �� ���� ������ �� +��� �� 9&&�#�� ������ ����� �� ������������
� )�������� �� �� �������� � ����� ����� ������ ��� �������� ���� ;� ����� +� � ��� ���� ��� � ������ �� �� ��� ��� �� �������A � ��� ���� ����� ����� ����� ��� ������ ��� ����������� ��� ���� ���� ���������� �� ��� ����� �� ��� �"�� ���
� )�� ������ �� �� �������� �� �� ����������� ���� � ������� �� ��� ��� ����� ����� ����������� ��� � ������E�� �������������
��&������-� �� ��� ,�.�� %����� ��� /���� 0,%/1� ����'((����� �������� ��� ���� ��� ����� ��������� ���������
,�
Vehicle
Car
-manufacturedBy : String
+getManufacturer() : String+setManufacturer(s:String)
Person
+age : Integer
+getAge() : Integer+setAge(age:Integer)
Wheel
+dimension : Integer
+getDimension() : Integer
In this example a caronly has one instancevariable
+driver +drives
4
*����� 4A ( ����� ,�) ����� ������
��� ���� �� ����������� ��� ����������� ����������� � ��� � ��������� ��������� ������ ������������ ���� �� !���� 4 ��� ����������� ������ ���� +� ����"����� ���� ���� @� ��� ���� ���� ���� ��� ���� � ��������� �� ��� +� � (��� ����� ������ �� ����� Q�R �� ������� �� �������� ��� ��������� ���� � ������������ �� � ���� �� �������� �������� $�� ���� ��"�)�
����� ��� ������� ����� ���������� �� #��� �� ����� ��� ���� � ��� ��������� ��� ( ��� �������������� ������� �� �� ��� ������ ( ���� ��������� ������ ���������� ���� ��� �����
������ ���� ��� ��� �� ����� ��� ����� ��� ��������� $�>����) �� ���������� �� ��� ������ ������ #�� ����� �������� ��� ����� ��� ��������� �� ��������������� �� ��� ����� �������� � �>��� ������� ����� ��� �������� ����� ��� ������ �� ��� ���� �� ����� ��� ������� �� ���� � �� �8���� ��� ��/�� ���� ����� �� �� �>��� ������� �� � �������� 9���� �������� ��!�� ��� ���������� �� �>��� ���������
�#�#� �($� � ��<���� (���� � $������ �� "#$ #����
����� ��� ���� ��������� ������������� ��� ������� ��� ����� ����������� � �������@� � �" ������ ���� ���� ��������� *�� �"�� �� ��� �� ����� ������ ������������ ��� � �" ������� �� ���� ��� ��" ����������� ���� >,�� � ��� � ��� ��� � �� ������ %? ��� � �9 ������ � �" ������ ���� ����� ��� ������������� �� #��� �� ������� ���� �� ���������� �������� ��� ��� ���� ���:�8��� +��� ���� �������� $'9�) $��� ��� - �� F�0G)� '9� �� ��� �� ��� #���������� ��� �� �������� �� � ���� �� ���>������� ���� #�� ����� ���������'9� ����������� �" ���� ���� ��� ��" ���������� �� ��� �>��� ���������
'9� �� � �� �� !��������� �������� ����� ��������� ��� �� ������ ����� ������� '9� �" �������� ���� � �� �� '9� ��� ���� � ���� �� � ����� ������������� �������� �� ���@� � ���� �� � �������� ���������� ���������
��� ������� �������� �� �� ���������� ���� ��� ��� ��� ��� �������� �� ���
,,
��� ���������� >,�� � ��� � � �� ��� � �� ������ %? ��� � �9 ����� ��'9� � ������� ��A
� ��!6� ��� ��7,�������������� �� �.
���� ��������� ����� ���� � ��������� ��� ���� �>��� �� �� � ��� �� ��� �>�����������
;��� '9� �" ������� �� ������� �� ��� ������ �� �� �������� �� � � ���!��� �� ��� �������� ���� ��� �� ���� �� ����� �� ��� �����"���� ��������� ������ �������� ���� ��������� ���� ��� �" ������� �� �� ���������� � � ��� �������� � ���� �� ����� ��C ��� ���������� �� ��������
�#�#� 6#$ #������� ��������� 06#�1� ������� ��� �� =�� /������ "#$ #����
��� ����������� ����� ��� ��" �������� ������� �� �� ������ �� ��� � ������ �� ��=����� ������ 9�� ���� ���� 6������� ;���������� $9 6;) ������ ����������� ������ $#�� �������)� �������� �� ��� ���������� ��� ������������������� %�!���� �������� ������ ������� ��� ����� ����� ������ ���� �� ������������� 5�( �� ���� � ���������
7�������� 5�( �� � ���������E�� 5�� � ���������� ��� #�� �������
SuperClass
SubClass
*����� -A ( ���� ����� ����� ������ ��������� ������� ��� ���������� ��� ������������
��� 5�( �� ����������� �� � #�� ����� �� ���� ������ $����� ��� !�� ��E��� �����)� ���� �� ������ 5�( ������ �� �������� ��� ��� ���� ����� ����� ���� �������� �� �'*� � 5�� ������ � ���!����� �������� ��� #�� ����������� ���� ��� ���� ������� :���� ��� #�� ������� �� !���� - ��� D�������#�� ���� $��� � ����"F8;*G) ���� ������ ��� 5�( �� ����������� �� !���� .�H��� ���� ��� 5�( ������ ���� �������� Q�������R ����������� ���� ��� ���������� ��� ������� ��� ����� ����������� �� ������ ���!� ����������� ���� �� ��������� �� ����������� �� ��� ������� �� � ���!�� �� ������� !���
%����� �� ���� ( ���� ����� ��=����� #�� �������� ��� ��� �� ��� !�������� ���� 5�( �� ��� ���� ���� �� ������ 5�( �� � ������ �������� �� �� ���� ����� ���� � ����� ����� �� �� �� �������� � ��� ����� $�� ����X)�
�� ���� ���� ������ �� �� ���� �� ������ �� ���� ���� 5�( �� � �������� 5�������� ��� #�� ������� ��� ������� ��� ��� ������� �����������
��� ������� �� ��� ����� ���� $%" � ��� � ��� �� ����
,/
<?xml version="1.0" encoding="UTF−8"?><XMI xmi.version="1.0"> <XMI.header> <XMI.documentation> <XMI.exporter>Novosoft UML Library</XMI.exporter> <XMI.exporterVersion>0.4.19</XMI.exporterVersion> </XMI.documentation> <XMI.metamodel xmi.name="UML" xmi.version="1.3"/> </XMI.header> <XMI.content> <Model_Management.Model xmi.id="xmi.1" xmi.uuid="127−0−0−1−69b4bb:e9abd52f41:−7ff8"> <Foundation.Core.ModelElement.name>untitledModel</Foundation.Core.ModelElement.name> <Foundation.Core.ModelElement.isSpecification xmi.value="false"/> <Foundation.Core.GeneralizableElement.isRoot xmi.value="false"/> <Foundation.Core.GeneralizableElement.isLeaf xmi.value="false"/> <Foundation.Core.GeneralizableElement.isAbstract xmi.value="false"/> <Foundation.Core.Namespace.ownedElement> <Foundation.Core.Class xmi.id="xmi.2" xmi.uuid="127−0−0−1−69b4bb:e9abd52f41:−7ff7"> <Foundation.Core.ModelElement.name>SuperClass</Foundation.Core.ModelElement.name> <Foundation.Core.ModelElement.visibility xmi.value="public"/> <Foundation.Core.ModelElement.isSpecification xmi.value="false"/> <Foundation.Core.GeneralizableElement.isRoot xmi.value="false"/> <Foundation.Core.GeneralizableElement.isLeaf xmi.value="false"/> <Foundation.Core.GeneralizableElement.isAbstract xmi.value="false"/> <Foundation.Core.Class.isActive xmi.value="false"/> <Foundation.Core.ModelElement.namespace> <Foundation.Core.Namespace xmi.idref="xmi.1"/> </Foundation.Core.ModelElement.namespace> <Foundation.Core.GeneralizableElement.specialization> <Foundation.Core.Generalization xmi.idref="xmi.3"/> </Foundation.Core.GeneralizableElement.specialization> </Foundation.Core.Class>
<Foundation.Core.Class xmi.id="xmi.4" xmi.uuid="127−0−0−1−69b4bb:e9abd52f41:−7ff6"> <Foundation.Core.ModelElement.name>SubClass</Foundation.Core.ModelElement.name> <Foundation.Core.ModelElement.visibility xmi.value="public"/> <Foundation.Core.ModelElement.isSpecification xmi.value="false"/> <Foundation.Core.GeneralizableElement.isRoot xmi.value="false"/> <Foundation.Core.GeneralizableElement.isLeaf xmi.value="false"/> <Foundation.Core.GeneralizableElement.isAbstract xmi.value="false"/> <Foundation.Core.Class.isActive xmi.value="false"/> <Foundation.Core.ModelElement.namespace> <Foundation.Core.Namespace xmi.idref="xmi.1"/> </Foundation.Core.ModelElement.namespace> <Foundation.Core.GeneralizableElement.generalization> <Foundation.Core.Generalization xmi.idref="xmi.3"/> </Foundation.Core.GeneralizableElement.generalization> </Foundation.Core.Class> <Foundation.Core.Generalization xmi.id="xmi.3" xmi.uuid="127−0−0−1−69b4bb:e9abd52f41:−7ff5"> <Foundation.Core.ModelElement.isSpecification xmi.value="false"/> <Foundation.Core.ModelElement.namespace> <Foundation.Core.Namespace xmi.idref="xmi.1"/> </Foundation.Core.ModelElement.namespace> <Foundation.Core.Generalization.child> <Foundation.Core.GeneralizableElement xmi.idref="xmi.4"/> </Foundation.Core.Generalization.child> <Foundation.Core.Generalization.parent> <Foundation.Core.GeneralizableElement xmi.idref="xmi.2"/> </Foundation.Core.Generalization.parent> </Foundation.Core.Generalization> </Foundation.Core.Namespace.ownedElement> </Model_Management.Model> </XMI.content></XMI>
*����� .A #$% ������������� ��� ��� ��� ����� �� &���� !�
��� ���������� ��������� %��"�&�(��� �����������
9��������� �������� �� � ������ �������� ��� �" ������� ����������� �� #����������� ��� �������� ��� !��� ���������� �� F�,G ��� ��� ��� �" ������������ �� F0G�F.G ��� F�2G� D���� �� ���������� �������� ���� ���� ��� ������ �" ���� ��C ��� ���������� ��� ������� �� � ������ ���� F�/G� ��� #��������� ��� � �������� �������� �� �" ���� ����������� �� ������� '9�� ����� �� �� ���� ���������� ��������Y ��� ����� ��� ������ �� ���� '9� ���� ��<���� �� ���������� �� ��� �� ��� ���� ��� �� �� ��������� �� �������� ������������ ���������� �������� ��� ��� ���� ������� ��� ������ ����� �� ���������� ���� ����������
��� ���������� ������� �������� �� ����� ���� �" ������ ��� �� ����� �������� �������� ���� ������� �� �������� ' �� ?�������� ��� ���� ��� �" ������������ 9%@� ��� ���� �� '9�CD�������� ������ ��!���� ��� ��������� �� ��� ������������� ��������� ��� ����� �������� �� ��� ������ ���� 9�������� ��� �����"���� ��� ������� 9%�A ��� ������ � $��� � ����" 9)�
(� ���� ������������ ( ���� ��� ��� �������� �� ����� � ��� 9%;������ ����� �� ���� ���� �������� ( ���� ���� �� � ���� �� �� ����� ��� ���������� ��������������� ��� � ������� ���� ��� ����� ��� ����� ���� ��� $6%�) ��� ��� �������� ���� ���� ���� ����
6 ���� �������� �� � ����������� �� ��� 9%�� ���� ��� ���� �� <��� ����� ��� ��� ��� �� ���� *����� 0 ����� ��� ���� ����� �� �� � ���� ���������
��������� ��������� ����� � �� �� ��� �� ��.������ ���� ����� ,, ������� ����������� ��� ���� *%�
,2
class1 class2class1 class2
class3
element
*����� 0A � � �'���� �� ������ ������� ��� &��� ��� � ��� ��� ��������������� ��� ��� � � ���� �� ����� ��� ������ ����������� � � ��������
� ���� ��� �� �������� � ������� ������ ���� �� ��� ��� ���� $���� ����%!����* �� !���� 0) ���������� ��� �� � �� ��� �������� �� ��� ���� ����������� �� ��� ��� �>���� �� � �>��� ������� ���� ��� � ���!�� �� ��
� ����� � ��� �� �������� � ��� ����� Q����R ����� �� !���� 0 ���� ��������� ����� 6 ����� ��� ���� �� ������ �������� �� ����� � ���� ���� � ������ ���� $�� ��� ��� ������� ������ �� ��� �"�� ��)� �� � ��� ������� ��������� � ����� ����� $�������� � ����) ����� ��� ������ � ������������� �� 6?���� ����� ������ � ��������� ������� �� ��� ���� ����� ������������ ��� �"������� �� ������� ��� ������� �� ��� ����
� ; 8������ $��� ����� �� ��� �"�� ��) ��� �� �������� � ������� ���������� ��������� D��>������� ��� ���� �� ���� ��� ������������ �� �������� ����� ����� ���� �� ��������� ��<���� �� ���
��� �� ����� �� ��� �������� �� ���� �� �" ���� ����������� � ������ ����$������������� ����������� ��� ���>��������)� ��� � ����� ��� ���� �� �" �������������� ���� ��� �������� �� ��� ���������
��� ���� ������� �� !���� 0 ����� ��� ������������ ������ ��� ����� ���������� ��������� ���� ��� ������������ ���� � �� ��� (� ���� �� �� ����������� #�� ����� �������� �� ����� ���� ���� ����� ������ � ��� �>���� ������ � ������ � �������
��� ������� �� ��� ����� �����A
�� '�� ����� � ����� ������� ������� ��� �������� ������� �� ������ ��������� ������� �������� H���� � ����� ������ � ��������� ������� ����� ��� �� �������
,� � ����������� � ����� ����� ��� ���� �� ������ ���>��������� ��� ��������������� �� ��� ��������� � ���� ��A � �������� � ������� � �������������� � �������� � ������� � ������ � ������
��� �������� ������� �� ��� ������ ����� ���� ������� �� !���� 0 �� ��� ����>������� ������ � ��� , �����
*�� � ���� �������� $������� ��>�������) � ������ ��������� ��� ��� ���!��� �� F0G�
,3
9��������� �������� �"���� ��� � ���� ������� �������� ���� ��� ����� ��A� 6� ��� ����� �� �����
Car
Person
Integer
18
driver
age
>
*����� �1A (�������� ����� �'�������� ��� �� ������� �� ��� )$* ����� ��&���� +, ��� ������� -�.�- ��� ��� �/������ 0(* ��������
��� �"�� �� ������� $!���� �1) ����� ��� ��� �"�� �� '9� ���������� ��������� ,�3�, ��� ���� �� 9% ��������� ��� @L@ �� ��� +� ������� �� ���������������� ?�����!������ ���� ��� ������ �� ��� ����
� ����� ���� � ����� � ������ ��� � ������� ��� ������ ��� � � ��������� � � ����� ��� ������ ��� � � ������� �� � � �������
� #�������� ?�����!������ ������ �� �������� � ���������� #�������� ��������@� � ��� ������ �� �� ������
D������ ���� ���������� �������� ���� � ��������� �� ������� 4�/�
��� )���� !���� �� �#'����������� !���
� ��� ��� F�3G� ��������� ������� �� � ��������� ���� ���������� ��� ���������� � � ������ �� ����� ���� ��� �8���� ������ ���� �� ��������� �� ������ ����� ��� ��� ���� ��������������� ���� ��������� ��� ��� ������ �� ���*������� ��� �� ����� ������ � ��* $��� � ����" 9� �"�����
6� �������� *������ �� � ����� ���������� ������ ���� ; � $��� F,.G ���������������)� �� ���� ���������� �>��� �������� ��������� *������ �����@���� ��� �������� ����� �����"� �� ��� *������ ����� ��� ���������� �� ������������ ���� ������ ������ ����� ��A
�� � ��� ��� � � � � ��
���� ���� �� �� � ����� �������� ���� ��������� �� �������� �� ���������� ��������� ��� � �������� ���� ������� ���� � � �� ������ � ��� �� ��� ��������� �� ��� ���������� ���� �� ��� ����� ��� ���� ��� ��������� ���� ���������� �� � ����� ���� ������ ���� ���� �������� �� �� �� ������ � ����� �
��"� ���� ���) " ���� ���� ����� ������ �� ��� ����� �� ������� ��� �������
,4
���� �� ������ ����� (� ��� ���� �� *������ ���� �� �� ���� ������� �� �� � ��������� ��� �� �������� ����� ����
�!�� � ��� � � � �!�� � ��
���� ����� ���� ��� ������ !� ��� � ���� �� ��� �>��� � ��� ������ ��������� ���
� ����������� �"������� �� ��� �������� ����� �" ���������� �� ��� ���������� ����� � �� ���� ���� ����� ���� ���� �������� ��� ���� ��������� ��������� ���� �� ���� ���������� ��� ��� ���������� �� ���� � �� �����@� ������ �" ����������� ���� ��� ������������� ��� *���� ������ ���������� ��� *������ ���������� �� �������� ����� ��� ���� ��� 567 ����� ������ �� �� ������ ���������
*������ �� ���� ����� ����� ��������A �� �� $�������)� �>����� $����� ��)����������� ���� � �"�� �� �� *������ �����"A
11 ������ ������
������ �� �����
��� �� ������� ���� �� �������
11 $����� ���������� ����� �� �����2���� ������, ���� �� ����2����
������� ����� �� ������� ���� ��� ������� ������� ��� ��������
11 ��������� ���
������� �� � � � ����������� �� � �� � � ����
11 ����� ���� ��3���� ����� �����
���4�� �������25���, �����
���4����, ����4���
11 6����4 ��� ���7� ����
82 ��� ����25#"�
# 9 ����
��� ����� �� ��� ������� ��� ���������� ���� � ���� �� �� �>��� $���� ������ ��������� ���� ��������� �� +���)�
��� ����� ������������ ��� ����������� � ���!������� ��� ������������ ��������� �������
��� 567 ������ ���� ���������� ��� ����� � �� ������ ���� �� ��� ������� ��� �� ����� �������� ������ �� � ����� ��� �� ����� ��� ��������� ��� �� ������� ��� ������ � �� �"�� ��� �� ��� ���� �� ���� � ������ �� ���������� ��� ����� �������� ��� �������� 6 ��� �� �������A
Y� �����$@���� �� � ������@)Z �����$)�
��� @Z@ ���� �� ���� �� ������ ��� ������� 6���� *���� �� ���� �� �� �� 567���� ������� �� ���� ��� �� *�����
,-
����� ������ � ���� ��� ��� ������� ������� �����������
��� �������"�� � ��� �*�*
��� ������� ����� ��� �������� ���������� ��� ��"������� ��� ���� ��������������� ���� �� D�������� ��� '���;���� ������ � ��� ����� ���� ��������� �������� ���������� �� �������� ����� ��� ����� �� ��� ����������
����� ����� �� ����� $�� ��������� D������) ���� ��� ������ ��� ?���� �������� �� ��� ���!���� (����������� !���� ���� � ���� ��� ������ ���� ������ ����������� �� ������ ����������� ������� ���� ��� ������� �� ��� �������� ���������� ������� ���� ���� ��� ���� � �� �� ��� ���� �" ������� ���� (������������ (� ����� ��������� � �������� �� ����� ����� ��� ��������� ����������� ������� �� �" ���� �� ����� ������� ��� ������ ������ ���������� �������� � ��� ���� �������� ������
(� �������� ����������� #�� �� ���� � ��� ���� ���������� �������� $���������� ,�3)� (� ��� � ����� ���� ��� �� �������� ��� �������� ������ ������������� �� � ������ ������ ������� ������ ���������� ��� #�� ����� ��������$��� 2)�
(� �� ���� ( ���� ������ �� �� ����������� ��� ������� ���������� �� ���������� % ��&'(�� �� �� ���� �� #�� ����� �������� ��� �������� � ������������������� ( ���� ������� ��� ������� ����� $6������� � ;%����� ;�����������)� !���� ���
��� #�� ����� �������� ��� ���� �� �� ������ ���������� �� ��� % ��&'(��������� ��� ��� ���������� �������� ���� ��� ���� �� � ������ �������� ���$�� ��) ���� ������� ���� ����� ���������� ��� 6;%; ������ � ������� ��� #�� �������� ��� % ��&'(� �� � ���������� �� ��� *������ ��������$5�(,*����6����� �� !���� ��� �� >��� ���������� ��� ������� �� ����)� �������3 ��������� ��� ���� % ��&'(� ��� � ����������� ���������� ���� ������������������ �� *������ ����� ��� ���������� ��� ���� ��� �� �������� $9%,*������ !���� ��)� ������� 4�/ ��������� ����� ���������� ���� 5�� ����������� *������ ����� ��� ���� ��� �� �������� $5��,*����%7 �� !���� ��� ������������ *������ �����C���������� ��� ���� � ������ �� ��� *�����, *������������ ��� ��� ��� ��������� ����� $�������� ��������) �� ���� �����������
��� 6;%; ������������ ����� �� ����� �� ���� �"������ ��������� ��� �������� �� ������ ��� �� ������ �� ���� ��� �� ��������� ���� ��� ������������������ ������ ��� ��=����� ������ ������� �� ��� ������
% ! 8�" �������� ��� ���� �"������ �������� ( ���� ����� ����� ��=�����A8������� 8���� ��� #�� ��� D������� #�� $��� 9)� � �� ������ ����������� ( ��?����� ���� ��� ������ ��� ��� ��������� �� �" ��� ����� �������� ��5�( ������� ��� ��� D������� #�� ����� �� ����� �� 8������� 8��� ��� ����� ����� ��� ��� �� 5�( �� ��� ������ ��� ��� ����� �������� ������� ����
������'((������������������(�������� ������'((��������������������)����������(�������(�� ������ ��� $%" ������ ��� �� ���� �� ��� �� ������ ������� �� � ��������� ���.��
0����'((��-���������������������1 �� ��)� +��� ��� �� �� ��������� �� $%"� ��� �� �� �����������
,.
UML Editor Constraint DiagramEditor
Flora Fact base
XML format
FloraInterpreterontology
DAML
Flora rules/queries
Class−diagramin XMI
Flora Schema
DAML−LRules
DAML Check−Engine
XML Document
XML2FloraDB
XMI2FloraSchema
Save Save
EditEdit
CD2Flora
/RDF document
*����� ��A ����������� ������� �� ��� ������� �� ������� �������������������
��� 6;%; ���@� ��� ��� �� ��� ��������� #�� ������� ��� ������ �� ������5�( ���� ���� $( ���� ���� D������� ��� �� ��� ��������)�
% ! � �������� ������� ���� � �� ���� � �"������ ���� ���� �� �� ��� �������� ��� ��� ����� �������� �� �� 5�� ������� ���� ������ � ������������ � ������ � ��� �� ������� ����������C����� $( ���� �� ���� �"�������� �� ����������� �� ���������� �����)� �� �� �� � ���� ��� ����� �� ����������� ��� ������ ��� '9��
��" ��� ��� ���� �� �� ������������ ������ ��� ��� ����� ��� ������������������� ���� ������ �� �� ��� �������� ����� $ ������ ����) ��� ���� ������������ �� ������������� (� ���� ������ ��� 6;%; ������������ �� ����� ��������� ��������� �� ��� 6;%; $�� ������� ��� ����� ��� ���������� ��������)����� ��� ������� ��� ��� ���� �� ���� �������
% ! �� ��5� *������ ������ �� ���� �� ��� ���������� ��������� ������� ��������� ��� ���� �� ��� ��������������� �� ��� �� ���� % ��&'(� ����� ���� *������� ������ �� ������ ������ �� ��� ��������� �� �"���� % ��&'(����� ���� ������ ������ (� �� ����� ��� � ������ ���� ������ ������ �� ������% ��&'(� ��������� �� ����� � ��<���� �� ��������� ���� ������ ����� ����
,0
��� ������� '� ������ ��� ��� �� � ����� �� ����������� ��� % ��&'(������@� ���� �� ��� ���� ��� ��������� �� ������ �� ����� ���� �� � � ����� �� ��� ��������� ��� ��� �����*���������� ��� �� ��� �� ��� ������ ��� ��� �� �� ������ � �����B�����
��������� ������ ��� % ��&'(�� �� ��� �� ������ �� ��� ����� �������� ������������������ ��� ��� �� �� �������� ������ ��������� ��������� ������ ����� ����� �� ��� �������� !���� $��) ��������� ���� ���� �
@����@ ��������� ������ ��� % ��&'(� �������� �� ���� ���� �� �"������ �������������� ��� ��� ��� ���������
� �������� �� ������� ,�2�, ��� �������� ���� �� �������� � 8%* ������������ ���� �� ��������� ���� �� ��� ��� �������� �� ������ ��� ������� ��������� ��� ����� 7�� ���� �� ��� ����� ��� ���������� �� ������� ������ ���������� ����� ��� ������� �����"C���������� ���� �� ��� �������� ��� ��������5�� �� ������������� 6������ -�� �������� ��� ���� �� ��� ���� �� ��� ( ���������� �� ��� -.�*� ���� ��� ����������� ���� 8%* ���������� �� *����������� �� ��� ��� ���� ��� 5�� ����������� �� ���� ����� � �����(� �� ��� ���� � ��� ���� ���� ������ ��� �"�� �� � ��������� ��� ���
6;%; �� � ����������� ��� ��������� ��� ������ ��������� �� ���������� ��������������� �� �������� �� � ���� �� � ������� ��������
����� ���� �� ������ �� ��� ��
��� * ������ ���������
��� ������� ������ �������� ��������� ��� #�� ��� ��� ������� � ����� �� �� �� ����� 6���� % �� �� ?���� � ��� �������� ����� ��� ��� ��� ������������ #�� ��!��� ��� ��� �� ����� ���� � �� ��� ������� ����� ��� � ��� ��=��������� � ������� �� � �� ��� ������ % �� ��� #��� ����� ���� �"���� �P���� ��!�� ��� % ���
(� �������� � 9����!��� ��� ��� F,2� ,/G � �� ��� ���� #�� ���������������� 8%*6 �� ��!������� �� ��� ��� ��� �� �������� � ��������� ��� 5�( �� �����������
���� � 56�� ����������� ��� �������� >��� ���� � ���� �"�� �� �������� ��� ����� ��� �� ��� �" ������� � ���!�� �� ��� �������� �� � ������� �� ��� 56������������ ��� ��� ������ ��� ��������� ������A
� (� �� ��� ������ �� �" ���� ��� ���; �� ��:� �������� �� ��� #�� ��������� (� ����� ���� ��� 8%*6 �� ������ ��� ��� ������� �� !����������������� �� ��� #�� ��������� ���� ��� ��!�� ��� ����� ������� �������� ��>�� �������� ������ #�� ��� 8%*6 $��� % ��) �� ��� �������� ��� �� ������� D�� ������ ��� �������� �� #�� ����������� ���� �� ��������� ���� ���� ��� >��� ���� �� ������� � �� ���� ������� ��!����� ��� ����� ��� ������� �� ���� � ����� �� ��� 8%*6 ���������� �����������
� ��� ���������� ������ �� 8%*6 $��� % ��) �� �������� 6���� �� ��������� ������� ���� �� �� �������� ��!������ ��� ������ �� ������� ��������
/1
��������� �� ��� �� �� �� ��������� �� � ����� ��� #8( ��� ��� �� �����C������ ���� �� ��� ������� �� ��� �� ����
(� ��� ���� �� 9����!���� ���� �� �� �� ������ #�� �������� �� 8%*6 ��������� � ��<������ '� ������ ���� � ����� �����@� ���� �� � ���� ��� ��������������� �������������
������� 9����!���@� �������� ������� � �������� ���� �� �� ��� ��<�������� �� ����� % ��&'(� �� ���� ��<���� �� �� �� #�� ����� �� ��� ������� ��" ���� �� ������������ ������� ��� ����� ��� ��" �����������
��� ���� �������� �� F�G� � ��� #7'� ��>���� �� ����� �� ������ ��� �#�� ��!�� ��� % ��&'(�� ��� ������� ������������ ��� ��=������� ������#�� ��� % �� ��� ���� ����� ��� ���������� ���� ����� ��� ��� ������������������� ������ #�� ��� % ���
� D�� ������ ��� !��������� ���������
� D�� ���� �������������
��� ������ ��� ���� �������� �� �� ������ ���� #�� ��� �������� �� ������>������������ ���������� ��������� ���� �� +���C9&&C6��������� ��� ��� �� ���� �������� ���� ��� ��� ��� �� ����� ����������
���� � ����� ������� ���� ��� #�� �������������� ���� ��� ������� ������ �� ��� �� ���� ������� �� % �� ����������� ������ �������� ��� �������������� ��� #7'� �� ��� ��!��� ������ ��� ����� % ��&'(� ��������� �� ����� �� �"������ #�� ���������� $��� #��@� �"������� ����������)���� ������� ����� ��� ��� �� ���� ��� ����������� ���������� �� % ��� ��� ����� ���������� �" ������ ����� ��� �������������� ���� ��� #7'� �� ����� ���� ��� #�� ��������� ������ � �"������ ���� ��� ���������� �� ��������� ����� ��������� *���������� ��� ����� ��� ����� �����@� ���� �� ���������
���� ������� ��� ������� ����� ( ��� !������ �� ��� �� ��� ��� ( ���������� ����@� ���!� ���� ��� �" �������� �� ������� �� ���
��� ��� ������� ��� ���!+��! �� $�!
�#�#� >����� �))����
��� ���� ��� �� ������ � �� ��� ������ % �� ��� #�� ���� ��� ���� ����� ������� #�� � ���!������ ��� �������� #�� ������ �� �� ���� ( ���� ���#�� �"������� ���������� ��� ������! ������ ����� ��� ���� ������ '�� ����� �������� ����� ��� �� ������ ����� ��� ��� ��� % ��&'(� �������� ��� ����� ���� �� ������� ��� ��� �������� � ����� ���� ���� �� ������� ������������ #�� �������� ����� ���� ���������� ���� �� ���� ������ �� ( ���� ������� ���� ��� ����� ����� ����� ��������� ����� �������
��� ��!���� � �� ��� ������ ��� ���������� ��� ��� �� ����� ���� ����������= ������ ��� ��� ��"��� �� ��� ������ ���� ���� �� ��� ����������� ������ Q�����������R �� ��� �� ���� (� ��� ����� � ��� �� ���������� ��� ����������� ��� #�� ���������� ���� � ���� ����� �� ��� ��������� �� ��� % ��&'(������������ ��� � ���� ��� ��" ���������� �� ��� ���� ��� #�� ��!�� ������������ 6���� ( ������ ���� ��� ����� �� �� �� ���� �� ������ ��� �� ( ���������� ��� ������ ������������
/�
�������� ��������� ���� � ����� �� ���� �� �� ����� �� ��� % ��&'(��������� �� ���� ����� �������� ����� !�� �� ��������� ���� ����� �� �� ���������� �� ��� ������ ��� ���������� 7�� ���� �� � ����� ������H��� ���� ��� ���� �� ���� ���� �� �� ����� �������� ������ ��� �� ��� #��
����� �� ������ ���������� ���� �������� �� ��� ��� ���������� �� ������ ������#�� �������������� ��� ��������� ���� �� % ���
(� ��� ��������� ����������� ( ���� ������ ��� ������� �����" �� % ��&'(��� � ���������� �� #�� ��������� ��� ���� ��� ���� % ��&'(� ������������ � �� �� �� � ������ ������ #�� ��������� �� ������ �� ���� �������� �� ��� �� ���� �� ���� ��� ���� �� ���� � ��������� �� ���� � ���������" �������� �� % ��&'(�� ���� ���� � ���� �� ��� ������������ (� �� ����������� ���� ��� �� ��� ���� �� ��!��� ��� ���� � ���� �� ������ 8%* 6������������ % ��&'(� �� � �� ����� �� 8%*6���� ���� ��� �� �������� ���������� ��� ��� ���� �� ��� ���� ��� ����
�� ��� % ��&'(� ��������� ������ �����*������ �� �� ���� �������� ( ���� ����� �� ��� #�� ��!�� ��� % ��&1(� ��
�).�@:(�53.�� ��� �������� % ��&'(�C5�� ��������� ���� ��� % ��&'(��������� �� �� 5�� �������
�#�#� ��� ����� +�������
��� ������� �� !���� �, ����� ��� �������� ���� ��� ��� % �� ������� �����"� ������ ������� $��� ����� ���� �� �� �������) ������ ��� ������������� �� ����������� ��� Q������R ������� ������ �������� �������� �� ��� �������� ������� ���� �� ��� ����� �� �� ������ ������� �� ��� % ��&'(� ��������� ���������� ��� ����������� ������ ���� ��� �������� #�� �������� ��� ������������" ���� ������ ���� �� ��� ������ ������� �� % ��&'(� �� �������� �� F4G�
DAML Ontology
Ontology Declaration
Class Declaration
Property Declaration
Individual Declaration*
*
*
*
*����� �,A (������� ������ ��� '(�) ���������
% ��&'(� �������� �� �� �������� � � �������������� ��� �� ������� ����� ������������ ��� �������� �� ��� ��"� ��������������� % ��&'(� � ���!������ ������ ��������� ���� ����� �� � ��� �� ��
��������� �� �� �� ��� �������� ������ ���� ����������� ������ �� � ���������� ��� �������� ��!������� ( �������� �� ������ ��� ����������� �� ���� �� ������ ��� ��� ������ ��� ������ ������� ������ % ��&'(� ��������� ��� #���>������������� '>��� �������� �� ������ ��� ��������� �� ��������������� ��
/,
���� ����� ����� � � ���� ��� �� ��!���� ����������� ��������� 6�� ��� ��������� +��� ��1������ ��� ��� ��� �� �>��� ���������
��� ���� ���� ���� ������������ �� �" ����� �� !���� �/�
Ontology
imports versionInfo
Ontology Declaration
* *
Ontology Reference String
*����� �/A (������� ������ ��� '(�) �������� �����������
�������� ����������� �������� �� � ��������� ���� ��� �������� ��� �� � �� � �)� (� 5�� ���� ����� ���� ����A
�������� ����� �����'�" ?? ??%
������+$�&��6���%(�& & �$ �&�� �$+&&�� �� �& �� ������������+$�&��6���%
������&���� �����$�"�#$??� �����������������������������8�&������??�%
��������� �����%
��� #�� �������� � ��������� ���� �� ������� �� ��� % ��&'(� ��������������� ��� ���/���� 6� ��@�� ��� ��� #�� ������ ��������� �������� �� ����0�� � �)� �� >������ ��� �������� � �� �� ��������� �� ������� ��� �"�� ������� ��� 8%* � ���!������ ��!��� ���� ��� ���� ��!������ �� � ����������� ��� ��������� ��!������A
������$#�&� &�� �����'�" ?? ??%
����� ��$ �����$�"�#$??�����9� �����??�%
���
�������$#�&� &��%
��� ��=������ �� ���� ��� �)(! �� ���� �� ���� �" ������ ��� ��� �"�� ������� ��� ���� �������� � �� ���� ��� �� ��� �������� �� �� ���� ��� ����������������� ���� ��������� �� ������� ����� 6���� ���� ��������� ���� ���� ����� �� �� ��� ��!�� � ������� �������� ����A
��� �).�@:(� ���� � ��� ��� �� �� ���� �� ��� ��� ����� � ���3.� ������ � ���� ��� ��&
8�������� ��� ���� ���� ���� ��� �� �� ��� ��"� �������� ��� ���� �� ��������������� ���������� ��� ���� ���� ��� �� � $��� �� � �) �� �) �� ���� �� ���� ����� �����
//
��� �� ��� ��� �������� �������� � �� �� ������ �� ��� �������� �������������� �������� �� �� ��������� ��� ������� �� ��� ��������� (� �� ���� ����� ����� �������� �� ��� � ��� �� �� ������� #�� �������� �� ���� ��� �������������� �� ��� ���� ��������� � ����� �� ��� % ��C5�� �"�� �� ���� ��� ��� ������� �����" ��
!���� �/ ��� �������� �� � ��� ��� ����!��� �� ������ 7!��� ���& �����( ��� �����������
��� 7!��� ���& �� ���� �� �������� �� � #�� ������ ����� ��� ��� ���������� ���� �� ������ ����� ��� ����� �� ��� �� ���� �� � �������
��� ��( ��� �� ���� �� �� �"�� �� �� � ���� ��� ��" �� ����� ��������� �� � ��������� �� ������� % ��&'(� ��������� ��� ��� �� ����� ���� ��" % ��&'(� �� ������ ��� �������� �� ������������ ���� ��� ���� �� ��� �� ���� �� ��� �������� �� � ��� ��!�� ���� �� ������� ���������� ����A
,�� ��� � ����� �).�@:(� � �� ���� � � ������ �� �� �����3.� ���������� 6�� � ��� ���� � ��� � �� �� �� ��� ��� ������ ��� ���������&
��� ��( ��� �� ���� �� ���� �� ������� ��!������� � ���!�� �� ����� �������������� �"�� �� �������� ����������� ���� ����� � ����� �� % ��C#�� ��A
«Ontology»MyOntology
«Ontology»DAML+OIL
<<imports>>
*����� �2A (� �������� ���������� ��� ��� '(�)*�+) ������� ���������
�#�#� (���� +�9 � �
��� �� ���� ������� � �������� ������ �� ��� ����� ������ ��!������� ����� ��� ��!��� % ��&'(� �� ������ ��� ����� ��!������� ��� ������ �� !�����3� ��� �� % ��&'(�C5�� �"�� �� �� ����� ��!������ ��A
������!�� ����6�??�$���$??%
�����"'!��9� �����$�"�#$??@$���??�%
�������!��%
���� ���� ��!�� � ��� ����� ������ ����� ��� ��!��� �� �� � � ������� ����� ����� ;� ��� '������� ��� % ��&'(� ����� �� � ��� � ������ ����������� � �� #��� ��� #�� 9����� (� �� ������ ��� ���� ���� ��� ��!��� �� ��� ������� ������� �� ������ ��� � ����� �������� � ��� ��� #�� ������ �� (����� ��� ������� ������ ��� ����� �� �� �� ������ �� �� ��� ��������� ���� ���������� � �� ���� �� (@�� ������� ���� ��� �������� ���� �� ���� �����
/2
Class Definition
Class
sameClassAs
CE
disjointUnionOf
CE
equivalentTo
CE
disjointWith
CE
subclassOf
CE
enumeration
Boolean Combination
11
1
1..*
1
CE = Class Expression
*
*
*
*
*
* *
Thing1..*
*����� �3A (������� ������ ��� ����� ��-�����
��� ��9����'� �� ���� ���� �� ��� �"�� �� �� � ��� ��" �� ���� ��������� ������� � ��� ���� ��!��� �� ��� ������� ������� $�������� ������������������� �� ���� �/$�����0&� ��� % ��&'(�C#�� ��� ��� �"�� ��A
Female Person<<subClassOf>>
*����� �4A ��� '(�)*�+) ������ � ���������
'� ������ #�� ��� � �������� ���� ��� ��� ������� ����������� ��� ������� � ���� �� � �������� � ���� ��� ���� �� �����
'�� ������� �� % ��&'(� ��� �� ( ���� ��������� ������ ��� �����������E�� ������ �� ��!�������� ���� ����� ���� � ��!������ $���� ��� ����� ��!����������) ��� ����������� �������� ��� ����� ��!������� �� ��� ��� ���� ������������ � ����������� �� �"������ ��!������� ���� ����� � ���� �� ������� ��% ��C5�� $(@�� ������ ���� ��� .�� ����� �� ��!���)�
������!�� �����'�" ??�$���$??%
�������&>�&� .& � �����$�"�#$??1��$??�%
�������!��%
���� �� ���� ���� ��� ��&,�$ /� ������!������ ��������� ����� ����� ������ �"������ �������� �� ���� ����������� ��� !��� ��!������ �� ����� ������&,�� ����� ���������� � ��� �������� ������!��� ��� ������� ����� �������� ��
/3
���� ����������E�� ��!������ �� ��� ���� �� �� �� ��� ��������� ��� ��� �� �������� ��� ��!������� (� ��� �"�� �� ( ���� ����� � ����������E�� ��!������ �� ������ ����� ��� ��� �������� ��!������ ��� ��� Q�"�������R ������� �� ��� ������������� ���� ����� ���� ��������� ��� ���� ���������� ����� ���� ��� ����������!������ ������� �� ������� �������� ����� �� �� ����� ��� ���� ��� �"�������
���� ����������E�� ��!������ ����� ���� �� ���� �� ��� ��������� �� ���#�� ������� �� �� ��� ����������� ������ ��� ��!������ �� � ��� �������� ������ �"������� �� �� �"������ ��������� (�� ��� �"�� ��� ��� ����� ����� ��!�������� ����� �� �������� � ����� �� �� ����� � �������� "� ��� �� " � ����� ���������� �� ���������� $� � #�� �����) �� ���@� ���� ���� ��� �������� ���������� ;����� �� ����� ���� ��� �� ���� �� � ������ � �"������ �� ���� � ��� �� ���� ���� ��� ���� ���� ������ � ��!���� �� �� ����� ������ �������� ����� ( ����� �� ��������� � ��� ������ ������ !6�!���� ����� ����� �������� ��� $�� � ������) �� ��� �� ���� ���� ������ � �"������� (� �� ���� ����!�� � ��� ������ �� �� �� ���� �� �"���� � �� ���� �� ��� ���� �������� ����� �� ������ ��� ������ ������
��� ���9 ���:�� �� ���� �� � ��� ��" �� ���� �� �� ��� ��� ��������������� �����
Female Male<<disjointWith>>
*����� �-A ��� '(�)*�+) ������������ ���������
��� �/$�����0&; ���9 ���:�� ; !</�7��!��% ��� ���!������ �� ������� ��� ������ ��� ������� �������� ���� ��� ��� ��" �� ������� ;��� �� ����� �� ������ ���� �� ����� �6(�!��� � �� ����� ����� $��� ��"� �������)� ����������� ������� �� ����� �� ������ ������ � ������� ��� ���!������ ���!</�7��!��% �� ������ ��� �������� ��� �����
(� ���� ���� ��� ������� ���� ��� ��������� �� ������ !�/�!���� � ������9 ���8�� �0&� ����� �� ������ ��� ���� �������� ���� �������
��� !�/�!���� � �� ���� ������� ���� ��� ��!��� ����� �������� �"�������� ��� �� ����������� ���� �� ����������� �� ���� ��� �� ����� ��� % ��&'(�� ���!������ ������ ���� ���� ��� ����������� �� ����� ��!������� �� ��������� �������� ����� ���� ����������� ���� � ��� ���� �� �� ����� ���� ������% ��C5�� �"�� �� �� !�/�!���� ��
������!�� ����6�??A���$��B)��"$??%
��������$9� ���$(��$??�����!���$# &��??%
������(�&�� �����$�"�#$??(�"$??�%
������(�&�� �����$�"�#$??���$??�%
���������$9�%
�������!��%
���� , �� ��� ���� ��� ����������� $�� �� � �� �7��� ���� �)� ��� ������������ ������������� ���� ��� �� � % ��� $���� �� ��������� �� ��� +��� :�8��������� ��������� �� ��� ����� ��� ������ '>����)� % ��� �� � ����� ��!��� ��
/4
��� % ��&'(� � ���!������ �������� ���� ��� * � ��� ����� $�� �������������� ���� ��� �� � * � ���)�
��� ���9 ���8�� �0& �� ���� ������� ���� ��� ��!��� ����� ��� ��� �����"������� �� ��� ���>���� ����� �� ��� ����� ��� �� ����� �6(�!��� ���
����� �� ������ ��� ��� ������ ������� ���� ������ ����� ��� #�� ������������� �� ���� ���� ��� �� ������ ������ ��� ������ ��� #�� � ���!������F�0G ��!��� ��� � ����������� �� ��� ������ ������ ����� � �� ��� ��� �����7�� ���� �� ��� #�� ������� ( ���� ���� �� ��� ����� ������������� �� �� ������ !�� �� ������������
( ������� �� ��� � ��� �������� � ������ � ��!��� �� ���� �� � ���� �� � #�������� ��� !�/�!���� � ��� ���9 ���8�� �0& ��� ���� ����� ������ �����!��� ����� ��� ��� � ��!��� � ����� $����� �����@� ���� � ����� ��� �"�� ������)� ��� � ��!��� � ����� ��� �� �������� ����� $KI �) �� �������������� ��������� ��� ��������� �� �������� � �� ����������
��� ���� ������ ���� �� �� ���� ��� ����� �� ��� �������� �� ������������ ��� % ��&'(� � ���!������ ������ ���� ����� ����������� ���� � ������������ ����� $����� ��� ����� ��������)� ���� ����� �������� ���� �� ����� ����� ��������������� �� ��� % ��C#�� �������� $�� % ��C5�� ��� ������� ����������� �� �� ����� �����)� ���� ����� � �������� � ����� ��� #�� � ����������������� �� ���� �� ��� ������� ������������� ��� ���������� ����� � �������� $�� ,� 2� ����) ���������� ��� �������� �������� ������� ���� �" ���������� ��� ����� ��� ��� �������� �� ���� ��������� �� ��� ��������� �� ��� ������������ �� �� ���� ���� ��� % ��&'(� �������� �����@� � ��� �� ���� ����������������
��� ���9 ���8�� �0& �� ���� ��� ���� ����� �" �������� �� ������� ����% ��C#�� �"�� �� ����� ��� ��� ���� ���� �� ����� �" ��������A � ����� ����������� 9���� �" �������� ��� � ��� ��" ��� ��� #�� �������� ��� ���� ����������� �� 2�,�2
Person«collection»
Male Female
<<disjointUnionOf>>
*����� �.A ��� '(�)*�+) ����������
(� ���� ��������� �� ����� � ������ �� ��������� � �������� � ���� ��� ���=� ��!��� �> ������
������ ����� �� ���� ��� !�/�!���� � �� ���� �������� � ��� �� ������������ (� ��� �������� ( ������� ���� ( ����� ������ ����������� �� ��� ���������� �� ���@� ����� ���� ����� ������� 6� ��� ������ �� ������ �����������Y � ������ ��� �� � ������� ������� ��� #�� ����� � �� �8���� �� ��� ���� ��% ��&'(�@� ������������ ��� ��� #�� �������� ������ ��� �� ���� �>����
/-
�� ��������������� ��� % ��C#�� �������E����� ���� ������ � ������� ����� ������� �"�� ��� ��� �"�� �� �0�
Boolean_Values«collection»
True:Bool False:Bool
<<oneOf>>
*����� �0A ��� '(�)*�+) ���������� ��� ����� :����� � ��� ��.��� ���� ����� ��� ��&����� �� ��� $� ��� ���� ��������
��� ���� ��� �� ��!���� ������� �� ������� ����� �6(�!��� � � �$���5�� ��� � ����� ��!������ ��� ������� ��� ����� �� ���� ������������ 6�� ��"�������� ��� ����� �� �������
�#�#� (���� �<)���� �
����� �" ������� ������ ������ �� � ����� ����� $����� '!&!�!��!) �� ��!����� ��������� ������ ��� ��������� ����� �� �?�������� �� ������ �� !�/�!�5��� � ���� �������� ��� ����������� �� ��� ������ �� �� ��� ����������� ���� ���������� 4� (!��) '!������� �� �� �� ��� ����� �6(�!��� � � �$����� �� �
Class Expression
Class Expression combination
Property restriction
Thing
Enumeration
Class reference
*
*����� ,1A (������� ������ ��� ����� ����������
�� ���� ���� �� ��� ������� ��������� ����� �" �������� ��� ���� �� ��� ������� ���� �� ������ ��� ���@� ����� ������ � ���� ������� ���� ��� ��� !�/5�!���� � ��������� �� �� �� �� % ��C#��� ��� 4� (!��) '!������� � ���������� �� ������� 2�,�-� ��� ����� �6(�!��� � � �$����� � �� ��� ��"���������
/.
�#�#� (�� �� � � (���� �<)���� �
����� ��� ����� ��!��� �� ������ ��� �������� ����� �" �������� $���� �� ���������� ��������� �� ��� % ��&'(� � ���!������)� ��� ������ �� ����� �� ������� ��� ��������� �������� ��� ��� �����?������ ����� �� �������� ������������ ��� �" ����� $��� ��� �����" ��������)� ��� � �(�!�!��0& ��!���
Class Expression combination
intersectionOf
Class Expression
unionOf complementOf
1
**
*����� ,�A (������� ������ ��� ��������� �� ����� ����������
��� ����� ���� �������� ��� �>���� ���� �����@� ����� �� ��� ���������� ������" ������� $���� �� ��������� �� ������� ��������)� % ��C5�� �"�� �� ��A
������!�� ����6��!�����%
�����"'!��9�%
������#��%
������#����$�$� 9�%
������"�&��9� �������$(��$������#���$# &���%
������(�&�� �����$�"�#$�.�& $��%
������(�&�� �����$�"�#$�A��#2��%
�������"�&��9�%
�������#����$�$� 9�%
�������#��%
������"'!��9�%
�������!��%
���� �"�� �� �� � �� ���� ��� ��" ���� ��� ���� �� ���� ���� ������ �� ����������� ��� ����� + �������� � ����� �� ��� ����������� ���� �� �� ���� �� ������ �� ���/� ���� �� ���� �� ��� �� �" ���������� �������� �������� �� ����� �)� /� ������ ����� �� ���@� ������� � �� ���� $� �(�!�!��0&)�
(� % ��C#�� ���� ����� � �� ����� �� !���� ,,���� ��� �� ������ ���!��!��� �0& ��� /�� �0& ��� ��������� �� �������
���>������� ��� ������� ���>������� ��� ��������� ��� ������� �� ��� ���9 ��5�8�� �0& �� ���� �������� �� ��� ������� �������� 7��� �� ������ ����� ���� �� ����� �" �������� �� ��� ������ ��� �������E����� �� �?�������� �� ������9 ���8�� �0&�
6���� ����� �� ������ ����� ����� �" �������� �� ������ $��� � ����� !65(�!��� � � �$����� � �� � ����� �" �������� ��� ������� �������) ������������� ��" �" �������� ��� � ��������
/0
Color«Anonymous Class»
«collection»
White
Black<<unionOf>>
<<subClassOf>>
*����� ,,A ��� '(�)*�+) ���������� ��� ����� :����� � ��� ��.��� ���� ����� ��� ��&����� �� ��� $� ��� ���� ��������
�#�#� ;�)���� +�9 � �
6���� ��� �� ��� ������ % ��&'(� ��� #�� ��� ��� ���� �� ���� �������� �� ��� �� ���� �� ��� �� ���� ��!������� ��� �� ������� ����� ������������ ���� ��� #�� ��� �� ��!���� �� ������ �� ��������� ��� ����� � �������� ��� % ��&'(� �� ������ ���� ��� ���>���� ��������
��� �����)(!4� (!��) ����� ��� ��� ��� 0$9!��4� (!��) $����� ( ������������ �� �� ����� �� ������ �� ������� ��������)� ��� ����� �� �� �� �� ������� ����� �� !���� ,/ ��� ���� � ������E�� ���� ������
Property
Property Definition
inverseOf
Property reference
subPropertyOf
Property reference
domain
CE
range
CE
equivalentTo
Property reference
samePropertyAs
Property reference
TransitiveProperty
UniqueProperty
UnambigousProperty
1
1
1
1
1
1
*
*
*
*
*
*
ObjectProperty
DatatypeProperty
*����� ,/A (������� ������ ��� �������� ��-�����
��������)(!4� (!��) ������� �>���� �� ������ � ������� �� ���� �� ��������� ��� #�� ����� � �� ���������� ��� % ��&'(� � ���!������ ������ ��� ����� ��� ����!��� 5�� 6����� ������ ��� ���� �� �������� �������� ������� ����
21
(� �� ���� ������ �� ��� 5�� 6����� ��!������� �� ������ ���� ��!��� �� ����� ����� ���� �� ��� % ��C#�� �� ��� �� ����� ���� �� �� ��� 5��6����� ���������� �� #�� ����� ( ���� ��� ����� �� ��� F2G ��� �� �"�� �� ������ ���� �� �� ���� �����)(!4� (!��) �� ��!��� �� ��������
�������� � ��$@���$� � ����6����$-&C$�%
���������&� �����$�"�#$�@$�����%
���������$ �����$�"�#$�� �����������������������D1,-#�$�� �$#&����:%
��������� � ��$@���$� �%
���� ����� ���� ��� ����� ;� �� ��� ��� �� ���� �����=� ���� ��� ���� �������� ������ $����� ��� ����� �� �������)�
��� % ��C#���� �������� ���� ������� �� �� ������ ���� ��� ������������� �� ��� ��!��� �� ��� 5�� 6����� � ���!������ ��� ���� % ��C5���"�� �� ����� � �������E�� ��A
Person+shoeSize: decimal
*����� ,2A ( ���� �������� �� ��� �������� �������� ��-�����
���� ��!��� ��� �� ���� �����=�� ��� ������ �� ��� ���������� ����� ������ ����� �� ����� ����� ��� ������ ���� �� ���� �������� ��!������� ����� ������ #�� ��� �� ����� ���� �� ����� ���� ��������� ������� ���� � ����� ��� ���� �������
�� ��� % ��&'(� �� ������ ��� !��������� �>����� �� �� ���� � ��� ����� ���� �/$4� (!��)0& ���� ��� �����=� �� ����� ���� �� ��� �������� ��� �"�� �� �����
,� % ��&'(� ������ ��� �� ������� � �� ���� ������� ��!���� ��� �������� ������ (� #�� $�� �� ��� % ��C#�� �"�� �� �� !���� ,2) � �� �������@� �"��� ������� � ������ ��� ������
/� ��� ����� ��� �� ��� ������ �� ���� �� �� ��� ������ ��� ���� % ��C#�������@� ��� �������� ���� ����� (� �� ����� ����� ������ �� ���� ��� ������ ��� 5�� ������ � ���!������� �� ��� ��!�� ��� ���� �� ���� �� ���������� ��� ������� ���������
�� ����� ����� ������ ( ���� ������� �� ��������� � ��� �������� �������)(!54� (!��)� ����� ��� � � ���� �� � #�� ������ ���� ������� ��� ��������������� ���� ��!��� �� � ������� ��� ���� ��� �� � �� ��� �������� �� �����������)(!4� (!��)� ��� �� ��!�� � ��� ������ � �� ���� �� ������ �#�� ����� �������� �� ���� 4� (!��)� ��� ���� �� ���� ����� ������ ������� �� ��� ��!��� �� ����� (� �� ���@� ���� �� ��!�� ������� ��� ����� �������� ���� �� ��� �� ���� �� ��� ���� ������ �� �� ��� ��� �� ������ ��!������ �� ������� �/$�����0&; ��7!��!0& ���� ��� !���� ,/�
7�� ��� �� ���� � ������ ��� ���� ��� � ���� �� ��� � �������� ��������� ��� ����� �� ��� �� � �������� ��� ������ ��� ����� $�� ����� ����
2�
��� % ��C#�� ���� �����)� % ��&'(� ������ ��� �� � ����� ��� ������������� ��� ����� ��� ��� ����� ������� ��� ������� ��� ���� ������ ������������ �� ��� �� �� �������� >��� ���� ��� ������� �� !���� ,2 ��� ������ ���QA�������R ������� ���� ���� ���� � ����� �� �� ������ �� ��������� #�� �����@� ���� ��
�� ��� ���� �� ��� ���� 7�� �� ��� ���� ��� �� ��� ���� ���� ��� �� ���������� ��� �� � % ���� 9����� � ��� #�� ����� ����� % ��� $��� ��� ��������� ����� ��534( )� ��� ��� ��� �� ���� ���� �������� ���� ��� ������ (����� ��� ������� ��� ������ ��� ���� ���� ��� ������� *����� ,3 ����� ���������� ��� �� ��!���� �� �������
Person+shoeSize: xsd/decimal
«DatatypeProperty»shoeSize
*����� ,3A ��� '(�)/,�) ��� ��� �������� ���������
H��� ���� �� ���� �� ���� ���� ����������� ������ � �� ���� ��!��������� � �� ���� �"������� �� �� ��� ���� ����� ��!�������� ���� ����� �� ���������� ���� ��� ���� ���� ��� �������� �� ������� �������� �� ���� �����)(!54� (!��) ��� � ������ ����� !6�!����
��� 0$9!��4� (!��) ������� �>���� �� ����� �>����� ���� �� ��� ��� ��������� ����� ���� ��� #�� ����� � �� ��������� ����� ��� ������ ��� �������� � ����� �" ��������� � �� ���� ���� ��� �����)(!4� (!��) ��� ������ ���� ������� � �� �������� ���� �"������ #�� ���������� �� ��� ���0$9!��4� (!��) ( ��� �� ����� ��� #�� ��������� ������� ��� ����� ���� �� ��� �������� ���� ��� �����)(!4� (!��) ���������
������ ��� ���� �� �� ��������� � �� ���� �� � #�� ����� ���� � �������� ��H�� �� �� ������ ��� � 0$9!��4� (!��) �������� � �� ��� ������ ���� ������������ �� ����� �� ���� ��� ��� �/$4� (!��)0& ���� ���������� � �"�� ���� � 0$9!��4� (!��) �� % ��C5�� ��A
������9'>$# @���$� � ����6�??����&$�(�??%
���������&� �����$�"�#$??@$���??�%
���������$ �����$�"�#$??@$���??�%
�������9'>$# @���$� �%
*�� ���� ��� �� �"�� �� �� ����� � ������ �� ��� ������ ����� ��� �����)(!54� (!��) ��������� ����� ��� ��� ������ ��� ����� ��� ����� ����������� ������ ��� ��" ����� �" �������� ���@� � �������E�� ���� ���� *�� �"�� ��A
������9'>$# @���$� � ����6�??����&$�(�??%
2,
���������&�%
������"�&��9� �������$(��$??�����#���$# &��??%
������(�&�� �����$�"�#$??1��$??�%
������(�&�� �����$�"�#$??�$���$??�%
�������"�&��9�%
����������&�%
���������$ �����$�"�#$??@$���??�%
�������9'>$# @���$� �%
�� �������E� ���� �� ���� $�������Y) ����� �������A
�� #�� ��� ��!��� #�� �������� ��� ����� �" ��������� �� ������� �� ������������ ��������� ������ ���� ��� ����� � ����� ���� �� ��� ��� �����!��� �������� ��� ��� �����)(!4� (!��) �� �������
,� #�� ��� #�� ����� � �� ��������� ������� ���������� ������� ������#�� ������������ �� ���� ��� ����� ��� ����������� �� �������
/� #�� � �������� ����������� $���� � ������� �������� �) ����� ������ ��������� ����� ��� ��� ����� ������
( ������� ��� !��� � ���� ������ �� ����� �� ���� �� ������ ����� ��� ����������� ������ ����@� �������� �� ���� ������ ���� �� ����������� ��� ��� ���� ������� ����� ����� ���������� ���� ������ ���� ������ ��� �������� ���� ��<������ �����������
��� ������ ����������� ����� ��� ������� ����������� ������� ����� ��� ������ ������������ ������ ������������ �� ���� ����� � � ������� ��� �� �� ���������� ����� ��� ��" �>��� �� ������� #������������ ��� #�� ������ ���� ������ ���� �����@� �� ��� ����������� �������� �� ���� � ���� �� ��� ������
6� ���@� ������ ��� ����� ������������ ����� � ���������� ����� �������� ������ 0$9!��4� (!��) ��� � �������� �� ����������� ������ ��� ������ �������� �������� ( ���� ������� ��� ����������� �������� � � ����.����!� ���#�� �������� �������� � ��������� ������ ��� ����� ����� ����� � ���� �� �������� � ����� � ���� ���� �� ��� ��� ���� $��� �� ������ ����� ���) �� ��� �� ���� ���@� ������C����� �� ���� ��!���� ���� �� ����� �� ��� ����������������� ��� ���� 0$9!��4� (!��) ����� ���� � �� �������� �� ����� ��!���� ,4
«Anonymous Class»
Person
Male Female
«ObjectProperty»marriedTo«collection»
<<unionOf>> marriedTo
*����� ,4A ��� '(�)*�+)/,�) ��� ��� �������� ��������� ������ ��� ��� ����� ��������� ��������� ��� �������� ���� ��� ������
2/
���� �� ��� ���� � ������ ���� ������ ��� % ��C5�� ��� % ��C#����� ��� #�� �������� �� ���� � � �)� /� ����� ��!������ ����� �� ���@����� ��� � ����.����! ���� ������ �� ��� � ��!��� � ������ ���� �� ���� ���� ����� � ���������� ���� �������� � ������
( ������� ����� ��� ��� ��������� ��������� ��� 0$9!��4� (!��) ��!��������� (� ��� ������ ��� ����� ��� ����� ���������� �� ��� ��� ��� ���� ���������� ��� �����)(!4� (!���!� $#�� ���������)� ��������� ��� ���� ������ ��������� ���� � ����.����! ������������ ��� �� � ����� *���������� ��� ���������� ����� ��� � ���� ���?������ ����� �� ����� � ���� �������� ����� ���������������� �� ��� ������ ��� ����� ��� ����� ������� $����� ���������)� ��� ������������ ����� ����� � ����� � ������� �� �� ��������� ��� ���� #�� �����������@� �� ��� �����
��� ��� �� #�� ��������� ����� �� ������ ��� ��� �������� ������ �� ������������� ��� ��� �� ������ ���������� ���� ��� ������ �� �� ����� ���� �� ������� �� !��� ����� ����E���� ( ����� ���� �� �� ��������� ���� ��� % ��C5����������� ����� �� �� ��<���� �� ��� �� �������� �� ����� �� ������ � ����� ������� �������� ������=��� �� ��� % ��C#�� �������� �� ���� ��� ������C������� �������� ����� ��� ���� ��� ���� �� ��� �������� ��!������� � ������� �� ������ �������� �� �� � �� ���� �� �� ��� ������ �� ���� ��� ������C����� ��� ���7�� ( ����� ���� �������� ������ ��� ���� � ��� ���� �� ��� ���� ��!���� ���������� ��������� ������ ���� ������ ���� ��!���� ��������� ������ �� ����������� ����� ���� �� ��������� ���� ��� ��� ���������� �� �"�� �� ���������� ������� ��� % ��&'(� ���������
� ��� ������ ���� ��� ��� �� ����������� ������� ����� �������� ���� �� ���� �������� �� ��� ��� �� ������ �� � ������ �� ���� �� ������ ��� ������C�������� � �� ����� ������� ��� #�� �������� �����@� ����� �� ����������� ����� ������� ���� ���� ���� �� ��� ������� ����� ��� � ��������� ���� �� ������ � ����� ����� �� ������� ���C�� ������ ��� � �� ����� 6� ���� �� ��� ����#�� ������ ��� �� ����� ����������� ������� �� ����� ���� ��� � ����� ������ ��� ��� ������� � ����� ���� ������ �������������
6���� ( ���� ���� ������ ���� �>��� ��� ������ � �� ������� �� % ��&'(����� �������� ����� �� �� �� �� ������� � ����� �� !���� ,/ 8���$�� /�54� (!��) ��� %�������7!4� (!��) ��� ��������� �� ��� �>��� �� ���� ����� ���� �������E����� ����� ���� ��� ����� �� ������� >��� �"������ ��� 0$59!��4� (!��) �������� � ��� ��� ��� �� ���� �� �� ��������� �� ���� ��� �� ���� ����� �>��� $�����) ���?���� ������!�� ��� ��>��� ��� � ���������� �� ���� �������� ������ ���� ��� �� ���� �� �����������
��� 8��</!4� (!��) �� � ���� � �� 4� (!��) ��� ��� ��������� � � � ���� �� ��� ���� �� �� ����� *�� � ���?�� �� ���� ��� ��>��� ���?���� ����������� ��� �>���� #������ ��� ������@� ��!�� � �� ���� �� � >��� � ���?�� �� ����� ��� ��!�� �� �� � � �>��� �� ������ � �� ���� ��� ���� ��� ���8��</!4� (!��) ��������� $�� �� � ����� ����������� ����������)� *�� �"�� ��A
������3���'&��"@���$� � ����6�??����&$�(�??%
��#��� �� �� ����������� ��� ���� �� ������ ������� ������� ������ ������ ��� ��� ��� ������ ������ �� ��� ���������� ���� ���� ��� ��� �� ,,����������� �� ���� ��)� � ����� �����������-� ��� �� ��� ���� ������ &��� ��� �� ��� �� ��� ���������� ���� ���� ������������ ����� 2+ ��������� ���� �� ��� ���� ���������� �� �������� ���-���� #���� �������� �� �������� ���������� ����� ���� �������
22
����� ��$ �����$�"�#$??�����3�&E"$@���$� �??�%
����������&� �����$�"�#$??@$���??�%
����������$ �����$�"�#$??@$���??�%
�������3���'&��"@���$� �%
���� ������ ���� � ����� ��� � ������� �� �"����� ��� ������ ���� ( �������� ��� ��"���� ��������� �� ���� ���� ���� ��� �� ���, �� ���� �� ����� 8��</!4� (!��)� ��� % ��C#�� �������� ��� ��� ���?�� �� ���� ������� #�� ����� � �� ����������� ������������ (� � �� ���� ��!������ ��������� #�� ���������� ���� ��� ����� @�@ �� ���� ����� � ���?�� �� ����� H��������� ���� ��� ����� @�@ ����� � �������� % ��&'(� �����@� ����� ������������� ����������� ������������ 6�� !���� ,- ��� ���� ��!�������� �� �� ���,�
Person+marriedTo [1]: Person
«UnambigousProperty»marriedTo
*����� ,-A ��� ��-���� �� ��� ������� �������� �� � ��0�� ��� ����������������
���� �� ���� ��� ����� ���� ��� ���?������ �� ��� �� ���� �� ��� � � ����� >��� � ������� �� ��� % ��C#�� �� ���� �������� ��� ��� �� ���� ����� ����� ��!��������
��� 4� (!��) ����� �� ��� �� ����� ��� ��� ��� �� ���� �� �� ��� ���������� ���@� ��!�� � �� ���� �� � �� ���� �� �� ��� ��� ��� �� ��� ���� ��� 7����������� ���� ��� ��� �������� �� �� ������� ��!��� �� ���� ��� ��� ������ (� (!��) ������� � ����� �� �� ��� �� ������� �� ��� �� ���� �� ��� ������ ���������� ���� �������� �� �� ������ �� ����� ����������� ��� ���@� ���� ������ � ��� �"��� �� ��
�� ���� ��!������ ��� ���� ��� �� � ��� ��=����� �� ������ ������ �� ������� �/$4� (!��)0&; !</�7��!��% ; ��7!��!0& ���� ����� ��� ��������E�� �� ������ �� �������� �� ����������� ������ ��� �� ������ $���� ��� #��������� ������� �� ���� 4� (!��) �� � ���� � �� �� ����)�
*�� ��� �/$4� (!��)0& �� ��� ����� ��� #�� ����������� ������ 6��!���� ,.�
�#�#� ;�)���� .���� �� �
�� ���� ����������� �� � � ����� ���� �� ����� �" �������� (� ��!��� �� ���������� ����� ���������� �� ��� �>���� ���������� ��� ������������ ����� ��� �������� �� ������������� 0$9!��'!������� �� ���� �� � ���� �� �>��� �� ��������� �����)(!'!������� �� ���� ����� �� ������ � �� ������� ��� �����" �������� ��� �� �� �� ������������ �� ��� �����
� �"�� �� ����� ��!������ ���� ���� ���� ������������ ��A
������!�� ����6�??@$���??%
�����"'!��9�%
������9'>$# �$ �&# &��%
23
«ObjectProperty»parentOf
«ObjectProperty»childOf
«ObjectProperty»fatherOf
<<inverseOf>>
*����� ,.A ��� ����� � ��� �&���� �������� �� �������� ��� �������� � � ������������� ���������
Property Restriction
Restriction
onProperty hasClass
cardinality
maxCardinality
hasClassQ toClass hasValue
maxCardinalityQ
minCardinality
Integer
minCardinalityQ
cardinalityQ
Integer
TypeProperty Reference
Instance Reference
Datatype Value
Value
Value
Type
Class Expression
Datatype Reference
Type
0..1 0..1 0..1 0..1
0..1
0..1
0..1
0..1
0..1
0..1
ObjectRestriction
DatatypeRestriction
*����� ,0A (������� ������ ��� �������� ����������
��������@���$� � �����$�"�#$??����&$�(�??�%
���������!���&���& �%�����������!���&���& �%
�������9'>$# �$ �&# &��%
������"'!��9�%
�����"'!��9�%
�������� � ��$�$ �&# &��%
��������@���$� � �����$�"�#$??��$-&C$??�%
������#���&���& �%��������#���&���& �%
��������� � ��$�$ �&# &��%
�����"'!��9�%
�������!��%
���� ������� ���� ��� ;� ��� ��� ���� � �� ���, �"����� ��� D����� ������� D����� ���� ���� �"����� ��� ������E�� (� �"�� �� ���������� ����� �� ����� ��� '!������� � ������� �� ������� ���� ������� �� ��� ���� � ������E��
24
�����)(!'!������� �.0$9!��'!������� �� ���� �� �� ������� �� ( ���� ������ ���� � ������E�� ���������
��� % ��&1(� �������� ����� ����� ����������� ����������� �� �� ������$� ��� ���� ��� ���?��C��������� �� ���� �� ��)� ��� ������ �� �� ���� ���������� � ���� ������� �� ���� �������������
*���� �� ��� � �� ���� ����������� ������ ������� �� ��������� ����� �������� � ���� �� �� �������� ����� $��� �� ��� � ��������� ����)� �� �� ���������� �� % ��C#�� �� ��� ����� ��� ����� �������� �� ����� ��� ���������� ��� ������� �������� A)������ +���B ����� ����� �� �� ��������� ������
6������� � �� ���� ����������� �� ������� � ������ � ����������� �� � �� ������ ���� ����� ���� �� ������ ���� � ��������� �� ��� ���������� �� ����� ������ ����� � ��� �4� (!��) �� �����
6�� � % ��&'(� ����������� ������ ��� �"����� ��� �4� (!��) �� ��������� �� ���� �� ��� �� �� �������E� �� % ��C#��� >��� ��� ��� ������� ��������� ����� ���� ��� �������� �� �������� ������ ��� ��������� ����� ��� ��� �� ���� ���������� 7�� ����� �� ��� ��� �������� �� ��� ��� % ��&'(� �������� '!������� � �� � ������ ������ ������� �� % ��&'(�C#�� �� ������ ������ ��� ���� �� �4� (!��) �� �!������0�4� (!��) �� ���� �� ��������������
7�� �� ���� ���� �� ��� �� ����� ��� ���� �� ���� ������ � ���������������� ��� �������� ����� ���� �� ����������� � �� ����
� 9���������� �������������
� %����� ��� ����� �������������
� 9���������� �� ��� ��� ����������� �� �� �����
( ���� ��� ������� ����� ����������� �� �� ����������
����������) �!������� �� �� �� ������ ��!��� ��� ��������� ����� �� � ������ �� �>���� ���� ��� ��� ����������� ��� ��� ���������� �� ����� *�� �"�� ������ 0$9!��'!������� � �� ��� �� ���� �� ���, ���� ��!��� ��� ���������� ����� �� � ��� ��� �� �>���� ���� ��� ����� ��� ����� ��� ��� �� ���, �� �����
��� ����������) ����������� ��!��� ��� ����� �� ��� �>���� ���� ���� �"������ �������� ������ ��� ��� ���������� �� ����� �����6����������).�������������)��!��� ��� ����� �� �>���� ���� ���� ������C������� � �������� ������ ��� ������������� �� �����
��� #�� �������� ������ ����� ������ ����������� �� � �������� ��� �������������� ���� �������� ������ � ������ ��� ��� % ��&'(� ����������������������� � ��� ��������� ��� ����������� ���� ��� �!������0�4� (!��)������������ ����������) ���������� �� ����� � ��6����������) ������5�������)
6�� !���� /1 ��� �"�� �� �� ������������(� ��� % ��&'(�C5�� �"�� �� �� �" ������� ����� ���� ��� ��������
���� ��� �� � �>��� �� ���� $0$9!��'!������� �) �� � ������ � �� ����$�����)(!'!������� �)� �� �� ��� #�� �������� �� ���@� ��� ��� �������������
2-
Person
«Anonymous Class»«Anonymous Class»
marriedTo shoeSize
<<restrictOnProperty>> <<restrictOnProperty>>
0..1 1
*����� /1A '(�)*�+)/,�) ������������� ��� ��� '(�)*�+)/1�) ���������&��
� ���@� ���� ���� �" ����� ����������� �� #�� ����� ��� ���������� ����#�� �� 5�� ��� ��������� ��� �� � �� ��� ����������� �� ���� ��� ������������� ��� ������� ������������ (�� ��� ���� ������� ��� ���������� ���@� ���������� ��� �� � �� ��� �� ���� �� ����� �� �������� � '!������� � ��������H��� ���� % ��&'(� �����@� ����� ��� ����������� ������������ ��� ����
�������� ����� �� ��� ����������� ���� ��� �� ��� �����@� �=��� ��� ��!������ ����� ���������� �� ������� ��� ���� ��� �� ������ ����� ����������� �� �� ��� ���8��</!4� (!��).8���$�� /�4� (!��) �� �� ���� ��!���� � �� �����
%)(! �!������� �� ��� � ���� �� ������ ��������� ������� � ����������� �������� �� ��� ����������� �� ���� �� � �� � ������� �� �� % ��&'(� ��!�������� � ������� ��� ���� ���� �� ������������ � �����; ������� ��� ��?��/!�
��� � ����� �� ���� ��!��� ��� ����� �� ��� �>���� ��� ����� ��� �������� ��� ����������� �� ���� ����� �� ��� ����� �" �������� ���� �� �� � �������������������� �� ��� ����� �� ��� �� ����� *�� �"�� ��A
������!�� ����6�??@$���??%
�����"'!��9�%
������9'>$# �$ �&# &��%
��������@���$� � �����$�"�#$??���� �$�??�%
������ �!�� �����$�"�#$??@$���??�%
�������9'>$# �$ �&# &��%
������"'!��9�%
�������!��%
��� �� ������ ���� ��� �������� �� ���� ��� ������C����� )����� �������������� ���� ����� ���� � ;� �� ���� ������ ���� �� �>��� �� �� � ;� ��� �� ��� ����� �� ��� �������� �� ����� ��� ������� �� ���� ������� �������� �� �>���� ��� ����� ����� �"���� ������� ��� ������ ��� ��� ����������� �� ������ �������� �� ��� ����� �" �������C������ �� (� ����� ������ �� �"�������������������������� ����������� ��� �������E������ �� ����������� �������� �� ���� � �����
�� �������� ��� % ��&'(� � ����� �"�� �� ���� �� �������E�� �� !����/��
2.
Person
«Anonymous Class»
«Property»hasFather Person
<<restrictOnProperty>> <<toClass>>
*����� /�A '(�)*�+)/,�) ������������� ��� ��� '(�)*�+)/1�) ������
������ ���&��
��� ��?��/! �� ���� �� ���� �� ������ ��� ����� �� �>���� ����� ����� ����� �� ���� ���������� ������ *�� �"�� ��A
������!�� ����6�??@$���.& �7�$�F??%
������"'#��9�%
�������� � ��$�$ �&# &��%
��������@���$� � �����$�"�#$??��7�$??�%
��������)��"$%�F���������)��"$%
��������� � ��$�$ �&# &��%
�������"'!��9�%
�������!��%
���� ����������� ��!��� ��� ����� �� ��� �>���� ���� ��� ��� ����� Q,2R ��� ��� �� ���� ���)��� � 0$9!��'!������� � ����� � ������� ������������ ���% ��&'(�C#�� ��� �� ���� � ��� ����������� �������� �� ���� ���<����6�� !���� /,� ��� ����� �� ��?��/! �� ������ �� ����������� ��� #�� ��
PersonsWithAge24
«Anonymous Class»
«Property»hasAge
<<restrictOnProperty>> <<hasValue>>
24:
*����� /,A '(�)*�+)/,�) ������������� ��� ��� �������� ������ ���&� ��-�2�� ��� ����� �������3��(��45�
20
>��� �������� �� ���� �� ������ % ��&'(� ������������ ��� �������E����� �������������� �� �>��� �� ������ �� ��� �����
� �$��!� �!������� �� ��� ���� ������ '���1�� ���� ������ ����� ������������� �� ��� ��� ����������� ����������� �� ���� �� �� � ������������ 9������������������ ��� ������� ���� ��� �������@ � ������ ��� ��� �� ��� ��������5��)@� �������������)@ ��� ��6����������)@ �� ������� ��� QWR ��������� '���1��� (� ��� ����������� ���������� ����� ��������� � ����� ����� �������� �� ������ ��� % ���� ���� �������� �� ���� H�� �� ��� ��������� �������� ���� ��� ������ ���� � ����� �� ������� �� ������� ��� ������
������!�� ����6�??@$���??%
�����"'!��9�%
������9'>$# �$ �&# &��%
��������@���$� � �����$�"�#$??����&$�(�??�%
���������!���&���& �G%�����������!���&���& �G%
��������!��G �����$�"�#$?? @$���??�%
�������9'>$# �$ �&# &��%
������"'!��9�%
�������!��%
���� �� ��� �� �������E�� � ����!���� ��� �������� �� !���� /1� ��@�� ��� ������������� ��� ��� �������@ �� ����� ���� ����� �� !���� //�
Person
«Anonymous Class»
«Property»marriedTo
<<restrictOnProperty>>
0..1
<<hasClassQ>>
*����� //A '(�)*�+)/,�) ������������� ��� ��� �������� ������ ���&���-��� �������
�#�#� '��� ��� "� ? ��� '����)��� +�#$,��$@"#$
(� ��� ������ ���� �� ��� �� ��� ( ���� ��!��� � ����� �� �������� �� ������ �� ������ ������ ��� ����� �������� ��� ���� ������ ������ ��� ������� �� ���� �������� �� ���� #8(� H���� ���� ���� ��B���� ��� ���� ���� ���������� ��% ��&'(� $ �� ������� �������� ������) ��� ��������� �� ��� ���� � ��������� ��������� �� ���� �� ��� % ��C#�� ��!�� � ����������� � ��� ������� ��� #�� ���������� ��� '!� /��! ����� ���� ��� ����� �� ������� �� ���#�� �������� ���� �� ��� �� ��� ����� ���� � ��������� �� ���� �������������� ������ �� � ���� ����� ���� �������� �� ��� ������ ����� ������
31
Resource
*����� /2A ��� �������� ���2������
'� ������ ��� �������� ������ �� ���� ������ �� �� ��� ����� ��� ��� ������������ ���� ����� � ���������� � ���� �� ���� ��� � �� ����C����� ������ ���� ��� ���� ����� ������������� ��� �� !�� ��� ������� ����� ��� � ��������� ����� ���������� ���� ��� �� ����� ��� ����� �� ������C������� ���� ��!���(� � �������� ���� ��� ���� ���� �� ��!��� �� ������� ����� ���� ��� ���� �������� � ���� �� ����� ���� �� ����� �����
�#�# 7* � �������� ��� "#$ '��� � +�#$,��$
56�� ���������� $5�(,% ��&'(�) ��� ��� ������ �� �� ��������� ���#�� ������� $�� 5�( ������) �� % ��&'(� �������� ��� �/$�����0& �� ����$��� ����� �� ��� #�� ����������� ��� #�� ������� �����) �� ���� ����������� �� ��� ����� ���������� ��� �������� �?�������� ���������� ��� ��� ������ ���� ��������� ��� 5�( �� *������ ������� $5�(,*����6�����)� (� ������ ���������������� �� �� ������ ��� ���� �� ��� �� ���� ��� ��� ��� �� 56�� ������ �����������
( ���� �" ��������� ���� ��� #�� ������ 4���� 4��@� ���� ���� ����������� ����� � ���� � ���� ��� ��� ������� ��� ����������� ���� ��� 8��� ������ ��*������ �������� 7�� ����� ���� � ����� ����� ��� ��� �������� ������ �� � ��������� #�� �������
(� ��� ������ ���� �� ��� �� ��� ( ���� ���� ������� �� #�� ��������������� ���� % ��&'(� �� ������� ��� �������� � ���� �� ��� ���� �� ��� ������� ������ % ��&'(� �� ����� ���� ��� ��� ��������� �� ��� ������� �������������� ���� #�� �� % ��&'(� ����� �� >��� ���� �� ������ ��� ��������� � ����� 7�� ��� ���� ��� �� ������ � ��� ����� �������� ���� ��� ����� �� ���@��������@ #��� ��������� �� �� ��������� �� ����� ������ ���� #�� ����������������� ��� �/$�����0&.�/$4� (!��)0& ��� ����������� ������C�������������� ���� ���� ��� ����������� ������ �������� ������ ����� �� ��� �� ��������=����� ������
��� ��� �������� ����� � �� ��� #�� ������ �� ���� �������� � ����� �� ���� ���� ��� 5�( !�� �������� � �������� �� ����������� ��� ��� ������ ��� ����� �������� � ���� $���� ����������� ����� ��� �/$�����0&.�/$4� (!��)0&)�H��� �� ��� #�� ������� ( ���� ���� �� ���� �����
� !���� �� ��� "�����#������� ���$��� %�� &�� '(%)*�+ ��� ), � �
���� ( ������� ������� ��� �����������C ������ �� ����������� 8%*$6) ���% ��&'(� �� *������� (� �� !�� � ����������� �� ����� ��� ��� *���� *������ ������ �� �� ��������� ������ ��� 8%*6 ���C�� % ��&'(��
3�
��� �����&����� ,�) ����������� �� )�!��� )���
� ( �" ������ �� ,�2�, ��� 8%* �������� ������ ����� ��� ���������� ���� ��������� ��� ������� ������ ��� ������� �� ������� ���� �� � ������ �� *������������ � 8%* ��������� ������ ��� � ��>���� �������� ��� �>���� ���� �� ����
���� ��� *������ ���������� ��� ��������� ������� 8%* ���������A
��$#�&� &�� 6�??"'>$# ??%=
���������$� ��%�'>$# �����������$� ��%
�
�
�
�'�������$� �H �$�"�#$??�'>$# H??�%
���$#�&� &��%
����� � ���������� �� ��� *������ ����A
��#$�����[%��%��&�� � �#$���� � � � � #��[%��%��&�� � �#$��� �
���� �� ��� �� ���� �� ��� �� ����� ���� �� ���� ��� *�����, ������ ��� ?�������� ����������� ���!������ �� ������ �������� �� 8%* ��� � �� ������� ������� ���
������������ �� ������ �� *�������
��� �����&����� ,�) ����� �� )�!��� ���� ��� ,"&��
(� ��� 8%* 6����� �������� ��� ���� ��������� ��������� ��� ������� ��� �� ������� ���� ��������� ��� ���� � ������������ 6���� *������ �� �� ����������� ��� � ��������� �� ����� �" ��� ���� ����� ��� ��������� ������ ��������� � ������ ���� ���� ����� �� � ���� ������ ������� ������ 8%*C*������ ����� ��� 8%*6C*������ 6��������� ���� ��������� ��������� �� *������ ��� ������� ��� �� ������� ���
��� �"���� � ���!�� �� ��� 8%*6 �������� $��9����'�� ��D�� ����'� ����)��� ��� � �� �� ������ �� *������� ���� / ����� ��� 8%*6 ���������� ���� �� �� �������� �� �?�������� *������ �����������
8%*6 ��������� *������ ���������
9���� $9) ����������� 9FGD�� ���� $D) ����������� %�����9����FDIK8����9����G��9����'� 9�AA9,$���A)�� � A9��D�� ����'� $D, �� �� D�) 6�>���FD��K�>G A� 6�>���FD,�K�>G
���� /A ��� ����� ������� 6' � ��� 2)��� �����������
��� �� ��� �� �������� ���� ��� ������� ����� 8%*6 �� ������ ��� ���!��� �� ����� ���� ������� ������ ��� ������ �� ������ ��� �� ��� ������� ��� ���� ��� �� ���� ������������ ���� ����� ���� �� ���� ������C������ ���!��� (� ������ ������ �� ����� �� ������� �� ���� ���� �� ���� � �����
3,
�>��� �� �� � 4��� �� �� ����� �� ����� ��� ��� �� ����� ��� 4��� ������� ������ � ���������� ������� ��� ��� ������� ������ ������� ���� �����*���������� �� ������ ���� ��� ��D�� ����'� �"��� �����������
6������ ������� ��� �������� 8%*6 ���������� �"����� ���� ��� , ��� ��������������� �� F,4G ��� % ��+���\7���
��� �����&����� ���!+��! ����&����� �� )�!��� ������� ,"&��
9�������� �� ��������� ������ ��� ��� % ��&'(� �������� �"����� ��� % ���+���\7 ������ ������ �� ������ �� �� �� ��� ���� ������ � ������ ��� ��������������� ��� �������� ��� ����� ������������ $����� �� �������� ��� ��=������������ 8%*6 ��� % ��&'(�)�
��� �8(D�; ������ ����� ���� ��� 8%*$6) �������� � ����������� ���8%*6 �� � *������ ���� ��������� �8(D�; ������� $�� ���� �� ��� ������� ���� ��� �����) % ��&'(� ������� �� ��������� �� � %����� ���� ������ ���������� ����������� ���� 8%*6 �� *������ ������ � ���������������� ����� ������������ ��� � ����������
��� ����� ���� �� ��� % ��&'(� �� *������ �� ��� ����� ������������������ � ������� ���� �� ������ ������� ��� �� *������� (� �����@� ���� �� ���� ������ �� �� % ��&'(� �� *������ �� �� �� �������
*�� �"�� ��� ��� ��������:� � ������ � ���� �� � ����� � ����� � ��� �������� �� ������� $ ����� *������ ����)A
�$�"�#$IJ� KK (�� #��4 ��� #��$ �" &��$�& ���� �&�
#��IJ���$�"�#$IJ� KK (�$ ����#���
#IJ�#��IJ� KK (�$ #�� �$ ��� �$ #����$�$� ���
#B#���IJ�#��IJ� KK L$�$�� $� �������" #�� � ��$ �$"� �
#��B��$�� ��I#�$� $B#����$�$� %!��4 ���J� KK �����$� #�� ��� ��$�� ���
KK 6� � �&+$� �'>$# & �� �� ��$ ?#? �$� & �&�� �$ �$ ��$ ?#B#���?
#��B��$�� ��I#�$� $B#����$�$� �%!���#B#���IJJ �� �� !���#�
��� � ���� ��� $���������� ���� 8%* ����������) �� ������ �������� ������� ���� ��!������ ��� *�����, ������ ���� ������������� �"����� ��� ����#��B��$�� ��I#�$� $B#����$�$� ��� ����� ���� ������ ��� �� � #B#���
�� ����� �>���� ��� �� �� � #� (� �� ���� ������ ���� ���� � ����� ��� � ������ �� ������ ��� ��� % ��&'(� ����� �������������
������ ���� ����� ������ ����� � ��� �� ������ ���� ��� �������� ������������� ��� ���������� ���� ��������� �� �� ������ �� ��� ������ �� ����� ������������ (� ����� ����� �� �� ��� ����� �������� �� ��� �������� �� ������������ ������ � �� �������� �� �?�������� �� " ��� " �� �������� �� � ���>���� ���� �� � %������� ����� � ��� �� ������ ����� �� ������� ���� �� *������ �� ����� ���� ����� ������ ��� �� ���������� �������� ���� ���� � ���������� �� ������������� ��� ������� ��� ��!��� ��� ���� �������� ����� �� ����� *���������� � %������� ����� � ��� �� ���� ������� �� ?������ ���������� ���� ��� ��!������� �� ����� �� ����� ������������ ��� �"���� ������� �� ���������� ������� ��� ��� �� �>����� ���� ����� ���� � ������ �� �� �� *������ �� �� ��� ������ ��������� �� ������������
������'((����� ����������(���.���(����������(�����(��������(��%�3���2�(
3/
��� ����� � ������ ��� ������� ���� ������ ��������� ����� ����� ����� ���<����� ��� ���� �� � ������ ���� ������ ������ ����� ���� � ��������������� �����������% ��&'(� �� � ������ ���� ����� ����������� �� ���� �������� ���� ����
���� ����� �� � ���� ������������� ��� ������= ������ �" ��������� �� ����������� ��� ����������� ��� ��"���� (� �� ��� �������� ��<���� �� !�� ��� � �� ���������� ��� �" ���������� �� %� ��������� ��� ���� �� ���� ����� �� �������� ��������� ��������� ���� ��� *������ � ����� �� ��� ��� �� ���������� �� ����
����� �������� ���� ��� % ��&'(�� 6���� *������ ������� ���� ����� �� ����� ������ ��� % ��&'(� ���������� ��� ���������� �� ��� ���!�� ������ $*������ ��������)� �� �� ����� ���� ��<���� �� ��������� ���� ����� ������������� � ������ ���� ����� ������ $F�-G �������� ��� ���� �� ���� ��� � %�� �� ����������� ���� �����)�
� ����� ���� �� (���� ��� ��-������
���� ������� �������� ��� ��� ���� � ���� �" ������� �������� �� �� ��% ��&'(�� �� ���� ������ ( ���� ������� ���� ���� �������� ���� � ������������ %�=����� � ������� �� ��� ������ � ���!������ �� ���� ������� $�������� ����������) �� �������������
��� ��� ���!+��! �� ��� *��"��- ��� ���� �� ,"&��
��� % ��&'(� �������� �� � �� ����������� �������� ���� ��� ��� ���������� ����� ��� ��" ����� � $�����) ������������ �� �� ���� ��� ��" ����� ������������� ���� ��� � ���� �� ������ ��� ��" ����� �� ���� �������� ���� ���������������� 7�� ��� % ��&'(� ��� �� �� ��� ��� � �� �� ������������ ���� �� ��� ��� �� �� ��!�� ��� ��"C������� �� ������ $����� ( ���� ����� �� �� ���)� ���� ��� �������� >��� � ���� ���� ��� �/$4� (!��)0& �"�������� �� ���� ������������ ���� � �� ���� ���@� � �������� �� � �� �� ����
�� ������ �� ��� �� ��� �� �� ������� ���� ������� �� ���� ��������� �� ���������� ��� ����������� ��!���� ������ ����� �� ��� ��� ������� �� �� ������� ����� ���� �� ���� �� ��!�� � ������� �� ���� �((��)�����!�% � ��������� � �" ������ ���� �������A
�%%�&!�����'��(�) �� ��*%�����(�) � � #��+�����(�) �
���� ������ ���� ( �� �� ��� ������� �� ) �� ) �� � � ���� �� ( ��� ���� �� ������ ������ �� ( � ���� ����� �� ���� � ������������ �� ��� �� ������ �� �������� ���� ���� �� ��� ������
(� �� ��� �� ��!�� � �?�������� % ��&'(� �� ���� �� ���� �� ��� ����/$4� (!��)0&� �������� ��� ��������� ��!������A
������@���$� � ����6�??����&��1���&$�(�??%
�����"'@���$� �9� �����$�"�#$??��-��"$??�%
�����"'@���$� �9� �����$�"�#$??'$ ��&$��??�%
�������@���$� �%
�� ��� ��������' �� �� � � ��� �� ��� ���� �� ��� �� ��������� �����
32
���� ���� ��� ���� ��� ���� ��������� �� ��� ����� ��!������ ����� ���% ��&'(� ��!������ �� ���� ���� �((��)�����!�% ����� �����A
�%%�&!�����'��(�) �� ��*%�����(�) � � #��+�����(�) �
���� ��� ��� ��������� (� ���� ����� �� ��� ������ �� �� ��!���� ���� ������� �� ���� ���������� � ����� ��� ���� ���� ��� ������ ��� ����� �� �� ������� ��� � ���� ��� ������� �� ������� ���� �� ���� � ��!���� � �� ����� �( /�!0��!�����!��� ���� �� �������� ���� ��� % ��&'(� ��!������ �� �((��)�����!�% ��!��� �� �� >��� ������ ��� ���� �� ��� ���� �� ��!�� ���� ����� ������A�((��)�����!�4!�� � � ������������ ��� ��"�����6 �����$!�����!�� ��� �( /�!0��!�����!�� �� ������� ���� ��!������ �� ���� ������������ ������������ �� ��� ����� �� ������� 7� ����������� ��� �"��� ������������� ����� �� ������ �� � �� �� ��� ��� ����� �� ������ ��� ��� ������� ������� ��� ������� ���� �� ��� ��!�� ��� ������ �� ��� �((��)�����!�% �� ���� �� � ��� ����� A�((��)�����!�4!�� �� !����� �� ��� ���� �((�5�)�����!�% �� � �� �� ���� �� ���( /�! ��� ��� �� ���� ��� ����������!������ �� ��� ������� �� ���� �((��)�����!�� 6� �� ������� ��� ������� ������������ � ����������� � ��� ����� ���� ���� �� ���� �������������
9������ ���� �� ���� ��� ������� ��� ���� ����� ���� �� �=�� �� � �������������� ��� �� ��!���� ������� �� �������
������� �� ������� �� �" ���� ��� ���� ���� �� % ��&'(� ����� �������� ����� ���� ��� �� ������ � ������ ������ �� ��� ���� �� �� ���� �������������� *�� �"�� ��A
��*#����(�) �� ��+� ���(�,�� ��+� ���)� ,�
���@� � �" ������� � ���� � ���� �" ������� �������� ��� �������
��� % ��&'(� �������� ��� ���� �� ��� ��� ����� ��!������� �� ����� ��� ��� �� ���� ��!�������� *�� ���� ������� ��� � ����� �� ����� �� ������� �� ��� ��� ��!���� ��� ��" �� ������ �� ������� �� �� ��� ��� ���������������� (� �� ����� ������ ��� �" ����������� �� ����� ��� ��������� ������� ��� � �������� ���� �� ���� �� �� ���������� $������������ �����)� 9��������� ���� �� ������� �� ��� �������� �� ��������� �� ��!�� ���� � ��������$������ % ����) ��� �� ����� ���� ���� ������� ���� � ����� �� ������� ������ ������� ���� �� ����
6� �������� ��� % ��&'(� ��� ��� ��������� ����������� �� �" ����������
� H� ��� ������� �� �� ������ �� ������ �����C��� ��" �� �������
� H� ��������� �� ������ $���� �� ������ ������� � ��� ���� ����)�
��� ����� ������ �� �� ������ �� % ��&'(� ���@� ������ ����������� ��� �"� ����������� ����� �� ��� ������� �� ����� �� ���� �� � ����� �� �� ���� ������
��4������ ����� ��� ������� ����� ���� �� ���� ��� ��� " ���� �������"� ��� ������ 567 �� �� ����� ���� � ��������� �� �� �8�������� �� ������������� �� ���
�� ���� ��� �� �,49� " ����) ��� ����������� ��%�:,"� ��� ���� ���� �� ���� ��� �������� ��� ���� ��%�:,"� ��� ��� �� � �� �������
33
��� ��� ���� ��� �� ������� � ���� �������� ����� � �� ��!�� � ������ �����"$5�� ������ ���� �) ��� ����� ��� ����� �� ���� ��������� ������� � ���� ����� ������ ��� �� �" ������� ���� ��� ����� ���� �� ��!���� ��� ����� �� ��������� !� ������ ���� ��� #�� ���������( ���� �" ��������� ���� ��� ��� ����� ��������� ��� ����� ���� ��������
��� !��� ��� ��!��� � �������� ��� ����� #�� ����� �������� �� ����� ����� �������������� ��� ������ ���� ��� ���������� ������� ���������
� ���� ���� ���� ��� ���������� ��� � ������ ����� ����� ��� �������������� ( ���� ���� ��� ���� ���� ���� �� ������ � ���� � �������� ���� �������������� � ��������� ���� ��� �� � ���� ��� ��� �>���� �� � ������� ����� �������� ���� ��� ��������� ������ �� ���!����� *�� �"�� �� �� ����� ���� ���" ���� ���� ������� ��� �>��� �� � ����� ��� �� ���!�� ��� ����������
��� ,"&�� ��� ���������� �� $�! �&������������
6���� �� ���� �� �� ��� % ��&'(� �������� �� ����� �������� �� ����� ������� �� �� ����� ��!�� ��� ����� ��� ���������� �� ��� ����� ������� �� ��������� ����� ����� �� �� ���� ��� % ��&'(� ��� ��� ����� �� ��� ���� �����
� ���� ��� ��� #��@� �"������� ���������� �������� �� ��� ����������� ��������� �����
�#�#� �5�� �� �)�� 9��� �
(��������� ��� >��� � ��� �� �� ������ ���� ��� ���� �������� �� ����� *����� /3����� ��� ������� ���� ��� ���������� �� ��� #�� � ������
��� �� ������ %�� � ��� ��� % ��&'(� �� ������ ��!��� �� �������� ����� #�� �� ���� ��� #�� ����� �������� �� ���� ��7������ ��� ���� ����� �� �� �� ��� ���������� ��� ������������ ������ ��� ��7������ �������� ��� �� ������ ���� � ����� �� #�� ������������ ��� ��������� ������������ �� ��� ������ ������ ��� ���� �� ��� �������� ���� ��� ��� ��������� ����� �� �� ���� ��� ��� ������� ����� �� (� ��� )� $��������� (� ���)� ��� �� ���� ��)� ��� ���� ���� ������ ��� ������C����� �������� ������ �� ���� �� ���� �� ��� ��� � ������� ���� �� �� ���� �� �� ��� ���������C�� ����� �� ��� ����� �� ���� ���
��� ���������� ����� �� ��� ������ �� ��� ������������ �������� � �������� ������ ��� ������� � �� ��� ����� �� ���� �� ��������� �� ����� �������� �� ������ ������ � ���������� ��� � � ������� �� ���� �� ������ ��� �� ����� H� ���>������� �� ������ ������ ��� �� �������
��� ��7������ ����� ���� ���� ���� ����� ������������ $E��� �� ����)� ��������� �� �������� ����� ������������ ��������� ��� �������� ���� ��� ?�����!����������� �� ��� �������� � �� ��� ������������ & ���� ����� ���� ��� ������� ������������� ?�����!�� ��� !6���� ������� �"��������� ?�����!������� ��� ������ ��� ��� ������� �� ����� �� ��� ������������� ����������� P����������� ��� ��� �" ������� ?�����!�� ��� ���������� �� � �"����������� ?�����!���
��� �� � �� ��� ������� �� ���������� � ��� ����� �� ��� ��� �� ��� ������������� ��� ?�������� ������� ��� ���� � ���� �� ��� ������C����� ��� ��� �� ������ �� ��� �����������
34
«Invariant»theName
«Property»p1
«Property»pN
Class1 ClassN
{range var1}
{1, not}
{domain var1}
{domain varN}
{N, not}
{range varN}<<forall>>/<<exists>>/<<not_exists>>
<<forall>>/<<exists>><<not_exists>>
{quantification var1} {quantification varN}
{1} {N}
Error message
*����� /3A ��� ������� ��� �&������ � ,�)�
��� ���� �������� �� ��� ��7������ ����� ��!��� ��� ����� ������� ���������� � ������ �� ��� ���������� ��������� �� ������
�� ���� ��� � ���!������ ���� ��������� �� ������ ���� �� �� �" ����� ������� ������� �� ��� ������ ��� � �� ���� �� ��� ����� ������� �� ���� ���� � ���� ����� ������� ������ �������(�� ���� ����� �� ���� ���������� �� ����� �� ����������� �" ��������� ���� �" �������� �� ��� ���� ���(�� )��� ���)�� )��� � � � � ���)���� )�� � �"�� �� ���������� �� ����� �� !���� /4�
«Invariant»marriedInv
Person+marriedTo: Person
«Property»marriedTo
«Property»marriedTo
<<not_exists>>
{Z}
{1}
{2, not}
{Z}
{Z}
*����� /4A (� ������ ,�) �&������ ��� ������� �������� ��� �� ��7��&�
��� �������� ������� ��A � , ������'��,� )��� �������'��)�� ,��
�#�#� .��� �)�� 9��� �
��� ���� � ���!������ �� ������� �� ��� ��������� � ���!������� � ��� � ��������� � '/�! �� ������ ���� ��@�� ��!���� � ����� ��� !���� /-� H����� ���� '/�!�� �������� �� � ������� �� ��� % ��&'(� 4� (!��) ������ ���� ����� ���� ����� � ���� �������� � 4� (!��) ��� � ����� *�� �"�� �� �� ��� ��!������ ��
3-
����� ��� ����������� ��� ��7������ ��� ��� �������� �� � � 4� (!��) ������� �������@� � ���� �� ��!�������� ��� ���� ���� ��� ��=������ �� ���� �� ���� ������� ��� ������������ ��
?�����!�� ��������� ��� �"�� �� ���� �� !���� /. ��!��� ��� �������� �� �����
«Rule»ruleName
«Property»p1
«Property»pN
{1, not}
{n, not}
Rule
Property{domain var1}
{domain var1}
{domain varN}
{domain varN}
*����� /-A ��� ������� ��� ����� � ,�)�
Person+ancestor: Person
«Rule»ancestor
«Or»
«Property»parent
«And»
«Property»parent
«Property»ancestor
{1} {2}
*����� /.A ��� ������&� �������� ���� � ,�)�
���� �"�� �� ����� ��� �������� �� ��� �������� �� ������� 0� ��� �������� ������� �� ����� �� ��� ������ ��� ����������� �� ����� ���� ����� �A��������(�) � � �%�����(�) ����������(�) � � �%�����(�)��� ��������)�� ) �
�#�#� + ����� "#$ �5�� ���@.����
��� ��� �� #�� ����� �� � ���� ���� ����������� ���� ��� #�� �������� ���% ��&'(�� �� ��� ����� ��� ��������� ��� ����� ��� �������� ���� �������( ���� ���� ��� �������� �� � �� ���� �� ��� �� ������� �� ��� ������ ������ *������C ����� �����"� ���� �� �� ������ �� ��������� ���� ����������� ��� ����������� �� *������� �� ��� ���� ���� �� ���� ���� ������ � ��������� �� ��� �����
����������� ��� #�� ����� �� *������ �� ���� ��� ��� ���� ��� >��� ������������ *������ ������ ��� ��������� �� ��� �� ���� #�� �������� �� ���������?�������� �� ��� ��"������ �����"���� ���������� �� � �� ���� ��������� (���������� �� ��������� ������ �
���������� �� � *������ ?����� ���� �� ?���� ��� ������� ��� �� ��� ������ ��)!� ��� ��������� �� ���!����� ��������� �� ����� ������� �� ������� ( ���� ����
3.
����� ��=����� ?�����!��� �� ��� ��������� � ���!������ !6����; & ���� ��� � �!6����� � �������� ?���� �� �?�������� �� ��� !6���� ���������� ��� ����� �� ���� ?�����!��� ��� ������� ������ � �� �������� � ������ ��� �� ����������
H� ����������� ���� #�� �� *������ ����� ��� ��� �� ��������� ������� (������� �� ��� ���������� ���������
��� ,"&�� ��� ���������� ���� ���������� ��������
6���� ��� #�� �������� ��� ����� ��� ���������� �� � �� ������ �� ����� ������������ �� �" ������� ���� ��� ���������� ������� �������� ���� ����� ������ ����� ��� ��������� � ���!��������
�#�#� �5�� �� �)�� 9��� �
��� � ���!������ �� ���������� ��� ��� ���B� �������� �� ������� ,�4 ��� (���� ���� ������� �� �"������� ���� ( ���� ���� �� ��� ���� ���������
(� ��� #�� �������� ��� ���������� ( ���� ��� � � !6���� ���� ������ ������� � �" ������ ���� ��� � ��� ?�����!��� ( ����� �� ������ ������ �� ���� ��!�� ��� ����������� 6� ( ������� �� ��� �� �� ��� ���������� �������� ������� 6���� ( ���@� ���� ������ �� ��� ������ ���� ��� ��� ������� ��� ����������������� ��� �� ��� �"������ ����������� (� !���� /0 �� ��� ��� ��� � � !6����?�����!��� �� �� �� �������� �� � ������ ������ $���� ��� ������� ������� �� �������� ���������� ��������)�
person
parent
child
*����� /0A %����� ��������� ���� ��� ��� �'���� 0����-���
�#�#� .��� �)�� 9��� �
9��������� �������� ��� $�� ��� ���� ���������) �������� �� � ���� ��� ������������� �� �� ���� ���� �� � ����� ���� ���� �� �������� � �"������� ����������� ��������� ������ �� ������ ����� � ������� �� ��� �������� ������������������ �� ��������
8���� ��� ������� ��� �� � ������� �� ����� ������ ��� ������ �������� ���� $���� ��� �� ���� ����) ���� � �� ����� ���� ��� ������������� ��� ���������� ��� ��� ����� �� ���� �� ���� ��!���� ��� ���� �� !���� 21���� ���� ��� ������ �"�������� �������� H������� �� �������E�� � � ������B� �B �� ��� ���� �� ��� ������
��� ����������� �� �����C*������ ����� ���� ��A ������-����(�) � � �( �'�� ) � '�� ��(�,�� , � '�����,�. ��. � '�� %�)�. ���. ��� )�
�#�#� + ����� (+ �5�� ���@.����
��� ���������� �������� ����� �� � ?���� ��� �� �� ����������� ��� ��� ��������� �� ��� ��������� ��� ��"� �����" ��� ����� ����� �� �� ����� ���� �
30
t1
t3
t2
__definedrulep
r _not_q
*����� 21A %����� ��-���� �� � �����
��������� ���� ��� #�� � ������
��� 9% � ����� ���� ��� ���� ���� ������ ��������� *�� �"�� �� ��� ���������� �� �?���������C���?������ �� ��������� (� ��� ����� ���� ��� !���� 21 ������� ���� ��A �. ��� )� ���� ��� � ��� ������� ����� �� ���@� ���� �� ���������� �������� �� ��� �������� 7�� ��� ��� �� ��=����� ����� �� ��� ����� '������ �"����� ����� (� ��� ��� ������ ��� ��� ������� �� ��� ���� ���� ������?������ ��������� ����� ��� ���� ��� ��������� ��� ��� �������� . ���) ����� � �� ����� � ���� ��� ������ �������� �� ����� ���� �� ��� #��� ����� �� ����� ���� ��� �� ��� � �?������ �� �����
��� ��� �� P������������ �� �" ���� ������������ �� ������� �� ���� �����������
��� ��>�� ������������ ��� ���� �� ��� #�� � ����� �� ���� �� ����#�� ��� % ��&'(� ��� ��� 9%;����� ��� ���������� ��������� (� �� �� ����������� �� �� ��� �� ���������� ������������
����� ��� ���� ���� ������ ���� ��� ���������� ������� ��������� '���� ����� �� !���� 2�� ����� ��� ��� ���� �� ������� ���� ���������� �����
g
f
*����� 2�A (� ������� ������ +� � ��� ����� � � ������ �� ���� ��8 ������ ��� �� � ���� �� �� ��8 ������ ��� �� � ���� ���
�� �� ��� �� ����������� ���� ��� ������� ����� ?�����!�� ������ � �����!���� ���� �� �������� ��������� ���� ��� ����� ���� �����@� ���� ��� �������������� ���� ���� ��� ���� ?�����!������ �� � $���������C�"���������C��������"���������)� (� #�������� �� ����� ���� ���� ����������� ������ ��� ����� ������ ?�����!�� ���������
41
�#�#� (+ /���� ��)������� � ��� ������� /�� �2(+A� � /2$� �
H�� ���� �� ���� ���������� 6��� ��� �"������ ���������� �������� ������� ���������� ��� �� �� � ����� ������ �� ���������� �� �������� ���� �� �� � ��X � ����� �� ��� ������� ������� ����� �"���� � ���� ��� ������� $�"������)���������� ��������� ��� 9%;������ ��� 9%;����� ���� � ����� ������ ��������� �������� $ ���� � �>��� �������E�����)� �� �� �� ���� ������ �� �" ��� ����������� �� 5��� 9������ ��� 5�� ������ ��� �� � ���� � ��� ��������������� ���� ��� 5�� � �������� ��� ������������������� +��-.��
��� !���� �� 2, ����� ��� ��=����� ������� �������� �� ����������� ����������� �� *�������
Constraint diagramin XML−like format
Well−formedXML
XMLifyCD ChangeClassTag
1Well−formedXML 2
Flora rules/queries CD2Flora
*����� 2,A ��� ����7�� ��� ���������� ��������� ������ �� ����� ��� ������������ ��� ��������� �� ��� ���� �������
��� !��� ��� �� ��� !���� ����� ���� ��� ������ D1,&��!� �� � ���� �� ���9%�5�� ��������� ���� ��� �� � ���� ������ ��� 9%;����� �����@� ����������������� 5�� ���������� ���� �� 5����/� ���������� �� ��� ������ ������� ��� ���� �� !"� ��� D1,&��!� ������ �� �� �������� �� ��� $] ,3 ������� ����) ��� ������� ����������� 5�� ���������� 6���� ��� ������ ���� ������ 9%;����� ���@� �������� ( ������@� !" ����� ����� �� �������� � �� �� ��� �������
��� ������ ��� � ���� ��� ������ !����$!��(�� �� ��� 5�� ����������� �� ����� ��� ���������� �� ��� ��� ����� ��� ��� ��� ������� � ���� ������� � � �������� ��������� �� �� �� ��������� �� �� ������ �� � �� �� ������� � 6����� ��� ���� ���� �� �� ������ ��� ���� ��� �� ��� ������������
��� !��� ��� �� ��� !���� ����� �� ���� ��� ��� ����� ����������� ������������� �������� �� *�������
( ���������� ����� ����������� ���� �� �� ������ ��� ����������� ���� ���5�� ������ �� *����A
� 6���� ��� �������� ��� �� 5�� ������ � ������ �� ����������� �������� �� -��, ����������
� #�� �� �������� 5�� ����� �� ���� ��� ���������
� #�� �� 5�� 6����� ��� �����
4�
6���� ( ����@� ���� ���� �" ������� ���� 56�� ��� ( ����@� ���� ���� �� ������ ���������� �� ����� ��� ���������� �� ���� ��������� ��� ������ �������������� ����� ��� ���������� �� � ������� �� ��� �������� ��� ��� � 5�� �����$���� +���)� ������ �� � ��� ������ ��� �� �� ����� ������� �������� ������������� ����� � $����� -.� ����������� ��) ���� �������� ���� ����������� �� ��� ������ 5�� ��������� ��� +��� �>����� ����� ����� ���� ��5�� 6�����C%�% �� �� �� ��� ��������� +��� �������� ��� ��������� ������������ ���� �� ��� ������C�� ������ �� 5�� ��������� ���������� �� ��� 5��������� ��� ����������� �" ������ �� ��� 5�� ������ ��� ������� � ������������� �� � �������������� �������� ���� ������ �� ����� �������� ������ �������� ��� ��� ���������E�� ��� ���� ��� 5�� �������� �� �� �>������������ ������������� ��� ����� ��� ��� ���� � ������� �� ������ ���� ��� 6����� ��� ����
����� ���� ���� ���� ��� ���� �� ��� ������ ��������� ����� ����������� $6 5�� %'�)� (� ��� ����� � ����� ����� ���� ��� ���� ( ���� ���� ( ����� ������ �� ������ ������� ��� ��� ������� �����" �� ���������� �������� ��� ��������� ��� ���� ��� �������� ��� ��������� �>����� 6���� ���� �� �"����� ������� 6����� ��� ����� ���� ��� ( ������� �� ��� ���� ���� �� �����
��� ��� �� ����� � 6����� ��� ���� �� �� ���� � ������ ��� ��� 5�� � ��������� ��� ���� �� ���� ����� ��� �������$�) �� ��� 9%;����� ����@� ��!��� ���$��� ��� ������ ����� �� �����@� ��� �� �� 5��)� �� � 7H* ������ ���� $������� ������ �������) �"������ 6� ��� !��� ��� ��� �� ������ � 5�� 6����� ������ 9%�5�� � ���������
H�� ���� �� ���� �������� ��� ������� �� ������� ��� �������� �� ����������>����� �� ��� ����� ��� ������������ � ���� �� �� ����� ������ �� ��=������ ����� �� ��������� �� �������� ��� ���� ���� ��������� ���� ���� �� �������� �������� ��=����� $��� ���@� ��" ����� ��� ���������� �� ��� ���� ��������)�7�� ����� �� � ������ ��� ���� ��� � ������� ��� ����� �� ����� ���
���������� � � ���!� ������������� ���� ��� ���������������� �� ���������� ��������� ��� ��� ����� �� ��� ������� ��� ������� � �����
��� �� �� $����� �� ���� � ��� *������ ���������) ��� ���� ���������� ��� �� ��� ��� ����� ���� �� ��� ���� �� ������ ��� �� ��� ������������ ��� ��������� ����������� �����@� ������ ������������ �� ��� >��� ������ ��� ������ �� ���� ������(� ��� ������� ��!��� � �� ��� ���� ���� $��� ��!��� ����) �� ���������
��� ���� ��� ���� �� ��� ������ ��� ��������� �� �������� ��� ��� �� ��� �������� ���������� ����� �� !�� ��� ���� ����� ���� ����� ���� ���� �������� �������� �� ������� ����� ����� ��� � ���� �� �������� ������ $������ KI �) �� �� ������� (� ���� ���������� ��� ����� ��� ���� �������� �����(� ��� �������� ��!��� �� ��������� �������� ��� ���� ��������� ��� �
����� ��� ��=������ �� ���� �� ���� ?�����!��� ���� ���� � ����������� ���*������ ���� ���������� �� � �� ���� �������� ��� ���������� ���� ��� ������ ������� ?���� ����������������
�� �!�� �(!�� ( �� ��� ���� ���� ����� ��� 6����� ��� ���� ��� � +��� ������ ��� ��� ��� ��������� ��� ��������� ���� �� ?���� ������� ��� ���� ��
4,
����� (� ����� ����� � ��� ���� ���������� �� ���� �� ��� ���� �� ( ������� �� 56�� � ������
( ����� ���� ����� �� ���������� ���������� �� �� ��� ����������� ��������� ��� ���� ���� ��� ��<���� �� ����������� ������� � � ��� ��� 5��������� � ��?����� �� ,�/ ����������� $����� ��� !��� ��, ������ ����� 5�� ������ ��� ��� 5��� ��� ���� ��� ���� ��� ��� *������ ����) ����� ���� ��������� ������� ���������
��� ��� ���%� �� �#���� ��� ����� ��,������ �� ./��
(� ���� ������� ( ���� ��� ��� 6;%; ���������� ��� � ���� �� � �������� ������ ��������� �� 5����� ���� ������� ��� ����� �� ������ � ��� �����"�� �� �� ��� ��� 6;%; ��� � ���� �� ��!�� ��� ������ ��������� �� ���������� �� �" ������ �� ������� ,�� ��� �������� ���� �� � �������� ��� ������������ +��� ��� ��� ��� ������
( ���� ������� 5���� ����� ���� �� �� ���� ���� ��������� �������� ��� ���� ������ ��� ��!������ �� ��� ���� �� ?���� ����� ��� ��� ���#������������ �� �� � �� � ��� �� �� ����������� ��� 6;%;� �� ( ��������� ���� ���������� ���� ���� ����� ��� � �������� �� ���� ���� ������������������ �� ��� 6;%; �������������
�A%�" �� ��!��� � ��� ���� ��� � 9��������� $/9)��� ��� �� ����� �� � 5�� � �������� ��� �������� ����� ���� ����� ���� ��� ��� ���� ������� ����� �� ���� ��� ���� ����� �� 5����� ��� ������ ��� ���� ����!������ ������ �� �� 5�� � �������� �� ��� ���� ��� �"����������� ��� ���� ��� ����� !"��� ��� ����� 5���� ��������� ��� ����������� 5�� ���������� ����������� �� ��� 5�� ��� � ���� ��� 5�����
� �"�� �� �� �� 5���� �������� ��
�� ��%
��$��%
� & �$%7 �$'���$�� & �$%
���$��%
�'���%
��%1�+$� � �� ��$�??� �����������'���#��??%���'�����%���%
��'���%
��� ��%
��� ��� ������������� #������ .�! ��� �#����� ���� ���� ���� ����&���
� ������ �� ������� /�� �� ���@� ���� �� ��� 8%* ���������� �� ������� ���������� �� ���������� ���� �� ��� �������� ��������� ����������� ��� ���������������� � ��� ������������� ������ ��� ����������� ��������� ��� �� ������ ������� 5�� �� ������������ (� ������� ,�/ �� ����� ���� � ���������� ���� ��������
�������;����
4/
�������� �� ��� ����������� �� ������A ���������� 0����2 ��� �� � ����� ������� ��� ���� ��������� ���� �� ���� ���� ��������� ������ ����������
9������� ��� 5���� �"�� �� ����� �� �� � ���������� ���� ������ � %�%��!���� ��� ����� ������ (� ������ ���� ��� ��� ������� ��� �� �������� ������� ������ !��; $ �)� ����� �� ���� ���� ����� ��� �������� ���� 6� ��������5�� ���� � ���� ����� �� �� ������ ����� ���� �� ��� �� !�� ������ ���� ����� ������ � ���� ��� �� ��� 8%* �� ����������� ��� ��� 5���� ������������� �A
��$#�&� &�� �'�" ??� ���??%
� ��$ �$�"�#$??�� ��B�� ������� ��??�%
�#�&�� �$�"�#$??�$���??�%
�#�&�� �$�"�#$??'����??�%
���$#�&� &��%
��� ����; !���; $ �)� ����� � ��������� �� ��� ������ ������ ��� �� ��$����� ����� ���)� (������ �� !��� ����������� ��� 5���� ���� �� 8%*���������� $����� ����� � ���� �������������)� ( ���� ��������� ���������� ������� 5�� ������ ������� �� *������ ����� ����� ��� -.�*� ��� ������� ��������� �� �"����� ��� �����
(� ����� �� ��� ��� �� ������ ��� ������� �� !��� ���� �� ������ �� ����������� �� �� � ��� $���� ��� 5�� ���� �����)� ���� �� ���� �� �������� � *�������������� ��� ��� �������
*����� 2/ ����� ��� �� �� �� ������ ����� �� � ����� H���� ���� �� ���� ����������� ��� � ��������� �� ���� ����� �� �� �������� �� ������ �������� ������� �� ���� ������� ��� ����� �� � ������� $���� Q �� ���R ��� ����!� ���������)�
Node+text: xsd/String+preceededBy: Node
Leaf
«Anonymous Class»
Root
«Property»child
«Property»parent
«Anonymous Class»parent
child
*
1
<<disjointWith>>
<<equivalentTo>><<equivalentTo>>
<<restrictOnProperty>>
<<restrictOnProperty>>
0
0
*����� 2/A ��� �9����� �������� � ��� ���� �� ������� ������
��9�������� ���� ��� � �� ������� �� ���� ��� �������� ��� ��� *%����#��� ����� � ������� ������� �� ��� ����� �� � ����� ���� �� ���� �� �� � �� ���
���� ��������� ����� �
42
��� ����� 4� �� ��� ��� �� ��� ����� ���� �����@� ���� ��� ������� ������� � ���@� ���� ��� ��������� *����� 22 �������� ��� �� �������
«Property»child
«UniqueProperty»parent
«Property»text
«TransitiveProperty»preceededBy
«TransitiveProperty»ancestor
<<inverseOf>>
*����� 22A ��� �9����� ��������� ���� ��� ���������� ��� ������� ������
%������ ���(�) � ������ � ���� �� ( ��� ��� �����C����� ) � ��� ��5�!�� � �� ���� �� � ���� ����� ��� �������� � ��� �� � ����� �� % ��&'(���� ���� �������� ��!�� ����� �� ���� �� ��� ������ ��� ����������� �� 22 ������� ��������� ���� � ��� ���������� ������� �� !���� 23� ���� ������ ��� �
__ancestor
child ancestor
*����� 23A ������ ��-���� �� ��� �������� ����� ��� ���� ���� ��� ��� �������� ��&�� � ��� '(�)*�+)/,�) ��-���� :-���� 55;�
���� � ��� � ��������� ���� ����� �� ����� �� ��� ���� ��������� �� 5�� ����������� �� ��� � ���� ��� �������� ����������� �� ������ ���� ����� ������� ��" $��� ������ �� ������ �� ������) ����� � ����� ��� ��������������� �������� ���������� ���� �� �"����� ���� �� �����
��� ��� ���� ������� ���������� � ./��!
��� %�% ��� 5���� �����@� ��!�� ��� ��� ����������� �� ��� �����"� ��������������� ����� ���� ��� ��E� �� ��� %�% � ��� ����� �� ���� ���� ���� ��� ���������� � ���!�� ���������� �� ��� 5���� � ���!������� ��� ������ ������������������� �������� �� ���� ������� ������� ���� ��� 5���� �������� ������ ������� ������� � 5�� %�%�
43
��� ��������� �������� ���� ����������� �� ����� �������� ���� ��� �������
� � ������ ������� ����� � ���������
� (�! ������ ������� ��� ���; $9!��; $��; �����; �/$ �� /( ���������
� $/�� � ������ ������� ��� ��(/�; �!�!��; �!6���!�; ��$!�; $/�� �;& ��; C!���!�; �&���! �� �����!6 ���������
� ��$!� ������ ������� ����� ��$!� ���������
� & �� ������ ������� ����� & �� ���������
����� ��� ��� ��������� �� ��� ���� ���������� �� �� �� �� ��� �"�� �� ( ����������� �� ��� ���� ��� � ����������� ��� 5���� � ���!������ ��!��� � ������ �� ����� �� ��� �������� ������ ���� ( ���� ���� ������� ����� ���� ���� ��������� �� ���� ��� �"�� ��� �� ��� ��"� ������� ����� '� ������ �� �� �� ������ ������ ��� ���� �� ��� ��!��� ����� �� �� ���� ������������� �� �� �������������
Node
html body
Root
a+href: xsd/String
headtitle p
«Property»href
«Anonymous Class»
«Property»ancestor
<<restrictOnProperty>>
<<equivalentTo>>
<<toClass>>
«Anonymous Class» <<complementOf>>
*����� 24A ( ������ �� ��� 1<��) �������� ���� ����� ��� ��� ����/6��� ��������� ��� ���� ���������
H����� ��� ��� � ����� �� ��!���� �� �� ���� ��� ������ ��������� ������������ ��� ��� �� �������� ����� 7� ����� � � ����� ����������� �� ��� �� �������!�� �� �� �� ���������� �� ����� �������� �"�� � � ������������ 9����?����������������� ���� ��� �� � ���� ��� ���� �� �������� ���������� ���� �� �� �� � ���� ����� ����� �"��� ��� ��� ���������� ����� ��� ������� �� ��� % ��&'(������� ��� �� ����� ������� ����� � ������� ���� ����� ���� �� ����� (�����@� �� �������� � ���� ����������� ���� % ��&'(� �� *������ �� ���@��������� ���� ����������� ������� ��@�� ����� �� �� � ��������� ������� ����� ���� ������������� ���������� ������� �" ������� ���� ���������� �� ����� �� !���� 2-
�� ����������� � �� ���� ����������� ����������� ���� ��� � ������ ( �����"������ ��� 5���� �����" ���� ���� ����� ��� �"������� ����� ���� �������A
�@�&�%
�@$���%
44
a
ancestor
*����� 2-A +�&����� ������� �������� ������ � ��������
�H��$% �$B���$���H��$%
�-2&��%�����&����-2&��%
��@$���%
�@$���%
�H��$% �$B���$���H��$%
�-2&��,$+$�%�����$�&"���&����-2&��,$+$�%
��@$���%
��@�&�%
��� ;�� �������� ����� � ���� �� ���� ����� �������� ��� ����� �� ������������ ������ � ��>���� ��� ������� ���������� ��� ��� 4��� �"������� ������ �������� �� ��� ��� ��������C����� ���� ��� !���� 2.� ����� ���� �5���� �������� ��� ������� ��� ����� �� ����� 4��� ��������� 6�����������" �� ���� ����� � ����������E�� ������� � %�%� ���� ��A � 4��� ����������� ������ ���� ��� 4!�� � ���������
Node
Pair Person Name SkillLevel
*����� 2.A ��� ������� ��� ��� ��������� �� 1<��)� ��� ������� ����� ��� ������� �������� � ��� ���� ���������
H�� �� ��� ��� ���� ����������� ���� ������ � ������� � �����"��������������� ����� ����������� ���� �������� �����
*���� ����������A
����� ��� ���� ����� �� ��� ���� � ��� ������ ���� ��� ������ � ����� ���?���� ������!�� ���C����
���� ��������� �� ����� �� !���� 20� (� �� ���������� �� Q����� �"���� �� �����=����� ����� �� �� � *��! ���� ��� ��� ���� ����� ��� ��� �!6� �� ����R�
4-
NameString
text
text
*����� 20A �
6����� ����������A
����� ��� ��� ����� ����� �� ��� ���� ����
���� �� �� ���������� �� ��������� ��� ������ C���4!�� � ��� �!� ��4!�� ������� ����� ������ ��� !��� ��� � ������4!�� � ������� �� � �����4��� ������������� ����� ��� ����� �� !���� 31 ��� 3�� ��� �� ���� ��!��� ����� ������
Pair
Person
__firstPerson
parent_not_preceededBy
*����� 31A '�-���� �� ��� ���������� ���������
Pair Person
__secondPerson
_not_firstPerson
child
*����� 3�A '�-���� �� ��� ������������ ���������
�� ��� ��!�� ��� ��������� �� ����� �� !���� 3,�
4.
Pair
Person
Name
firstPerson
secondPerson
text
text
child
child
*����� 3,A ��� ��� ������ �� ���� ����� ���� � ��� ��� ����
��� ��������� �� ���������� �� Q �� ����� �� �� � 4��� ���� ���� ��� ������������� ����� �� �� � 4!�� �� ����� ��� ����� ���� �� ���� ���� *��! �������� ��� �!6� �� ���� ���� �������� �� ��=����� ������R� � �� �� ���������� ������������ ���� ������ ���� ����� 4��� ���� ���� ���� $�������) ��� ����� ������� �� � 4!�� �� �� ���� ������ ������ ���� ������ ����� �� ������ ���� ����������� �������� ��� ��� ������� ������� ��� 5�� %�%�
� ��� ���� ������ ���� ���� ���������� �� ������ ��� ��������� ����� ��� !������������� ���� ������ ���� ����� '�� ������ �� ������ � ���� � ���!� ��������������� � �� ��� ����� ����� ���������
����� ����������A
��� ������ �� ��� ���� ��� ���� ���� ��=����� ����� ������� (� ��� ������ ���� �"�� �� ���� ( ���� ������� ���� ����� ��� ���� ���������� ������� �� ���� �� ��� �� �������
Pair
Person
SkillLevel
String
firstPerson
secondPerson child
child
text
text
*����� 3/A ��� ������� � ��� ��� ��� ��� ��&� �9����� � �� ��&����
��� ���������� �� ���������� �� Q*�� ��� 4���� ��� 4!�� �� �� ��� ��� ������=����� �D���"!7!��R�
��� ���0��� ./��! ��"�����
H�� �� ��� ��� ��� ������� ������� ��� ��� 6;%; ��� ��������� ��� 5��������� ��������� ��� ��� ���������� �������� �� *������ ��� ����� ��� ��������
40
�� 5���� ����������
��� �������������� ���� ��� ������� ������� ��� � ���� �� �������� ����������� ����� ��� ���� ���� �� ��� �� �� �� ��� ���������� ���������
���@� ����� ��� ������ ��������� �� ��� ��������� ��������A
�� ��%
�'���%
�@�&�%
�@$���%
�H��$%/������H��$%
�-2&��,$+$�%5&����-2&��,$+$�%
��@$���%
�@$���%
�H��$%/������H��$%
�-2&��,$+$�%5&����-2&��,$+$�%
��@$���%
��@�&�%
�� ��$�??�������??%�� ��$�??'������??%'�����%���%
��'���%
��� ��%
� �� ��� ��� ��� �������� �� ������������ ���� ��� ����������� �� ��� �������� �������� ��� 5�� �������� �� ���������� �� *������ ����� ���� �����"��� ���� ������� 6� ���� ��� ��� ����������� ��!��� �� ��� ���������� ��� 5���� �������� ����� ( ���� ����� � �� ����� ����� �������� ����� ���������� �������� � ������� ��� 5�� ��� �� ���� ��� 9%;������ ����� ���� �� �� ����� � �������� �������� �� �� �������� ��� *������ ����� ������� 5�� �������� ���� ������ � �������� �������� ��� �����C����������� ������ ��� ����� ��������� ���� ��� ���� �� �� ��� �����C����������� ��� �������� �� ��� ���� !�� ��� ���� ���� �� ���� *�����
��� ������� ��� ��������� ������ ������ ��� ����� ���� ��� *���� �������� ��� ��� ��������� ������A
������ M� I#�� ��&� B�&�$J�
I�,9�7� #���&�&�� ����$�>�����!���&�$��D-A��$���B��#$����J
�
�
�
I�,9�7� ���$N !@3 &�$ "$�� �������O $#���J
P$�
*��9�� 7 �$��� �##"� ���$ ��� ��#$ &� � ��&�N
P$�
*��9�� (�$�$ & � �$ $� ?�? $�$�$� N
P$�
*����� @$��� �& �&� � ��&� ��+$ �$ ��$ 2&�� �$+$�N
P$�
P$�
-1
���� ����������� ����� �������� ����� � ������� �� ��� ���������� ���� 5������ ���� � �� ���� ������ ��� ���� ����� ��� ���� 5���� �������� 6��� ����" 7�, ��� ��� *������ �� ����������� �� ��� 5���� �������� ��� ������������C������
� !���� �� ��� ��� ���%� �� %�0�� ��� ������������� �� 1�-�
(� ���� ������ !��� ������� ( ������ �� ��� ���� ���� ��� ���������� �� ����������� �� ��� ������� ������ ��� �� ��� ��� ������ ����������� �� � �������� ������ ��������� �� +����
���� �� ����������� ��� ������� ���� ��� � ��� �� ���� ��� �� ��� ��>������ ��� ( ���� ���� ������ ��� ��������� ��� ������ ��� ���� �� ���� ���� � �������� �� ��� ����������� ��� +��� �����" ��� ������� �����
�� ��� 1��� �������
'�� �� ��� ���������� �� ���� ��>��� ��� �� ��� ��� ��� % ��&'(� ������������� � ���� �� ��� ������ ��������� ������ ����� �� ��� 9�� ���C8������������� 9�� ��� ��� ������� ��� � ��� �� +��� ������� ���� �� ������� ���������� �����" ��� +���� 9�� ��� ��� ���� ���� +��� ������� ��� ������ ��������� �>���� �� ����� ��������
*����� 32 ����� ����� ��� ������������ �� ��� 6;%; ��� �� ���� �������� �� ��� ������� 9�� ��� �� ��� 6;%;� *���� �� ��� ���� �������� ���% ��&'(� ��������C������ ��� +��� �� ��� ��� ��� #�� ���� �� ����������������� ��� ������� �� 9�� ��� ���� �� ������� ��� ������� �����" ��� +����8������������������ �� ���� �� ��������� ���� #�������� ��� ��� ���� ��������� ���� ��� !��� ���������� ���� �� ��� 6;%; ������������� ��� ����� �$�����) �"���������
6������� ��� 9�� ��� ������ �� ���� �� ���� +��� ������� ��� ��� ������ ������� �� �� 5�� $���� �� ���� � ��� 4���� )�,*-.� ������)� ���� ������� �� ���� ��� ������ ���������� ���� �� ��� 6;%; ������������� ������ ���� �� ��� ������� ������� ��� 5�� ��������� ��� � ���������� ��*������ ����� ������� ��� ������� -.�*� ��� �������
'��� �� ���� �������� ����� ���������� ����� �� ��� ��� ��� �������� ����������C �� ������ ����� � ��� ���� �������� $������� -��) �� ����� ���� ��������� ��������� ��� +����
�� �� ������ ��� ���� ��������� ���� ��� ��� �� � ���. ��!� ��������� ���?���� ����� ���� �� ��� �������� �� ���������� ���� ��������� �� ����� � �� ���� ������������� ���� ����� � ����� � ��� �� (� ��� ����� �� ���� � ���. ��!� �� ��������� ����� �� ����� ���� ������� $�� �������) �� ������ ���� �� ������������� ����� �� ������ ��� ��������� �������� ���� � ��������� �� ������� ������ ��� ���� � �6������������� ���� ��� ���� �� ���� ��� !��� ������������������ ����?���� ����������� ����� ������� �� ���������� �� �������� ����� ������ � ����� �� +��� ���� �� ��� !��� ����� ����� ������� ��� ������ ���������
�+�� ��� ����� �� �� ����� *%� ���������� �� ������ �� ���������� ��� ���
-�
UML Editor Constraint DiagramEditor
COMPOST Java−ASTclasses
Java Program(source code)
COMPOST
FloraInterpreterontology
DAML
Flora rules/queries
Class−diagramin XMI
Flora Schema
Reverse Engineering
DAML−LRules
Yes/No − error message
Load
CompostAST2XML
XML Document
XML2FloraDB
Flora facts
XMI2FloraSchema CD2Flora
XML format
Edit Edit
Save Save
*����� 32A ��� ���������� ��� ��� (������ �� ������ (������ ��� ����� ���������2���������� �� ������� ��� ��$*;0%* ����� �� (������ �� ���� �� �������� ������� ��������� �� ������ ��� <� ������ �� ���������� �� � #$*���������
���������� ���� �� ��!���������� ������ $� ������� ���� � �������� ����� �� ������) ����
��� 9�� ��� ������ ���� ������� ������� �� � ��� �� ���� ����� (� ��������� ���������� ��� ���� �� ���� ��� ���������� �� �������� �" ��������� ����������� �� �� ����� ���� ���� �� ��� ����������� ( ������ ��� ������� ��������������� ������������ ���� ( ����@� ���� �� ����� ���� ��� ����� ���� ���� ���. ��!� ��������� ��� ���� ���� ������
6���� 9�� ��� ������ ���� �����"� ���������� ( ��� �� ������ ��� 9��� ��� ����� �������� ��������� (������ �� ������� � ����� ������� ���� ������� ���������� +��� ������ ( �������� ��� ������������� �� �� ��������� ��� �������� ������ �� 5�� �������*������ 33� 34 ��� 3- ����� ���� �� ��� ����������� ���� ���� �������
�� ���0��� ���������
� "��������� ��� �������
(� ���� ������ �� ���� ������ �� ��� ��� �������� �������� % ��&'(� ��� ��� �������� ��� ������ �������� �� #�� ����� ��������� � ���� ������ �� ����� ��� ��� #�� �������� ��� % ��&'(� �� ������� ��� �����"���� �������� ���� �� 5�� ���������� % ��&'(� ��� �" ���� � �������� �� !��������� �������� ������ *'D� ��� ��� ���� ����� �� ��!�� ��� �����"���� �������� ���� �� ���������� ���������� � ���������E��� ��� ����� ���� �� ��� ����������� ������ (� �� ����������� �� ��� ��� % ��&'(� ��� � ���� �� �� ��� ��������� ��� 5�� ������
-,
Return
MethodDeclaration
Type
enclosingMethod
type
type
compatibleType
*����� 33A %������4 ��� ���� �� ��� ������ �'�������� ���� �� �������� ��� ��������� ������ ���� �� ��� �������
Break
LoopStatement
Switch
ancestor
*����� 34A %������4 � ���= �������� �� ��� ����� �� � ���� �� *��� ����2������
Label
Switch
Integer
not
not
inSwitch
inSwitch
value
value
*����� 3-A %������4 � ��� �� ��� ��� � ���� �������� ���� ����� ����>����� �����
��� #�� �������� ��� % ��&'(� �� �������� �� ������ ��� �� ������ ������� ��>�� ��=������� ������ ����� ��� ��������� ���A
� % ��&'(� �� ���� ���� ���� ��� � $���� ������ ����� �" ��������)����� ������ ��������� ������� � �������� ����� ������� ��� ����������� �� �������
� % ��&'(� ������ �� ������ �� !��������� ����E���� � ���� ��!�� �� ���
-/
���� �� ����� �� ����� ������� ���� � �� ��� ����� �� �������� �� ��� #������� � �� �� ������ $���� ���������)� D�� ������ ��� ���� � ��������������� ��� ������ ���C�� ������
� ��� ����� ����� % ��&'(� ����� ����� ��� �� ����� ���� ���� ����� � �������� ���� ������ ������ �� #���
����� ������ ���� ��� ������ �� ��� �������� �� ���� ��� �� ��� ������� ����� �� ���� �� ������ �� �"������ #�� ����� ��� ��� ���� ����� ��������� �� ��� ���� ��� ��������� ������� �� ��� ��������
(� ����� � ����� ���� ��� ���� % ��&'(� �������� ����@� �" ������������� �� ������� ��� ����� �� �����"� ����������� ���� % ��&'(� �������� � ���� ��� �� � ������� �� ������ ������� $���� ������ ����� ��) �� ����� ��� ��������� �� ������ ������� �� ������C����� ���� �������� �� ������� ���� �� �� ���� ������������� �� �������� ���� ����� �� ������ �� ��� ��=����������� ��������� �� �� ������ ���� �������� ���� ������� ��� ���� �� �������� �� ������ ��� ��� ��� ��������� ���!� ���� ���� �������� ��� ���� ���������� ���� ��� �� ������ ����� �� ���� �� �����������*����� ��� ��������� �� ������� ����� ��� ���������� �� #�� ����� ��������
��� ����������� ���� ����� ���� �� ���������� ����������� ����� ��� % ��&'(�������� ��� �� ������ ��� � ��!��� �� ��� ���� �������� ���� � ����� ���������� �������� ������ �� ��� ��<���� �� ������ ��������� ��������� � ���!�������� $����� ���� ��� ���)� �� ����� ���� ��� ��" �� ����� ����� ������� ������� ��������� ������ ����� �����
��� ������ � ����� ��� ��� ���������� ��������� ���� �������� ��� ��������� �� �� � ������ ����������� �� #��@� ���������� �������� '9�� (� ����������� ��� ������ �� ������ ������� ��� �� ������ ������ ��� �������� ( �������� ���� �������� ��� ���� ��� �� �� ����������� �� ( ������� �� ������ ��������� � ������ ��� �������� �� ��!���� ������ � ������ ��� ������������������ ������� �"����� �� ( ����� ��� �� �� ������ ��������� ������ ��������� �� ���� ���������� � ����� �� ��� �"������ ���������� �������� �� *�������
��� �������� ��� ������� ���� ����� $6;%;) �� ��� ��������� �� ��������������� ��� � ������ ���� #��C���������� �������� ��� ���� � ������������ �� ���������� ��������� ���������� 6;%; ���� ��� 5�( ������ ��� ����������� ���������� �� ��� ������
����� ��������� ������� ���� ������ �� ���� ������ �� ����� #�� ������ ��������� ��� ��� �� ���������� �������� ������ ��� ������� �� ������ ����� ���� ��������� �"����� 7�� �� ���� ���� �������� � ��� �� ��!���� ���� ����� �� #����� ���� ����� ����� � ����������� ������� ��� ���� �� ��� �� ��� �������� � �������� �� �� ����
�������� ��������� �������� �� � ��������� �� ���� ���� ��� ������ ��������?��� �� � ������� �������� ��� �������� ������ ���������� � �"�� �� � �������� �� ��� 6;%; �� ������������ ���� �� ��� �� ��
�� ��� �����"������������� �� 5���� ����� � ���� ������ ��� ��� 9�� ��������� ����� ��� ��� 6;%; �� ����� ��� ������ ��������� �� +��� ��������
-2
� 2�� ��� ��� �
����� �" �������� �� ��� ���� �� ������ ������� ������� ������ ��� �������� ��� ��>����
�� �� ����������������
� 56� ���������� ���� ����� � #�� ����� ������� �� 5�( ������ ��� �� � �������������� ��������� $������� ��� ��� ������� �"���) �� � *������ ������� ������� ���������� ��� �������� ��� �?�������� % ��&'(� ���� ��� ���� ��������� ���
�� ���������������
� 56� ���������� ���� ����� �� �������� 5�� �������� ��� ������� *������������ ��� ��� �� �� ������� �� ���������� �� � � ������ �� ��� ��������� *������ ���� �� �� �>��� �� �� � ��������� ��� �>��� ���� � ����� ����� 5����������� ��� �� �� �� *������ �������� ��� �� ������C��������� ������������� ��� �� ��� �������� �� ������ �������� �� , �� :���� ��!��� �� -���
�� �������������
+��� ������ ���� ���� ��� 8������C9�� ��� ������ �� ���� +��� ���������� ��� ���� ��� ��� ��� ������� �����" ���� �� 5�� �������
�� �!�"��#!"�#�$���� ��%�������
+��� ������ ���� ����� ��� 5��������� ��� ���������� �������� ��� �������� *������ ��������� 9�������� ��� P������������ ��� ������������ �� �� ������@� ��� �� ���������
�� ����������������
� �"������� ���� � $� 7 6(9 �������) ��� ��� 8������� 8��� #�� ������ �������������� ��� �������� ������� �� ����������� �� � ����� ������� �� *������� '���������� ��� ����������� �� ����������� ���� ������ ��� �� �������� � ���5�(,*����6����� �����������
� "�������� %� ����
��� ��� ������ &�� �!�"��#!" �#�$����
� 5�� 6����� ��!������ �� ��� 5�� �������E����� �� ���������� �������� ������� � ��� 9%;������ ��� ��� �� ���� ��� 9%;����� ��� �� � ��������� ������� �� � ����������� 5���
��� '�!���"�� �(��$#� ��� &�� ��� �)��� *���+��
��� -.�*� ��� ��� +��� �������� ��*+����� � ��������� ����������� ��������� �� ��� ���� � �(�) � ���� �� �?�������� �� ��� *������ �����"( �� �) � ��� *���� ������ ��� ������ ����
-3
��������������� ��� ������ ���� � ��� ���� �������� �����
��������������� � ��� �� ��� ���� �� �������������� � � �����
��������� ! "# �� ����� !�
��������� ! "# �� ����� $!� ������� � $!�
������������������� �%&�'�&()*� +������� ��� �� �,��* � ���
���%-..../"�����
���%-....�"�����
���%-....0"�1� ��
2��������%-....0� ���%-....�!�
�� ������%-....�� ���%-....0!�
���%-....-"�1�����
2��������%-....-� ���%-....0!�
�� ������%-....0� ���%-....-!�
���%-....3"�%����
2��������%-....3� ���%-....-!�
�� ������%-....-� ���%-....3!�
�4����%-....3� �5����!�
���%-....6"��7 ��*�����
2��������%-....6� ���%-....-!�
�� ������%-....-� ���%-....6!�
2��������8�����%-....6� ���%-....3!�
�4����%-....6� �, +��!�
���%-....9"�1�����
2��������%-....9� ���%-....0!�
�� ������%-....0� ���%-....9!�
2��������8�����%-....9� ���%-....-!�
���%-....)"�%����
2��������%-....)� ���%-....9!�
�� ������%-....9� ���%-....)!�
�4����%-....)� �5����!�
���%-....:"��7 ��*�����
2��������%-....:� ���%-....9!�
�� ������%-....9� ���%-....:!�
2��������8�����%-....:� ���%-....)!�
�4����%-....:� �, +��!�
���%-....;"���
2��������%-....;� ���%-....�!�
�� ������%-....�� ���%-....;!�
2��������8�����%-....;� ���%-....0!�
��������%-....;� ����+�!�
���%-.../."���
2��������%-.../.� ���%-....;!�
�� ������%-....;� ���%-.../.!�
��������%-.../.� ������+�!�
�4����%-.../.� �����!�
���������������������� <(*;� +������� ��� ����� � � �+����
� ��1�����$/� $�! "# $�"�1����� $0"�1����� $/"�1� �� �� ���$/� $�!�
� 2��������8��$�� $0!� �� ���$/� $0!� � $�"="$0�
�����1�����$/� $�! "# $/"�1� �� $�"�1����� � � ��1�����$/� $�!� �� ���$/� $�!�
���������������������� :>%��<)�%�� +������� ��� ����� � � �+����
?# �
-4
"# � �/� @�
"# �� �����;<<><" ) 2���� ����� ��� ��� ��� � � 2� �@�!A2��+�!�
�/ "# B$/"�1� �� � ���B$/!�
���B$/! "# B$�"�1����� �����1�����B$/� B$�!� B$-"�%���� �� ���B$�� B$-!�
�4�B$-� B$6!� B$0"�1����� � ��1�����B$/� B$0!� B$3"�%���� �� ���B$0� B$3!�
�4�B$3� B$C!� � B$-"="B$3� � B$6"="B$C� � B$�"="B$0�
?# ��
� "# � �0� @�
� "# �� �����;<<><" ����� � � ����� ����� ������@�!A2��+�!�
�0 "# $/"��� �-�$/!�
�-�$/! "# $�"��� �������$/� $�!�
?# 0�
0 "# � �3� @�
0 "# �� �����;���" ��� 2����� � � � � 2� � ���� �� ���� �7 �� �����@�!A2��+�!�
�3 "# $/"�1� �� � �C�$/!�
�C�$/! "# $�"�1����� �����1�����$/� $�!� $3"��7 ��*����� �� ���$�� $3!� �4�$3� $C!�
$0"�1����� � ��1�����$/� $0!� $-"��7 ��*����� �� ���$0� $-!� �4�$-� $6!�
� $C"="$6� � $�"="$0� � $3"="$-�
� ����� ����
(� ���� ��>��� ( ���� ���� � ����� �� �������� ����� $��� ������������ � �������)� ���� ( ���� ��� ��>�� ����� ���� ���� ��� ����� �������� ���� ��� ������������ ��� ����� $�� �� ���) ���� ��� � ����������� ���� �� �� ���� �� ��������� �������� ����� �� ��� ������� ������� �� !�� ��� ������� ������
--
���� P������ � ���� ���#�� 1�0�/ ��� ACC������������������
9����� 1�0�/ ��� ACC��������"�������
9%;����� 1�,0 ��� ACC���������������������C���C����C��������C��������C
9'�D'6� 1�4/ ��� ACC�22�/����������������������C]��� ���
%�� ��� ACC������������������C]����C���C ��� ACC������������������C]����C���C*����C567 ,�2 ��� ACC"�����������������
���;5 /��2�30 ��� ACC�����������
� 5 .�1�1 ��� ACC�������������������������������C�� ���C �3C��������C
D������� #�� ��1 ��� ACC������������������
8������� 8��� ,11� #��" ����������������
��� *(5�; ��� ACC���������?����
5�����+��� ,�, ��� ACC"���� ��������C"����
5!� /�,�/ ��� ACC����"!�����
-.
����������
F�G \� 7��������� �� \����� D� \����� �� ����� +� 6����� � ������ (((�+� ���������� ��� �� ������� ��������� 3.� � ���� � :���� �������� ��� � ��� �������� ���� ,11��
F,G ��� 7����������� +���� �������� ��� '�� ��������� ,�� �������� ���� ,11�� 6������!� ����������� ACC�������������C,11�C131������C131�����������������
F/G �� 7����� 6� ����� ��� :� ������ ������ 4������ � 4��.�" ).� /�� �������� � �������� ��� 4���� ,11�� ��� ACC������������������C������C�
F2G :� 7����� �� 9����������� �� *����� ��� +� \���������3.� � -.� ������ .������ �����1������ ����� �000���� ACC����������������C�����C���C���������C�����C���["��������//� ���
F3G ��"����� 7������� :� ��� 4������ ��� ���������� � ���� ����� �������� ; ������� ������ ���!���� (����������� �� $�004)� ��� ��,� /3/^/4-�
F4G �).�@:(� �����1������ ��� ,11�� ��� ACC������������C,11�C1/C����&��������"������
F-G %� *������ ,�� �������� ��� ��� ��� ���������� H������C%������,111� (;;; (���������� 6������� *(5�;A #8��
F.G + :��� + ������ ��� 6 \���� +��� ���� ���� ���" ) ���� ����� 3.��D���������� �� �''�6 #6 @00� (;;; 9�� ���� 6������ D����� %�������000�
F0G � � ���=��� ����� ���� ���� D���������� �� (;;; 6�� ����� ��P����� ��������� $P�00)� (;;; 9�� ���� 6������ D����� %������ �000�
F�1G (�� ��������� 4������� 6��� �).�@:(�" ���� ��� �� � � C:3D�������� H����� ��� ACC����������������C]��������C6������
F��G (6'� (�: + ������ �� �000� ��� ACC��������������C+�9�C69,,C:�2C���C����C�.2/�����
F�,G 6� \���� +��� ���� ���� ���" <�����=��� (��� ����� �� :: .������D���������� �� ''D6� 0-� 9� D����� '����� �00-� � /,-^/2��
F�/G 6� \��� ��� _� :��� <��������� )���� +�� ���� �� :: .������ (;;D����������A 6�������� �23� ��� ,�/� ��� �00.� � -1^-.�
F�2G 6� \��� ��� +� ������ .����� <���� ��� ,����� +��� ���� ����������D���������� �� #��@00� (;;; 9�� ���� 6������ D����� '����� �000�
F�3G �� \����� :� ������� ��� +� �� ����� ��������� � :�8����: ��������� � ��������� ���������� YY� ��� ACC*(5�;�
F�4G �� \����� %� *������ *� ��� ��������� ��� (� ��������� ,�� 4����� ����6��� :������ ��� -.� �������� *(5�;� *(5�;�
-0
F�-G ��� _� ���� ��� ������9�������� 8������� +)4(�" ) �� ��������� �������� �������� � � ��� ��� ���� ����� ����� ;��� ��� 9����������� ���!���� (������������ �004� � /,/^/,-�
F�.G ������ ������� +:.;:�, ,������� .����� ��� ,11����� ACC�22�/����������������������C]��� ����
F�0G '>��� ���������� :��� $'�:)� :.$ 3��1�� .����� �������������1������ +��� �000� P������ ��/�
F,1G ������ '������� ) ��6 ��� ��� � � �� ������� ��1����� ��� ��� ���������� � :�� �� D��%� ������� H�� �.� 8���� (��������� %���������������� ;�� O������� �0.0�
F,�G � ��1���� ���������������� ������ 6����� ����� �������� 9������������� �� D���������� ��������� ��� 6������ �� $�00/)� ��� /�3/3^34,�
F,,G � D���E������=���� ; � ������ �������� �����1����� ��� ; �������3���� ��� .)- ������� �00/�
F,/G 6� 9����!���� 3.� ��� ��� �������� ���� *� ,11�� *(5�;�
F,2G � ���6 /�� E�6���� 4�� ��������� ��� �������� ����� 3.���� 4��� *(5�;� *(5�;�
F,3G 8���� � 6������ +������ � ; � ������ ���������� ��������������004�
F,4G ������� 6����� ��� 6����� %������ ,4(;�� � )� 4�� F�� �! (��� ����!��� , ���� ����� ���������
F,-G +�*� 6���� �������! ��� ��� ��� .� ���� :������� ��� ACC*(5�;�
F,.G #�� H������ ��� +�� �����E������ ����! ; � ������ ��� ; �� +������� ��� 6��� ����� �003� ������ ��������
F,0G /9� 4��� �� ���� ����� � ���6 / 04��2 .�� ��� ������ �����1������� *� �000� ��� ACC�����/����C�8C8;9����������"�
F/1G /9� -�� , ���� ������ 0-��,2 <� ��� %&G� H�� �000���� ACC�����/����C�8C�000C8;9�"�����000���4�
F/�G /9� 4��� �� ���� ����� � ���6 / 04��2 ������ �����1����� %&G���� ,111� ��� ACC�����/����C�8C,111C98������������,1111/,-�
F/,G /9� -H,.� %&G" ,�� ��������� H��� ,��� .� /�� ��������� +������,111� ��� ACC�����/����C�8C"������
F//G /9� -.� ������ ;� � G" ; ��� � ��� ,11����� ACC�����/����C�8C,11�C8;9�"���������1�,11�131,C�
F/2G H� ����� ) ,������� (�� ������ � -.����� ACC����������C����C��������C"��C�
F/3G :��E��� _��� ��� ������� \����� � ��*" 3�� I� .����� +��� ,11����� ACC"������������������
.1