• Aucun résultat trouvé

Modèle spécifique et description des différentes métaclasses

Chapitre II – Approches de gestion de documents multistructurés

II. Modélisation spécifique d‘un document à structures multiples

II.2. Modèle spécifique et description des différentes métaclasses

Nous proposons une modélisation basée sur une technique de fragmentation « virtuelle » qui nous permet de découper un document en nœuds structurants. Cette fragmentation est dite virtuelle du fait que le contenu du document n‘est pas réellement fragmenté. Il est stocké sous forme d‘un bloc de données et référencé par les différents éléments de structures et en conséquence par les différentes structures documentaires. Ainsi, un élément et un contenu sont associés par des index qui déterminent la localisation de chaque fragment de contenu dans le bloc de donnée global. Ces index sont traduits par des attributs rattachés à chaque élément décrit. Cette indexation permet la gestion d’un

contenu commun autour duquel s’articulent plusieurs structures. Ceci nous permet d’une part d’éviter la redondance de stockage et d’autre part d’assurer la gestion de chevauchements entre les nœuds de structures concourantes. En nous basant sur les

notions de fragmentation virtuelle, d‘indexation, de relations et de vue, nous avons conçu un modèle spécifique de documents multistructurés (Cf. Figure III.2).

Contenu textuel

Image

Structures globales à un document Structures associées à un nœud Structure StrGl1 Structure StrGl2 Structure StrAs1 Structure StrAs2 Image

Figure III.2. Modèle spécifique de documents multistructurés en UML.

Le niveau spécifique de notre modèle est décrit par dix métaclasses. Au travers de ces métaclasses et leurs associations, nous modélisons l‘ensemble des concepts que nous avons définis pour représenter les structures multiples liées à un document.

Nous présentons une métaclasse « Document » afin d‘identifier chaque document de la collection. Un document est caractérisé par son nom et par son contenu. Ce contenu peut être soit une suite de caractères (document textuel) soit une référence vers un média soit des combinaisons des deux (document multimédia). Un tel contenu n‘étant consulté qu‘au travers des vues qui l‘organisent, il est stocké intégralement au niveau de cette métaclasse et référencé par les nœuds spécifiques grâce à des index (attributs spécifiques associés à un nœud élément).

La métaclasse « Déclaration » assure le stockage des informations complémentaires au document, comme sa version par exemple. Dans cette métaclasse, nous retenons le nom et la valeur de chaque déclaration.

Les entités composant le document sont représentées par des nœuds. Ces entités seront traduites au niveau d‘une métaclasse appelée « NœudSpé ». Chaque nœud spécifique est caractérisé par son nom et par son type. Nous avons recensé deux types de nœuds spécifiques : les éléments et les attributs. Ces derniers admettent des caractéristiques spécifiques. De ce fait, nous avons conçu deux métaclasses : « ElémentSpé » et « AttributSpé ». Ces métaclasses sont rattachées à la métaclasse « NœudSpé » via un lien d‘héritage.

La métaclasse « ElémentSpé » représente les éléments. Ces éléments font référence au contenu via des index. Ces index peuvent être des marques de début et de fin dans le cas d‘un fragment textuel ou segment sonore comme elles peuvent être des marques de positions dans le cas d‘une image. Quelle que soit leur nature, ces index seront matérialisés par des attributs spécifiques rattachés à chaque élément décrit. Un élément pouvant être décomposé en sous- éléments (image en zones par exemple), nous avons créé une association réflexive sur la métaclasse « NoeudSpé ». Cette association permet de traduire les relations entre nœuds et par conséquent entre éléments ou entre éléments et attributs.

NoeudS pé NomNS : string NumSeq : integer AttributS pé ValeurAS : string NomNS : string NumSeq : integer <<metaclass>> RelationS pé NomRS : string TypeRS : string Ordre : integer VueS pé NomVS : string

TypeVS : string NomRS : string NomVS : string TypeVS : string 1..* 1 * TypeRS : string Ordre : integer * ValeurAS : string S trS pé NomSS : string Document NomDoc : string Contenu : string Déclaration NomDec : string ValeurDec : string ElémentS pé NomDoc : string Contenu : string NomSS : string 1 1 1..* 1 NomDec : string ValeurDec : string 1 * Niveau Spécifique «Association»

Afin de décrire les attributs nous avons conçu une métaclasse « AttributSpé ». Les attributs apportent des informations complémentaires relatives à l'élément auxquels ils sont associés. Ainsi, les instances de cette métaclasse sont toujours associées aux instances de la métaclasse « ElémentSpé ». Ils viennent en quelque sorte les qualifier. Un attribut est toujours un couple (nom, valeur). Le nom est représenté par l‘attribut « NomNS » de la métaclasse « NœudSpé » alors que la valeur est décrite par l‘attribut « ValeurAS » de la métaclasse « AttributSpé ».

« RelationSpé » est une métaclasse d‘association. Elle décrit donc l‘ensemble des associations qui peuvent exister entre deux nœuds spécifiques indépendamment de leur type (élément ou attribut). Chaque instance de cette métaclasse est caractérisée par son numéro d‘ordre, son type et son nom. Le numéro d‘ordre détermine l‘ordre du nœud fils parmi l‘ensemble des fils du nœud père. Chaque relation admet son propre type. Ces types peuvent varier d‘une simple composition qui caractérise les dimensions logique ou physique d‘un document, à une description qui montre la dimension sémantique, ou à un référencement qui spécifie la dimension hypertexte, ou encore à une relation temporelle ou spatiale qui détermine les dimensions spatiotemporelles, etc. (Djemal 2007a). Pour certains types de relations, et en particulier pour les relations spatio-temporelles, il est nécessaire de déterminer le nom de la relation. En effet, pour un même type de relations, on peut avoir des relations de natures différentes (Cf. chapitre 1 section II.1). Par exemple, Allen (Allen 1991) propose treize relations différentes de types temporelles.

La métaclasse « VueSpé » permet, au travers de ses instances, de déterminer une structuration particulière d‘un document. Une vue ne pouvant pas être reconstruite à partir des nœuds du fait que ces derniers sont partagés entre les vues d‘un même document, elle sera reconstruite à partir des différentes relations qui existent entre les nœuds. Chaque instance de « VueSpé » est caractérisée par son nom et son type. Le type de la vue spécifique peut être déduit des relations qui composent la vue.

Enfin, nous avons défini une métaclasse appelée « StrSpé » qui nous permet de représenter l‘ensemble des structures spécifiques. Chaque instance de cette métaclasse offre une vision détaillée d‘un document en terme d‘entités qui le composent. Cette structure est composée de l‘ensemble des nœuds spécifiques du document. Chaque structure spécifique est caractérisée par un nom.