• Aucun résultat trouvé

Temporalisation d’un document XML

N/A
N/A
Protected

Academic year: 2022

Partager "Temporalisation d’un document XML"

Copied!
18
0
0

Texte intégral

(1)

Temporalisation d’un document XML

Emmanuel Bruno

Elisabeth Murisasco

Jacques Le Maitre

Laboratoire SIS

Université du Sud Toulon-Var Bâtiment R, Avenue de l’université BP 20132

F-83957 La Garde cedex

{bruno, murisasco, lemaitre}@univ-tln.fr

RÉSUMÉ.Cet article propose un nouvel outil destiné à annoter la structure temporelle d’un documentXMLdans lequel cette structure n’apparaît que de façon implicite, soit au travers de l’ordre dans lequel se succèdent les éléments temporels (ceux qui représentent des événements), soit au travers d’attributs temporels (heures, dates ou durées), soit au travers d’expressions de nature temporelle dans le texte du document. Cette annotation temporelle que nous appelons

« temporalisation » se déroule en deux étapes. La première étape, manuelle, consiste à localiser par des expressions XPath les éléments temporels du document source et à décrire enXMLles relations temporelles d’Allen existant entre ces éléments. Le résultat est une feuille de style

« temporelle ». La seconde étape consiste à générer automatiquement, par un programmeXSLT, le document temporalisé à partir du document source et de sa feuille temporelle. Le document temporalisé ainsi obtenu peut être manipulé à l’aide de langages tels queXSLTou XQuery pour exploiter conjointement sa structure logique initiale et sa structure temporelle.

ABSTRACT.This article describes a new tool for marking up the temporal structure of anXML

document in which this temporal structure is only implicit either through the order in which temporal elements (event representing elements) appear or through temporal attributes (times, days or durations) or through temporal expressions in the text of the document. This temporal marking up that we call « temporalization » consists in two steps. During the first step the user localizes temporal elements in the source document by XPath expressions and describes the Allen relations between these elements. The result is a temporal sheet. The second step consists in automatically generating the temporalized document from the source document together with its temporal sheet using anXSLTprogram. This temporalized document can be manipulated by

XSLTor XQuery in order to exploit concurrently the logical structure of the source document and the marking up temporal structure.

MOTS-CLÉS :XML, XPath, langage à base de règles, relations de Allen.

KEYWORDS:XML, XPath, rule based language, Allen’s relations.

(2)

1. Introduction

Cet article propose un outil de « temporalisation » d’un document XML (Bray et al., 2000). Cet outil est destiné à traiter des documentsXMLdont la structure temporelle n’apparaît que de façon implicite, soit au travers de l’ordre dans lequel apparaissent ou dans lequel s’imbriquent, au fil de la lecture du document, les éléments qui repré- sentent des événements, soit dans des valeurs d’attributs (heures, dates ou durées), soit, enfin, dans le texte des éléments au travers d’expressions grammaticales de nature tem- porelle. L’objectif est de rendre cette structure explicite au sens d’un marquageXML. Le processus de temporalisation se déroule en deux phases. La première, manuelle, consiste à localiser par des expressions XPath (Clark et Derose,1999) les éléments temporels du document source, puis à décrire enXMLles relations temporelles d’Allen (Allen, 1991)existant entre ces éléments. Le résultat est une feuille « temporelle ». La seconde consiste à générer automatiquement, par exemple par un programme XSLT (Clark, 1999), le document temporalisé à partir du document source et de la feuille temporelle. Le document temporalisé ainsi obtenu peut alors être manipulé à l’aide de langages tels que XSLT ou XQuery (Boag et al., 2003) pour exploiter conjointement sa structure logique initiale et sa structure temporelle.

Le temps est une dimension importante des applications informatiques. L’étude de l’intégration de cette dimension dans les systèmes d’information a donc fait l’objet de nombreux travaux. Dans le domaine des bases de données, des extensions tempo- relles aux modèles et aux langages relationnels et orientés objets ont été proposées permettant de modéliser et d’interroger les données temporelles d’une base de don- nées. On peut citer notamment TSQL2(Snodgrass, 1995)pour les bases de données relationnelles et TEMPOS(Dumaset al., 2004)pour les bases de données orientées objets. Dans le domaine des documents structurés, qui est celui de cet article, plu- sieurs langages ont été proposés pour décrire enSGML (Goldfarb, 1990)ou enXML

des données temporelles. Certains sont des langages généralistes qui ne visent pas une application particulière, d’autres sont plus spécialisés comme ceux conçus pour la présentation de documents multimédia. Parmi les premiers, on peut citer HyTime(De- Rose et Durand, 1994) pour les documents SGML,Temporal XML (Manukyan et Kalinenchenko, 2001)et TimeML(Pustejovskyet al., 2003)qui permet de décrire de façon très précise les expressions temporelles que l’on peut trouver dans un texte en langue naturelle, et parmi les seconds : Madeus (Jourdan et al., 1998) ou SMIL (Ayars et al., 2001). D’autres aspects ayant trait au temps pourraient être cités tels que la gestion de l’évolution des données ou des documents dans le temps : ils ne concernent pas le travail présenté dans cet article qui porte sur l’expression du temps dans un document et non sur l’évolution d’un document ou d’une collection de documents au cours du temps. On trouvera dans(Grandi, 2004)une bibliographie commentée très complète des différentes problématiques liées au temps et à l’évolution dans les documents du web.

L’originalité de notre proposition est le processus de temporalisation : explicitation d’une structure temporelle implicite décrite dans une feuille temporelle séparée du document source qui reste inchangé. Signalons que nous avons déjà expérimenté cette

(3)

approche dans le cadre de la sécurisation de documents XML (Gabillon et Bruno, 2001). C’est aussi l’approche qui a conduit aux TimeSheets de SMIL(Kate, 2000). Le modèle temporel sur lequel s’appuie le processus de temporalisation est lui très classique. Il utilise les types temporels de données deXMLSchema pour représenter les heures, les dates et les durées, et les relations d’Allen pour représenter les relations temporelles.

Cet article est organisé de la façon suivante : la section 2 explique le processus de temporalisation ; la section 3 présente le modèle temporel et la description en XML

d’un document temporalisé ; la section 4 est consacrée à la construction d’une feuille temporelle ; la section 5 conclut et ouvre des perspectives, en particulier en ce qui concerne la manipulation d’un document temporalisé.

2. Temporalisation d’un document

Expliquons tout d’abord ce que nous entendons par temporalisation sur un exemple auquel nous ferons référence tout au long de cet article. Il s’agit du documentXMLdu cas « SEQ » des cas d’usage proposés par le W3C pour illustrer le langage XQuery (Chamberlin, 2003), que nous avons légérèrement adapté. Un extrait de ce document est représenté sur la figure 1. Il décrit un rapport post-opératoire. Nous l’avons choisi car il est tout à fait représentatif des documents pour lesquels est conçu notre outil. En effet, comme tout rapport opératoire, il possède une structure temporelle. Mais celle-ci n’est pas décrite explicitement. Elle est inhérente à l’ordre dans lequel se succèdent ou s’imbriquent les éléments décrivant des événements et aux informations temporelles apparaissant dans les attributs ou le contenu de ces éléments. Par exemple, le fait que l’anesthésie précède la première incision est exprimé par le fait que l’élément précède, dans l’ordre du document, le premier élément (en gras). De même, le fait que la préparation d’une incision est composée d’une suite d’actions est exprimé par le fait qu’un élément précède l’élément

et que cet élément est une une séquence d’éléments . On notera que le seul examen de la structure logique ne permet pas de mettre en évidence certaines relations temporelles comme la simultanéité ou le recouvrement d’événements. Il faut, pour cela, se reporter au texte des éléments en espérant y trouver une construction grammaticale exprimant ces relations. Par exemple, une phrase indiquant que telle action peut commencer avant que telle autre soit terminée.

Par la suite, nous appellerons :

– élément temporel, un élément qui décrit un événement (par exemple, l’élément ) ou un élément qui contient au moins un élément temporel (par exemple,

l’élément );

– attribut temporel, un attribut dont la valeur décrit une information temporelle d’un élément temporel (par exemple, les attributs et de l’élément

);

(4)

– relation temporelle, une relation d’Allen entre deux éléments temporels (par exemple, la relation « précède » entre l’élément temporel et le premier élément temporel ).

Une fois les éléments temporels identifiés, leurs attributs temporels spécifiés et les relations temporelles qu’ils entretiennent mises en évidence, il s’agit de produire le document temporalisé. C’est le rôle de l’outil que nous proposons, qui est composé :

– d’un langage de description enXMLdes aspects temporels d’un documentXML

fondé sur un modèle temporel basé sur les relations d’Allen (paragraphe 3) ;

– d’un langage de feuille temporelle permettant de localiser par des chemins XPath dans le document à temporaliser, les éléments temporels (ceux qui représentent des événements) et de décrire leurs attributs temporels et les relations d’Allen qui existent entre eux (paragraphe 4) ;

– d’un moteur qui, à partir d’un document source et d’une feuille temporelle, per- met de construire le document temporalisé correspondant.

3. Description en XML d’un document temporalisé 3.1. Modèle temporel

Les langages XPath et XQuery utilisent un modèle commun pour représenter les documents XMLqu’ils manipulent : le « XQuery 1.0 and XPath 2.0 Data Model » (Fernandez et al., 2003). Sous ce modèle, un document est représenté par un arbre qui com- porte sept sortes de nœuds :document,élément,attribut,texte,commentaire,espace de noms, etinstruction de traitement. Pour simplifier, les trois dernières sortes de nœuds ne sont pas considérées dans cet article. La structure d’un arbre de document est régie par les règles suivantes :

– le nœud document constitue la racine de l’arbre d’un document, il a un fils unique qui est un nœud élément qui représente l’élément de niveau supérieur du document (le premier dans l’ordre de lecture) aussi appelé élément du document ;

– un nœud élément est étiqueté par le nom de l’élément qu’il représente, il a pour fils les nœuds représentants les attributs, les éléments et les fragments de texte qui le constituent. Parmi ces fils, les nœuds élément et les nœuds texte sont appelés ses enfants. Ces enfants sont ordonnés selon l’ordre de lecture du document ;

– un nœud attribut est étiqueté par le nom et la valeur de l’attribut qu’il représente.

Il a pour père un nœud élément et n’a pas de nœud fils.

– un nœud texte est étiqueté par le fragment de texte qu’il représente. Il a pour père un nœud élément et n’a pas de nœud fils.

Nous étendons ce modèle pour prendre en compte le caractère temporel de cer- tains éléments d’un documentXML. Ces documents seront appelés documents tempo- rels. Le modèle proposé ne permet d’associer des caractéristiques temporelles qu’aux nœuds élément. En effet, ce sont les seuls à posséder un contenu structuré qui puisse

(5)

!#"$#%& "'(

!) $*'+&,(

!) $*#'+&,.-/'+#'0 $(#1"&* $2 3"$!4) $*#'+&,5-6'+#'0$(

!)#$*#'+&7,5-8*&,'$#,'9)#':"';+< $=>7?@@AB@CBDC ;D7@EFA@>

$#,2;+< $=>?@@AB7@CBDC#;D?EFA@>7(

;#G$H%:'+ $#,'JI:)H':#K$,L'&M' G$N&%$":'+7,ON"&&<PIG$"$L)7G$MI:)Q%0:* $2

+,R)73% +,$H%&)+#'+&,S:,2

<anesthesia>induced under general anesthesia.

<action>The cardiac rythm is monitored</action> and

<action>the blood pressure is monitored</action>

</anesthesia>

T6UVW8UX

T7YZ[ \#]^X_J` ]a7Wb9Z Y[cW[ W7VLdYefU5agYZW hR[]MhWZ ]i#UVW#eej[cWlkaYhhWV

TnmYZ[#\ ]^XNY^hS[cWMYkh]iW^PdYeR[cW^

UVW8UUoW hJY^hlh VYnUW#hP\^Pe [ W7V\ a7WqpYec\ ]7^rs---

T7YZ[ \#]^XtcWNZ Y Vh\#YZHV b[c7iRdYeQi ]^\[]#VW hr#TumYZ[ \#]^X

Tum7UVW8UX

<incision>

A curvilinear incision was made

<geography>in the midline immediately infraumbilical</geography>

and the subcutaneous tissue was divided

<instrument>using electrocautery.</instrument>

</incision>

;#G$lv:)*+ :lI:)l+#2$#,'+#v+ $2L:,2

! :*#'+&7,(w?N@Hx:y&,R)':zS)73'#3"$){I$"$H%0 :* $2P&,L$:*7GR)+#2$N& vM' G$

<+#20+7,$|-}!4:*'+&,(

!+7, *+)+&,(

; G$lv:)*+ :MI:)H2+#~+#2$2l3 )+7,O

!+7, )#'" 3 < $#,'($0$*#'"&*#:#3'$"z!4+7,) '" 3 < $ ,'(

:#,2J' G${%$"+#'&,$3 <RI:)M$#,'$"$2|-

!4+7, *+)+&,(

!& ) $"~:'+&7,( ; G$R)< :00{&#I$0MI:)J+2$#,'+v+ $2€-F!4& )#$"~:'+&,(

:,2

! :*#'+&7,(

' G$

!+7, )#'" 3 < $#,'(#:))&,R'"&* : "!4+7,)#'" 3 <$#,'(

I:)Q%0 :* $2M3,2$"J2+#"$*#'N~+)73:0+#‚:'+ &,5-

!4:*#'+ &,(

! :*#'+&7,(

; G$

!+7, )#'" 3 < $#,'( '"&* :"!4+7, )#'"#3 < $#,'(

I:)J) $*73"$2l'&M' G$Mv:)*+#:H3 )+7,ON' G$L)#':zP)73'#3"$)-

!4:*#'+ &,(

!4) $*#'+ &,5-8*&7,'$#,'(

!4) $*#'+&,(

!4 "$#%&#"'(

Figure 1.Extrait du cas d’usage SEQ

(6)

être enrichi. Ainsi, un nœud texte devra être encapsulé dans un élément pour lui asso- cier une sémantique temporelle.

– tout nœud élément peut être étiqueté par un identifiant temporelidT (il est alors appelé nœud temporel ou élément temporel). On noteraNT l’ensemble des nœuds temporels d’un document temporel.

– à tout nœud deNT, peuvent être associées une ou plusieurs étiquettes tempo- relles. Par exemple, les étiquettes temporellesstart,endetdurationdont les valeurs1 peuvent être définies sur les types de données correspondants proposés dans les sché- masXML.

– entre les nœuds deNT, on peut définir une relation temporelleRT à partir des relations de Allen et des connecteurs de conjonction et de disjonction :

ƒ o„

ƒƒ †… …8‡

ƒ o„„ˆ

‰

ƒ o„

ƒ ƒP

ƒ o„

ƒƒ

‰

ƒ o„

ƒ ƒP

ƒ o„

ƒƒ

‰SŠ ‹Š

ƒ o„

ƒƒ

Š#Œ.Š

Une relation de base est définie par son nom, par les identifiants des nœuds tem- porels source et cible et par une liste éventuellement vide de paramètres. Les relations temporelles de base sont définies dans le tableau de la figure 2 (où la sourceaet la ciblebsont des identifiants temporels etn≥0est une durée).

precedes(a, b) ≡a.end≥b.start ≡succeeds(b, a)

precedes(a, b, n) ≡b.start−a.end=n ≡succeeds(b, a, n)

meets(a, b) ≡precedes(a, b,0) ≡met-by(b, a)

during(a, b) ≡a.start≥b.start et a.end≤b.end ≡contains(b, a) overlaps(a, b) ≡(a.end > b.start et b.end > a.end) ≡is-overlapped(b, a) begins(a, b) ≡a.start=b.start et a.end≤b.end ≡begun-by(b, a) f inishes(a, b) ≡a.end=b.end et a.start≥b.start ≡f inished-by(b, a) equals(a, b) ≡begins(a, b)et f inishes(a, b)

≡a.start=b.start et a.end=b.end

Figure 2.Relations temporelles de base

La figure 3 montre un extrait de l’arbre du documentXMLde la figure 1. Le nœud document est symbolisé par un cercle, les nœuds élément par un rectangle à coins arrondis et les nœuds texte par un rectangle. Les identifiants temporels sont indiqués en gras. Dans le cas général, on ne peut pas considérer que la structure logique re- flète directement la structure temporelle. Nous ne proposons donc pas de relations temporelles de base implicites. Il est nécessaire d’expliciter toutes ces relations. Pour l’exemple de la figure 3, nous avons la relation temporelle suivante :

during(id1, id2)and during(id1, id3)and during(id1, id4) and precedes(id2, id3)and precedes(id3, id4)and during(id3, id5)

and during(id3, id6)and during(id3, id7)and precedes(id5, id6) 1. Celles-ci peuvent être calculées à partir d’informations extraites du document source.

(7)

report

section

section.title section.content id1

anesthesia id2

prep id3

action id5

A foley...

action id6

action id7

The cardiac

rythm is

monitored...

incision id4

geography instrument

Figure 3.Extrait de l’arbre du document de la figure 1

On remarquera que nous ne précisons pas de contraintes entre les nœudsid5,id6 et le nœudid7: l’absence de relations entre ces nœuds est un moyen pour nous d’envi- sager qu’ils soient concurrents (dans notre exemple, l’action (id7) « the cardiac rythm is monitored » peut s’effectuer avant, après ou même en parallèle des actionsid5 et id6qui, elles, se succèdent).

Dans cet exemple, nous n’avons considéré qu’une conjonction de relations tem- porelles de base (elles sont indépendantes les unes des autres). Cependant, notre mo- dèle permet de considérer également les cas où une relation est conditionnée par une autre. Supposons dans notre exemple, que deux actions comme la mesure de la ten- sion artérielle (id2.2) et la surveillance du rythme cardiaque (id2.1) ne puissent pas être réalisées en même temps, mais que toutes deux doivent avoir lieu à un moment quelconque pendant l’anesthésie. La figure 4 illustre les deux interprétations possibles de la relation temporelle suivante :

r= (precedes(id2.1, id2.2)or precedes(id2.2, id2.1)) and during(id2, id2.2)and during(id2, id2.1)

(8)

anesthesia id2

action id2.1

The cardiac

rythm is

monitored

action id2.2

The blood

pressure is monitored

anesthesia id2

action id2.1

The blood

pressure is monitored

action id2.2

The cardiac

rythm is

monitored Figure 4.Les deux interprétations de la relationrsur le document exemple

3.2. XML Time Data : un espace de noms pour données temporelles

Nous proposons maintenant une syntaxeXML pour représenter les informations (étiquettes et relations) temporelles à associer au document source, pour obtenir le documentXMLtemporel associé. Cette syntaxe fait référence à l’espace de nomXML

Time Data (« …gŽ|‘’ƒu“

” •– —

») de préfixe˜ . Nous avons fait le choix d’intégrer, quand cela était possible, la représentation des informa- tions temporelles à associer aux nœuds source comme contenu de ces nœuds ; cette solution permet de procéder par enrichissement du document source et ne modifie pas fondamentalement la structure originale du document source.

Dans chaque élément correspondant à un nœud temporels, pour représenter son identifiant temporel et ses éventuelles étiquettes temporelles, on insère comme premier fils de cet élément, un élément de la forme suivante :

™ ˜

š…8

o ‡|›Ž7|›

œ

‡|›Ž

€› 

œ

‡|›Žn›

œ



‡|›Žu

€› ž

Pour représenter la relationRT, on utilise un élémentXML˜ š… ƒ

dont le contenu est construit par l’attribut‘ƒ de la grammaire attribuée suivante :

Ÿ

 ……8‡

nom„ de„ relation

‹

s¡ t¡ p1¡ v1¡ ¡ pn¡ vn

Œ

¢ Ÿ

 8‘ƒR‡

™ ˜

š…87

ƒ



‡|› s›{ £ ‡|› t›

¤

‡› nom„ de„ relation› p1

‡|› v1

› ¡ ¡ pn

‡|› vn

›ž ¥

‰ Ÿ

1

Ÿ

2

¢ Ÿ

 8‘ƒR‡

™ ˜

š…nž

Ÿ

1

8‘ƒ

Ÿ

2

8‘ƒ

™  ˜

†…nž ¥

‰ Ÿ

1

Ÿ

2

¢ Ÿ

 8‘ƒR‡

™ ˜

š…n

ž Ÿ

1

8‘ƒ

Ÿ

2

‘ƒ

™  ˜

š…n

ž¥

‰SŠ ‹Š

Ÿ

1

ŠŒ.Šš¢

Ÿ

 8‘ƒR‡

Ÿ

1

‘ƒ¥

(9)

Cette grammaire s’applique à la relation temporelleRT. La première règle s’ap- plique à une relation de base de nom nom_de_relation définie entre deux nœuds d’identifiants temporels source set cible t, de paramètres éventuelsp1, . . .,pn, de valeurs respectivesv1, . . .,vn. Dans cet article, nous ne considérons qu’un seul pa- ramètre, celui de la durée (durée entre deux événements, paramètrendes relations temporelles de base,precedesetsucceeds).

L’élément˜ š…8 ƒ o est représenté dans un document externe. Il est rattaché au document source par une instruction de traitement de la forme suivante :

™ ¦

˜

˜

ƒ’

ƒ ‡|› §¨©›

¦ ž

.

La figure 5 montre l’élément˜ š…8 ƒ décrivant la relationRT du document de la figure 1. On notera la lourdeur de cette notation. Le fragment en ita- lique souligne la représentation de la disjonction (cf. figure 4).

!#y'2€E/'+< $"$0:'+&7, )(

! y'2€E/:#,2(

! y'2|EF:#,2(

! y'2|EF:#,2(

! y'2€EF:#,2(

! y'2€EF:#,2(

!#y'2€EF:,2(

!#y'2€EF:,2(

! y'2€E/:#,2(

! y'2|EF:#,2(

! y'2€E/'+<$"$0: '+&,

)&73"* $= >+#2ªD>

': "O$'= >+#2ª?>

'z#%$=>2#3"+7,O>74(

! y'2€E/'+<$"$0: '+&,

)&73"* $= >+#2ªD>

': "O$'= >+#2ªA >

'z#%$=>2#3"+7,O>74(

!4 y'2€EF:#,2(

! y'2|E/'+< $ "$0:'+&,

)&3"* $=>7+#2ªD>

':"O$'=>7+#2ª «>

'z %$=>2 3"+7,O>4(

!4 y'2|EF:#,2(

! y'2€E6'+< $"$0:'+ &,

)&3"* $=>+2ª? >

': "O$'= >+#2ª «>

'z#%$=>n%"$* $2$)>74(

!4 y'2€EF:#,2(

! y'2€E/'+<$"$0: '+&,

)&73"* $= >+#2ªA >

': "O$'= >+#2ª «>

'z#%$=>n%"$* $2$)>74(

!4 y'2€EF:#,2(

! y'2|E/'+< $ "$0:'+&,

)&3"* $=>7+#2ªA>

':"O$'=>7+#2ªC >

'z %$=>2 3"+7,O>4(

!4 y'2|EF:#,2(

! y'2€E6'+< $"$0:'+ &,

)&3"* $=>+2ªA>

':"O$'=>+2ª¬>

'z %$=>2 3"+7,O>74(

!4 y'2|EF:#,2(

! y'2€E6'+< $"$0:'+ &,

)&3"*#$=>+#2ªA>

':"O$ '=>+#2ª­>

'z %$= >2 3"+,O>74(

!4 y'2€E/:#,2(

!#y'2€E/'+< $"$0:'+&7,

)&3"*#$=>+#2ªC >

':"O$ '=>+#2ª¬>

'z %$=>n%"$* $2$)>74(

!4 y'2|EF:#,2(

! y'2€E/:#,2(

! y'2|EF:#,2(

Tn®[7h¯g] VX

Tn®[h¯[ \niWVW agY[ \ ]^

e]°VZW ±²\ h³´rµ²

[7Y V#¶W[±²\ h³´r´²

[nb7UW±²·UVWZW#hW#e²mX

Tn®[h¯[ \niWVW agY[ \ ]^

e]°VZW ±²\ h³´r´²

[7Y V#¶W[±²\ h³´rµ²

[nb7UW±²·UVWZW#hW#e²mX

Tnm®[h¯g] VX

! y'2€E/'+<$"$0: '+&,

)&73"* $= >+#2ª?>

': "O$'= >+#2ª?-gD>

'z#%$=>2#3"+7,O>74(

!4 y'2€EF:#,2(

! y'2|E/'+< $ "$0:'+&,

)&3"* $=>7+#2ª? >

':"O$'=>7+#2ª?-F? >

'z %$=>2 3"+7,O>4(

!4 y'2|EF:#,2(

!4 y'2|EF:#,2(

!4 y'2€E6'+< $"$0:'+ &, )(

Figure 5.DescriptionXMLde la relationRT pour le document de la figure 1

Pour simplifier la relationRT, nous proposons : (i) de la mettre sous forme nor- male conjonctive, (ii) de rendre implicite l’expression de la conjonction de relations,

(10)

!#"$#%& "'Ny<0, )oE/y'2= >nG'' %.E44)+)-¸3, +~ B7'0,.-Fv"4 y'2>7(

!) $*#'+&,(---

!) $*'+&,5-*&,'$,'R)#':"';+< $= >7?@@AB@CBD7C ;D7@|E/A@>

$#,2;+g< $=>7? @@AB@CBDC ; D?EFA@ >7(

! y'2€E/'+<$#,& 2$N'+g< $+#2= >+#2D>

)#':"'=>?@@AB7@CBDC#;D7@|EFA@>M2 3":'+&7,=>g1?>7(

!#y'2€E/'+< $"$0:'+&7,9': "O$'= >+#2? >Q'z#%$=>* &,':+, )>74(

!#y'2€E/'+< $"$0:'+&7,9': "O$'= >+#2A>Q'z#%$=>* &,':+, )>74(

!#y'2€E/'+< $"$0:'+&7,9': "O$'= >+#2«>Q'z#%$=>* &,':+, )>74(

!4 y'2€E/'+g< $#,& 2$( ; G$J%:'+ $#,'JI:)H':#K$,L'&M' G$J&%$ ":'+7,O¹---

!:#,$)#' G$)+ :(

! y'2€E/'+g< $#,& 2$L'+< $+#2=>+#2?>7(

!#y'2€E/'+< $"$0:'+&7,R':"O$'=>+#2A >{'z %$=>u%"$* $ 2$)>74(

!#y'2€E/'+< $"$0:'+&7,R':"O$'=>+#2?-gD>{'z %$= >*&,':+7, )>4(

!#y'2€E/'+< $"$0:'+&7,R':"O$'=>+#2?-? >{'z %$= >*&,':+7, )>4(

!4#y'2€E/'+< $#,&#2$(+7,2 3 * $2L3,2$ "JO$#,$ ":0J:#,$)#' G$)+ :|-

!:*#'+&,(! y'2|E/'+< $,& 2$P'+< $+2=>+#2?-gD>74(

; G$L* : "2+ :*{"z' G <j+)f<&,+#'& "$ 2!4:*'+&,(L:#,2

!:*#'+&,(! y'2|E/'+< $,& 2$P'+< $+2=>+#2?-? >74(

' G$H0&& 2M%"$))73"$P+)q<&,+#'& "$ 2!4:*'+&,(

!4:,$)#' G$)+ :(

!%"$#%(

! y'2€E/'+g< $#,& 2$L'+< $+#2=>+#2A >7(

!#y'2€E/'+< $"$0:'+&7,R':"O$'=>+#2«>{'z %$=>u%"$* $ 2$)>74(

!#y'2€E/'+< $"$0:'+&7,R':"O$'=>+#2C>{'z %$=>7*&,':+7, )>74(

!#y'2€E/'+< $"$0:'+&7,R':"O$'=>+#2¬ >{'z %$=>7*&,':+7, )>74(

!#y'2€E/'+< $"$0:'+&7,R':"O$'=>+#2­ >{'z %$=>7*&,':+7, )>74(

!4#y'2€E/'+< $#,&#2$(

!:*#'+&,(

!#y'2€E/'+< $#,&#2$N'+< $+2=>+#2C >7(

! y'2|E/'+< $ "$0:'+&,R':"O$ '=>+#2¬>Q'z %$= >n%"$*#$2$)>4(

!4 y'2€E6'+< $#,& 2$( ºL»&0$zS* :'#G$'$"JI:)¼%0 :* $2½--

!4 :*#'+&7,(:#,2L' G$J:#2&< $#,LI:)o---

!:*#'+&,(! y'2|E/'+< $,& 2$P'+< $+2=>+#2¬>74(¾---F!4:*#'+&,(

!:*#'+&,(! y'2|E/'+< $,& 2$P'+< $+2=>+#2­>74( ;#G$9*#:"2+ :*M" Gz' G#<

I:)f<&7, +#'& "$2€---F!4:*#'+&,(

!4%"$#%(

!+7,*+)+&7,(! y'2€E/'+<$#,& 2$P'+< $+#2=>+2«>74(#º¿*73"~+0+,$:"½---

!#O$& O":#%Gz(+7,S' G$À---Á!4 O$& O":%Gz(N:#,2Â---

!+7, )#'"#3 < $#,'(3 )+7,OS$0$*#'"&* :#3'$"z€-!4+7, )#'" 3 < $#,'(

!4+, *+)+ &,( ; G$Lv:)*+ :lI:)Ã---Ä!:*#'+&,(w?L@{x:y&7,9)#':z€---!4:*#'+&,(

!4) $*#'+&,.-8*&,'$#,'(

!4) $*'+&,(¾---

!4 "$#%&#"'(

Figure 6.Extrait du document temporel obtenu à partir de celui de la figure 1

(11)

!#y'2€E/'+< $"$0:'+&7, )(

! y'2€E6'+< $"$0:'+ &,Å) &3"* $=>+#2?-gD>Q':"O$'=>+2?-? >{'z %$=>n%"$* $2$)>74(

! y'2€E6'+< $"$0:'+ &,Å) &3"* $=>+#2?-? >Q':"O$'=>+2?-gD>{'z %$=>n%"$* $2$)>74(

!4 y'2€E6'+< $"$0:'+ &, )(

Figure 7.Relations temporelles globales associées au document de la figure 6

(iii) de déplacer les facteurs composés d’une seule relation de base dans la description de chaque nœud source de cette relation.

Ainsi, on obtient le document temporel de la figure 6. On remarque que l’attribut



n’est plus nécessaire. Cette syntaxe permet donc de regrouper les relations indépendantes d’autres relations entre un nœud source et des nœuds cible. La relation RT se réduit alors à la disjonction présentée dans le document de la figure 7, nous l’appellerons relation temporelle globale.

4. Construction d’une feuille temporelle

L’objectif d’une feuille temporelle est de décrire les règles de transformation per- mettant de produire, à partir d’un document sourceDet de la relation temporelleRT, un document DT contenant explicitement les informations temporelles et un docu- ment contenant la relation temporelle globale. Il est important de noter que dans le cas où il n’y a pas de disjonctions dansRT, le deuxième document n’est pas produit.

La construction d’une feuille temporelle se fait en deux étapes : (1) l’identification des nœuds temporels, (2) la construction des étiquettes et des relations.

4.1. Etape 1 : Identification des nœuds temporels

Elle est réalisée par une expression de la forme : NT =P1|. . .|Pn

oùPiest un modèle de chemin dans l’arbre du documentD.

L’ensembleNT des nœuds temporels deDest composé des nœuds conformes à au moins l’un des modèles de cheminPi. Une étiquetteoƗ dont la valeur est unique dans le document est ajoutée à chacun de ces nœuds. Les modèles de chemin sont décrits avec le langage XPath.

(12)

4.2. Etape 2 : Construction des étiquettes et des relations 4.2.1. Affectation d’étiquettes aux nœuds temporels

Elle est réalisée par un ensemble d’expressions de la forme suivante : (P, e1=v1, . . . , en=vn)

où e1, . . . , en sont des étiquettes temporelles (start,end,durationdans cet article) etv1, . . . , vn leurs valeurs respectives à associer à chacun des nœuds temporels de DT conformes au modèle de chemin XPathP. Ces valeurs peuvent être littérales ou bien être obtenues par l’évaluation d’une fonction dépendant d’un ensemble de nœuds sélectionnés par une expression XPath.

Il faut noter que différentes règles de ce type peuvent concerner un même nœud source. Notre politique de gestion des conflits par défaut est la suivante (elle se rap- proche des cascades de CSS) : le règlement des conflits est réalisé au niveau des éti- quettes et non au niveau des règles. Ainsi, dans le cas où la définition d’une étiquette est en conflit avec une autre (même nœud, même nom d’étiquette, valeur différente) c’est celle définie dans la dernière règle qui est choisie et toutes les autres étiquettes lui sont ajoutées.

Nous proposons aussi un autre mode de gestion de conflits : une règle peut préciser qu’elle supprime toutes les étiquettes associées au nœud par les règles précédentes. Le mélange de ces deux modes permet de définir des propriétés par raffinement et aussi de définir des exceptions. Leskrègles appliquées au documentDpour fixer les étiquettes temporelles des nœuds sont donc de la forme suivante :

R1= (P1, e1,m1=v1,m1, . . . , en1,m1=vn1,m1) ...

Rk = (Pk, ek,mk=v1,mk, . . . , enk,mk=vnk,mk)

Pour chaque nœud temporelndeDT, l’ensembleP de ses étiquettes temporelles est calculé avec l’algorithme suivant :

P =∅

Ç



ȏ¿ˆoƒ R¿Éo¿

Si

ʃ Ê

ƒ

Ë£

ƒ

Ri

̃9ȏ

n∈Si

“o

Í

ƒÈS Ri

ΛSƒ ÅÏ

ÛSƒ

D P ={pi,1=vi,1, . . . , pni,mi=vni,mi}

Í

ƒÈS Ri

Λ9 À›Sƒ

? P =P− {(p=v)|∃j È pj ∈Si p=pj}

A P =P∪ {(pi,k=vi,ik)|∀k È 1< k k < mi,∀j È j < i}

La ligne 1 réinitialise l’ensemblePavec les étiquettes de la règleRi. Dans ce cas, la règleRi n’est donc prioritaire que sur les règlesRj avecj < i. La ligne 3 ajoute les étiquettes définies parRi; dans le cas où des étiquettes de même nom étaient déjà définies dansP, elles sont au préalable supprimées par la ligne 2.

(13)

4.2.2. La construction de la relation temporelleRT

Elle est réalisée par conjonction de l’évaluation des sous-expressions produites par les règles de la forme suivante sur le document source :

E::=(P s, P c, r, p1=v1, . . . , pn =vn)

| (E)

| E or E

| E and E

avecPsun modèle de chemin XPath dansD,Pcun chemin absolu XPath dansDou un chemin XPath relatif à chacun des nœuds temporels conformes à Ps,r un nom de relation et où p1, . . . , pn sont les paramètres de cette relation etv1, . . . , vn leurs valeurs respectives. Pour chaque nœudsconforme au modèle de cheminPset pour chaque nœudcatteint par un chemin absoluPc ou atteint par un chemin relatifPc à partir des, on crée la relation localer(s, c, p1 = v1, . . . , pn =vn). Rappelons que les paramètres d’une relation sont optionnels et dans cet article réduits au paramètre durée (cf. 3.1).

Ce mécanisme ne vérifie pas la consistance des relations temporelles définies par les règles, celle-ci devra être réaliséea posterioriau fur et à mesure de l’instanciation du document temporel. C’est l’une des perspectives de ce travail.

4.3. XML Time Sheet : un espace de noms pour feuilles temporelles

Nous proposons maintenant une syntaxeXMLpour décrire une feuille temporelle.

Cette syntaxe fait référence à l’espace de nom XML Time Sheet (« …g Ž

 |‘’ƒu“

”•–

Í »), de préfixe˜ .

Une feuille temporelle est composée d’un élément racine˜ Ž… oƒ .

™ ˜

Ž…

ƒ

˜

ƒŽ…

˜

‡|›#

…n  ŽF ‘’ ƒ 8“

 ˜

oÐ†#ћž

Cet élément contient :

– un et un seul élément qui spécifie l’ensemble des nœuds temporels conformes aux modèles de chemins XPathP1, . . . , Pn.

™ ˜

Ž… qo‡|›

P1|...|Pn

›Sž

– un ensemble d’éléments oƒ de la forme suivante

™ ˜

҅

oƒ j

Ó ‡|›

Ps

›L

£

Ó ‡› Pc

›

Ô

œ

‡|› start› œ ‡› end› œ  ‡|› duration›ž

Ô

¢ ™ ˜

҅

ƒ S¤

‡|›

› 1

‡|› v1›Î n

‡› vn

›ž¥Ö

™  ˜

oŽ…

oƒ9ž

La partie (a) de la règle associe si nécessaire des étiquettes temporelles aux nœuds source conformes au modèle de chemin XPath Ps. Dans la partie (b) de la règle, chaque élément˜ Ž… ƒ spécifie une relation temporelle de typeret de pa-

(14)

ramètresp1 = v1. . . pn = vn entre chaque couple(s, c)tel quesest conforme au modèle de cheminPsetcest atteint par un chemin XPathPcrelatif àsou absolu.

La figure 8 montre la feuille temporelle qui, appliquée au document de la figure 1, produit le documentDT et le document contenant la relation temporelle globale des figures 6 et 7. Elle indique :

1) La définition des nœuds temporels : il s’agit des nœuds conformes aux modèles de chemins XPath indiqués, c’est-à-dire les nœuds contenant des

nœuds , le premier nœud , les nœuds , et .

On associe également un alias à trois ensembles de nœuds temporels (réduits à des singletons). Cela permet de simplifier l’écriture de règles portant sur ces nœuds.

2) La définition des règles temporelles qui s’effectue généralement en deux temps, la définition des étiquettes temporelles puis celles des règles temporelles reliant les nœuds entre eux :

- On associe au premier nœud   contenant des nœuds

, deux étiquettes temporelles et . On notera que leur valeur est calculée à partir d’attributs extraits du document source.

- On définit ensuite une règle pour établir, entre les nœuds temporels, une coïn- cidence entre l’ordre de lecture du document et l’ordre temporel. Ainsi nous indiquons que tous les nœuds temporels (ayant un attribut o ) descendants du premier nœud (id2, id3, id4, id5, id6) succèdent aux nœuds temporels qui les précèdent (en particulier,id3succède àid2,id4àid3,id4àid2,id6àid5). Dans cette règle, on remarque une première exception (vial’attribut ˜ Ó ) pour le nœud temporelid7. La règle ne s’applique donc pas à ce nœud temporel (la dernière action de la phase de préparation) comme cible ou comme source. On ne précise donc pas de relation de succession pour ce nœud (id7ne suit ni ne ne précèdeid5ouid6).

Autrement dit, toutes les interprétations sont possibles (avant,après,pendant,che- vauche. . .). Cela permet d’exprimer que ces nœuds temporels sont concurrents (cf.

section 3.1). Pour les deux autres exceptions concernées (les nœudsid2.1etid2.2) par cette règle, le même mécanisme s’applique (les relations entre ces nœuds sont définies de façon spécifique dans la dernière règle).

- La troisième règle établit, pour les nœuds temporels, un lien entre l’imbrication des éléments et l’inclusion temporelle. Ainsi nous indiquons que

tous les nœuds temporels descendants du premier nœud

(id2, id2.1, id2.2, id3, id4, id5, id6, id7) ont lieu « pendant la durée de leur nœud père ». Dans notre exemple, en particulier,id2 a lieu pendantid1,id2.1 a lieu pen- dantid2,id2.2a lieu pendantid2,id3a lieu pendantid1,id4a lieu pendantid1,id5a lieu pendantid3,id6a lieu pendantid3,id7a lieu pendantid3.

- La dernière règle indique que les nœudsid2.1etid2.2ne peuvent avoir lieu en même temps et l’ordonnancement n’est pas précisé.

Les deuxième et troisème règles seront couramment utilisées. Elles exploitent la coïncidence implicite qui peut exister entre la structure logique d’un document et sa sémantique temporelle. La difficulté pour le concepteur de la feuille temporelle est de

(15)

!× y<0M~$")+&7,=>D-/@>7×(

!#y')E/"#30$)My< 0, )E/y') =>nG'' %5E44)+)-Ø3, +#~ B'0,5-/v"4#y')4@|-nD>(

TÙ#ÚÚfÛ Üp\^\[ \ ]^RhWeH^]W°heR[ WgiU] VW aneÅÚÚ7X

! y')oE/'+< $,& 2$){< :'*7G=>)#$*#'+&7,5-8*&,'$#,'.Ý -44:*'+&,Þ

ß

:#,$)#' G$)+ :

ß

%"$%ÒÝnDÞ

ß

+7, *+)+&,

ß

:*'+&,>4(

TÙ#ÚÚfÛ Üp\^\[ \ ]^Rh|à/Ya7\ YeqU]°VLhWePW^eWnika7W#eLhWq^]W°he9[ WgiU] VW ane¿ÚÚ7X

! y')oEF:0+ :){<:'*7G= >744) $*#'+&,.-8*&,'$#,'.ÝnDÞ4%"$ %4

:*#'+&7,Òݐ*&,':+7, )

Ô

-á>*#:"2+ :*P"z' G#<> Õ7Þ>

:) =>g1"$#%ªâ ã>74(

! y')oEF:0+ :){<:'*7G= >744) $*#'+&,.-8*&,'$#,'.ÝnDÞ4:#,$)' G$)+ :4

:*#'+&7,Òݐ*&,':+7, )

Ô

-á>*#:"2+ :*P"z' G#<> Õ7Þ>

:) =>º ,$)#'ªâ#ã>74(

! y')oEF:0+ :){<:'*7G= >744) $*#'+&,.-8*&,'$#,'.ÝnDÞ4:#,$)' G$)+ :4

:*#'+&7,Òݐ*&,':+7, )

Ô

-á>n0&& 2S%"$))73"$> Õ7Þ>

:) =>º ,$)#'ª#ä1>74(

TÙ#ÚÚfÛ Üp\^\[ \ ]^RhWelVå¶aW#eR[ WgiU] VW aa7W#ejÚÚ7X

TÙ#ÚÚfÛ Üp\^\[ \ ]^RhWefUV]nUV\Ü[ Üe9[ Wgi#U]#VW aa7WeShàØ°^J^]W°hRÚÚX

! y')oE/" 30$S)&73"* $ æ& 2$) = >) $*#'+&,5-8* &,'$#,'.ÝnDÞ>

)#':"'=>çè)#': "';+<$é >{2 3":'+&,=>çè$#,2;+< $B7è)#':"';+<$é>74(

TÙ#ÚÚMê#]\^Z\#hW^ZWNW^[VWRa àF] Vh VWlhWRa7WZ[g°VWNW[¼] Vh VWP[ Wgi#U]#VW a

W[HW®ZW8U|[ \ ]7^ejÚÚ7X

! y')oE/" 30$S)&73"* $ æ& 2$) = >) $*#'+&,5-8* &,'$#,'.ÝnDÞ44ëÝ/è'+<$+ 2Þ>

': "O$'æ& 2$) = >n%"$*#$$2+7,O€EE8ëÝ6è'+< $+2Þ>

$y* $#%'æ& 2$) = >7ì#1"$%ªâ ã

ß

ì º ,$)#'ªâ#ã

ß

ì º ,$)#'ª#ä1>7(

!#y')E/"$0:'+ &,S'z %$= >)73 **#$2$)>4(

!4 y')E/" 30 $(

TÙ#ÚÚíê ]\^Z\ hW^ZWNW^[VW9a à8\gik#V\Z Y[ \#]^9hW#ePÜ aÜgiW^[e

W[H\^Za8°e\ ]7^Å[ Wgi#U]#VW aa7WRÚÚX

! y')oE/" 30$S)&73"* $ æ& 2$) = >) $*#'+&,5-8* &,'$#,'.ÝnDÞ44ëÝ/è'+<$+ 2Þ>

': "O$'æ& 2$) = >n%:"$,'€EE8ëÝ/è'+<$+#2Þ>(

!#y')E/"$0:'+ &,S'z %$= >2 3"+,O>74(

!4 y')E/" 30 $(

TÙ#ÚÚïî®Z a8°e\ ]^Å[ WgiU] VW aa7WNW^[VW¼^]W°he9[ Wgi#U] VW age¿ÚÚ7X

! y')oE& "(

! y')E/" 30 $P)&3"*#$ æ& 2$) =>7ì º#,$)#'ª â ã>

':"O$ 'æ& 2$) =>7ì º#,$)#'ªä1>7(

! y')E6"$0:'+&,S'z %$=>n%"$* $2$)>74(

!4 y')E/" 30$(

! y')E/" 30 $P)&3"*#$ æ& 2$) =>7ì º#,$)#'ªä1>

':"O$ 'æ& 2$) =>7ì º#,$)#'ª â ã>7(

! y')E6"$0:'+&,S'z %$=>n%"$* $2$)>74(

!4 y')E/" 30$(

!4 y')E& "(

!4 y')E6" 30$) (

Figure 8.Feuille temporelle associée au document de la figure 1

(16)

définir les expressions XPath permettant respectivement de désigner les nœuds source et cible. Nous pensons que c’est justement la puissance d’expression du langage XPath qui facilitera la définition de règles génériques ou spécifiques à un contexte donné.

5. Conclusion

Dans cet article, nous avons proposé un outil permettant de générer un document

XMLtemporalisé à partir d’un document source et d’une feuille temporelle. Les règles et les exceptions associées énoncées dans cette feuille précisent les liens entre les éléments du document source et les informations temporelles que l’utilisateur souhaite intégrer au document temporalisé. Cet outil comprend :

– un langage de description enXMLdes aspects temporels d’un documentXML

fondé sur un modèle basé sur les relations d’Allen ;

– un langage de feuille temporelle permettant de localiser par des chemins XPath dans le document à temporaliser, les éléments temporels (ceux qui représentent des événements) et de décrire leurs attributs temporels et les relations d’Allen qui existent entre eux ;

– un moteur qui, à partir d’un document source et d’une feuille temporelle, permet de construire le document temporalisé correspondant.

Un premier prototype de cet outil, initialement proposé dans(Brunoet al., 2004) a été implanté en utilisant le langageXSLTpour traduire une feuille temporelle en un ensemble de feuilles XSLTqui appliquées successivement au document source pro- duisent le document temporalisé associé. Le modèle présenté ici est plus riche, un nouveau prototype écrit en Java est en cours de développement.

Nos perspectives dans le cadre de ce travail sont les suivantes. Tout d’abord, il est nécessaire de proposer un mécanisme permettant de déduire les règles temporelles manquantes et de vérifier leur consistance. Nous envisageons également d’étendre notre modèle pour prendre en compte, les « différents » temps du documents (temps du cycle de vie du document, temps du discours . . .). Notre objectif, à plus long terme, est que ces temps puissent être clairement distingués, mais aussi interrogés conjointe- ment. A l’heure actuelle, aucun des langages de manipulation de documentsXML, que ce soitXSLTou XQuery, ne propose de mécanismes spécifiques à la manipulation de données temporelles. Nous travaillons sur une extension du langage XQuery le per- mettant. Enfin, la difficulté d’écriture d’une feuille temporelle nous conduit à envisa- ger l’étude de mécanismes d’assistance comme par exemple l’utilisation de techniques de traitement automatique de la langue naturelle pour suggérer des règles possibles à l’utilisateur.

6. Bibliographie

Allen J., « Time and time again: The many ways to represent time », International Journal of Intelligent Systems, vol. 6, n° 4, July 1991, p. 341-355.

Ayars J., « Synchronized multimedia integration language (SMIL 2.0) », Recommendation, W3C, 2001, http://www.w3.org/TR/2001/REC-smil20-20010807/.

(17)

Boag S. et al. (Eds), « XQuery 1.0 : An XML query language », Working draft, W3C, 2003, http://www.w3.org/TR/2002/WD-XQuery-20030822.

Bray T. et al. (Eds), Extensible Markup Language (XML) 1.0 (second edition), Recommendation, W3C, 2000, http://www.w3.org/TR/2000/REC-xml-20001006.

Bruno E., Murisasco E., Le Maitre J., Documents XML temporels, modélisation et interrogation, Actes du XXIIème congrès INFORSID, Biarritz, France, 2004.

Chamberlin D., XML Query Use Cases. Working draft, W3C, 2003, http://www.w3.org/TR/2003/WD-xquery-use-cases-20030822/.

Clark J., DeRose S. (Eds), XML Path Language (XPath) version 1.0. Recommendation, W3C, 1999, http://www.w3.org/TR/1999/REC-xpath-19991116.

Clark J. (Ed.), XSL Transformations (XSLT) version 1.0. Recommendation, W3C, 1999, http://www.w3.org/TR/1999/REC-xslt-19991116.

DeRose S. J., Durand D. G., Making Hypermedia Work. A User’s Guide to HyTime, Kluwer Academic Publishers, 1994.

Dumas M., Fauvet M.-C., Scholl P.-C, « Tempos: a platform for developing temporal applications on top of object DBMS », IEEE Transactions on Knowledge and Data Engineering, vol. 16, n° 3, 2004, p. 354-374.

Fernandez M. et al. (Eds), « XQuery 1.0 and XPath 2.0 Data Model », Working draft, W3C, 2003, http://www.w3.org/TR/2003/WD-xpath-datamodel 20031112/.

Gabillon A., Bruno E., « Regulating access to xml documents », Proceedings of Database and Application Security XV, IFIP TC11/WG11.3 Fifteenth Annual Working Conference on Database and Application Security, Niagara on the Lake, Ontario, Canada, July 2001, vol. 215, p. 299-314.

Goldfarb C.-F., The SGML Handbook, Oxford Clarendon Press, 1990.

Grandi F., « Introducing an annotated bibliography on temporal and evolution aspects in the world wide web », Sigmod Record, vol. 33, n° 2, June 2004.

Jourdan M., Layada N., Roisin C., Sabry-Ismail L., Tardif L., « Madeus, an authoring environment for interactive multimedia documents », Proceedings of the 6th ACM International Conference on Multimedia, Bristol, UK, September 1998, p. 267-272.

Kate W., « Timesheets - Integrating timing in XML », Proceedings of the WWW9 Workshop: Multimedia on Web, Amsterdam, The Netherlands, May 2000, http://homepages.cwi.nl/lynda/www9/Timesheets.www9.html.

Manukyan M. G., Kalinenchenko L. A., « Temporal XML », Proceedings of the 5th East European Symposium on Advances in Databases and Information Systems (ADBIS’01), Vilnius, Lithuania, September 2001.

Pustejovsky J. et al., TimeML: Robust specification of event and temporal expressions in text, Proceedings of the 5th International Workshop on Computational Semantics, Tilburg, The Netherlands, January 2003.

Snodgrass R. T. (Ed.), The TSQL2 Temporal Query Language, Kluwer, 1995.

(18)

Références

Documents relatifs

For the goal of determining whether XML documents were invalidated due to schema evolution, the system must recognize and analyze the differences be- tween the old ( S 0 ) and new ( S

Trans- formation systems are mostly based on one of these formal models - syntax directed translation schema, tree transformation grammar, descending tree transducer and higher

• La définition des balises autorisées dans un document ainsi que leur potentielle organisation dans un document spécifique sont décrites à l’aide d’une DTD (Document

• Si dans la feuille de style on prévoit une instruction xsl:template pour traiter un certain élément, ne pas oublier de préciser dans l’instruction ce qui doit se passer avec

 Un axe dont les nœuds sont soit le nœud contexte, soit des nœuds qui suivent le nœud contexte dans l’ordre du document est un axe avant.  Un axe dont les nœuds sont soit

difference between child and adult speakers, here it will be argued that the child-specific pattern of neutralization in strong position has its roots in articulatory

On verra par exemple que le choix d’un éditeur XML n’est pas simple, suivant les critères retenus : open source ou payant, adapté pour la saisie d’un grain ou bien d’un

This representation allows a classification based on content and document structure like the work of Vercoustre, our vector features are different and for