Bonjour,

J'ai la DTD suivante :
Code XML : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<!ENTITY % foreign-dtd PUBLIC "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd" >
%foreign-dtd;
<!ENTITY  % type "(boolean)">
 
<!ELEMENT questions             (question+)>
<!ELEMENT question              (label,typeOfAnswer,minimumNumberOfAnswer,coveringRate,preformatedHTMLText,tags)>
<!ELEMENT typeOfAnswer          &type;>
  <!ELEMENT boolean             EMPTY>
<!ELEMENT minimumNumberOfAnswer (#PCDATA)>
<!ELEMENT coveringRate          (#PCDATA)>
<!ELEMENT label                 (#PCDATA)>
<!ELEMENT preformatedHTMLText   (Flow)>
<!ELEMENT tags                  (tag+)>
<!ELEMENT tag                   (#PCDATA)>

Que je souhaite transformer en XSD... Vu que c'est ce qui est utilisé pour la validation par les beans et que le DTD ( bien que ce soit ce qu'on nous apprenne encor ) soit déprécié depuis 2001...

Voici ce que j'obtiens
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
 
<simpleType name='foreign-dtd PUBLIC' base='http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
</simpleType>
 
<element name="questions">
 <complexType content="elementOnly">
  <element ref="nomProjet:question" maxOccurs="unbounded">
 </complexType>
<element>
 
<element name="question">
 <complexType content="elementOnly">
  <element ref="nomProjet:label">
  <element ref="nomProjet:typeOfAnswer"">
  <element ref="nomProjet:minimumNumberOfAnswer">
  <element ref="nomProjet:coveringRate">
  <element ref="nomProjet:preformatedHTMLText">
  <element ref="nomProjet:tags">
 </complexType>
<element>
 
<element name="tags">
 <complexType content="elementOnly">
  <element ref="nomProjet:tag" maxOccurs="unbounded">
 </complexType>
<element>
 
<simpleType name='label' base='string'>
</simpleType>
<simpleType name='minimumNumberOfAnswer' base='string'>
</simpleType>
<simpleType name='coveringRate' base='string'>
</simpleType>
<simpleType name='label' base='tag'>
</simpleType>
Seulement, il manque plusieurs choses ( en plus du fait que le présent doit être incorrect :s )

Je ne suis pas sûr que mon entité allant chercher le xhml1-strict soit valide
Je ne sais pas comment représenter le typeOfAnswer ( actuellement c'est du booléan mais le XSD pourra évoluer, acceptant des strings, des arrays... )
Je ne sais pas comment représenter mon preformatedHTMLText qui découle du xhtml1-strict

Si vous remarquez d'autres choses, merci à vous de me le signaler