Représentation de schémas de bases de données hétérogènes ...

68
HAL Id: mem_00000130 https://memsic.ccsd.cnrs.fr/mem_00000130 Submitted on 18 May 2004 HAL is a multi-disciplinary open access archive for the deposit and dissemination of sci- entific research documents, whether they are pub- lished or not. The documents may come from teaching and research institutions in France or abroad, or from public or private research centers. L’archive ouverte pluridisciplinaire HAL, est destinée au dépôt et à la diffusion de documents scientifiques de niveau recherche, publiés ou non, émanant des établissements d’enseignement et de recherche français ou étrangers, des laboratoires publics ou privés. Représentation de schémas de bases de données hétérogènes sous forme de métaschémas XML Amar Zerdazi To cite this version: Amar Zerdazi. Représentation de schémas de bases de données hétérogènes sous forme de métaschémas XML. domain_shs.info.comm. 2003. mem_00000130

Transcript of Représentation de schémas de bases de données hétérogènes ...

Page 1: Représentation de schémas de bases de données hétérogènes ...

HAL Id: mem_00000130https://memsic.ccsd.cnrs.fr/mem_00000130

Submitted on 18 May 2004

HAL is a multi-disciplinary open accessarchive for the deposit and dissemination of sci-entific research documents, whether they are pub-lished or not. The documents may come fromteaching and research institutions in France orabroad, or from public or private research centers.

L’archive ouverte pluridisciplinaire HAL, estdestinée au dépôt et à la diffusion de documentsscientifiques de niveau recherche, publiés ou non,émanant des établissements d’enseignement et derecherche français ou étrangers, des laboratoirespublics ou privés.

Représentation de schémas de bases de donnéeshétérogènes sous forme de métaschémas XML

Amar Zerdazi

To cite this version:Amar Zerdazi. Représentation de schémas de bases de données hétérogènes sous forme de métaschémasXML. domain_shs.info.comm. 2003. �mem_00000130�

Page 2: Représentation de schémas de bases de données hétérogènes ...

� �

� ������������������������ �������������������������������������������������������� ��������

����������������������������������������

���� !!��""��������������������##������$$������������

%%&&�� ������������������

��

'' ''(('' &&��

������������������������ ���������� ���� ������

�������������������� ����������������������������������������������������������������������

���������������������� ���������������� ���������� �������������� ���������������������� ���������������������� ������������ ������

������������ �������� �������� �����������

�������������������������� ������������������ �������������� ���� ��������������

���������������������������������������������� ��������������������������������

�)������*+,�

")���)�-����

������������������������

*��������"�.��.��

��������������������������

��!!""##����$$���������� ������������%% ����������������������""��������##���������� &&��''��

()����$��"���������� ��*���)����+��� ��� ������� ���"���"��+������ ����

Page 3: Représentation de schémas de bases de données hétérogènes ...

� '

�Résumé ����/��0�����1�������������������)��������������������������������������2�1��

���)�����-���� �-�)���������3�� ��������������� ����������������)�4�*��5�����

.)�)��1)�)�)!�����)1�������������-��)�.��1��������)�������-�������6�.�����������

���)��������#�������-��������������������������������������������������-�������

����)��������������)�4� ������������0���������������#������)����������������-��

�������������������������)���7���-���3����-�)���)4�

*���� �� ���!� ����� �#���� ���8�� ��� �/��0�� ��� ����� ������)� -������0����� ���� ���

�)��-)������ �� ��� �-�)�������� ��� ���)����� ��.)���� ��� ����� �� ����)�� .)�)��10���

�����������������.)���9��4���:�������������������)���-�������������5������

����)1��� �� ���#���� ����� �� ����)�� ����� ��� ����� ����� �� �-�)�������� ���

����-��������:������������)�����;�3��4���������������.)�����������)��������

-���������)������������.)������1������������������)��5��)�)��4�

�Mots clés <����������)��.)�)��10��!��)�)�����!���)1�����!����1�1�9=*!������.)���9��4�

�Abstract *������������1���� �/����� ��� #������ ���������� ���� �����1� �������� ��� �-����� �.�

�������������4�*������.��.���1��/!����.��������1������������-�������:�.��1�

��� �������!� �� �.� #������ ������� ������ -�������� ���� ���������� ��� ���� �1�� ��� �.�

�������� ��� �.� ����4� �� �� �.��� #�/� �������� ��� ���� �.� �������� ��� �� ����-�� �� ���� �.�

���������>.�����������-�����4�

������#��.��-�����!�>�����#�����/����-�����/��������������#��1�����������1�

����-��.���1����������������.������.���������9��������.���4�

�.�:�������������������������2����-���������-��1���#�/���1�����>������������

�������������-���-��������!�>�.����:������1��.����������4��.������.����������

�������������:-�����.�������������.���1������.�������.���������������������4�

�Keywords ?���1�������������!��������!���1�����!�9=*����1��1!������.���9��4��

Page 4: Représentation de schémas de bases de données hétérogènes ...

� &

��������

����������������������������������������������������

��

��������� ������������������������������ ������������������������������������� ������� ��������

��������� ������������������������������������������������������������������������������������ ���!�������������������������������������������������������������� ���� ��������� ����� ����!�"�������������#������������������� ����������������������#��!�

�"��������������������������������� ���$%&'� �����������������$� ������������������ �����

������������ $�������������������������#���������!��"������������������������������#������(��� ����)�����*�)+%��)������������������������ ����������,����������������----����

-�������������������������!��� ���� )� ��� �����&�%.)�&/0)12� ����� �$� ���� ����� ��� ����������������������

-----����������� ����������������!��� �$������� ������������ ���������������� ������ ���������!���

������������������ ����������������������������������������������� �������� ���������

��3���������� ���!����������������� ���$&�� ����� �������.��.4�������� ���$%)+')������������������������ � ��� ��������������� ��5��!����

����

��

Page 5: Représentation de schémas de bases de données hétérogènes ...

� �

��!!����""������""������ ��������""���

#������$�%�������� ���������������������������������������������������������������������������������������������&� $�

�4�4������:�@ @ @@@@@@@@@@@@@@@@@@@@@@ 44444444@ @ � '�

�4'4�������)����������A�����@ @ @@@@@@@@@@@@@@@@ 44444444444� '�

�4&4������@ @ @@@@@@@@@@@@@@@@@@@@@@@@@@@ 444� ��

&���������������������������������������������������������������������������������������� �

#������'�%������� ��()�������������������������������������������������������������������������������������������&�����������������������������������������������������������������������������������������*�

'4�4�� ����������@ @ @@@@@@@@@@@@@@@@@@@@@@@@ 444�� B�

'4'4���������������)1�����@ @ @@@@@@@@@@@@@@@@@@@@ 4� C�

���������'4'4�4����);��)1�����@ @ @@@@@@@@@@@@@@@@@@@@@@@ 44� C�

���������'4'4'4�����-������@ @ @@@@@@@@@@@@@@@@@@@@@@@@ 4� C�

���������'4'4&4��$������@ @ @@@@@@@@@@@@@@@@@@@@@@@@@@ 44� ��

���������'4'4�4��"������������@ @ @@@@@@@@@@@@@@@@@@@@@@@ 44� ��

'4&4�����A��D+�E@@@@@@@@@@@@@@@@@@@@@@@@@@ � ��

'4�4�����A��9/�0�@ @@@@@@@@@@@@@@@@@@@@@@@@ 444� %�

'4F4�����A���,=�E"@@@@@@@@@@@@@@@@@@@@@@@@@ � � �

'4B4��<���@ @ @@@@@@@@@@@@@@@@@@@@@@@@@@@ 44�������������������������

'4C4�����������@ @ @@@@@@@@@@@@@@@@@@@@@@@@@ � �'�

�� �

#������+�%���� ����������� )��������� ������� �� �������������������������� $+�

&4�4�� ����������@ @ @@@@@@@@@@@@@@@@@@@@@@@@ 444� ���

&4'4��������--���.@ @@@@@@@@@@@@@@@@@@@@@@@@ 44� ���

&4&4�� ��)1���������)�����9��@@@@@@@@@@@@@@@@@@@@ 444� �F�

&4�4��*)����������01��������������������������.)�����<*��������.)���9��44�� '��

���������&4�4�4�����������������-����������@ @ @@@@@@@@@@@@@@@@@ 4�� '��

�����������������������&4�4�4�4��*)��������������������<*@@@@@@@@@@@@@@@@@@@ � '��

�����������������������&4�4�4'4��*)������������������������)����������@ @ @@@@@@@@@@@@ � '��

��������&4�4'4�����������������-�����/�����������������������)1��)@ @@@@@@ 4� '&�

�����������������������&4�4'4�4����������������-��������)��-�����44@ @ @@@@@@@@@@@@ 44� '&�

����������������������&4�4'4'4����������������-��������������������)��)����10���@ @ @@@@@@@ � '��

�������������������������������&4�4'4'4�4����������)��)����10�����-��@ 444@ @ @@@@@@@@@@ 444� '��

�������������������������������&4�4'4'4�4����������)��)����10������-�:�44@ @ @@@@@@@@@@ 444� 'F�

��������������������&4�4'4&4�����������������-��������������������)1��)�����.)������#�����@ @ � 'C�

�������������������������������������&4�4'4&4�4��*)����������/-���11�@ @ @@@@@@@@@@@@@@ 44��� 'C�

������������������������������������&4�4'4&4'4����������������/-���11�@ @ @@@@@@@@@@@@@@ 4��� '��

���������������������������������&4�4'4&4&4��")�)�����������/-���11�����������/-����-�:@ @@@@ 4��� '��

���������&4�4&4�����������������-�����/�����������������@ @ @@@@@@@@@ 4� '%�

�������������������������&4�4&4�4�����-���)���������2)�@ @ @@@@@@@@@@@@@@@@@ 4@ 44� '%�

�������������������������&4�4&4'4�����#��@ @ @@@@@@@@@@@@@@@@@@@@@@@@@ � & �

&4F4��")��-������@ @ @@@@@@@@@@@@@@@@@@@@@@@@ 44�� & �

&4B4�����������@ @ @@@@@@@@@@@@@@@@@@@@@@@@@ � &��

Page 6: Représentation de schémas de bases de données hétérogènes ...

� F

#������,�%��������� �(����������������������������������������������������������������������������������������&���� +*�

�4�4�� ����������@ @ @@@@@@@@@@@@@@@@@@@@@@@@@@@ 444� &B�

�4'4�����)���������������:�������@ @ @@@@@@@@@@@@@@@ 44� &B�

�4&4�������G�#�@ @ @@@@@@@@@@@@@@@@@@@@@@@ 444� &��

���������4&4�4�� �����1��������=D<*�.)�)��10��@ @ @@@@@@@@@@@@@@@ 4� &��

���������4&4'4��")��-)����������)�������@ @ @@@@@@@@@@@@@@@@@@@ 44� &��

���������4&4&4������������������)����.)���9��@@@@@@@@@@@@@@@@@ 444� &��

�4�4�� �-�)�������@ @ @@@@@@@@@@@@@@@@@@@@@@@ 4� ���

���������4�4�4��,�)������������)�������@ @ @@@@@@@@@@@@@@@@@@@ � ���

���������������������4�4�4�4��+:������������������������<*�.)�)��10��@ @ @@@@@@@@@@ 444� ���

���������������������4�4�4'4��D�����������.)������������������)�@ @ @@@@@@@@@@@@ 4� �'�

�4F4�����������@ @ @@@@@@@@@@@@@@@@@@@@@@@@@ � �&�

�� �

#������*�%����#���(����������������-������������������������������������������������������������������&�����,,�

F4�4�����������@ @ @@@@@@@@@@@@@@@@@@@@@@@@@ � �F�

F4'4�����-��#�@ @ @@@@@@@@@@@@@@@@@@@@@@@@ 44� �F�

�� �

!�(�������. . ......................... &� ,/�

�� �

0(�����. . ........................... &&���� *1�

����������� �

����2�������������������������������������������������������������������������������������������������������������������������&��� **�

�,4�4�� ����������@ @ @@@@@@@@@@@@@@@@@@@@@@@@ 4� FB�

�,4'4��,--������)��������������1�1�9���=�.���*�������9=*�@ @@@ 4444� FB�

�,4&���=-)��������������1�1�9=*�@ @ @@@@@@@@@@@@@ 444@ @ @ � F��

����������,4&4�4��=�������@ @ @@@@@@@@@@@@@@@@@@@@@@@@@ 444� F��

��������,4&4'4���/-��������)�@ @ @@@@@@@@@@@@@@@@@@@@@@ 44� B �

�����������������������,4&4'4�4���/-��������)�������44�@ @ @@@@@@@@@@@@@@@@@ 444� B �

�����������������������,4&4'4'4���/-��������)���)�#)�44@ @ @@@@@@@@@@@@@@@@@@ � B �

,4�4�����������@ @ @@@@@@@@@@@@@@@@@@@@@@@@ 444� B��

� �

Page 7: Représentation de schémas de bases de données hétérogènes ...

� B

��

��!!����������""��������33"" ���� ����44""��

��

��5�&��$&�6� Architecture du système………………………………………………………………….. 14

'&�6� Transfert d’information via XML ………………………………………………………… 15

+&�6� Extrait d’un simple document XML……………………………………………………… 17

,&�6� DTD du document XML…………………………………………………………………... 18

*&�6� Schéma XML du document XML………………………………………………………... 19

7&�6� MCD de la gestion de commandes……………………………………………………... 21

/&�6� MCD de la gestion de commandes avec les nouvelles contraintes………..……….. 24

8&�6� Graphe de la gestion de commandes…………………………………………………... 26

9&�6� Métaschéma XML de la BD gestion de commandes…………………………………. 33

$1&�6� Représentation graphique du type complexe dbGestion……………………………... 34

$$&�6� Modèle UML de l’extracteur……………………………………………………………... 37

$'&�6� Construction d’un complexType représentant une table……………………………… 39

$+&�6� Algorithme d’extraction du schéma de la BD ………………………………………….. 40

$,&�6� Classe DomDocuement et DomNode de la bibliothèque DOM de Java……………. 41

$*&�6� Génération des métaschémas XML…………………………………………………….. 42

��

Page 8: Représentation de schémas de bases de données hétérogènes ...

� C

��

��

��

��

��

��

��

��

������������ ��������

���������� �������������

$&$� #����2���

$&'� :���(���;��������<������

$&+� :(��

Page 9: Représentation de schémas de bases de données hétérogènes ...

� �

1.1 Contexte �

,�A�����.�� ���)����� ��1��������� ��#��� ���� ���� ��� �.����1� �� ���-�������� ��

������-)�����)�����/��0����������������)��������-��#��� �)���������--��������

�������H�,� 'I4�����)-��������������-��1�����0��1�����������������)��-��������

-����0��� ��� ����!� ����� -���!� )�������� �)�� 5� ��.)�)��1)�)�)� ��� ����)�!� 5� ����

���)���� �)������!� ���� ����� ��:� ���)����� �� ����� �� ��������� ������!� ��

��-�����)������-)���������������!�������������)����������4� �����������)������

������#�����������������������������!�-��������������0�!����.������!���4��-��������

��� �������� �� -������� ���� �� �)���� ��� ��������� ������ �� ����)��� �� ���0��

�����-����� �� ��� �� ��������� ��� �/��0��� �� �������� �� ����)�� ���� �� 1������

������)�� �� ����)�� ���������� ����2)�� ����� ��� ����� ���������)�� -���� ���

�--�������� ����� ��� ��� 1)�����!� ���1)��� ��� ���1��� ��� ��� ��������!� ���

�--����������������!�����������������)�������0��!���4�

*���� -������� �/��0��� ������������!� ��� ����)�� ����� �)-����� ����� ��� �������

���)����!� ���;�3��� )1������ �)-����� ����� ��� ���.��� 1)�1��-.������

������)�4��������)��-�#���3���������)��������������������)-�������.��J��������

#������� ��� ��� ��-���)�� ����� ��� ��� �)-����� ����� ��������)�� �����0��.���10�4�

��� 5� -���� ��� -����0��� �� 1����� �����)�� ��:� ����)�� ������)�!� ��� �)�)���� �� ���

��������������������-�����)!���������)�������)�������������-�������0��HK," 'I4�

��.)�)��1)�)�)!� ������ 5� ��!� ��� ��)-������ �� ��� ����������-./���� ��� ����)�4����

�/��0������������������.���10��������1������10���������)��������3�����������

��� ���!� ��� ����)�� ���� �� �3�� ������� �� ��� �3�� ��������� ����0�� � �� ����)��� ��

�--��������5�����3����#�������������H,�*%�I4�����/��0��.)�)��10������������

����.0�� -��� 5� ������ ��� ������)������� ����� �/��0�� .���10��L� ����;5;��� �� �/��0��

������������� ����� ��� � ���1�1�� ��-��1��������� �� �������1����!� ������0��!� ���

=D<*����)����4�

��

1.2 Problématique et objectifs �

���-����������-��#������)1������)���������������������������������������������

�� ����)��� ��� ��� ����� ��1�������� ����� -���� 5� �)������4� +�� ���!� ��� ������ ��

����������� ����� ��-���� ��-���� ������:�L� ��� �--�������!� ��-���� ��-���� ���-�:�!�

�)����������-����1��� �����������!��#������ �������� �����)1�������� �����������

����3����-���)4���

,���!�����)��-)���������������������-��������#��;��������-����������������

�������)��-��#��������������.)�)��10���������������)������������!��������

����)����A��!������������)��9��!���4�4��������)���-�)����������3������-�������

��������)��������������)��������������/��0��������2�14��-�����!������

���-��������������#������)������������.)�5��������)�����1�)��������������������

���)����4��

����� ��� ���#��:� �� ��.��.� �� ������ �� �)#��--���� ��� ��� �� ����� ���������!�

����)1������ �� ����� �� ����)��.)�)��10��� #��9��� ��� ��� �:� �� ��.��.� �-�������

������������7����--���.�9������1)�)���������������������--������������-��A�����

Page 10: Représentation de schémas de bases de données hétérogènes ...

� %

�������-���:�-��-��������1�������#�������������#������.��.��������������������

��M ��4�

������)1������5�)�)��)���-)���-�����������;-��A��������������)#��--����5���#��N��

�� *)#��--�����O���A���������-����:����������.)���������)��������������

����)�4��

�� *)������ �� �01��� �� -����1� �O��� ��.)��� 5� ��� ����� -���� ���������

�����������������)����.)���4��

�� *)�������O������-������)��������������5��)������-������)����.)��4��

�� �����-�����O�-)��������������������������)����������.)���������)1���4��

�� $�����������������3��������1�1���;������4�

*���� �� ���1� ��*+,!� ����� ����� ��)�������-����-������0����� ���-����-���!� ����

��:�������� �� ��� �-�)��������������)����� ��.)������������������)������� �������

��.)��� 9��4� ,������� ��!� ����� ������������ ��� ��������� �� �)����.)���� 9��� ���

������ ��� ��.)������� ����� �� ����)�� 5� �)�)��4����� �)�)������ ���� #������ 1�6�� 5�

��:�������� ��� ���)����� ��.)���� ��� ����� �� ����)�� �����-�������� 5� �)�)��4� �����

�--���.�������)����������������.������1)�)����9������-������1)�����)#�������

�����.)������������������)�������1)�)���������)����.)���9��4�

������������ ��� �)����.)���� ��:� ����� �� ����)�� -���� �� �)����� ��� �����)��

��#����!�������#���������)����.)���9��N�

;� +:��������������)������������.)���:�����)�4�

;� *���-�������-�0�������.)������������������)��5�-��������������1����/��0��

���=D<*������-������4�

;� E-����������������������������������������.)�����������4�

;� ������ ���-�).����� ���� ���)����� �/-�� �� ����� �� ����)�� �� ������

���-�).���������������������������:�����)�����;�3��4��

;� �����-��������-�0�����������!�����/-�����������������������)�4�

;� ��)��#����� ������� ��� -������ ��� ��.)��� ����� �� ��� ���� �� ����)�� �����

-�#�)1���������#��������#��:�����-����������������������������-���-����

)#���������������������������������������������<*4�

Page 11: Représentation de schémas de bases de données hétérogènes ...

� �

1.3 Plan ���)���������������)��������8�����#����N�

�.�-���'�N����� ��()���P����.�-���-�)������-�����������)����.�����)1���������

����� �� ����)��.)�)��10��4�����-���� ��#��� ������)�����)��-����� ���������� ��

-�������4�+����!���������������������#��:������-��A�������.��.���������)1��������

<*4� ���� -���� �� ����� ����� �--���.� ����� �� �����4� ,� ��� ��� �� �� �.�-��!� �����

�������� ��� ����� ��� �1���� ��� -���-��:� ��A����� �� ��� �--���.�!� ���� ��� �����

�#����1��������#)����4�

�.�-���&�N� ����������� =��������� ������� �� �����������������������P������

�� �� �.�-��!� ����� -�)������� ����� �--���.� ����)1�����4� ,-�0�� ��� -�)�������� ��

�����.������ ����������� �� ����� �/��0�!� ����� �)�������� ��� �01��� �� ��������������

�������.)�����<*��������.)���9��4��.�����01������)����)���������)�-������:�-��

���--�������������������������������4�

�.�-�����N������ �(����P������������������G�#����)1���������-�)����������

������--���.4�������)�����������-��������/�������/��0���������-����������������

�-�)�������4�+���!� ����� ����������� ������0��-������ �� �.�-���-���� ������������

��������)�������������������������������)��������������:�������-�����4�

�.�-���F�N�#���(����������������-���P����.�-�������/������)��������-�)���)���������

�.�-���-�)�)������)#���������������������-��-��#�4�

Page 12: Représentation de schémas de bases de données hétérogènes ...

� ��

��

��

��

��

��

��

��

����

���������� ���������

�������� ����(())�������

'&$� ����� ������

'&'� :��������� )����������

'&+� :��<���0����

'&,� :��<�����(����

'&*� :��<���#�" ���

'&7� !(��

'&/� #���(�����

Page 13: Représentation de schémas de bases de données hétérogènes ...

� �'

2.1 Introduction �

����1��������:-����������)�.��1���������������-��� ��M ���������:�1�����

-����0�����.)�)��1)�)�)����-�)����������������2�1���������������4�

*���� �� ����!� �����-�)������� ����� �� �.�-��� ��� ���)����� �--���.�� ����)1������ ��

����� �� ����)�� .)�)��10��!� �-�0�� �#��� -�)���)� ��-����� ��� -���-���� -.���� ���

-�������� ����)1�����4� ,� ��� ��� ��� -�)���� �.�-��!� ����� )���������� ��� �/��.0��

�)��-�����������#����1���������������.�����--���.4�

2.2 Processus d’intégration �

��������������)���������������-�)����������O��A������������)�!��#�����������

�� �����-��-�)�)�4��O��)1�������������������)�!� �������!��)-���� ��� �-�)��������!�

-���������)�����-����������������-�)���)�-���Q������������������-�)���)4�

��� -��-���� ��� �--���.�� �)���-����� �� -�������� ����)1������ �� ��.)���� �� ����� ��

����)����-�������-.���!���������-���-���������HRE�%%I�N��

�� ��);��)1�����N����������������.)���������������������0��������)��������!�

�� ���-������N���.��.��������-�����������;��.)���!�

�� ��)1�����N� ��)����� ����� ��.)��� 1������ 5� -����� ��� ��.)���� �����!� ���

�����-�����������;��.)���������01�������)1�����!�

�� "������������N����������������.)���������4�

�2.2.1 Pré-intégration ������������-.��������:����������:����������������� ���� ���)�)����� ���������!�

������!��)�.���!���4�����-�����������.)��!�����������������������������01���:������

�������)�)����4���

���-�);��)1���������������)������5��������-����������#�-��#��)��)�������:-��)�

-��������.)�����������������)����-�����.)�)��1)�)�)�������0���������)������)�4�

�2.2.2 Comparaison ������� ��� ��.)���� ����:� ���� ������ �� �#��� �� ��������)� ���.��)!� �O)��-� ��#����

�������5����������)�)���������������������:������4���

"�--����������:������������)�������������-��������������-���������������)��

��O���� �-�)������ ���� ���)�)����� �������� ���� ��� ��������� ���� #�!� ��� ���� ���

)�)�������������������:�-����������)�������-��������--���������������H�,"%BI4�

�����������#��:��)�)��5�����-.��������-������!�����������--���.����#�����

�� ���������������������������������-������)�)�����HS�%�I!�

�� ������������-�������)�����������)�)�����5�������������1��������H$,�%�I!�

�� �)�.�����������N����-����������������-��-��)��5���:-��������<*��������*<,�!��

��������)��������;�3����������-��������5�����4��

Page 14: Représentation de schémas de bases de données hétérogènes ...

� �&

2.2.3 Fusion ��� ���� �����)� �� ���#��� �� ����-���� �)������� ��� ��.)���� �-�);��)1������� �� ��

��.��.��������-������������ �����)�)����� ����-�������!� ��-������������)1������

-��-����� ��� -��� 3��� �����)4� �� ������!� �� ���0�� ��;���������� �� 1)�)���!� 5�

��������������.)�����)1�)�5�-����N�

T�*����.)�����������)#����������������������������0����������!�

T�*�������-�����������;��.)������)����)���������������-�������!�

T�*��01�������)1�������-��-���5�����)�.�������:����0���������)������)��4� 2.2.4 Restructuration�����-.����� �����#�-���Q������� �����������)1��������#������ ������� �������������

���)���� ��� ��.)���� ������ ��� ����4� ��� �--���.�� �)����!� �� �/-� �)�)�)�!�

���������� -��� �� ����� ����������!� ��� ���� �� -�)��#�� ���#�������� ������

�����)�!� �--��������� ��� ����� ���-������ ��� �)�)������ �� �� 1������� ���� ��������

H<E�%�I4�

�� -���-� ����)1������ �� )�)� �)#��--)� ����� �#��� -��A��� �� ��.��.4� ����� �������

-�)������;�������������#��:���������-�������������)���������-����)��������)����:�

)�.��1��������)��.)�)��10���-�����M �4�

"�--����!��������!������)����������������)����������5����-.�����-�);��)1�����4�

2.3 Projet GEMO (Ex Verso) �

�� -��A�� D+�E� HK+" 'I!� ������� ���� ��� -��A�� K+"=E!� ������� �� ����)1������ ��

����)�� �� �� ������������ ������)�� ���� �� M �4� ����A���� ��� -��A�� ��� ��)���� ���

-����0��� ����������:�-��)����:��/��0�����1������������������)��:��������� ��

�)#��--���� �� ��������� ��#������ �--��-�)�4� �� ���� ��� �O������ ��� �/��0���-����

��#����5��������)�����-�:������:��)���:4���U������:������.��.��������������-����������������A����5���#���N� Médiation entre données XML *���� �� ����� �� ����)1������ �)������� �� ����)�� 9��!� �� ��� �-������� �� -��#���

��������� ����� ������������� ��� -������ ��� ������1�� ���� ��.)���� �)��������

-��#���� ��#�� ��������� �� ���3��� ���� ��� ���������� �� ��� ���������.)�)��10����

��������� 9��4� *�� �����-�������� ���� ��--�1��� ��#��� -��#��� 3��� )������ ����

��������1� ��#���� �� ��.)��� �)������ �� ��� ���)����� *�*�� ��� ��������� 9���

��#����������������1�������4�

*�� ��1���.��� �� �1���-���� ���������� �� ����)�� ��;��������)�� ����� 5� ��)����

-�����-����������������������������������.)�����)������������������������������

.)�)��10�������������9��4�������������1���-�����������������������������9���

-�)����������������)�!�������������-���������������������-��������-��� �--��-�)������1)�)�������������-����-�)����������������������������.�����������HK+" 'I4���

Page 15: Représentation de schémas de bases de données hétérogènes ...

� ��

Médiation pour le Web sémantique ����A���� ���M �� �)������� ��� �� ����� #��� ���M �� ����� ��� �)������� ��� ����)��

�����5� ��� �������-�).�����-����������������.���������--�).������-���������)��

�������������1���!������������.��.!���#�����������������H�,� 'I4���������1�

�)������� ��� ����)�� ��� M �� ��#�� �� ��������� -��-��#�� ����)�������� �� ���

�����)���������������.��.4��-�����!� ��-����1�5� ��)�.������M ��������#)������

�)�� ��� �-��� ��� ��� -����0��� ��)�� ����� �������� ����)�� �� )���)�� �� ���0��

�--���������)#�������������������;.�����-�������-���5���)�.��4� Ouverture vers les services du Web +�� ��������� ��� �--���.�� �� �/-� ���-Q�� �� �)�����!� D+�E� �O��)���� 5� ��)1���

)1������ ��� ��#��� ��� M �� ����)�� ���� �O)�.��1� �� ����)�� 9���4� �� ���� ��� ��

�)���#��� ��� ��#��� ��)�������-������� �--�������-������0�� �� ���-����� �������

���-�#���3�������)�4�*���������!�������#��:�-��������-������������������0�����)������

������������9���������������--���5������#���M �4� Entrepôts thématiques de données du Web �� �)#��--���� ����� �--���.� ��:��� �� 1)�)���� -�������� �� �-)���� �� ��8���

�)������#��������)�������-�������.�������)��������-Q���.)������������.��������

��-������ ����������� 5� -����� ��� M �!� �� ��1����� ��� ����)�� �� #�� �� ������� ����

�����1��������)���4����-��0��:-)������������)�����,��#�9����5�������)�

HK+" 'I4�

��������!�D+�E��)#��--���,��#�9�����������.0�������#���M �������-�������

�����������������-Q���������)���.)������4�

�,$-�����&�'�-&�'���%�������� ������ � ���)���������� ���������������)�� ����������������

.�%/

Page 16: Représentation de schémas de bases de données hétérogènes ...

� �F

2.4 Projet Xylème ,� ����1�!� 9/�0�� H9S� &I� ��� ��� �����;�-� �� �� �" ,� ��))� �� �-����� ' � -����

�)#��--�����-������5�-����������-�����/-���������������K���4��9/�0��#��5������)�����

��������-Q��:������5� ��0�� ���1�)�.��!���-����������2�� ������ �������)��9������

M �4�+�������������������-Q�����������������������)�������������������)��5�

-��������M ��������������-�#)�!�����#�����.��1�����������)1�����4�

=������������� �������������#���1)�)�������� ��.����1����1�����������������

����)�!���-������:-�������-������������1�1�9��4�

����A���� �� ��-��A�� ��� ��-��������:����-���������)�����:� ��������������M ��

����� �������� ���-�����4� *���� �� ����!� ��� ������� ��� �������� ��-��1���������

�,� ��-����������N�� • ������������#��������01�����������)�����M ��-����������)������4�

• �����1���������)��5����#������#���1�6��5�������1�1������3��������������V��

��:���������������������M &��H9S� &I4��

• =�#�����)#���������������)��������������<����.0��!�R������:!44�4�

<��������1�������A���)��������)���������;��������)�!����-��-��������������������

����.)�-��-����������.����1�����8���-������������������������������/��0��������

W-��;�:�X����������������-����������������0����������)������������)�������������4�

,���.���������!�������-Q�������9����9/�0��Y���=�#���10��������2�1!������0����5�

������������������������;��������)�.)�)��10�4���

��������)��� �� ����2�1� �-��� �����-���� ���� ��� ��.����1� �-��/)�-���9/=��������

����2�������������9�������������������1�������������-����������9/ ��:'����

��:���������������������������������������)���������������������:�����)4���

�� �.��1���� ��� ��������� �� ���� ������������� #�� 9/�����&� �� ����:����� ���

�)���)�5����#��)4���

��

$������!� ��-���� �-������!� ����� ����� ��-����� �����#�� �������� ���������� �������

�����4��������!�-������#���������������������Z�!�-�������������������#�������A��

���-�:� �� ��� ������� �� ���;-������#�)4� ����� ���� 9U�!� �� ���1�1� �� ���3�� 9���

������ ��� ��-���)�� �)�������� ��� �/��0��� W-��;�:�X� 5� ��� -�)����� ��� ���3���

����������������)����������������)�4���������������-����)����������-����0�4�

,$&0���������������)1�&�'��� ������� ���/'�����������&�'���)������) ���� �%������������2�

� �� ����� ��� ���������������������"�� ��"���������#*��/

3$&0����4���������"�������������4 ������������������ ���*������4� ���� ��*�������������������

������������ ����*�����������% ������������� �����*���������������������/

5$&0'� �����������)�� �����" ������� ���� ��*�������������/6��� ������)��� �������������� ��

&0�#��7��������������)������������ ������4����������*�8����������8�����������9��:��

����)������ �����0��"����� ����/

Page 17: Représentation de schémas de bases de données hétérogènes ...

� �B

���#����1� �� ���� ��.���� ��� ������ -���� ��� �)��� 1��������)� ����� ��� ��.��.�

������������!� ��������� ��-���)� 5� �������� ����� �/-� �� � ���3��-���� �)-����� ��:��

������.)�)��10��� ��� ���������� �� ��������� ���-������)��� �)������ �� ���������

�������)��-�)������-������4��

�����������5��������������1���������0������������������-�)��������������������

�������������#�����������)1��!�9/�0��Y���=�#��-�����������#�����.)����.��

���� ���)�)����� ����������� �����������4�������!� ���������!� ���.)����.����� �����

��������������������4����

*���� ��� �#�������� ���������� �� -���� �� -���� ���-�:!� ������-)�����)� ���

�������-����1�����������)������������V����)��5�����)1������������������--�������4�

9/�0��Y���=�#�� ��)�)� �6�� ���� ��� ���.������ ��#��� �� ��8��� 5� ������ ��� ����)���

��)�� ��� �--�������� ���� �����-Q�� ��� ����)1��� ���;�� �#�� ��� ��������� ����� �����

����������������-�����)4�

��

2.5 Projet CASTOR �

�,=�E"� H�,= &I� ��� ��� -��A�� E-�=����� �� ��--�1� ��A�(��������� ��� -���� ��

�����-��������� �����-����� ��� 1����� �� ���-�������� �����0��� ��A��� �� ���� ��

����)�4� ��-�����������������-����������������������)�������-���������/-�

�������A��R�#��H�,� &I�L������5��������.����������������-�)���)�-������������R�#�!�

���-��)�-�����:��-)�������N�D����=�4�

�����������)��������������������������1����)����-�)���)������������O��A���

�� ��� ������ �� ����� �� ����)�4� ��� ����-��� ����)�� )����� ��0�� ���)����!� ���� -���

��-������#������-�:4�

�,=�E"��)����������.������--�1!���)#�������������������)�4�+��-.�����

�)#��--���!� �����0����A��)#������0��#�!������#�����-�������������1)���5����

��������/��.�������������������)�����)�)�����H�,= &I4��

Page 18: Représentation de schémas de bases de données hétérogènes ...

� �C

2.6 Bilan �� ��-�� ����� ��.��J��� ���� ���-��A��� �� ��� ���#��:��� ��.��.��� �����!� ��� �/��.)��)�

����� ����� ����� ������� ���-������ ���� ��� �����4� �� ������� ���� �--���Z��� ���

-���-��:���A��������.�����--���.!������-����������������-����0���������������)��

�������)��-����.����������4�

PPrr iinncciippee//OObbjjeecctt ii ffss PPooiinnttss ffoorrttss PPooiinnttss ffaaiibblleess

GGEEMMOO

- Concevoir un système qui repose sur l’intégration virtuelle de données. - Concevoir et valider des solutions (originales) à la gestion de données complexe dans les systèmes distribués.

- Amélioration de la recherche sur le Web. - Echange de données sur le Web (sources d’informations et services) - Systèmes distribués à grande échelle (nombreuses sources de données, nombreux clients)

- Les applications deviennent de plus en plus complexes (systèmes virtuels, services de gestion de contenu personnels). - Problème de médiation de données (disparité entre la compréhension des données par l’utilisateur et le schéma de la base).

XXyyllèèmmee

- Nouvelle génération de moteur de recherche. - Gestion des évolutions (historique de données). - Hébergement des données et des applications.

- Acquisition des documents à partir du Web ou en local. - Intégration sémantique de données à travers des vues. - Architecture distribuée. - Basé sur le standard XML du W3C.

- Passage à l’échelle (taille, contenu hétérogène, accès multiple). - Gestion des changements (acquisition des données, gestion des versions, requêtes temporelles).

CCAASSTTOORR

- Mettre des BD relationnelles et objets dans des documents XML et annuaires LDAP.

- Projet open source. - Performance du système de gestion d’objet.

- Evolution très rapide du modèle objet. - Etape supplémentaire d’intégration par la traduction et la mémorisation des sources de données en objets.

Page 19: Représentation de schémas de bases de données hétérogènes ...

� ��

2.7 Conclusion *����������)������/��0����)������;�����!�����)1��������������������)��.)�)��10���

����-�����-������)��-�������������� ��� ���������������������)�������1)�4�����

���������������)-����� �����.�������3������/��0����W���--�1�X4����� ��--������

-�);���������-)����������������)�4�

*����������:�!�������--���.���-��������������-�������-�)��������������)�������5�

��� �)������� ��� ����)�� ������ ��� ����� ����� �����!� �������� ��� 5� ��� �)��������

-���)�-������������������������������)��������-�����:�����)�����;�3��4���

Page 20: Représentation de schémas de bases de données hétérogènes ...

� �%

��

��

��

��

��

��

��

��

������������ ��������

���������������������� ))������������������ ������

�������� ���� �����������������������������������������������

�+&$� ����� ������

+&'� 4��������������

+&+� �����������������������

+&,� �������� ������(��� �������������� )��������� ��!��������

����������

+&*� ������(���

+&7� #���(�����

Page 21: Représentation de schémas de bases de données hétérogènes ...

� '

3.1 Introduction �

����� ����� ������� 5� ����1�� ��� -�������� ����)1�����!� ����� ��� -.��� ������)����

�--�)�-�);��)1�����4������:-���)�����.�-���'4'4�!�����-.�����-��������������/���

�����.)����5���)1�����������:���������������)������4�

���.�-��!�-�)������-������!������-��-���--���.�����)1�����!��������A����������

��1�������������--����4�+����!�������)����������������)���������#�����:�-������

�01��� �� �������������� ����� ��.)��� �� <*� 5� ��� ��.)��� 9��!� ��� ����� -�������

����������������A���4�

3.2 Notre approche �

����� �--���.� #�� 5� -��-���� ��� �������� ��:� -����0��� ��.)�)��1)�)�)� ��� ����� ��

����)�4����)�-���-���������-�)����� �����.)��������������<*�-�������)�������

����.)����9������������� �� �/-��������.)��������������������!���A�(��������!�

��A��4���:�������������������)���-�������������5����������)1��������#���������

������)�� �������� ������������ �-�)���������������-��� �����:����� �������)��

���;�3��4�����������)����.)�����������)��������-�������������;��������.)����

��1������������������)��5��)�)��4�

�������������������)����.)����-��������������-�������-�0�������.)������������5�

-����� ��� ������1��� �/��0��� ��� =D<*� �����-������4� ����� �#��1���� �����.�� ��

�)����.)��� �� ��A������� ��� ������������ ��������� -��� ��� ����-����� ��� ����� ��

����)�4�

,� ������ �����-��0��)���� ���� ����)1������ �� ����� �� ����)�� �)�)�)�!� �����.������

�������������-�)��������N�

�5��$&�>��-��"�����������0��#��/

�������

����������� ��������������

XSD1 <…>

XSD2 <…>

XSD3 <…>

Catalogues systèmes des SGBD

Métaschémas XML (structure logique)

Moteur d’extraction des fichiers XSD

������ ��������

� : Interrogation des bases de données via des requêtes SQL. ������������: Résultats des requêtes. ������������: Génération des métaschémas XML (fichiers d’extension .xsd).�������������: Lien sémantique entre métaschémas. �

Légende :

Page 22: Représentation de schémas de bases de données hétérogènes ...

� '�

����������-��#�������������!�����.)���������-��)��������-�����-���-���!������

���Q�����.��������������:-���)��;������!���-�)��������������������������������

:�����������������0��4�

;� #�(������ ��������� ��� ���������"0!��N� ������:����� ���)����.)���9��!������

�#���� �����1�� ������)����� �/-����=D<*����������!� ��A�(��������!���A������

�������������������/��0�����)1������������������������4�

;� �� �(�� )�2�������N� ����-������������ ���G�����������/��0�4�,������������

������!� ����� �����1���� ��� ������1��� �/��0��� ����� ����� �� ���3��� =U�� �� ��

�)�������������-������������������������)��������������)����.)����9��4��

����� ��� 1)�)������ ����)����.)����9��!� ����� :�������� �-��� ���� ��� ������ ��

�01���������������������������:-�����������.�-���&4�4���

��;� ��������������N�����-����-�)�������)�����������-�)4� �����1�������.���9=*�

�-���� ���-�� ��� ��� *�*� ����� ����� �� �)���������� ��� -���1��-.� ��#�����

-��-�����������������-������-����-�)�)�������������:��������4�

*���!� �.���� �/-� �� ��.)��� �� <*� ��� ������� �� ��� ��.�� 9=*� ��� �-�)���� ���

�����������1���������������A����-���-�������������#��4�

��

�����5������������-����W�����)������������)����.)����X��������-���������������

��� -�)���� ���#���L� ��� ���� ����A�� ����� ����� -��A�� �� *+,� � ����� ����� ���������� ���

����)���� 5� ����#��� ��� ���0�� -�������� �� �)���� ��� �01��� �� -����1� �����

�)����.)���5��������4�

��

3.3 Intégration basée sur XML �

������)��������)������������.)�����������������)���)�)�)���#����1���'�!�����������

����������������������������9�������)����.)��!���������������.��9=*!�����������������

BD_1 SGBDR

BD_2 SGBDOO

BD_3 Entrepôt

XML

BD_4 LDAP

Légende : � �� �����: Echange par des métaschémas XML. � � �����: Evolution du schéma de la BD par

un métaschéma XML.

5��'&�>��!� �������������� ������� &�'/�

Page 23: Représentation de schémas de bases de données hétérogènes ...

� ''

9������������1�1�-���������������-���������������5��������������-���������

#������ �)�������!� �� �������!� �� ���!� ��� �)�� �� �01��� -�������� �� �)���� ���

�����!���������������������������#����1�������������4�

������#�����.��� �� ���1�1�9��������������������-�)��������-���������-���)�5�

�-�)�����������/-�������)�4���������!������������9=*����������-�-������.����

�������*�*�HM � &I�-�����-�)�����������������-����-��������������!��������Q���

����8���-�������������������-��#�����--���Z�������������������9��4�,���������!����

��.)���9=*�������*�*����������� ����������� �01����#����3��� ��-��)��-��� �����

��������9��4���-������������*�*���������������-���)�5��-)��������)����������

����)�� ��� ��� � ����Z�)� ��� �������� ��� ���1�1�9=*�4� ���*�*� ����� ����� �����������

����� �� ����� �� �� -��A�� ���� ��� �01��� �� ��������� �� ����� -��� ���J� -�)����

�)���������� �-��� �� �/-�1� -������ ��� ����)�!� -��� �� ��������)�� -�)����

�����������������)�)���!���4�4�=������-���������������������������!����*�*���

-�������-������)��������01������������������������9���-���.)���1����������-���

.���10�������#���������1�1��#��9��4�

+�����!�������/-����-�)����-�����������-���������A�����.��5��������������*�*���5�

��.��.�� �� ���#��:� ���������� �� ���)������� 1)�)���� �� ��������� 9���

H�?, &I4�

;� ,�1����� ��� ��.��� ��� ���������� :-������� ���������!� -��#��� �������� ���

����������-���������������������������/-�1��������)���L�

;� ����-����������������������)��������������)������)����A�!��������������

������� ����� ��� ��.)���1� �� ��� �-)��������� �� ������!� ���-������� �� 1�1��� ��

������)����������)���������)#��--�����������.)���9=*4�

;� ,��-�������/���:�9���-�����-�)���������.)���9�����;�3�!������-������

�)����� ���)������ �� ����� ��������-����)���!� ���-���� �� ����2�� ��� ��.)����

-����� ��:;�� �#����� �:;�3��� ��� ��������� 9��� �� ����� �����1�����

��������-���������1�1�������3���9���������9U�4�

���)����.)���9���-���� ��� ����-���� ���-�0�� ��� ��.)����� �������������)�� 5�

-��������������1����/��0������=D<*������-������4���������������.�����A�������

������������������������-����������-�������������������)�4�

�����������������-�).�������-�������)����������-�������)��-�)�)������!������

-�)������������������������������9�����������#�����*�*������)���������������

�#�� ���� ��.)��� 9��� �����-������4� �� ���� ��� �� ������� ��� ���)���� ���� ��� ��:�

������������#��������0����������������*�*�������#����1�������.)����9��4��

����1�����#����-�)�������������:�-������������9���N������1��������-�)��������

����������������)����������)��#).����������������������)�)�����1���4��

��

Page 24: Représentation de schémas de bases de données hétérogènes ...

� '&

� ��

<?xml ver si on=" 1. 0" encodi ng=" UFT- 8" ?> <bul l et i n- met eo i dent =“ b201“ > <not e>&#x00A9; <I >I nf oMét éo</ I >, </ not e> <dat e>25 mar s 2001</ dat a> <heur e>08: 00</ heur e> <vue- sat el l i t e t ype=" gi f " sr c=ht t p: / / www. zzz. com/ phot os/ i m9245. gi f / > < ! —Local i sat i on géogr aphi que - - > <l ocal i sat i on> <zone> <vi l l e>Toul ouse</ vi l l e> <depar t ement >31</ depar t ement > <r egi on>Mi di - Pyr énées</ r egi on> <pays>Fr ance</ pays> </ zone> <al t i t ude uni t e" m" >187</ al t i t ude> </ l ocal i sat i on> < ! —Bl oc de mesur es - - > <mesur es> <ci el >var i abl e</ ci el > <t empér at ur e uni t e=" cel si us" >16</ t emper at ur e> <vent > <di r ect i on>SW</ di r ect i on> <vi t esse uni t é=" m/ s" >6</ vi t esse> </ vent > <pr essi on uni t e=" mb" >1025</ pr essi on> <humi di t e uni t e=" %" >80</ humi di t e> <vi s i bi l i t e>10</ vi s i bi l i t e> <i ndex- uv>1</ i ndex- uv> </ measur es> </ bul l et i n- met eo>

5��+&�> �4�� ���������)����������&�'/�

Page 25: Représentation de schémas de bases de données hétérogènes ...

� '�

����1�������������:�-����*�*����-��������#��������������9���������1���&�

�������)�������1����������-���-���������*�*�4��

�������1�����-����������������)������������/-����)�)������[\+�+�+��@ �4����

�)��������� �� �/-� ��)�)���� ����� ������ )�)���� ������;���� �� ���-��� �����

�)����� �� ����;)�)�����N� ��� ������ �� �)����� ��� ����)�-��� �� ��������� W�!�X4� ��

��������� W�]�X� ���� �--���Z�� 5� ��� �0�

� �1��� �������� ��� �.�:� :������ ���� ��:�

�������#�4�����������������;)�)����!��������)�)�������������)�)����#�;������!�

����� �-������!� �� ��� �)���� ���������� ����������� W�^�X4� ��� �������� �����������

W�_�X���1�������������������)�)����������1���-���)�)���������-���������)-)����!�

W�`�X������������1��������)-)����4�����)���������-����.0������������������0����

�����������/-���)�)����������;���4�"�������������������-���-���������-)������

������-�)������)-)�������:����-��������������������)���:����������)�)���4�

1: <! DOCTYPE bul l et i n- met eo [ 2: <! ELEMENT bul l et i n- met eo ( not e?, dat e, heur e, vue- sat el l i t e?, l ocal i sat i on, mesur es) > � � 3: <! ATTLI ST bul l et i n- met eo i dent I D #REQUI RED> � � 4: <! ELEMENT not e ( #PCDATA | I * > 5: <! ELEMENT I ( #PCDATA) > 6: <! ELEMENT dat e ( #PCDATA) > � � 7: <! ELEMENT heur e ( #PCDATA) > � � 8: <! ELEMENT vue- sat el l i t e EMPTY> 9: <! ATTLI ST vue- sat el l i t e t ype CDATA #REQYUI RED 10: sr c CDATA #I MPLI ED> 11: <! ELEMENT l ocal i sat i on ( zone, al t i t ude) > 12: <! ELEMENT zone ( vi l l e, depar t ement , r egi on, pays) > 13: <! ELEMENT mesur es ( ci el , t emper at ur e, vent , pr essi on, humi di t e, v i s i bi l i t e, i ndex- uv?) > 14: <! ELEMENT vi l l e ( #PCDATA) > 15: <! ELEMENT depar t ement ( #PCDATA) > 16: <! ELEMENT r egi on ( #PCDATA) > 17: <! ELEMENT pays ( #PCDATA) > 18: <! ELEMENT al t i t ude ( #PCDATA) > 19: <! ATTLI ST al t i t ude uni t e CDATA #REQUI RED> 20: <! ELEMENT ci el ( #PCDATA) > 21: <! ELEMENT t emper at ur e ( #PCDATA) > 22: <! ATTLI ST t emper at ur e uni t e CDATA #REQUI RED> 23: <! ELEMENT vent ( di r ect i on, v i t esse) > 24: <! ELEMENT pr essi on ( #PCDATA) > 25: <! ATTLI ST pr essi on uni t e CDATA #REQUI RED> 26: <! ELEMENT humi di t e ( #PCDATA) > 27: <! ELEMENT humi di t e uni t e CDATA #REQUI RED) > 28: <! ELEMENT vi s i bi l i t e ( #PCDATA) > 29: <! ELEMENT i ndex- uv ( #PCDATA) > 39: <! ELEMENT di r ect i on ( #PCDATA) > 31: <! ELEMENT vi t esse ( #PCDATA) > 32: <! ATTLI ST vi t esse uni t e CDATA #REQUI RED> 33: ] >

5��,&�> �!�����������&�'/�

Page 26: Représentation de schémas de bases de données hétérogènes ...

� 'F

�� ���� �1�� ���� &0�

� �1��!� ���-���� ��� �)��������� ���������� �[\,��� =�@ �4� +���

-�)��� �����!� �� �/-�������)���� ���#����� �-���� �������)�.)��������.������������

�����)�5�����/-���)�)��������)4�

��

�� ���� �1�� ���� B0�

� �1��!� �-�)���� ��� �)��������� ����� )�)���� ����)� ���� ���

�-�)���� ��� ���� ��� ������� �)�)�4� ��� �)��������� ��� �/-� �� ��� )�)���� �-)��� ���

����)��:������a��*,�,�N����������.�������*����!�����������-������������)���)�-����

�����)�)����������������������������������)4�������������������#)��������*�*!�

-���������/-��������)��-�)�����-�#���3���:-��)�4���

�� ���-������)�)������#�����.���!���-���-����������������.��������/���FNF��-���

:�-���������������.�Z����������0������#���V�����������������������)�������

����������4�

R�����5�-�)���!� ����� �#���� ����)� ���*�*�-���� �)���� �� �-���� ��� ���������� 5� �����

���������9��4�,� ���#��� ��:�-��-�)�)���!� ����� �#���� �)A5�#�� ����� ����4�*���� ��

���1������#���������)����������-������)���������-��������1�1�����.)���9��4�

����1���F�-�)�������:����������.)���9�����������-����5����*�*�������1����!���

�������� ������� ���������� ��--�)������� ��� 1���� ����� ��� �1��� F�� ��� -����

��:-��������������4�

<?xml ver si on="1. 0" encodi ng="UFT- 8"?> <xsd: schema xml ns="ht t p: / / www. w3. or g/ 2000/ 10/ XMLSchema"> <xsd: el ement name="bul l et i n_mét éo"> <xsd: compl exType> <xsd: sequence> <xsd: el ement r ef =" not e" mi nOccur s=" 0" / > <xsd: el ement r ef =" dat e" mi nOccur s=" 1" maxOccur s=" 1" / > <xsd: el ement r ef =" heur e" mi nOccur s=" 1" maxOccur s=" 1" / > <xsd: el ement r ef =" vue- sat el l i t e" mi nOccur s=" 0" / > <xsd: el ement r ef =" l ocal i sat i on" mi nOccur s=" 1" maxOccur s=" 1" / > <xsd: el ement r ef =" mesur es" / > </ xsd: sequence> <xsd: at t r i but e name=" i dent " t ype=" xsd: I D" use=" r equi r ed" / > </ xsd: compl exType> </ xsd: el ement > <xsd: el ement name=" ci el " t ype=" xsd: st r i ng" / > <xsd: el ement name=" dat e" t ype=" xsd: dat e" / > <xsd: el ement name=" di r ect i on" t ype=" xsd: st r i ng" / > <xsd: el ement name=" dépar t ement " t ype=" xsd: st r i ng" / > <xsd: el ement name=" heur e" t ype=" xsd: t i me" / > <xsd: el ement name=" humi di t é" / > <xsd: compl exType>

<xsd: si mpl eCont ent > <xsd: ext ensi on base=" xsd: st r i ng" > <xsd: at t r i but e name=" uni t é" t ype=" xsd: st r i ng"

use=" r equi r ed" / > </ xsd: ext ensi on> </ xsd: si mpl eCont ent > </ xsd: compl exType> </ xsd: el ement > </ xsd: schema>

5��*&�> ��"� &�'����������&�'/�

Page 27: Représentation de schémas de bases de données hétérogènes ...

� 'B

• *���� �� ���� ��)�)����� ���� �G���� ������:� ��������� :����#���� ��� ����)��

�:����������-�������-�������������� ���!���!�)-������!� ��4�!� �� �/-���)�)�������

���W���-��X�������)����������������������� ����������� ��)�)����5���� �/-���

����)�!� �� �/-� �� ����)�� -��� 3��� ��� �/-�-�)�)��� �:��N����1!:��N���!� :��N��!�

��4������������/-�W����������X��)�������������������.)��4�*���������:�-�!����

�)��������� ��� �/-�� ��)�)����� ���� �� .��� ���� �)�)���� 5� ��� �/-�� �� ����)��

-�)�)���4� ��� -������� 5� ��� ����� ������������ �� �������� 9��� 5� ���� ��.)��� ��

#)���!�-���:�-�!�������������:������������������)�)�������������-�0�����

�����������4�

• *���� ��� ������ ���� ����G���-���0������G��������������!� �� �/-���)�)����������

W����-�:�X� �:��N���-�:�/-�� �� ���� ���0�� �� ��������� :-��� ��� ���-������

����� �� ��)�)���� �#�� ��� ���������� �-��)�� �:��N�����!� ��4�� �� ��� �1�)�� ��

����)�� ������)�4� ��� �)������ :-���� ��� ���������� ����������� ���E�����!�

��:E�������-�)��� ��� W���������� �����������X� ����)�� ����� ���*�*4� � ��� �� �����

����������������#�������)������������)�)�����������������������3������-�#���

������� �--���Z��� ��� ���� ����� ��� )�)���� ����)4� ��� �)���������� �����������

�:��N��������� -������� )1������ ��������� ��� �/-� �� ����)��-�)��� 5� ��� #�����

���������!����#�����-����)����!�����������1�����������4�

=� �� ������ :�-�� -���� ������#�� �� ���� ��� ��.)���� ������� ��� �)������� ��

���)������� -���� ��.�� �� -�)��� ��� ��� *�*!� ��� -�:� ����� �/���:� ������-� -����

#����!� ����-�����-������-���������������)�����������-�����������--������

��� ��.)����9��������0�������)�������������)�4���������!� ���:�-�� �������

������-������)����)���������0��������������/-������)�!���������-�����/-����

���������� �� ����)�� ��� ����� �)����� ����� ����� ��� �)��������� ����#� �� �/-��

��)�)�����9��� ���������������!���/��������� �-)���������)#������-��� :���������

-����������������-������1���!��1��'��4�����)�����������������/-�-���)1������3���

���������-��� �-)��������� �� ������4� ���� ����������-������ ���� ��� �)������� ��

�/-�����������������������)���������)�������������/-����)�)�����9�������������������

����������� ����� #��������� ������� ��������� -�)-���)����� ��� ����-��� ����� ��

�������������A�����������-)��������������.)����9��4�

Page 28: Représentation de schémas de bases de données hétérogènes ...

� 'C

3.4 Définition des règles de transformation d’un schéma de BD en un schéma XML

����-���������������01����������������������-���������������.)��������������

����)�� ����� ����� �� �/-� 9=*4� ��� �01��� ������ ���-�� �� ����-��� ������� ��

�/�����4����-���������������������0������-�����������)������������������������

����� ��� �)������ ����� ����-�4� ��� -���� �/������ ������� ����� -���� ��� ����������

����)1��)� ���)��� �������� ��#������)1������ �����������������.)��������������L�

�������-���!�����)����������������������)����:�����-�������������0������-������

���������4�

��

3.4.1 Traduction de la partie statique �

��������������-�)���)�-��������0������-����������)�����*�4��.�������)�������

�)���������������-�����.���������������)����� ��� ������������������-������7�

����01�������������������������-���������������.)������������������������)����

������.)���9=*4�

�3.4.1.1 Définition des tables de la BD �

���(�� $�%��.���� ����� ����� <*� �--��������� ����� �� ������1�� �/��0�� ����� =D<*� ���

�������-������ �/-����-�:�9=* �<xsd:complexType>� �-�)��������������-�4����/-�

9=*�������3��������������������������������������)���A�4�

�3.4.1.2 Définition des attributs non clé d’une table �

���(��'�%��.�������������������������������������)�)��� <xsd: el ement >���������/-�

����������/-��������9=*��) ��4��)��� <xsd:string>�����5�������������������/-���

�����-���:�-�!����)���)��������#���������������#����4�*��������������!�����/-�

�)�#)� ��� �)��� 5�-����� ��� �/-� �� ����9=*�L� �� �/-� �)�#)� ��� ������ ����)�-���� �/-��

�������������������4�

�����������)������������������!����#�����-����)�����-���3����)��4�

��4��)��$

��

produit�

idprod�libelle�prix_unitaire�

commande�

idcom�date�

contenir�

quantité�

0,n�1,n�

5��7&�>�� ���� ������������� ����/

Page 29: Représentation de schémas de bases de données hétérogènes ...

� '�

�����1�����;���������������������)�����������:��01�����������������-�)�)����4�

� � � � � � � � � � �

����� � � �� �

��������)��4!0)�����������)������������������-�)�)�)�-������������t abl e�-������������

���-��������)�������-���)�����������-�4�

� �/-����������������������4��

� ��������������-)�������������������������������!�������������������:���������!������

mi nOccur s � maxOccur s � ��� �)������� ��-��#���� �� ������������ �� �� �����������

��:������������������������������#������:�4���

� �

Soit le modèle relationnel de la BD constitué des tables : �COMMANDE [ i dCom, dat e] CONTENI R [ #i dCom, #i dPr od, quant i t e] PRODUI T [ i dPr od, l i bel l e, pr i x_uni t ai r e]

Dans le modèle ci-dessus, les attributs qui sont soulignés représentent la clé primaire et ceux qui sont précédés par le caractère dièse représentent une clé étrangère. �

�� �)������� �� ��� �������������� ��� ��:� ���)�� �)�������� ��� ����-��� �� COMMANDE� ��

PRODUI T!�����������������������������������)��������-�)���)��-��������1����9=*��;

�������N�

<xsd: compl exType name=" t abl eCommande" > � <xsd: sequence> <xsd: el ement name=" dat e" t ype=" xsd: dat e" mi nOccur s=" 1" maxOccur s=" 1" / > </ xsd: sequence>

<xsd: compl exType name=" t abl eCommande" > <xsd: sequence> <xsd: el ement name=" dat e" t ype=" xsd: dat e" mi nOccur s=" 1" maxOccur s=" 1" / > </ xsd: sequence> <. . . / > </ xsd: compl exType> <xsd: compl exType name=" t abl ePr odui t " > <xsd: sequence> <xsd: el ement name=" l i bel l e" t ype=" xsd: st r i ng" mi nOccur s=" 1" maxOccur s=" 1" / > <xsd: el ement name=" pr i x_uni t ai r e" t ype=" xsd: f l oat " mi nOccur s=" 1" maxOccur s=" 1" / > </ xsd: sequence> <. . . / > </ xsd: compl exType>

Page 30: Représentation de schémas de bases de données hétérogènes ...

� '%

3.4.2 Traduction de la partie dynamique �

3.4.2 Traduction de la partie dynamique des contraintes d’intégrité �3.4.2.1 Contrainte induite par les clés primaires �

*���������!�������#��!���������������������-����������/-�����)1��)��)�)����������-���

��#�������)��������-�����--����5�����)�������������-������-���Q�������/����.����

���)��������������1�b�)������������������-�4�,���!�����01��1)�)������;���N�

���(�� +&�%��.���� �������� ����� ����� ������� -���� �� ��� ��)�-����� ��� ������� -��� ���

���������������/-����-�:������-�������5��������4�

*�������/-����-�:�<xsd: compl exType name=" t abl eCommande" >!����������-����5�N�

��������������������)�����������commande4�

��������������r equi r ed��1���������-�)�����������������������1����4�

�����-��#��������-�)������������������N��)�����������������9=*����/-�����-����!�

���-����������i dCom���������-�)����������1����4�

���(�� +&��%� *���� �� �/-� ���-�:� <xsd : compl exeType name= " dbGest i on" >� ����

�-�)���������-�:�/-������������0�����5�����)����������������

[:��N����� ���cd�������d� �/-cd�����������d� ��E�����cd d�

��:E�����cd��������de��

5�����������--�����!������)�-���������)������������N�

��

� � �� ���� �� ��� ��)�-����� ���� �������)� ��� ���� �� ��� �����-�)�)�)�-��� I D� ���� �� ��������

����1�������������/-������)�4� ��

� ��:-������xpat h �-��/)��)��-0�� �������� ��� �����������)�-���������)4�������������

���!����������������)�)����:����<xsd: sel ect i on> ������1�1�9=�4� �

� <xsd: at t r i but e name=" i dCom" t ype=" xsd: posi t i veI nt eger " use=" r equi r ed" / >

� � � � � � � � �������� �

� <xsd: key name=" I DCommande" > <xsd: sel ect or xpat h=" . / / commande" / >

<xsd: f i el d xpat h=" . / @i dCom" / > � </ xsd: key>

Page 31: Représentation de schémas de bases de données hétérogènes ...

� &

� ��� ��:0�� :-������ xpat h ��� �)��� �#�� ��)�)���� <xsd: f i el d> ���� ��������

�-)���� �� ���� �� ���������� ��)� ��� ���� 3��� ���1�������� ������ ��� ���� �������

<xsd: at t r i but e>�������-�:�/-����������4� ��

=�����������-�����������������������)�-��������������5�����)�������������-������#���

���������������5�����������������L�-���:�-����������TVA ������������������� t aux ������

���#������-�����������F4F!��&4�!�&&4&����������������������5�������������-)�������

��������������/-����-�:�-�����)����-����-�)��)����������-�������-������4�

�3.4.2.2 Contrainte induite par les associations (clés étrangères) �

Deux cas sont possibles en fonction des cardinalités indiquées de part et d’autre de l’association. �

�3.4.2.2.1 Cas des clés étrangères simples [cardinalité (0,1) ou (1,1)] �

��� ��������)�� -�#��� ��������� 5� ��� ������ ���1�)1����� W� ��� ��� -���� �� X�

�;��<) ��<��=���������:�����-��4������������)�� !����-�)�������1�)1��������������-��

��������������������������)���!���������������-��������7�������)���#�������-������

����)-��������������)���#�������-��)�4���

���(��,&�%�=��� ������-��,�������������)��������-�����������-��<�������������!�<�

��������������������������������������-�)���������������)�)����10�������)������������

��������-������������������-���������/�

�4��)��$ =� ����� ��--������ ��� ./-��.0��� ��#����� ����� ����� ��*� �� 1����� ��

��������!��7����������������)������#���������)�)�:-��)�4�

;� ��������� �����������(���������� ���?�

;� ��������� ��������������� ����������(������� �&��

�,$� ����� ������)����%����� ������0)����������0)���% ��&�������� ������ �����)����%�����

�����������) ����������/

produit�

idprod�… � �

commande�

idcom� …�

contenir�

…�

����1,n�

5��/&�>�� ���� ������������� ���� �������������������� �����/

Page 32: Représentation de schémas de bases de données hétérogènes ...

� &�

���)�����������������������������������-��������������W���������X!�����A������������

������<xsd: keyr ef >4�

� ����������:�� keyr ef �-���������)�����������)�)����5������)�:��������������3�������

��.)��4�

���������������)�)����10��������-��)��� *"+$���#�����������������������������

:-�����������������)�)����10�4�

��������������������)�)����[:��N2/��e��-�)�����������������)��2/�������������������

��#�/)4� �

� �)��-)�����������������������������)�-���������)�)����10���������������4�

���� �-)������������������������������A������Q���������)�-��������������������������

������0��4�

�3.4.2.2.2 Cas des clés étrangères complexes [cardinalité (0,n) ou (1,n)] �

*���� -���� �� #�� �)������!� ������������ ���� -��� �� ���� -�#�)1)� �� �����4� ����

:�-�!� ����� �� ���� �� ���1������� ��������!� �� ��� �����-��������)��������� �)��

��#������#����1���B��N�

;� ��������� �����������(���������� ���?�

;� ������ ��������������� ����(������������ ��&�

���(��,&��%�������#�����������-����:-�������)���������������)����-�)�)���������)�����

�/-� ���-�:� �-�)������� ��� ������ �� W�������(3��� �������X� ��� �����-��� ��� ����-��

-�)-���)����� ����� -��� ��3��� �� ����-�� �� ���� ���� ��� � )������� ���� ��� -����

��������������:���������)�4�+�����������������)���������W�������(3�����������X�

-������1�������:�����:������)����4�*���������:�-�!������.���;���������#��

-���Q������������-��������������-�������� �����-�������#�������������������1�����

#��-���Q����������-�����--�����������-����)��������-�������)�--��#��������4��

<<xx ss dd:: eell eemmeenntt nnaammee=="" cc oommmmaannddee"" tt yy ppee=="" tt aabbll eeCCoommmmaannddee"" mmii nnOOcc cc uurr ss =="" 00"" mmaaxx OOcc cc uurr ss =="" uunnbboouunnddeedd"" >> <xsd: key name=" I DCommande" > <xsd: sel ect or xpat h=" . / / commande" / > <xsd: f i el d xpat h=" . / @i dCom" / > </ xsd: key>

� � �

<xsd: keyr ef name=" I DREFCommande" r ef er =" I DCommande" > <xsd: sel ect or xpat h=" . / / pr odui t " / > <xsd: f i el d xpat h=" . / @i dCom" / >

</ xsd: keyr ef > �

</ xsd: el ement > ����

Page 33: Représentation de schémas de bases de données hétérogènes ...

� &'

�4��)��$ ����� ����� �� ���0�� ��������!� ������������ cont eni r � ���� commande� ��

pr odui t �����-�)���)�-������&0�

�������4��

*���� �� �/-� ���-�:� � <xsd: compl exType name=" t abl eCont eni r " > ��� �-�)����

)1���������������W�������(3����������X!������)�)����10�������)����-���N�

� �)��-)��������������� ��� �����������)�-���������)�)����10������ ����������������������

��������-���4� � �-)�������������������������������A��������Q������)�����������:��������������������

��������-����

K����������J���������������)���:�)�)�����<xsd: f i el d>����������������)�-�������

���� ����� ��� ���-��)� �� ��:� ��������4� �.����� �� ��� ��������� )����� ����� ��� ��)�

)����10�4� �� ���� 9=*� �;������ ���-�0�� ��� ������� CONTENI R [ #i dCom, #i dPr od,

quant i t e] ������0����1������������������)�4�

����

=� ����� �����)����� ��� �)������ ����� �/-� ���-�:�-���� �����������!� ����� �������� ���

1��-.� ��� �1�)1������ ������ �� ������ ��� ��������)�� :-��)�� �7� �� ���� �����)� ���

���)���4��

+:������� ��:�-�� �� ��� 1����� �� �������4� *���� �� ���!� �� ����� ��������� ���

�������� -��� -��� ��� ����!� ����� �� ��--������ -��� ��� -������� �������� ����� ����

���0��L�����������!�����/����������-����������2�-�������-�������)�1�)!���������������

�������� ��-���3���)����!� �� ����/� �� ��� ��������� ��� ��������� �)A5� ��-�����!�

���������������������)�4��

��

��

<<xx ss dd:: eell eemmeenntt nnaammee=="" cc oonntt eennii rr "" tt yy ppee=="" tt aabbll eeCCoonntt eennii rr "" mmii nnOOcc cc uurr ss =="" 00"" mmaaxx OOcc cc uurr ss =="" uunnbboouunnddeedd"" >> <xsd: key name=" I DCont eni r " >

<xsd: sel ect or xpat h=" . / / cont eni r " / > � <xsd: f i el d xpat h=" . / @i dCom" / > <xsd: f i el d xpat h=" . / @i dPr od" / >

</ xsd: key> �

c o m m an d e p r o d u i t

c o n ten i r q u an t i t é

5��8&����>� )"���� ������������� ����/

Page 34: Représentation de schémas de bases de données hétérogènes ...

� &&

3.4.2.3 Contrainte induite par les contraintes d’intégrité de cohérence de valeurs (triggers programmés par le DBA) �

��� ��11�� ��� ��� �������� -��-�� 5� ��� ����� �� ����� ��� ����-�� �����)� -���� ������

���������������-��������.)���������������1��������/�����#4�

�� ��� ����� �)������ �� ��� �)������ �� ��11�� ����� �� �/-� ���-�:� �-�)������� ��

����-�4�

��������G�#�������)��������������-�������)��-�4�

+�������������������*���1���������������!������11������)�Ver i f Pr od�������������

pr odui t ����)����.�������O��������������O������5�A���������-�����4� ������������

�������������)��O���-������1�)�-�����������������������A������#������#����4���

K��������������11��Ver i f Pr od���������������=D<*�����1��4��

�cr eat e or r epl ace f unct i on Ver i f Pr od( ) r et ur ns opaque as ' begi n i f NEW. l i bel l e i s nul l t hen r ai se except i on \ ' Li bel l é pr odui t doi t êt r e r ensei gné ! \ ' ; end i f ; end; ' l anguage ' pl pgsql ' ; cr eat e t r i gger Ver i f Pr od bef or e i nser t or updat e on pr odui t f or each r ow execut e pr ocedur e Ver i f Pr od( ) ;

K����������J���� �� ��11������������)�����������������-���)��������������������

��1����!� �� ������� �� �/-�OPAQUE� ��/-� ��)����)�4� ���!� �� ��11�� ���� �--�� 5� ����

���������������������)����.)4� 3.4.2.3.1 Définition du type trigger �

���(��*&�%�*�������-������-�!�������#�����)�������/-���11�����������/-�������

������ ��� �����=U��� �� ���-�)���� ��� �/-�� �� �����9=*4��� ���#��� �/-� ��� �� ���

�����N��

<xsd: compl exType name=" t r i gger Type" > � <xsd: sequence> <xsd: el ement name=" event " t ype=" xsd: st r i ng" mi nOccur s=" 1" maxOccur s=" 1" / > <xsd: el ement name=" st at ement " t ype=" xsd: st r i ng" mi nOccur s=" 1" maxOccur s=" 3" / > <xsd: el ement name=" act i on" t ype=" xsd: st r i ng" / > </ xsd: sequence>

</ xsd: compl exType> �

Page 35: Représentation de schémas de bases de données hétérogènes ...

� &�

� �� ���)��4!0)� ����� ��11� ��� �������)� �� ��� ������ t r i gger Type� � ���� �� ���

���)�������������-�:�/-�������������������-���)��������2)4�

���:)����������)#)����N��#���!��-�0�!����������������)#)����!�����������-�)�)�������

������#����-��������������������#�����N��BEFORE | AFTER | I NSTEAD4��

�����

� )���� �� ��)#)�����N� ����� 5� ��� �� ������ �� �)����.���� ��� ��11�!� ����� �����������

������!����5�A���!���--�������I NSERT | UPDATE | DELETE���

� act i on����1)�)������������-����������������--�)�-�������11�������������1�����������

-��������:)�����4�

����� �)�������� �� ���#��� �/-� �� ����� ����� ��� �����.0���9=*�-���� �-)���� ���

�����=U�4����������.0��������������:������������1�1�9=*�������3����-���)�

����3��������)����������������#����/-����)����.)����9��4�

�3.4.2.3.2 Utilisation du type trigger ���(��*&��%�,-�0�� ���-���������� �����#��� �/-������ �.���� �-�)��������9=*������

<*!������:���/�����.�����)����������11����������!�����������������/-������4�

�4��)��$

�3.4.2.3.3 Référencement du type trigger dans un type complexe ���(�� *&��%� +���� ���� ��������� �� �� �/-� ��11�� ��� ����)� ����� �)�)���� ���

�)������� ����� ��� �-�)�������� ����� ����-�� ����� �����9=*� �� ��� ����� �����-�������

��������<*����-�����������������11����4�

<xsd: el ement name=" Ver i f Pr od" t ype=" t r i gger Type" > <xsd: sequence> <event >bef or e</ event > <st at ement >i nser t </ st at ement > <st at ement >updat e</ st at ement >

<act i on>i f NEW. l i bel l e i s nul l t hen r ai se except i on \ ' Li bel l e pr odui t doi t êt r e r ensei gné ! \ ' ; end i f ; </ act i on> </ xsd: sequence>

</ xsd: el ement >

<xsd: compl exType name=" t abl ePr odui t " >

<xsd: sequence> � <xsd: el ement name=" l i bel l e" t ype=" xsd: st r i ng" / > <xsd: el ement r ef =" Ver i f Pr od" t ype=" t r i gger Type" / > </ xsd: sequence> <xsd: at t r i but e name=" i dPr od" t ype=" xsd: posi t i veI nt eger " use=" r equi r ed" / > </ xsd: compl exType>

Page 36: Représentation de schémas de bases de données hétérogènes ...

� &F

����)�)��� r ef -�������)�)���������)����������/-���11�������5���:�)��������/-��

��������-�:������������������������11�4� ,������!�����11������-������)1������������-��:����������<*�����������������.)����

�������)���)��5�������-������������������:�-������������-�4�

3.4.3 Traduction de la partie dynamique de traitements 3.4.3.1 Les procédures stockées �

���(�� 7�%� ��� ��:� -��0��� )��-�� �� ������������ ����� ������� ��� ���� ��� ��11��

��)������ ����� �/-!� ��������� ��� �/-������ �� ��/� ��-��� �� �)�)������� ����� ��� �/-�

���-�:4����� ���������� ��� ����5� ��:�)������ ����)���������������-�� �������� �/-�

���-�:�9=*���������-���)��������-����������0������-��������������4�+���-���

�#����������������-�����������-�����������������7����#����.�Z�������)�����

���������5��)���������������-���������������������������)�4�

�����������-���)���������2)��:-��������8�����������-�����������1)������<*4�

��4��)��$

��:�-����#����������-�)������:�������������-���)��������2)��-�������������1��

�/��0�4� D������ ����� ���� -���)���� ��--��� ��� -������ -��� ���� �������� ���������

i dPr od�4�

� � �.���� -���)���� ����2)� ��� �)��� -��� ��� ���)��4!0)�4� �� �/-� �� �� ����� ���

pr ocType����3��-���-�-��������������01���-�)�)�����4����

� pr oname� ��� �� ������ ���-���)���� 5� :����� �-��� ��� ������1��� �/��0��4� �� ��� ��

�/-�st r i ng ���.����-���)���������#������������������4�

� ���)�)���� ��� ��0�� �-�������-���� ��� �)������ �����-���)���� ����2)!� ���� ��� �����

<body> �)�������������������-�����������������;�3�4��

� � <xsd: compl exType name=" del _Pr od" t ype=" pr ocType" > <xsd: sequence> <pr oname>nb_pr odui t </ pr oname> <pr oar g>1</ pr oar g>

<body>cr eat e or r epl ace f unct i on del _pr od( i nt ) r et ur ns i nt as '

� del et e f r om pr odui t wher e i dPr od = $1; ' l anguage ' sql ' ;

</ body> </ xsd: sequence> </ xsd: compl exType>

Page 37: Représentation de schémas de bases de données hétérogènes ...

� &B

3.4.3.2 Les vues �

���(��/�%���� #��� ����� ��� �-�)�������� ����� ����:�� ����������� ��� ����-��� ��������

����� ��� ���� �� ����)�� ��� �����-���� �� #�� 5� ���-��� ���� ��� ����-��� �#��-������4�

�����-�)������������������������!������-�������-���)���������2)�!�5���:�)������

����)����������/-����-�:�9=*��-�)��������������-�4�

�4��)��$

��:�-����#����:-����������)�.�����:��������-�����-�)���������-������<*4�

����Q��������#�������:��������������������������������������)���)����5�� 4���

� ����������#��������������)������������<*4�

������#��������<*����������3�������������-���)���������2)�!������-��������������������

�����)��������/-����-�:����-�������/-�vi ewType4��

�� ����� ��� #�� �����<*������ ������ ��-�� ���3��=U�!������-���� ��� �������������������

������������.��9=*!�������#�����)���-)��������0����������-�����-���-���4�+�����

���� ��� �����-������� ���� ��� -����� �� ��� #�� �#�� ��� ���)����� )�)����� 9=*� ��)�����

�-)������4� ��� -��0�� -���� ��� ��� ������ sel ect !� ���� ������� ��� :-���)� ����������<xsd: el ement name=" sel ect " t ype=" xsd: st r i ng" mi nOccur s=" 1" maxOccur s=" unbounded" / >

����

� ���-�������������-������������������������f r om4�

���� ���-�������-����������������������������)��������)�)����9=*�wher e4�

3.5 Récapitulatif ,-�0���#����)��� ������������01��������������������������.)���������������)��

�������.)���9��!�������������������������#���!�����)����������0��4�

� <xsd: compl exType name=" ver i f _Commande" t ype=" vi ewType" > � �

<xsd: sequence> � <sel ect >cont eni r . i dCom</ sel ect > <f r om>cont eni r </ f r om> <wher e>cont eni r . quant i t e<100</ wher e> </ xsd: sequence>

</ xsd: compl exType> ����

Page 38: Représentation de schémas de bases de données hétérogènes ...

� &C

RRèègglleess ddee tt rraannssffoorrmmaatt iioonn

EExxeemmppllee rrééssuull ttaattss ddee llaa tt rraannssffoorrmmaatt iioonn EElléémmeennttss XXMMLL SScchheemmaa

AAtt tt rr iibbuuttss ddeess éélléémmeennttss XXMMLL SScchheemmaa

��������� �� � � � � � � � � �� �

� � � �� � � � � � � � � � � � �

� � � � � � �

����������� ���� � ��� ��� � �� ��� � �������������

�� ������ ���� �� ���TTrraadduucctt iioonn ddee llaa ppaarrtt iiee ssttaatt iiqquuee

�������� � ��� ���� � � � � � ����� � �� � � � � �� � � �� �� � ��

� � � � � �� ! � � ��� � ! � ���������" # � ������������������������������������� � ��� ��� �� ����� �� ��� ��� �� ������� ���������

�� ������������ � � � ����� �� � � � ���

���� ����� � � ��� ���� ������ ���� ���� ��� � ���

� � � � � ����� � �� �� � ! � ����������" # � ����������������������������������������� � � ���� �����$% �

�� ����� � ���

�� ��������� ���

��������

���

�����

��

���

����

#��!

����

���� ��!��� � � ��� ���� ������ ���� ���� �� � ���

������ � �� � ��� ��� ��� � ���������������������������� �� � ����� ��� � ������� � � � � ��� �� �� # � �& ��"#�������$% �������������� � ���

�� �������� � ������ ��

�� ������ � ��

���� $����� �! ��! ��� �" # ������������

������ � ������ � ��� ��� $ % & ��� � ��������������������������������� ��� ��� � ������������������������������������������������ �� � ������ � ���������� ��������������� � �� �� � ���' � ������������� � ����� � �

�� �������� � ������ ��

�� ������������ � �

����$����

����

�����

���

���

���

���'

(���

���� $�!��� �! ��! ��� �" # ����� ��������

������ � ��� � ��� ��� ������������������������������������ �� � ����� ��������������������������������������� �� � ���' � ������������������������������ �� � ���' � ( � ����������� � � �

�� �������� � ������ ��

�� ������ � �

���%����� ! ������ �� � ���������" " ���

����������� ���� � ��� ����" " ��� ������������������������ � �� ����� ������������ ���� � ��� ��) ������� �� ��� *�����" ��������������������������������������� � ��� ��� �� ����� �� ��� ��� �� ������ ����������� ���� � ��� ���� ��������������������������������������������� �� ��� *�����" ��������������������������������������� � ��� ��� �� ����� �� ��� ��� �+ ����� ���������� ���� � ��� �� � �� ����� �� ��� *�����" ������������������ � �� ���� � � � � � � ������������� ����� � �

� ������ ������, � ��� �����������

��� ������������ � � � ����� �� � � � ����

���%�!��- ������ �� �� � ���������" " ����

���������� ��� � ��� �. ����( � ���������������������������� �� ����" " ��� �������������������� � �� ����������������/�) ����� �� ��/��) �����������������/��� �������������/���� ��������������������/��� �������� � � ��/���� ��������������������/� � �� �����0 % 1 ���� ���������� ���� ����� ������� ���� ���������������������������������234 �� ������� � ��� ���5 ����������" �! �6237�

������ ���7�������������/�� � �� ����������������� � �� ��������������� ����

�����������, � ��� ��

��� ���������

TTrr aa

dduu

cc tt ii o

o nn

ddee

ll aa pp

aa rr tt

ii ee dd

yy nn a

a mmii qq

uuee

dd

ee ss

cc oo n

n tt rr

aa ii nn

tt eess

dd’’ ii n

n tt éé

ggrr ii

tt éé

����%����

����

�����

���

���'

'���

���%�&��$ ! �! ���� ������ � ���������" " ���

//���� **���������������������������������������������������������������������� ������ ����������� ���������

����������

���� '�� � � ��� ���� � � � � # �� � � � � �� � � �� � ) � � �

����������� ���� � ��� � ��8 ( � ������������������������������������� �� ��� � � ������� � � � ���������������� � �� ���� � � � � �� � /�� �� ����� 8 �� � ��/��� �� ����� � /�� � �" �� /��� � �" ���������������������/� ��� ��� ��� ������� � ���� �� �� ���������������������������������� ��8 �� 9���:������������������������������������� ��������� ��3� �������� ���� � ������������������������������������; ����� ( � �� ��< � 7�3���������������������������������� �" � � " ��3�, �37��������������������/�� ��� � � � �� � ������������������ � �� ����� � � � � � ������������� �� �

�� ������ ������, � ��� ��

�� ���

TTrr aa

dduu

cc tt ii o

o nn

dd

ee

ll aa

ppaa r

r ttii ee

dd

yy nn a

a mmii qq

uuee

dd

ee

tt rraa i

i tt ee mm

ee nn t

t ss

����(���� � ��� ���� � � � � * � � �

����������� ���� � ��� �) �����8 � ��� � ��������������������������������������� �� �) ��; � ������� � � � �������������������� � �� ���� � � � � �� �����������/����� ��� �������� �/������ ���� �����������/�� ��� ������/��� �����������������������/; ����� �������, � � �����/� = = /�; ����� ������������������������ ��������� � �� ���� � �� � � � �������������� ���

�� ������ ������, � ��� ��

�� ���

Page 39: Représentation de schémas de bases de données hétérogènes ...

� &�

?�� �*��N�,�������������.�-��!�������#�����-��/)���-�)�:�xsd��#�����.����)�)����

�����.)���9��4���-�)�:�����.��������������������-������#�����������:�����)��

���#��-�����������)��!��������)�)����xsd: schema!�5���������)�)�����������������)����

���������/���:������.)���4�

K��� �� ��.�� 9=*� W�gest Commande. xsd »� ��� �-�)���� �� ��*� �� ��� 1����� ��

���������#����1���B��������1��������������01���-�)�)����4�

���

<?xml version="1.0" encoding=”UTF-8” ?> <!-- edited with XMLSPY v5 rel. 4 (http://www.xmlspy.com) by iut (linc) --> <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <xsd:annotation> <xsd:documentation> databaseName: db_gestCommande databaseType: Relational Other informations </xsd:documentation> </xsd:annotation> <!-- définition of constraint (restriction of type) --> <xsd:simpleType name="lib"> <xsd:restriction base="xsd:string"> <xsd:minLength value="32"/> </xsd:restriction> </xsd:simpleType> <!--definition of procedure --> <xsd:complexType name="del_Prod" type="procType">> <xsd:sequence> <proname>nb_produit</proname> <proarg>1<proarg>

<body>create or replace function del_prod(int) returns int as ' delete from produit where idProd = $1; ' language 'sql'; </body> </xsd:sequence> </xsd:complexType> <!--definition of view --> <xsd:complexType name="verify_commande" type="viewType">> <xsd:sequence> <select>contenir.idCom</select> <from>contenir<from>

<where>contenir.quantite<100</where> </xsd:sequence> </xsd:complexType> <!--definition of trigger --> <xsd:element name="VerifProd" type="triggerVerifProd"> <xsd:sequence> <event>before</event> <statement>insert</statement> <statement>update</statement> <action>if NEW.libelle is null then raise exception \'Libelle produit doit être renseigné !\'; end if; </action> </xsd:sequence> </xsd:element> …

Page 40: Représentation de schémas de bases de données hétérogènes ...

� &%

�����������"���gestCommande.xsd)

<!-- complexType of commande --> <xsd:complexType name="tableCommande"> <xsd:sequence> <xsd:element name="date" type="xsd:date"/> </xsd:sequence> <xsd:attribute name="idCom" type="xsd:positiveInteger" use="required"/> </xsd:complexType> <!-- complexType of produit --> <xsd:complexType name="tableProduit"> <xsd:sequence> <xsd:element name="libelle" type="xsd:string" minOccurs="0"/> <xsd:element ref="VerifProd" type="triggerVerifProd"/> </xsd:sequence> <xsd:attribute name="idProd" type="xsd:positiveInteger" use="required"/> </xsd:complexType> <!-- complexType of contenir --> <xsd:complexType name="tableContenir"> <xsd:sequence> <xsd:element name="quantite" type="xsd:double" minOccurs="0"/> </xsd:sequence> <xsd:attribute name="idCom" type="xsd:positiveInteger" use="required"/> <xsd:attribute name="idProd" type="xsd:positiveInteger" use="required"/> </xsd:complexType> <!-- complexType of database --> <xsd:element name="gestion" type="dbGestion"/> <xsd:complexType name="dbGestion"> <xsd:sequence> <xsd:element name="commande" type="tableCommande" minOccurs="0" maxOccurs="unbounded"> <xsd:key name="IDCommande"> <xsd:selector xpath=".//commande"/> <xsd:field xpath="./@idCom"/> </xsd:key> <xsd:keyref name="IDFREFCommande" refer="IDCommande"> <xsd:selector xpath=".//contenir"/> <xsd:field xpath="./@idCom"/> </xsd:keyref> </xsd:element> <xsd:element name="contenir" type="tableContenir" maxOccurs="unbounded"> <xsd:key name="IDContenir"> <xsd:selector xpath=".//contenir"/> <xsd:field xpath="./@idCom"/> <xsd:field xpath="./@idProd"/> </xsd:key> </xsd:element> � � �����<xsd:element name="produit" type="tableProduit" minOccurs="0" maxOccurs="unbounded"> <xsd:key name="IDProduit"> <xsd:selector xpath=".//Produit"/> <xsd:field xpath="./@idProd"/> </xsd:key> <xsd:keyref name="IDFREFProduit" refer="IDProduit"> <xsd:selector xpath=".//Contenir"/> <xsd:field xpath="./@idProd"/> </xsd:keyref> </xsd:element> </xsd:sequence> </xsd:complexType> </xsd:schema>

5��9&������ ��"� &�'��� @�������������� ����/

Page 41: Représentation de schémas de bases de données hétérogènes ...

� �

��� �1��� ��#���� ������� ��� �-�)��������-������ 1��-.��� ������ �#��9���=-/� ���

�/-����-�:�dbGest i on ����������������4�

��

3.6 Conclusion ,������������.�-��!�������#����-�!���������� �����.������1)�)�������� ��������-���

������--���.4�������#����A����)�)1������������.�:���������9�����������������

�� �-�)�������� ��� ��.)���� 9��� -���� �)���� ��� �)������� ��� ��.)��� ��� ����� ��

����)�!��������������������01�������.��������#���������������-���4�*������

-���.����.�-��!�������������-�)���)������������:�����������)���������01�����������

��G�#����R�#�4�

5��$1&����?�)����� ������ )"�*�����0)����)��4�dbGestion.

Page 42: Représentation de schémas de bases de données hétérogènes ...

� ��

��

��

��

��

��

��

��

��

������������ ��������

���������� ��((���������

,&$� ����� ������

,&'� �� �(�����3��� ��()�2���������

,&+� �������@�-����

,&,� ���(���������

,&*� #���(�����

Page 43: Représentation de schémas de bases de données hétérogènes ...

� �'

4.1 Introduction *������-�)�)�����.�-��!�������#����:-���)�����01���������������-������:��������

���)����� ��.)���� ��� ����� �� ����)�4� ����� ����� ��)������� ��������� 5�

���-�)���������������-�����/-4������-�)�������)1������������������G�#������

��� ��� -����0��� �������)�� ����� �� ���� -.��!� �#�� ��� ��)��������� �� ��� :�������

-����������/��0�4�

4.2 Modélisation UML de l’extracteur �����-��-������ ��� ���)������� �� ����� :�������!� ����� ����� �� ��1��������4�,�

-��0�� #�!� ����� ����������� ����� �-�)���� ��� ��������� �� ����)�� ��� ����� -��-���

������������������������1���9��4�

D�6��5����������*���������5�����������������)�.���!������-��#����:�������������!�

���#�����)1���������-���)��������2)�4����������������/-�������������������������

���1�� ���� �� �/-� ��� =D<*� �� ��� ���� �����1)!� �� ��)���� ��� 1)�)���)� �� �����

���.�����4�

*��3�!�������)���������������!����#��������-���)���������2)����������5������

�����������)-���������V�������-��0��������*��������#����������������1�)1����4�

=� ����� ����#���� ��� ��� ������ ����!� ����� ���������� ������ �1���� ��������

����������N��������������--��������5��������!���������������������������)��-���������

��)��)����10��!��� �����������������.)�������� ��11�����������������)��5����� ����4�

��������!�������)�����������������������)�����N� �����������!������������������������

��11��4��

����� ��� :�������� 1)�)���!� ����� �)�������� ��� ������ ����)� ���/4� ���� ������

�-�)�������:�������1����!���������������)-��������-��-�������������������4�+���

-���0�����������������������������3��������1�1�=U���������)�.������-��#����

���� :)�����4� ��� ������� �� �)��:#�)� ������)��� ���� ������ ����� �� ���� ��� ���

�)��-)����������)���������������3��-��������������3�4�

��� �1������ ������� ������)����� �������� �� ��� ��������)�� ���� ��� ������� ����� �����

�������1�����������������4�

Page 44: Représentation de schémas de bases de données hétérogènes ...

� �&

uses_result

associated

< belongs

+typeConstraint : String

Constraint

+extractTables()+extractViews()+extractProcedures()

+dbName : String+dbmsType : String#owner : String#localization : String

Database

+extractAttributes()+extractConsraints()

+tableName : String+attributesNumber : Integer+tupleNumber : Long

Table+viewName : String+definition : String

View

+main()

+name : String

Application

+generateQuery()

+body : String

Query

+triggerName : String+typeEvenement : String+body : String

Trigger

+attributeName : String+typeAttribute : String

Attribute

1

*

1

*

1

*

1

*

1

0..1

+procName : String+body : String

Procedure

1..*

1

1

*

5��$$&�������#����'�����4�� �����/

Page 45: Représentation de schémas de bases de données hétérogènes ...

� ��

4.3 Mise en œuvre ����� �)#��--���� ��� �--������� R�#�� ����1�1� �.��� -���� ��� -�������)�� -�������� ��

-����������)� ���������1����/��0���������)�����=D<*!������ �����1��5� �������

���3���=U�������-���������)����.)���9��������-�������5����������������0�4��

����1���.���������������������-����������-.����N�

�� �����1��������=D<*�.)�)��10��4�

�� ")��-)����������)�������4�

�� ����������������)����.)���9��4�

4.3.1 Interrogation des SGBD hétérogènes ��� ���)����� =D<*� ������� ����� �� �/��0�� ����� �����1����� -��� ����� �--�������� 5�

-����� �� ����� ������1��� �/��0��� �#��� 1�������4� ����� �����1���� ��� ������ ���

��������� ������)����������������)�4�*���������!����������������������������

���3���=U����������1)�)����������-�#��� �����1�����-�������� �/-����������

����)�4�����-.��� ��� ��.)����)������ �����.������ ������������������������ �#���

�.�-���&4'�4�

4.3.2 Récupération des résultats �� �)������� �)��-)�)� ����� �� ��� -.��� -�)�)���� ������1����� ��� =D<*� .)�)��10����

�-�)���� ��� �����������������������)������������������������9=*4�"�--��������

��������������:����� ����)�������-���)������������!�����;5;��� ��� �����������������

��������!�����������������������/-�!��������������������������-���)���������2)�!�

��� #��� �� ��������� ��� ��11��4� �� -����0�� ��� ��� ������ ��� ����������� �.��1���

���������������)��5����������������=D<*�5��������4�,�������:�-�����������������

������1��� �/��0������=D<*�����1������0����������E����4������-������������� �����

��� )���� -�)������ -���� �� �/-� �� �����!� � ���� �� ��#��� :������� �������� �7� �����

�#����������.��.�������������!������������-����)�����������3����������=D<*4�

4.3.3 Construction du métaschéma XML ,-�0���#���:����������������������������5�-����������.)������������������)��!�

��������������������������5�������.����-���������.��9=*4������������5�����������

�����.0���R�#�!� ����� �������� ��,� �*E��-���� ��� ������������ �� ������� ��� ��������

9��������.)����.�����������������)������������)���!�����:���-������,� �R�#��

-��-��5������������������.)�����9=*�4���������,� ��)������-����������������A����

���R,9�!�����������)�-������������������������������/��������������9��4�+���!���

��������� ���A����� ���� ��� �01����� ���������������)������ ����0���.�-��� �#���������

&4'�4�

����� ������� #������������ �� �)���� ������� ����� :�������� ���������-���� ���������

A�������-���-��������)����.)���9��������������������/-����-�:������-�������5�

������������������������)��4�

Page 46: Représentation de schémas de bases de données hétérogènes ...

� �F

����1����'����������Q�����,� �*E����R,9���������:�������!� ����������)�.��1��

��������������#�����=D<*�����������9=*�����)�-�����:�������4�

� ����

� � �����-.�������)-0���������������)������-����:���������.)������������������)��5�

��#���N�

��� �����1��������������1����/��0�����������������3��=U�4�

���")��-)�����������������������������������4�

���$���������������)������������������������/-����-�:�����������4��

,#���� �������� ���-�)�������� �� ����� �/��0�!� #��� ��� ��1���.��-��1������ �#���

�1����&��������������)�1)�)���������������������4������

5��$'&��� ������������������)��4!0)���)����� ������ %��/

Réponse= {nom_table}

Requête= nom_table ?

Extracteur

DOM - Création d’un nœud de type Element qui

porte le nom xsd :complexType. - Attachement à cet élément d’un attribut

portant le nom « name » et qui prend comme valeur le nom de la table extraite précédé par le mot clés table.

- Liaison du nœud de cet élément

(<xsd :compleType>) à l’élément root du schéma XML (qui est toujours <xsd :schema>

JAXP Tant que {nom_table} n’est pas vide faire Transformation et écriture de l élément courant avec son attribut dans le fichier XSD.

La table système qui contient la liste de toutes les tables (système+utilisateurs)

Résultat= <xsd :complexType name= " tablenom_table">�

Page 47: Représentation de schémas de bases de données hétérogènes ...

� �B

Ext r act eur { Debut Choi si r _sgbd ; Choi si r _db ; Et abl i r _connect i on_db ; Si db ∃ al or s { Tq t r i gger ∃ f ai r e { pour chaque t r i gger t r ouvé f ai r e { ext r ai r e_nom_t r i gger ; ext r ai r e- event _t r i gger ; ext r ai r e_code_t r i gger ; } ecr i r e_f i chi er _xsd; } / / ext r act i on t er mi née des t r i gger s Tq pr ocedur e ∃ f ai r e { pour chaque pr ocedur e t r ouvée f ai r e { ext r ai r e_nom_pr ocedur e ; ext r ai r e_cor ps_pr ocedur e ; } ecr i r e_f i chi er _xsd ; } / / ext r act i on t er mi née des pr ocedur es st ockées Tq vue ∃ f ai r e { pour chaque vue t r ouvée f ai r e { ext r ai r e_nom_vue ; ext r ai r e_def i ni t i on_vue ; } ecr i r e_f i chi er _xsd ; } / / ext r act i on t er mi née des vues Tq t abl e ∃ f ai r e { pour chaque t abl e t r ouvée f ai r e { ext r ai r e_nom_t abl e ; ext r ai r e_at t r i but es ; ext r ai r e_t ype_at t r i but es ; } ecr i r e_f i chi er _xsd ; } / / ext r act i on t er mi née des t abl es / / déf i ni t i on du compl exType de l a base pour chaque t abl e de l a base f ai r e { ext r ai r e_cl e_pr i mai r e ; si cl e_et r anger e ∃ al or s ext r ai r e_cl e_et r anger e ; ecr i r e_f i chi er _xsd ; }

} / / f i n s i si non al l er au debut

Fi n } / / f i n Ext r act eur

5��$+&���-������"�����4�� ���������"� ��� @�/

Page 48: Représentation de schémas de bases de données hétérogènes ...

� �C

4.4 Implémentation �

,��������!� ����� -�����/-� ��� ��-���� ��:����� ��� ��.)���� ��� ����� �� ����)��

.)�)��10������/-���������(��A�4�������#��1������)�������-�����/-�-�������������

������A�!�9�������#�����������*,�4�*�����������1���.��������#�����������-����

����/-���������������)�!�������������������8���������8���1)�)������������--�����

����/-���������������)�4�

����� ��1���.�� ��:�������� -���0�� 5� ��)������ �� ������ ����� ��� ��.��� ������� ���

��������:������W�4:���X��-�����������������������������9=*4��������1���.����

-����������-���������������������������������9����������������)�)����4� �������

��)������� �������� ��� �����.0���� R�#�� �*������� E�A��� ���)�������� ���

����������� �� �/-�������)��9����������.��������-��� �� �/-�������)��9=*�

�$1�'����-�������������-���������.)���9���������������A�4��������)���������A��

#��-���������������������������������������)�������������������������������A��

9��4�

4.4.1 Amélioration des résultats 4.4.1.1 Extraction des informations des BD hétérogènes ��������������������)�������1)�-��������:�������!��������1���.����:����������

��.)�����������!�����;5;��������������4�,����������-������:�����������������)����

��� �����������������������������0�4�*�����������-������)���������:�������������

����)�������<*����;�3���������������������:��-�)������������������)�4���

4.4.1.2 Gestion des schémas de bases de données

cl ass DomDocument pr oper t i es : ver si on encodi ng st andal one t ype met hods : r oot ( ) chi l dr en( ) add_r oot ( $node) dt d dumpmem( )

c l ass DomNode pr oper t i es : name cont ent t ype met hods : l ast chi l d( ) chi l dr en( ) par ent ( ) new_chi l d( $name, $cont ent ) get at t r ( $name) set at t r ( $name, $val ue) at t r i but es( )

������ �����(�

������������&�'������ �����(����������

� ������������&�'

5��$,&���� � ��������������������A������ %�%����"#*���(���B � /

Page 49: Représentation de schémas de bases de données hétérogènes ...

� ��

���1)�)����������)����.)����-���3����������������:����4���-�������������-����5�

����)1��������������#�������������)�����������)�)�������������������)��:�������

�������������/��0��4��������� ���5� �����)�������������#�����.��9=*�����������

�)-�������������1����F�4�

��������������������-����-�)���)�-����������1���.��5���.���������!������-����5�

��)#������������.)������������������)���)A5���)1�)����������)�)���������������

����)�4�������-)�����������������5�A���������.��9=*�:�����������������)-��������

������1����F4�4�������)�����)#������������.)��������1���)��-����������2�1��������

��� ��.��������������4���������-������1����� ��� ��������)#��������������#��

�#�����1���������.)�����<*4�

Nouvelle BD

Extraction du métaschéma XML

Nouveau métaschéma XML

Détection des changements

Nouveau métaschéma XML

stockage Modification métaschéma

XML

BD

oui

non

5��$*&����>�� ��������� ��"� �&�'/

Page 50: Représentation de schémas de bases de données hétérogènes ...

� �%

4.5 Conclusion ����� �#���� �����)� ����� ���0�� ���J� ��-�� �� ����!� ��� 1������ �1��� �� �����

�-�)�������!�-���� �� �)#��--���� �� ����� �/��0�4�U������-����� ������ ����� 5�

��)������-������,� ��R�#�*E���-)��������)�)�����������9=*�!���������5��)#��--��

�)#�����������.)���������������#���-��-���4�

Page 51: Représentation de schémas de bases de données hétérogènes ...

� F

��

��

��

��

��

��

��

��

������������ ��������

##������((��������������������������������--�������

*&$� #���(�����

*&'� :�������-���

Page 52: Représentation de schémas de bases de données hétérogènes ...

� F�

5.1 Conclusion *�������)���!�������#���������)����-����)������������)1�������������������)��

.)�)��10��4� ���� .)�)��1)�)�)� ��� ��������� ��� �6�.� ���-�:4� ����� -�������� ���

�6�.� ��� ��� ���-���� -�#��� ��������� )#��� �� ��� #����� ����� �� ����� ��

���#�����--����������--�������M �!��--��������-)�����5���������!���4��-�������

������-������#�)4���

����A�������� ���#�������� �-�)�����������)����������������)��.)�)��10��������

��������)����.)����9��4���������!���:�)��-��������)������5���#���N�

• ")��-)�����������.)�����������������)�����=D<*4�

• ���-��1�����������������1���9��4�

�����!� �� ����� �)���������)�)������-������ ��)1����������������������)�4������

�--���.� ��� 1)�)���!� ��� -���� �� ���-�� ��)�.��1� �� ����)�� �� ���)������)�� ���

���#������01���9�����������-��-��#��������������)�4�

������.�:��������1�1��9��!�9=*���)�)���-�����A����)���������-�)�)������.�-����

�7�������#��������1�)�����#����1��������--����������������.���!������������������

���.������������)�4�

���������)����������������/��0�!������������������)���)��5���:�-����4�+��-����

��!� ����� �#���� �������)� �� )���)� ��1������� ��� ������1��� �/��0��� ��� ���)�����

=D<*!� ��� ����� �:� �����.)�)��10��� ���� �#��� �� ��� ����-���� �� �� ��� ���������!� ����

��:����� ��� ��������� ��� ����� �� ����)�� 5� ��)1�)4� ����� ���� ����� �#���� �������)�

��������������3���1)�)����!����#���������1)�����������1��4�

*���������:0�� ��-�����-�0�� ��:�������������.)���!����)��-��� �����������������

���-������-�������1)�)����������)����.)���4�,����)1���!��������������������)������

����01�������������������-�)���)����������.�-���&����-�)�����������!���)1������

������������������-��1���������*E����R,9������������.0���R�#�����������������

����������������.)����.��������������9��4�

�� #�� �� ��� ��� ����� �/��0�!� ����� ��� ����� ������!� �)-���� ��:�-�)����-������ �� ����

��������� �� ��� ����� �O���0�� 5� ��� ���#��� ��������� �� ����)�!� ����� �� 1������� ���

�)����������������)�4�

5.2 Perspectives ���-��-��#����#����-��������#��������5���/������N�

��*�� :�������-��������3��� �--���)�!� ��������� �� �� ��� ������� ��)#�������

�����.)������������������)���)A5���)1�)����������)�)�����4�������-)�����������

��� ��� 5� A���� ��� �)����.)��� 9��� �� ��� ����2�1� �� ������ ��� �����������

�--���)��5���������4�

��+���������� ��� �����-�������� ���� ��� �)����.)���� 1)�)�)�!� 5� ����� �� ���

����-������������0��-�����������)��������01�����-����1�������)����.)���

Page 53: Représentation de schémas de bases de données hétérogènes ...

� F'

5� ��� ����!� ����������� ���� ��� ������������ ����� ������14� �-�����!�

��)��������������� ���������-���3�����������������#������� ����������������

������)�����:-����������)����������������)�������������;����������4�

+����!�������#��:��������5��)��������������A������������������������������)����.)���!�

-��� ��� 1)�)������ ��;���������� ��� �����-�������� ���� �)����.)���!� -��� ���

��������� :-��)�� �� 9=�� -�������� �� �����#�� -���� ��)���� ��� ���)�����

�-�)������������������-�����������)�)������������������)1���������������0��-������

��������4�

��

Page 54: Représentation de schémas de bases de données hétérogènes ...

� F&

Bibliographies �

H,�*%�I��4�,������4��4�� ����� ������0��� �����"�)��"�� ���� ��� ���� �� � % ��

�"����" ������� �����������!� *������� ���������/!� �-������� ��� ���-���� ����� =>���

������������������.����1/!��?;�E�F��������!�=>�J�����4� ���� ������������))����������������������""������))��������44���� ��������������""�� ����������))��������::)) ������������������%% ��������������������

������ ������������������//'' ����""����������������%% �������������� �� ��00���������� �� ����))���� �������������������������� ��������������������������

))))������ �������������������� ����������00����##��������������������������%% ���������������������������� ������������������//

H<E�%�I� �4� <��A���!� D4� $�����!� �4� �)�����4 ����� ���� �� �����)�� �� ����� ���� ��

% �����������!�,�������90�

����1�0�� �$E"= *!�,:���-��#����%%�4� ���� ������������ %%�������� ���� ))���������������� �������������� �������� ���� ����""�� ��// ''�� ))))������""�� %%�������� ������ ������ �� ������������������������

���������� %% ���� ���� ����������))�� :: )) �������� ���� ��"" **���� ����""�� �� ���� ������������ ���� ������ ������""����**������ ����������������������**��������

���������� �������������� ��44 ))))������""������ ������**������**����))����))����������������������������������������##���������������������� ��������**����//�� ����

������ ���� ������00����##���������� %% �������������� ����""����������������:: ������������������ ��44������������������������������ �� ����##������������������������������

����))���������� ���������� ��������������""�� ����//

H< " �I���4K4�<���!�,4����.����4�&�'��"�� 6 ��3$� � �0)��!�M &��"����������!�

'����' �!�.��-N((>>>4>&�4��1(�"(9��=�.��; (4�''��������������������������������������������������..55 //&&��''����""���� ��66 ����33$$�� �� ��00))������������������������������������ ������������00))��������

��������������//

H<E� I��S4�<�����!��4�?)��4��)������)�!�?�������������)� ����*���!���.���

D�����1��f&F;&B�P����1�0��D�����1�' !��������!����' 4� ���� ������������ ))������������ ���� ������������ �� ������������ ���� ���� �������������� ������ ���������� �������������� ������ �� �������������� ����������

�������� ������ ���������� ������������::���������� ))������ ���� ��88���� ����������%%���� ���� ���� �������������� ���� ))������ �������������� ������

����))���������� ������������&&��''//�������� CC����������%%��������������������))���������� ��������������**������������������������������??����//''������%%������

������ ���� ������ ;;���� ������������ ))�� ��������**������==�� �������� �� �������� ������ �������� )) �� ������ �������� ������ ���� ����������

������ %%���� ��������//

��

H�,= &I��������4�.��-N((������4:����4��1 ''������������������������������))����DD���� ��������//

H�?, &I� $4� �.�.����4� &�'$ ��� ��"��� ����������� �� ��)����� ���� ��4������ ��

����������������!�=�--������������*+,� =�!���+,�P� �=���!�' &4�����))))������ ���� ���������� ))����))���� �� ����-- ������������ �������� ������������������**���� ���� !!����""����**���� �� ���� ������������$$ ;; AA���������� ����

����))���������� �������� �� ���� ������ ��00����##������ ���������������� ��==�� **���� ))������������ ���� ���� ���� ���� &&��'' ���������� ������ ����""������

���������������������� ���� ����))���������� �������� ����44������������ ���� ������������ ���������������������� �������� **���� ������ ���������� ������������ ���� ���� ����

������������::&&��''������������������&&��''��������**����&&��''��&&66--!!EE��&&FF������00��������44������

H�?, �I�D4��.�J����4�&�'��"�� .5 !�.��-N((>>>4>&4��1(�"(:����.��; (!����' �4�� ''��������������������������������������������������..55 //'' ������������ ���� ��������&&��''����""���� //

H*+� �I��4�*����:4�6� ����� ������ ����������"� �����)����������"� &�'!�

$�����)����#�����������;���������-�:!�������<�1��4� �� ���������������� ))����))������ ���� ))�� �� ���� ���� ������������ �������� �������� ����""�� ����������))�������� ���� ���� ����""�� &&��''��

����))���������� ���� ��������!!��// ''�� ))�� �� ���� ���� ������������ �������� ������))�������� �������� �� ))����//66������ ��"" **���� �� ))���� ���� ����������

))����������������%%DD����������))��������������������))����))�������������� ��������������))������������ ��������00)) ������������//

��

H$,� �I��*4�4�$�����4�&�'��"�� 6 ��G$6�����!�M &��"����������!� '����' �!�

.��-N((>>>4>&�4��1(�"(9��=�.��; (4�''��������������������������������������������������..55 //&&��''����""���� ��66 ����GG$$66��������������������������������������//

Page 55: Représentation de schémas de bases de données hétérogènes ...

� F�

HRE� �I�$4�R������!��4�������!�=4�=������=-����-���4������ ������@���

������)� �����!��<*��������������<������*���)��4� ������������������������������������������%% ������������������������������������������������ ))����������������**���� %%��������**������**��������������������

����%% ������))������������������������""��������������������%% ����������������������//

HR,K &I�R�#�!�.��-N((A�#�4���4����� ''������������������������������DD �� ������������������00��������//

H�,� &I��������!�.��-N((>>>4��������4����""%%������ )) ����������))�� ������������������ ���� �������� ����))������������ ���� ���������� ))�� ����**����))������ ������ �� ���� ������..��%% ��������**���� ����

�� ���� ������ EE!!��''�� &&EE!!��''�� &&��''�� &&''''�� 66EE66�� ������// '' ���������������� ))����))������ ���� ))))�������������� ���� ����##�� ������))���� ����

���������� ����))�������� ���� �������������� �� ����))���� ������������������������..��%%//

H�,� &I��4�������!��4�������4� ����� ������% �����������"����#����� &�'!�

+D��' &!�,����������������)�!��/���' &4� ���� �������������� ))������������ ������ ))))������""�� ��������**���� ))������ �������� ������ %% ������ ���� ������������ ""��������##������ ���� &&��''//

''�� ����""����������������))����))������������))��������������))����������������������))����������������������������������""�� ��������%% ����������������������

)) ������������ ����""�� ������������������ �� ������ ������������%% ����������������������)) ���� ������������������������))������ ����������

������������""��������&&��''//

��

H�,� 'I��4������!��4"/����!�R4��.����4����*���*��� �)������.�%�� ���*��!�,����

�����:0���������������������D�" &!�' '4� �������� ������ ���������� ������������**������ ������ ������������ ))��%%���� ���� 33GGGG33�� ���� ������ ���� ����DD���� ������ ���� ..��%% ���� ������**���� ���� ������

�� ���� �������� ���������� ������������ ���� �� ���������� ??����// -- �� ������ ���� %%�������� ���� ))����%%��##���� �������������� �������� ���� ��������������

���������������� ����������/

H� � �I� =4�����!� R4� *������!� E4� <�����b�4� .�% � � �������� ��� ������ ���� � �

H ��"�����!� ����������� >��2�.�-� ��� �������� ����� ���� �������� �1���1�

��**+ ��!��/��!�R�����' �4� ����������������������-- �������� ��������::������))��%%������ ��������//''��%%��������������������������������������������������������������##����

����������))������������������%%DD����������))����44��**���������� ��������������������������������������������������������������������))������������������������..��%%

**�������������������������� ��������::���������������� ������������������))11������������������������ ����**��������������������44������������//

H�E� 'I�����������������4�&�'�����% �����������$����������� �!��f%F�����

��#����' '�!�--��B;''4� ���������������������������� ������������������������%% ������������������������ ����������&&��''���������������� ������������������������������������������

��������������������������11���������������������������������� ���������������������������������� ���������������������������� ����**������������������������ ���������� ������

��������������������������>>@@��//

�H��� �I�<4�������.��4�B � ��&�'!�+������E�"��/!������' �4�

--))��##�� ������ ������������������������ �� ))������ :: &&��''�� ������ �������� ���� ������������ �������� ���� **�������� ))�������� ���������� BB �� ��������

�������� II������))�������� ����))��������������������������&&��''//

H�,"%BI� �4� �����!� =4� =-����-���4� ����� ���� �� % ��� �� ������$ 6 ��� � ���

)��%�#��� �� ��� ))���"��!� +���� -��/��.���� �)�)���� �� �������!� �1)��� ���

�/��0����������������K��4�!��f&!��%%B4� ���� ������������ �������������� ������ ������������ ������%% ���� ������ ))����%%��##������ �������������� ���� ������ ))))������""���� **���� ������ �� ))����))������

))�������� ������������������������ ������������%% ����������������������""��������##������//

H�?E &I��R4��.�������4��"� �&�'!�D���-�+/������' &4� �� ���������������� ))����))������ ���� �������� ����""������JJ���� ������JJ ������))������ ���� ��11���� �������������� �������� ������������������ ������������&&��''

����""�� //--))��##�� ����������44))����**������))���������������������������������������������������������������������� ���� ������������..55 )) ������ ))))������::������������������������������))���������������� ))����CC������������������ %%���� ��������))��������**����������������������������������������%% ����//

Page 56: Représentation de schémas de bases de données hétérogènes ...

� FF

H�?E �I� =4� �.��-���!� *4� <�.!� �4� �����/!� �4� ������.�4� &�' ��"�� 6 �� ,$

����������L�M &��"����������!� '����' �!�.��-N((>>>4>&�4��1(�"(:����.��;�(4�''��������������������������������������������������..55 //&&��''����""���� ��66 ����,,$$�������������������������������������������� ������ ��44

����������������������//

HK * �I���4�K���4�!����� ��(���B�(�!��/��g-����:��4���� �� ������������ �� ��������������))��������%%DD�������������� ))����CC��������--66����((������ BB��((������������ �� ������ ���������������� ����������������

�� ����))�������� ������ ������""��������&&��''// ���� ))����))������ ���������������������� �������� ������ ������ :: ))����))���� ����&&��'' ���� �������������� ����

�� ���� ����BB--��--����44����������������������������������������//

HK+" 'I����A��K+"=E4�� ))����� ���������������*��3GG3!��.0�� �" ,�&,!�' '� �������������������������������������������������������������� ))))���������� �������������������������� ��������))����DD����>>����((//>>����((**��������������

������������������������))����DD��������??��((��**�� ���� %%�������� ����������"" ))���������� ���������� ��������))����������������������//

HK," 'I�D4�K��1���=����!�,4�*����4���� ������������$�����������)��%�#����������!�

-����������4�#��� ������� ���� �����>�?�5�3GG3/ ���� ������������ �� ���� ���� %%���� �� ������ ��"" �������������� �������������������� )) �� �� ������ �������� ���� ������������ ������������%%������ ����

""��������##������//''���� ������""����**������ ��44������ �������� ))))���������� �� ��������������**������JJ������������##������ ����������������%%����##������������

))��������������// ������������ ������ �������������������� ���� ������""������""�� ���� ������������ ���� ))����%%��##������ �������������� ���� �� ������ �������� ����

������������������������������������//

HM � �I��h4�M ������i���4�&�'�����% �����������!�+������+/�����!�' �4� ��������������������**��������������������������������&&��''�� ���������������� ���������� ��������������������������������������������������

������ ��������������������//������������������������))������""������������������������������������������������������������������������������ ����������))������������������%% ����

���������������������� �������������������������� ����������))��������&&��''//�������� ���������������� ������ ������������""�������������� ����������������������������

����������������������44//

H9S� &I��9/�0�4�.��-N((>>>4:/��4����� ''������������������������������))����DD����&&00��##����//

Page 57: Représentation de schémas de bases de données hétérogènes ...

� FB

GLOSSAIRE �

,��� �� ��� :-����� ����� 1������!� ����� �� �)���-������ �� �� ��:� 1����� �.0��!� ��

-�������������1���:�9����������������.����������������������!���������������

�����������)�!��7��������#�)1������������������������)��������4�

�G.1. XML ���Attribut XML [Attribute]

��� ��������� 9��� -������� �� �)���� ��� ������)������� ����� )�)���� -��� ���

���-��� W����(#�����X4����� :�-�!� �� ����� �����0�� ��� ��� ��:�������)�������

�����������������#����������������������!����)�)����Li vr e�-���3���)������9���

�������������<Li vr e t i t r e=" par ol es" aut eur =" pr evet " / >. ���� ����$�����&�'/

Analyseur XML [XML parser]

,� � ����/����� �� �)������� ��� ������ ����� �������� 9��� ���� �� -������ 5�

���--����������������������/���������������������������)������������9��!� Balise [Tag]

��� �����-���� �� �)����� ��� ����)�� ����� ��� ���1�1�� �� �����1�� ���� ���

?���!�9��!�@ ��

CASTOR [Castor] �,=�E"�������-��A��E-�=���������--�1���A�(��������4�� ?������$"��)$KK� ����/�4�� %/���

�DOM [Document Object Model]

���������-)�����������M &��-����-��-�������,� ����-���������)���!���

-���������������-���������������9��4���-���-����Q����*E��������������

����-�)���������)�����������������9������������������������������A�����

����-������ ������-��������-�������!���.��.������5�A����4�,�-�����������

�-�)�������� ��� ���0��!� *E�� -��-��� �� -�������� �� �������� ���� ����� ��

-��#��� �� �����4� �� ����� ��-��� ��� ����� ��� ��-���� ��� -���� ��)������� ��

*E�4�?������$"��)$KKHHH/H5/���K�(�K

Elément XML [Element] ��� )�)���� 9��� ��� ��� ����� �� ���� ����� �������� 9��4� ��� )�)���� ���

���-��)�N�

;�*������������)��������������������������������#�����!�

;�*�����)�!�

;�*�������������4�

�GEMO [Integration of data and knowledge distributed over the Web]

D+�E� ������� �� ����)1������ �� ����)�� �� �� ������������ ������)�� ���� ��

M �4����� �����" )����3/5

Page 58: Représentation de schémas de bases de données hétérogènes ...

� FC

Interopérabilité [Interoperability] ������-)�����)��-�������-������)���-��#��������������#��������#���

�������W��/��0�����)��-)������X���-��#����������������������!�� JAXP [Java Api for XML Parsing]

R,9��������,� ����8��-������������/����-��������������������������9���

�� �������� *E�!� =,9� �� 9=��4� R,9�� -���� 5� ��� �--�������� ������/��� ��

�����������������������9��4����� ����$ � �0����&�'/

�Métadonnées [metadata]

����)������)��������������)����������)�!����������)������)��#������������

����������������.���-����1��������������4���������������)���������1��

��������������������������������)�������-���������������������-�����4�

�Métaschéma [metaschema]

����)����.)���9�����������.)���-���������)��������������)����������A����

��� ��.)��� �� ��� ���� �� ����)�4� *���� �� �������� ��� �)����.)���9��� ��� ���

��.��9=*��)�������������-)����������--�1��������.)���������������)�4��

Namespaces [espaces de noms] ��� ����-���� -������� �� ��)�� ��� ����� ������� -���� ��� )�)����� ���

���-����� ��� ��������9��4� ����� ���)�)����� �--�������� 5� ��� ����-��� �����

-�)�:)��-��� ���� �������� ��#� ��� �1�� ��:;-����4� �� �/��0��-���� �� �#��

����� ���1�b�)� �� ����������� ��� ��������� �����4� �� �����-���� 5� ��� ������ ��

-�����1�������1�1������)����A��4�?������$"��)$KKHHH/H5/���K!?K?� �4���� ���K

SAX [Simple Api for XML]

��,� � =,9� -��-��� ��� ������ ���������)� �� �)������� -���� ���-���� ���

��������9��4�+������������������-���-������#����)#)�����4�?������$"��)$KKHHH/� 4)��D���/���K����������������/

���� ����$�(�/

�Schémas XML [XML schemas]

����-)��������9���=�.������������#����)������������������#������M &��

�������)���� ���#����������9����� �����-�������*�*4�+������)����!� ���

�-)��������9�����.)�������M &�������-����������-�����N�

;�9�����.��������� �N������� �����������!�

;�9�����.�����������N�=��������������������������:�����������!�

;�9�����.���������'�N�*����/-�������������������������/-��������)��4�

���� ����� ) ���� ���4�/

��W3C [World Wide Web Consortium]

E�1�������-��-���������������������������.����1�!�-��������������1�1��

���M �4���������������M &�����.��-N((>>>4M &4��1�

��

Page 59: Représentation de schémas de bases de données hétérogènes ...

� F�

Web sémantique [Semantic Web] �� M �� �)������� ��� ��� ���#��� ������������� �#���� -������ 5� ��� �1����

��1���� ������ ��������� ���)����� �/-�� ������������ ����� ���� ���0�� ��:�

��������� ���� �� M �� �������� ������������ �� ��#���4� *��)���� ���1�1�� ��

�#��� �� ���-�:�)� ��������� �����-��-��)�� ���� ����:� :-����!� ������� ��

������������������������������������4�

XSD [XML Schemas Definition]

9=*���������1�1����9���=�.���*�����4�:�������������:�������������.���

9���=�.��4������ ����$��"� �&�'/

XSL [eXtensible Stylesheet Language]

�� ���1�1� 9=�� -���� �� -�)����� #�������� ��� )�)����� �)���� ����� ���

��������9��������������5�9�������)����-���Q������)��������������)�4� ��

���#������:�-�����-���-���!�����������1�N��--����������01�������/������

��� )�)����� 9��4� +�� ��� ��������������N� ����������� ����� ������1� 9��� �� ���

�����1�?���������������������1�9��4�?������$"��)$KKHHH/H5/���K!?K4��K

Xylème [Xyleme] 9/�0�� ��� ��� ������ �� ��.��.� -���� �)���� ��)� -��� �� ���� �� ��� #�� 5�

��������� ��� ���-Q�� �� ����)�� �� �������� ��� ��������� 9��� ��� M �4�

9/�0�� ���--�� ���� ��./-��.0�� ���9��� �#����� �� ���1�1� �� ����-���� ���

����)�����M ��������4����� �����" )����3/L

� �

G.2. Bases de données �Bases de données fédérées [federated databases]

�������������)���)�)�)�����������������)���)-����.)�)��10������������

����)���)�)�)�!��)����������������.���������-�����������������������

������)������������������)�4�

�Bases de données hétérogènes [heterogeneous databases]

�������������������)��.)�)��10�����-�����������-)���#�����#���������

����0���������4�

�Classe [class]

E�� �--��� ������ ��� ��������� ����� ����� ��A�!� ����;5;��� ��� ����)�� �����

�1���-!� ��� ������� ����� ��� ��-���� ��������� ���� ��� ����)�4� ��� ������ ���

���-��)�����:�-�����N�

;� ��� ��������!� -������ �--�)�� ����)�� �����!� �� ���1�� ��� ����)�� �-�)�����������

��)����������A�4�

;� ��� �)�.���!� -������ �--�)�� ��������� �����!� �� ���1�� ��� �-)�������

�--���������:���A��4����� ����$(%D��/

Page 60: Représentation de schémas de bases de données hétérogènes ...

� F%

Clé primaire [primary key] �.�������������������������)�-����4�+�����!������)��-�������#���3������

�.��-�� ��������� ��� #����� ����4� +��� A��� �� �Q�� ������������

����1������� ��1��4������)�� ������� ������������ ���-���������!���������

�����)1�������)�������-����1�����������)1����)��������)�4����

�Clé étrangère [foreign key]

�����)��)����10�������������)��-��������������������)���4�+����-���������

��)�� ��� �������� ���� ���)����� �����4� *���� ��� ��)� )����10�� �)�)���� ��� ��)�

-������������������������������������������4����� ����$��)��� ���/

Colonne [Column]

��� �������� ����� ���� �� ����)�� �����-������ :������� ��:� ��������� ���

���0�� ��1��4��.�������������������������-�)���)�-��������������������

���0��-./���4�����/-�������)����������)�5��.�������������))4�

Index [index]

*���� ��� ����� �� ����)�� ����������!� ��� ��:� ���)�0���� �����0�� ��:�

����������4������)���������� ��:����������������������1���-�������������

1������� �� ��� �� -���� ��-�� -�����!� ��� -�:� �� ����������� ����� �-��� �����

��--�)�����4��.)�������!��.������)�)����10���#����3��������)�5������:4�

���� ����$���� ��#��/

�NULL [une valeur à part]

*���� ��� ����� �� ����)�� �� :��� ��� #������ -������0�� ��� ���--��� ����4�

����� �1��� W���)����)�X4� ,������!� ���� �� �1��� -��� W�#��X!� �����

���-�0����� ���)���4� ��� #����� ����!� ���� -��� �� �/-4� +��� �� -��� -��� 3���

�-���)�� ����� ��� ������ �-)������ ���.)������ -����� ��� #����� ���

��)����)4����-)��������������������)���������)����)4�+������������!������

������)�)��������������-������������������)�����-)������4� Objet [object]

�����A�� ��� ��� ���)���.)���� ������������������)����������� ���#������� ����

�������)�4������A�����������)��)�-��������������!�����������#�����������2����

��� ����������� ��)���� �� ����A�4� ��� �)�.���� ������)������ ���� ���-�������

������� ��� �������4� ������)� ��� -���� �� �� ����1��� ��� ������ ��A��!�

��)-��������������)���4�

�Procédure stockée [stored procedure]

*���� ��� ���� �� ����)�� ���������!� ��� -���)����� ����2)�� -�������

�����-�������������������)���1������������������������-�)����-�)�����4����

-���)����� ����2)�� ����� ������ ��:� ��11��� �� ���)���� �������� -��� �� ����

������� -������ 3��� :)���)�� 5� ��� ������ ����� -��1������� -���Q��

���������������!����)-����5�������������������������)�!�-���:�-��5����

������������������������4����� ����$�������/

Requête [query]

E�� -��� �)���� ��� ���3�!� -��� ��� ������� -��)� 5� ��� �/��0�� �������������

�������)����5��������4�

Page 61: Représentation de schémas de bases de données hétérogènes ...

� B

SQL [Structured Query Language]�=U����� ��� ���1�1� �� ���3��� �� ����� ������)����� ��� �#������ �����������

������������%�B4������1�1�-������-������������������-�:��5��������

�� ����)�� �� �� ��� �����4� *� ��������� ����� �� ����)�� �� ��--�����!� -���

:�-����==U��=�#�!�*<'!�E����!�����1�=U�4�

�Schéma de base de données [Schema of database]

E�1�������� ��� ��������� ����� <*!� -��#����� 1)�)������� �� ��� ���)������� ��

����)�4������������������)����5�����������#��������������Q�)������������

)�)����� �� ����)�� �� �)-����� ��� ���������� -��#���� ���--����� ��/-� ��

����)�!� #������ �)1���(��)1���!� ��4�4� ��� �������� ���� )�)����� �� ����)��

����������)1���������-�����-��������������.)��4�

�Table [table]

��� ������ �-�)������ ��)�)���� ������ ��� ����� �� ����)�� ����������4����

���� �� ����)�� ���������� ��� �������)� ����� ��� ��-������� ������ ����)�� 5�

����2���������������4�������������������)����1��4��.�����1������#�)�

���.��-�����������!��������-���0��������������/-������)�4�

�Trigger [déclencheur]

��� ��11��� ����� ����3�� ������� ��� ���������!� ���)�)���� ����������� ����� ���

�����������������������)�4������11���������)����-��������������������)��5�

��� )#)����� ����� I NSERT� ��� UPDATE4� *���� ��� ��������� �)���!� ��� ��11���

-������� ������� ������������� ��� �-)������!� ���� ����� �� ���������

������������������������������)�4�Voir aussi : contrainte

�UML [Unified Modeling Language]

��))� -��� D���/� <���.� �� R�� "�����1.!� ���� ��� ��� ���1�1� 1��-.��� ��

���)������� ����������� ��� )�)����� �/���:���� -���� ��� -��-���� ��� �/��0���

��1���!�����O�����)�1�������������W���������X��������8��N���������4��������

����������#��!��������-����OE�D4�

�Vue [view]

���#�������������#������������������������������-��#������������������4�

���#�����������������������)����������������������=+�+���-�)���)������

��� ����� #������ -��� �� �/��0�� �� ����� �� ����)�4� ��� #��� -������� ��

��-�����������������=U�4�

Page 62: Représentation de schémas de bases de données hétérogènes ...

� B�

������

��������22�����

�&$� ����� ������

�&'� �������������;���� ��(���������"�������������A�"�B�

� � �&+� "��������� ��(������"��

� � �&,� #���(�����

Page 63: Représentation de schémas de bases de données hétérogènes ...

� B'

A.1 Introduction �

���������������:������-�)�������-������!����)�������-����#����������:�

���0���������)��5���#���*�*�����.)���9��4�������)���#�����-�����������)�������

�� �/-��� �������� �*�*������ ��-����� ����)��--���Z������ ������������ ��������

��� ���������� �� ���������� �� �� ����)�!� �� -������!� ��A�����.�!� ��� 9��� =�.���

����������������-0������������������-.0��9��4�

*���� ��� ��:0�� ��-�!� ����� -�)������� ��� ���� �������� ���#����� ��� �-)�������� 9���

=�.��4��

A.2 Apports sémantiques du langage XML Schema Definition (XSD) �

����A������9=*�������)���������������������������������������������������5����

�3�� ���0�� 5� ��� ���)���� ��� *�*!� ��� �� �)�������� ��� ��� �������� ���� ���

���)����� ���-������� ����� �������4� *���� �� ��� ���!� ����� ��������� ��� -������)��

�������-��������1�1�N�

� Syntaxe XML �� ���� ��� ��� ��.)���� 9��� ����� �� �)���)� )����� �� 9��� �������� -���������� ���

���)�������-����)#�������������.)����9��������*�*4������.)����9����)�������

#�����������������-�����-�������������������:����������9��4�

�Typage de données ,���������--�!� ���*�*������)�������+:�����<��2��������$�����+<�$�4�U�������:�

��.)����9��!��������#�����9���-�����)��������������!������-������)#�����:�

�������������--������1������������/���:4�,�������)�������*�*!������.)�����������

5�-��-�)�����������/-��������)�4�

�Modèles de contenu ��� ���0��� �� ������� ��� *�*� ����� ������ ���� ��� ����� -������� ������� ��

���������� ���������� 5���� ����������)������ �.�:4� ���-�#������������������

J)��!� ��� ��� -������� ���������� ����� )�)���4� *� -���!� ��� )�)����� ����)�� ��� ���

1���-������������� ����� ������4���� ��.)���!������� 5� �:!��������������0������������

-�����)����)����-���������4� �����:������-��������������:�4�+������!����-�#�����#��

5��-)�������������:������������������5����������1���-���)�)����4�

�Extensibilité ��� ������)������� ����� ��� ��� �/-�� �� ����)�� �)�#)�� -��� ����������� -�������� ��

�)��������������������-�:������������������/���)#���������)����������.)���4����

��-���)����)�)�����-���������.)����5�-���������������������������-�����5��)������

��� -����� ����� ��.)��� ����� ��� ����� ��� -�������!� ����� �/-� �� �������� -�������

)1������������������1�������#����������-����1)������������4��

Page 64: Représentation de schémas de bases de données hétérogènes ...

� B&

Autodocumentation ,� ��� ���)���� ��� *�*!� ��� ��.)���� 9��� -�������� �������� ��� )�)���� ����)��

annot at i on�-���� �������� �� ���4�+����� ����)���� ��� ��.)���� �����)����� ��9��!� ��

������ �� ���� ��� ����� �� ��/�� 5� ��� ��.)��� ���������� ������)� �� ��)�� ���

������������5�������4�

�����������#����-�)������������0����-����������.��������������:����0��!�

������#�����-����-�)����������)����4���

DDTTDD

XXMMLL SScchheemmaa DDeessccrr iipptt iioonn

! " � ������� 6� � � > ( % � �� *�� ��� � ? �! ������� � ����6% 4 % @ % 0 � � �� *�������� � ! � �� �� �� �� A� ��! �! �����( � B � B � �� *�����" � � ��! �������! �� �����C� ���� � � � ��� D= D��� �� � � � ��� D� D� E ! � � � �� ���� ���F� ���� � � � ��� D� D��� �� � � � ��� D� D� - ������ ���� ���G� ���� � � � ��� D= D��� �� � � � ��� D� �� � � � D� E ! � � � ���� ���� ���� ���� � � ��� ���! ���� ���� ��� ���� � � � ��� DHI D��� �� � � � ��� DFI D� �����) � ����JHI K�FI L�������������� ���� �� �*� ��� ��� � ��������������9 ��! ���� ��� ���:�������������� ��� �� �*M ��� �� � ��������������9�� ������� �:�������������� ��� �� �*� ���� � ���� ! ��) ! �9�JH� N O K�� N P L�:�������������� ��� �� * � ��� � ���� ! ��) ! �9 � ��� � �Q � �:�������������� ��� �� �*����� � ���� ! ��) ! �9 �� ��:�������������� ��� �� �*� ��$ ������� �� � �������������9- $ �:�������������� ��� �� *������� �� �� ���� ������� ��������� �� ��

#$������

������������� ��� �� *������� �� ���� ������� ��������� ��6B � � 4 �R � � �� �*� ����� � ��� � ! � �� �� �� �� A� ��� ����� � �� � B � B � �� �*�����" � � ��! �������� ������0 @ � � S % 0 � 0 @ � � S % 0 � 0 ��T @ 4 �) � �� ��0 @ � � S % 0 R � 0 @ � � S % 0 R � ( �� ���� ���� ���T @ 4 �) � �� ��9) � �� �8 � �U�) � �� �8 N �U�V �U�) � �� �8 0 :� �� *� �� ��

�� *��� ���� �� ��4 ����� �� ) � ��� ��� � ���� ���K� �A� ����� � �� ��� ��� ������ ���, � ���A� ��� ���) � ��� �������! ����

�� � �� � � ������� � ��� ��� ��, � ���� $ % & � �� $ % & � % ������� �� ������ �� �������� �� ��� ����� � �����% 0 � �� > � % 0 � �� > � $ ! �! ���� ������ ��� ��! ���� ��� ���������������

%����&����

W $ % X - �$ % � � � ��� D��, � ��� D� 4 A� ����� � �� ���� � Q � ���5 ������! ������/6H�H�������� � �� ������ ����H�H�� /6H�H�������� � �� ������ ����H�H��

�� �* � � ����� �� ��' ����� �� �����

�A��������� �� T � �*� �� �� �� ��

� ! � �� �� �� �� A� ��� ������ ����

Page 65: Représentation de schémas de bases de données hétérogènes ...

� B�

A.3 Spécification du langage XSD �

����-��������)����5� ����-)��������9���=�.����������������M &�!� �����-����� ���

���-�����N� �������������-�)������� ��� �.0�����)����� ��.)��������:������� �)�)�����

��-��#��������������������������������� �� ������4�

�� ��� ���������!� ����-�#���3���)�����)�� 5�-����� ��� �/-��������)��������)��

-���� �)���� ��� )�)���!� ��� �������� ��� ��� ��������� �� #�������� ����� �/-� ��

�������4�

�� ��� �/-�� �� ����)�!� 5� ����1�� ��� ���-������� -���� ���-�:�� ����� ��.)��!�

��������������������������������9���=�.��4�

�A.3.1 Structure �

ÉÉlléémmeenntt DDééff iinnii tt iioonn EExxeemmppllee

��� ��� �

- �� ! �! ����� schema� � ����� �� �� ���A � ) ���� ��� A� ��� ! �! ����� �� ! �� � �����! � Y �� � � � ������� �� � ! ������ �� ��� � �� �� ���� A� �� � � ����� T @ 4 �� ��� ��� � ��� � ��� ! ������ �� ���� ! �� �������� �� �� ���� ����� ��! �! ������� � �����

�������� ��� �xmlns:xsd="http://www.w3.org/2001/XMLSchema.xsd" ������ ���*��; ; ; ������� ���� ��� ������������������� ��� ��

����� ��

( ������ ������! �������� ��! �! �����T @ 4 � � ���� ��� ! ������ �� �� �� ! �� �� 4 A� ����� � �� name� ��el ement �� ����������� �� ���A! �! ������

���������� ���� ��� ��������8 ���� ����������������������������������� ��� *�����" � �����

� ����& � ���������� �� ����! ������� � �� � ����� � �� T @ 4 � � ���� ��� ! ������ �� �� �� ! �� �� ��� � ������� � ��� ����� � ��name�, � ��� �������� �� ���A� ����� � ���

������ ����& � ����� ��� �� ����� � �8 ���� �������������������������������� ��� *�����" ��������������������������� ��� ���, � ��� � ���

������ ��

! ������� ������� �� ��! ���� �������� � �� ���! �! ������T @ 4 ����������� ��5 ������� �� ��, � �� � ������� ! �! ������ �� �) � ����*� el ement , r edef i ne, schema. �

����������� ������������������������������������� ��� ��������8 �����8 ���� ��� ������

� �

��� ������� �� ��! � �����K� � ��� � �� ����� �� ��! ��� � ������K� � �� Y � ��� ���� ��� ! �! ������ �) � ��� � ��� �� Z���� � ��� � ��� � � �� �� � � � � �� ��� � ���� �� � ���, � ��� �, � ���4 3! �! �����al l ������� �� 5 ���� ��� �� �� , � �� � ��� ���� ! �! �������� �) � ����*�compl exType, gr oup. �

������ ����� � � � ��� �= � ��� �� � � � ��� �� ���������/�� *���������� ��� ��������8 � ��������������������������������������� ��� *����" ������������/�� *���������� ��� ��������8 N �������������������������������������� ��� *����" ������������� ��

�� �����

4 3! �! ����� choi ce� �� � ��� � ��� ���� � �� ��� ��� ������������ ���� ��� ! �! ������� ���� ���� ��������� �� 5 ���� ��� �� �� , � �� � ��� ���� ! �! �������� �) � ���� *� choi ce, compl exType, gr oup, sequence. �

������� ������������/�� *������������ ��������8 � ��8 � � ���������/�� *������������ ��������8 � ��8 N � ����������� ������

��� � �� ���

! �����K� � ��� � �� ����� �� ��! ��� � ������K�� �� Y � ��� ���� ��� ! �! ������ �) � ��� � ��" � � �������� � ��� �� Z���� � ��� � �� � �����! ! ������ ��� ��� ��� �� 5 ���� ��� �� �� , � �� � ��� ����! �! ������ �� �) � ���� *� choi ce, compl exType, gr oup, sequence. �

�������� � �� ����������/�� *������������ ��������8 � ����������/�� *������������ ��������8 N ����������/�� *������������ ��������8 + ������������� � �� ����

����� ���� �

4 3! �! ����� ext ensi on� �� � ��� 3! ��� ��� �� � ! ������ �� 3� ��! �! ����� � � 3� ��� ����� � ��T @ 4 �Y �� �� � � ���� ����� �� ��! �����! � ���! �� ��������� ��5 ���� ��� �� �� , � �� � ��� ���� ! �! ������ �� �) � ����*�compl exCont ent , s i mpl eCont ent . �

���������� ���� �� � ��� ���) �� � 8 ������������/�� *� ����� � ����� ��� �� ��� ����������������������������������������� ��� *�����" ����������������������������������� ��� ���, � ��� ��������������� ���� ��

����������� � 4 3! �! ����� r est r i ct i on� ������� ���������� ��� ���� ��! ��� ��������� � ��� � ��

���������������� �� � ��� ��� *� �0 �" � ��) �����" �����������/�� *���% �� �� ��) ��) � �� �� �I = � ���

Page 66: Représentation de schémas de bases de données hétérogènes ...

� BF

�������� ��� ���� ��! ��� ��������� � ��� � ��! �! ����� � � � �� � ����� � �� T @ 4 �� ��� ��� ��� �� 5 ������� �� �� , � �� � ��� ���� ! �! ������ �� �) � ���� *�compl exCont ent , s i mpl eCont ent , s i mpl eType. �

������/�� *�� �% �� �� ��) ��) � �� �� �� = = � �������������������� ��

����� ��

� ! ������ � �� ����� �� ��! ��� ������� � � �� ���! �! ������T @ 4 ��4 3! �! ����� si mpl eType� ��� ��� �� 5 ���� ��� �� ��, � �� � ��� ���� ! �! ������ �� �) � ���� *�at t r i but e, el ement , l i st , r edef i ne, r est r i ct i on, schema, uni on�

���������� ���� ��� � �������������/�� *���������� ���� ��� *����" ����������������� ���

�� � ���� ���� �

( ������ �� � ���� �� ��� �� � ) � ��� �� 3� ��! �! ����� � � 3� �� � ����� � �� Y � � ��� ��� ��� � ���� ����! ��4 3! �! ����� enumer at i on� ��� ��� �� 5 ���� ��� �� ��, � �� � ����3! �! �����r est r i ct i on. �

������� � ���� ���� � ) � �� �� � ! ��� � �� ���� ��� ������� � ���� ���� �) � �� �� � �� � � ���� ���������� � ���� ���� �) � �� �� �@ � ��! �� ���������� � ���� ���� �) � �� �� �. �� ) �� ���

� ���� �

4 3! �! ����� pat t er n� ������� �� � �! ��� � ��� # ���� � �� �� � ) � ��� �� 3� ��� ! �! ����� � � 3� ��� ����� � �� T @ 4 � Y � �� ����� 3� ��� �������� ���! " � ��# ���� ��� ��� ��� �� 5 ���� ��� �� �� , � �� � ����3! �! �����r est r i ct i on. �

������ ����� �) � �� �� �9�:F' 9�:F� ���

��� (� �� ��) ��

( ������ �� ! ������ � ��� ) � ��� �� ������ ����� �� ��) ��� � ���3! �! ����� � ��3� ����� � ��T @ 4 ����������� �� 5 ���� ��� �� �� , � �� � ��� �3! �! ������r est r i ct i on. �

�������� (� �� ��) ��) � �� �� �� = = � ���

�� �(� �� ��) ��

( ������ �� ! ������ � ��� ) � ��� �� �� ���� ����� �� ��) ��� � ���3! �! ����� � ��3� ����� � ��T @ 4 ����������� �� 5 ���� ��� �� �� , � �� � ��� �3! �! ������r est r i ct i on . �

������� �(� �� ��) ��) � �� �� �N = = � ���

��� # ��� ��) ��

( ������ �� ! ������ � ��� ) � ��� �� �� ���� ����� �� ��) �� � � �� �3! �! ����� � � �3� ����� � �� T @ 4 �� ������ ��� �� 5 ���� ��� �� �� , � �� � ��� �3! �! ������r est r i ct i on. �

�������� # ��� ��) ��) � �� �� �� = = � ���

�� �# ��� ��) ��( ������ �� ! ������ � ��� ) � ��� �� �� ���� �� � � ���3! �! ����� � � �3� ����� � �� T @ 4 �� ��� ��� ��� �� 5 ������� �� ��, � �� � ����3! �! ����� r est r i ct i on. �

������� �# ��� ��) ��) � �� �� �N = = � ���

� � �4 3! �! ����� key � ������� �� ! ������ � �� ! �! ������ �! � � ��� � ��� ���� � �� ��� T @ 4 �� ��� ��� ��� �� 5 ������� �� ��, � �� � ����3! �! �������el ement . �

������ � ��� ��� ��� ��� � ��������������� � ��

� � ����

4 3! �! ����� keyr ef ������� �� � �! ��� � ����! �! ���� ��Y �� ���� �! ������� ���� � �������� ! �� �T @ 4 ����������� ��5 ������� �� ��, � �� � ����3! �! �������el ement . �

������ � ������ ��� ��� $ % & ��� � ��������� ��� ��� � ��������������� � �����

��������

4 3! �! ����� sel ect or ������� �� ! ������ � ����������� �� XPat h � � �" ! �� �� �! ��� �� ������ ��! �! �����T @ 4 �� ���� ���� ��� ����, � ���� ���� �! ����� ��� ��� �� 5 ���� ��� �� �� , � �� � ��� ���� ! �! �������� �) � ����*�key, keyr ef , uni que. �

���������������� � � � ����� � ��� ���

�����

4 3! �! ����� f i el d� ������� �� �! ��� �� ����� �� ���3������! �� ���� 3� ��� �������� �� XPat h� K� ���! �! ������ � � ��� � ����� � ��� �����! �� Y � 5 ����� �����! �� � ���� � �! �� ��������� �� 5 ���� ��� �� �� , � �� � ��� ���� ! �! �������� �) � ���� *�key, keyr ef , uni que. �

������������� � � � ��' � �� ���

� � � ��� ���� �

4 3! �! �����annot at i on��� � ���� ������� � �� ����������� ��� �� � � ����� ��� ��� ��� �� ���� ����� � ��) ��� � � �����! ��� Y � �3� ������ ��� �� � ���� ���� ! �� ��

������ � � ��� ���� ����������4 ����� ���� ��� �����) �� ���! �� � �������� N �= [ �= + �������� � � ��� ���� �����

���� ��� �� ���� �

��! � ����� � ��� ��� ��� �� �� Y ��� � �� � ��� ! �� � �����! �� Y � �3� ������ ��� ��� 4 3! �! �����document at i on������� ��5 ������� �� ��, � �� � ����3! �! �����annot at i on. �

��������� ��� �� ���� ����������� �� ���� �� � ��� �� ��! ����������� ������������ ��� �� ���� ��

Page 67: Représentation de schémas de bases de données hétérogènes ...

� BB

A.3.2 Types de données��

������#�����)A5�#�������� �/-��������)��-�)�����������#����1������������.)����

9����������������:����������/-��������)��-���-��:�N�

�� ���������� �� ������� �����!������)����-������������/-��������)��L�

�� ���������� �� ������� ��-��!��)����-�������/-��:������4�

�A.3.2.1 Types de données de base �

��� �/-�� �� ����)�� -������ ���������� ��� ���� ��� ������ �/-�� �� ����� �:;�3���

��)���������-���������-�������������4������)�����!�����/-��-��������-�)������

�����������)�)�������������!�-�������������������/-��������5�-��������������������

�������/-��������)�#)��HM � �I4�

����������;�������-�)��������/-��-�����������������-���4�

� ���������� *���-����

st r i ng ������.�Z����������0���9����)1��4�bool ean W�����X��#�������W������X�����:��

f l oat ����-�� �������� �� ������� �)��� �����-������� 5� ��� ������� 5�

#�1��������������&'�����������)������-��-�)����4�doubl e ����-��������������������)��������-�������5�����������5�#�1��������������

B������������)������-��-�)����4�

deci mal �������)�������-�)������������4�

t i meDur at i on *��)�����-�4�

r ecur r i ngDur at i on ��-������-���)-)�����5������)������)����)�5�-����������������-�)��4��

bi nar y *���)����������������4�

ur i Ref er ence �" 4�

I D �/-�����������I D��������)����5�����������������9���4 4�

I DREF �/-�����������I DRF��������)����5�����������������9���4 4�

ENTI TY �/-�����������ENTI TY��������)����5�����������������9���4 4�

Qname ���������)��������)����5�����������������9���4 4�

Page 68: Représentation de schémas de bases de données hétérogènes ...

� BC

A.3.2.2 Types de données dérivés �

�!� ��� �/-��� ����)�� ��� �)��� ����� ��� �/-��� ����)�� :������ ��/-�������4� ��-���

���-�������������������������������)�)������������:4�

A.4 Conclusion �

*�����������:!�������#�����������)���� �����.)����9���������������������������

-����-�������������-�#���� ���*�*4�������#�����)���#���)1������ ����-)��������

9���=�.�����������������)���-�����M &���������������/-�������)��4�

���������� *���-���� ���� ������

CDATA �.�Z���� ������0��-��#���� ���-��������

�-���4�

St r i ng

t oken �.�Z�������)�-������A���4� CDATA

NMTOKEN �/-�����������NMTOKEN���9���4 4� Token

NMTOKENS �/-�����������NMTOKENS���9���4 4� NMTOKEN

Name "-�)�����������9��4� Token

i nt eger "-�)����������������4� I nt eger

I nt "-�)���� ��� ������ ���� ���1� �����

�����#�������j;'��C��&B��!�'��C��&B�Ck�

I nt eger

l ong *)�#)� �� i nt eger !� ��� #����� ��

maxI ncl usi ve� )����� �:)� 5�

%''&&C' &B�F�CCF� C� �� ���� ��

mi nI ncl usi ve�5�P%''&&C' &B�F�CCF� �4�

I nt eger

shor t *)�#)� �� i nt !� ��� #����� �� maxI ncl usi ve�

)������:)�5�&'CBC���������mi nI ncl usi ve�

5�P&'CB�4�

I nt dér i vant de l ong

byt e *)�#)���shor t !� ���#�������maxI ncl usi ve�

)������:)�5��'C���������mi nI ncl usi ve�5�

P�'�4�

Shor t

dat e R����-��������4� Ti mePer i od de r ecur r i ngDur at i on

nonPosi t i veI nt eger �����������)1��������������J)��4� I nt eger

negat i veI nt eger ������ ���� �)1���� ����� ��� #�����

��:�������P�4�

I nt eger

nonNegat i veI nt eger ����������-���������������J)��4� I nt eger

posi t i veI nt eger ������ ���� -����� ����� ��� #�����

���������`�4�

i nt eger