Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
Stephane Crozat
hdoc
Commits
723f3aeb
Commit
723f3aeb
authored
Dec 07, 2015
by
Jean-Baptiste Martin
Browse files
Merge branch 'master' of gitlab.utc.fr:crozatst/hdoc
# Conflicts: # wikipedia_to_hdoc/hdoc_to_opale2
parents
200ec902
d148847a
Changes
98
Expand all
Hide whitespace changes
Inline
Side-by-side
mindmapping_to_hdoc/README.md
0 → 100644
View file @
723f3aeb
Mindmapping to HDOC
===================
Projet de conversion du format Freemind vers hdoc.
mindmapping_to_hdoc/mind
M
apping
2H
doc.ant
→
mindmapping_to_hdoc/mind
m
apping
_to_h
doc.ant
View file @
723f3aeb
...
...
@@ -14,26 +14,25 @@
<echo>
----------------------------Begin of conversion----------------------------------
</echo>
<!-- Sect Schema : only sect element -->
<!-- Sect Schema : only sect element -->
<antcall
target=
"Makehdoc"
>
<param
name=
"myXSLT"
value=
"sect.xsl"
/>
<param
name=
"hdocName"
value=
"sect"
/>
</antcall>
<!-- Div Schema : sect and div element -->
<!-- Div Schema : sect and div element -->
<antcall
target=
"Makehdoc"
>
<param
name=
"myXSLT"
value=
"div.xsl"
/>
<param
name=
"hdocName"
value=
"div"
/>
</antcall>
<!-- Div Schema : sect, div and p element -->
<antcall
target=
"Makehdoc"
>
<!-- Div Schema : sect, div and p element -->
<antcall
target=
"Makehdoc"
>
<param
name=
"myXSLT"
value=
"threeLevel.xsl"
/>
<param
name=
"hdocName"
value=
"three"
/>
</antcall>
<!--
<delete dir="${basedir}/temp"/>
-->
<delete
dir=
"${basedir}/temp"
/>
<echo>
----------------------------End of conversion----------------------------------
</echo>
</target>
...
...
@@ -43,8 +42,6 @@
<mkdir
dir=
"${basedir}/temp"
/>
<delete
dir=
"${resultFile}/hdoc"
></delete>
<mkdir
dir=
"${resultFile}/hdoc"
/>
<delete
dir=
"${resultFile}/scar"
></delete>
<mkdir
dir=
"${resultFile}/scar"
/>
<!--<condition>
<equals arg1="${foo}" arg2=""/>
</condition> -->
...
...
@@ -66,30 +63,9 @@
<!-- zipping files as the hdoc format -->
<zip
destfile=
"${resultFile}/hdoc/${hdocName}.hdoc"
basedir=
"${basedir}/temp/${hdocName}"
/>
<!-- to generate scar files -->
<antcall
target=
"opale_conversion"
/>
<!-- </condition> -->
<echo>
end data conversion
</echo>
</target>
<!-- Connect this to the work of the other group about hdoc to opale (configure and call their ant etc.) -->
<target
name=
"opale_conversion"
if=
"${opale.exists}"
depends=
"opale_test"
>
<!-- <condition property="converting.set" else="false"> -->
<ant
antfile=
"${basedir}/hdoctoopale/hdoc_to_opale.ant"
dir=
"${basedir}/hdoctoopale"
>
<property
name=
"InputPath"
value=
"${resultFile}/hdoc/${hdocName}.hdoc"
/>
<property
name=
"OutputPath"
value=
"${resultFile}/scar/${hdocName}.scar"
/>
</ant>
</target>
<!-- check if opale convertion is asked by the user -->
<target
name=
"opale_test"
>
<condition
property=
"opale.exists"
else=
"false"
>
<equals
arg1=
"${opale}"
arg2=
"true"
/>
</condition>
<echo
message=
"Run opale conversion ? ${opale.exists}"
/>
</target>
</project>
mindmapping_to_hdoc/readme.txt
View file @
723f3aeb
...
...
@@ -3,15 +3,9 @@
#1 : you want to convert your freemindFile in Hdoc
- put your freemind file in the mindMapping_to_Hdoc
- enter the command line :
- linux : ant -buildfile mind
M
apping
2H
doc.ant -DinputPath <yourFilename>
- windows : C:\ant\bin\ant -buildfile mind
M
apping
2H
doc.ant -DinputPath <yourFilename>
- linux : ant -buildfile mind
m
apping
_to_h
doc.ant -DinputPath <yourFilename>
- windows : C:\ant\bin\ant -buildfile mind
m
apping
_to_h
doc.ant -DinputPath <yourFilename>
you will find the result in the folder result/hdoc
#2 : you want a .scar (for scenari)
- put your freemind file in the mindMapping_to_Hdoc
- enter the command line :
- linux : ant -buildfile mindMapping2Hdoc.ant -DinputPath <yourFilename> -Dopale true
- windows : C:\ant\bin\ant -buildfile mindMapping2Hdoc.ant -DinputPath <yourFilename> -Dopale true
you will find the result in the folder result/opale
mindmapping_to_
hdoc/temp/sect
/mimetype
→
mindmapping_to_
opale
/mimetype
100644 → 100755
View file @
723f3aeb
File moved
mindmapping_to_opale/mind
M
apping
2O
pale.ant
→
mindmapping_to_opale/mind
m
apping
_to_o
pale.ant
View file @
723f3aeb
...
...
@@ -2,45 +2,84 @@
<project
basedir=
"."
default=
"default"
>
<property
name=
"module"
value=
"default"
/>
<!--
only for the debug
<property name="inputPath" value="test.mm"></property>
<property name="outputPath"
value="content.xml"/>
<property name="converting"
value="yes"/>
only for the debug
<property name="inputPath" value="test.mm"></property>
<property name="outputPath"
value="content.xml"/>
<property name="converting"
value="yes"/>
-->
<property
name=
"resultFile"
value=
"${basedir}/result"
/>
<target
name=
"default"
>
<target
name=
"default"
depends=
"preparation"
>
<echo>
----------------------------Begin of conversion----------------------------------
</echo>
<!-- Sect Schema : only sect element -->
<antcall
target=
"opale_conversion"
>
<!-- Sect Schema : only sect element -->
<antcall
target=
"Makehdoc"
>
<param
name=
"hdocName"
value=
"sect"
/>
</antcall>
<!-- Div Schema : sect and div element -->
<antcall
target=
"
opale_conversion
"
>
<!-- Div Schema : sect and div element -->
<antcall
target=
"
Makehdoc
"
>
<param
name=
"hdocName"
value=
"div"
/>
</antcall>
<!-- Div Schema : sect, div and p element -->
<antcall
target=
"
opale_conversion
"
>
<!-- Div Schema : sect, div and p element -->
<antcall
target=
"
Makehdoc
"
>
<param
name=
"hdocName"
value=
"three"
/>
</antcall>
<!--
<delete dir="${basedir}/temp"/>
-->
<delete
dir=
"${basedir}/temp"
/>
<echo>
----------------------------End of conversion----------------------------------
</echo>
</target>
<target
name=
"preparation"
>
<echo>
Setting up the conversion
</echo>
<delete
dir=
"${basedir}/temp"
></delete>
<mkdir
dir=
"${basedir}/temp"
/>
<delete
dir=
"${resultFile}/hdoc"
></delete>
<mkdir
dir=
"${resultFile}/hdoc"
/>
<delete
dir=
"${resultFile}/scar"
></delete>
<mkdir
dir=
"${resultFile}/scar"
/>
<!--<condition>
<equals arg1="${foo}" arg2=""/>
</condition> -->
<!-- //delete temp -->
<echo>
--- End ----
</echo>
</target>
<!-- Convert a mindMap file into a hdoc, with a xsl schema specified in the parameter -->
<target
name=
"Makehdoc"
>
<echo>
Begin data conversion
</echo>
<!-- to generate scar files -->
<antcall
target=
"hdoc_conversion"
/>
<antcall
target=
"opale_conversion"
/>
<!-- </condition> -->
<!--<delete dir="${resultFile}/hdoc"></delete>-->
<echo>
end data conversion
</echo>
</target>
<target
name=
"hdoc_conversion"
>
<!-- <condition property="converting.set" else="false"> -->
<ant
antfile=
"${basedir}/../mindmapping_to_hdoc/mindmapping_to_hdoc.ant"
dir=
"${basedir}/../mindmapping_to_hdoc"
>
<property
name=
"InputPath"
value=
"${inputPath}"
/>
</ant>
</target>
<!-- Connect this to the work of the other group about hdoc to opale (configure and call their ant etc.) -->
<target
name=
"opale_conversion"
>
<!-- <condition property="converting.set" else="false"> -->
<ant
antfile=
"${basedir}/hdoc_to_opale/hdoc_to_opale.ant"
dir=
"${basedir}/hdoc_to_opale"
>
<property
name=
"InputPath"
value=
"${
basedir}/${inputPath}
"
/>
<property
name=
"OutputPath"
value=
"${resultFile}/${hdocName}.scar"
/>
<property
name=
"InputPath"
value=
"${
resultFile}/hdoc/${hdocName}.hdoc
"
/>
<property
name=
"OutputPath"
value=
"${resultFile}/
scar/
${hdocName}.scar"
/>
</ant>
</target>
</project>
mindmapping_to_opale/readme.txt
View file @
723f3aeb
# how to use the converter
#1 : you want to convert your freemindFile in Opale
- put your freemind file in the mind
M
apping_to_
O
pale
- put your freemind file in the mind
m
apping_to_
o
pale
- enter the command line :
- linux : ant -buildfile mind
M
apping
2O
pale.ant -DinputPath <yourFilename>
- windows : C:\ant\bin\ant -buildfile mind
M
apping
2Hdoc
.ant -DinputPath <yourFilename>
- linux : ant -buildfile mind
m
apping
_to_o
pale.ant -DinputPath <yourFilename>
- windows : C:\ant\bin\ant -buildfile mind
m
apping
_to_opale
.ant -DinputPath <yourFilename>
you will find the result in the folder result/opale
mindmapping_to_opale/samples/div.hdoc
deleted
100644 → 0
View file @
200ec902
File deleted
mindmapping_to_opale/samples/sample.mm
0 → 100755
View file @
723f3aeb
<
map
version
=
"0.9.0"
>
<!-
-
To
view
this
file
,
download
free
mind
mapping
software
FreeMind
from
http
:
//freemind.sourceforge.net -->
<
node
CREATED
=
"1418378469636"
ID
=
"ID_1761352614"
MODIFIED
=
"1418378846033"
TEXT
=
"Compte rendu reunion"
>
<
node
CREATED
=
"1418378601388"
ID
=
"ID_316552916"
MODIFIED
=
"1418378852113"
POSITION
=
"left"
TEXT
=
"Avancé du travail"
>
<
node
CREATED
=
"1418378754221"
ID
=
"ID_378495707"
MODIFIED
=
"1418378796204"
TEXT
=
"Amélioration du rendement"
/>
<
node
CREATED
=
"1418378777668"
ID
=
"ID_1029064924"
MODIFIED
=
"1418378790435"
TEXT
=
"Création d'un nouveau systeme de paiement"
/>
</
node
>
<
node
CREATED
=
"1418378647414"
ID
=
"ID_58016685"
MODIFIED
=
"1418378674936"
POSITION
=
"left"
TEXT
=
"Résultat courrant"
>
<
node
CREATED
=
"1418378826291"
ID
=
"ID_1497466150"
MODIFIED
=
"1418378837905"
TEXT
=
"70% du travail fait"
/>
</
node
>
<
node
CREATED
=
"1418378677920"
ID
=
"ID_92198961"
MODIFIED
=
"1418378859207"
POSITION
=
"left"
TEXT
=
"Rappel du travail à realiser"
>
<
node
CREATED
=
"1418378863191"
ID
=
"ID_1997168106"
MODIFIED
=
"1418378890823"
TEXT
=
"Changement du process de relation client"
>
<
node
CREATED
=
"1418378925585"
ID
=
"ID_1529753947"
MODIFIED
=
"1418378933336"
TEXT
=
"Formation"
/>
<
node
CREATED
=
"1418378953204"
ID
=
"ID_1194109046"
MODIFIED
=
"1418378981259"
TEXT
=
"Sondage clientèle"
/>
</
node
>
<
node
CREATED
=
"1418378895031"
ID
=
"ID_412980386"
MODIFIED
=
"1418378920965"
TEXT
=
"Trouver de nouveaux client d'ici la fin de l'année"
/>
</
node
>
</
node
>
</
map
>
mindmapping_to_opale/samples/sample2.mm
0 → 100755
View file @
723f3aeb
<
map
version
=
"0.9.0"
>
<!-
-
To
view
this
file
,
download
free
mind
mapping
software
FreeMind
from
http
:
//freemind.sourceforge.net -->
<
node
CREATED
=
"1418606391589"
ID
=
"ID_454446755"
MODIFIED
=
"1418606417987"
TEXT
=
"programme de secu routiere"
>
<
node
CREATED
=
"1418606450066"
ID
=
"ID_383900900"
MODIFIED
=
"1418606482066"
POSITION
=
"right"
TEXT
=
"Préalable au permis AC"
>
<
node
CREATED
=
"1418606561203"
ID
=
"ID_1110819501"
MODIFIED
=
"1418606567956"
TEXT
=
"Le véhicule"
/>
<
node
CREATED
=
"1418606578217"
ID
=
"ID_1961936848"
MODIFIED
=
"1418606584462"
TEXT
=
"L'envirronement"
/>
<
node
CREATED
=
"1418606570796"
ID
=
"ID_457097199"
MODIFIED
=
"1418606575580"
TEXT
=
"Le conducteur"
/>
<
node
CREATED
=
"1418606589776"
ID
=
"ID_978399290"
MODIFIED
=
"1418606594322"
TEXT
=
"Evaluation"
/>
<
node
CREATED
=
"1418606598101"
ID
=
"ID_1501725095"
MODIFIED
=
"1418606607242"
TEXT
=
"Comportement à risque"
/>
</
node
>
<
node
CREATED
=
"1418606492772"
ID
=
"ID_613975962"
MODIFIED
=
"1418606499448"
POSITION
=
"right"
TEXT
=
"Conduite dirigée"
>
<
node
CREATED
=
"1418606622492"
ID
=
"ID_1600761516"
MODIFIED
=
"1418606636686"
TEXT
=
"Conduite accompagnée"
>
<
node
CREATED
=
"1418606656823"
ID
=
"ID_1376756602"
MODIFIED
=
"1418606672095"
TEXT
=
"sortie1"
/>
<
node
CREATED
=
"1418606674391"
ID
=
"ID_1382274289"
MODIFIED
=
"1418606682547"
TEXT
=
"sortie2"
/>
</
node
>
<
node
CREATED
=
"1418606643059"
ID
=
"ID_1676401750"
MODIFIED
=
"1418606651237"
TEXT
=
"Strategie EOA"
>
<
node
CREATED
=
"1418606691058"
ID
=
"ID_215659634"
MODIFIED
=
"1418606698537"
TEXT
=
"sortie3"
/>
<
node
CREATED
=
"1418606700748"
ID
=
"ID_628090920"
MODIFIED
=
"1418606704292"
TEXT
=
"sortie4"
/>
</
node
>
</
node
>
<
node
CREATED
=
"1418606504857"
ID
=
"ID_1727510105"
MODIFIED
=
"1418606520210"
POSITION
=
"right"
TEXT
=
"Conduite semi-dirigée"
>
<
node
CREATED
=
"1418606717451"
ID
=
"ID_1933295002"
MODIFIED
=
"1418606723640"
TEXT
=
"Vitesse"
>
<
node
CREATED
=
"1418606749348"
ID
=
"ID_977956318"
MODIFIED
=
"1418606752169"
TEXT
=
"sortie5"
/>
<
node
CREATED
=
"1418606759122"
ID
=
"ID_1756345717"
MODIFIED
=
"1418606762958"
TEXT
=
"sortie6"
/>
</
node
>
<
node
CREATED
=
"1418606725101"
ID
=
"ID_409957994"
MODIFIED
=
"1418606734044"
TEXT
=
"Partage de la route"
>
<
node
CREATED
=
"1418606781929"
ID
=
"ID_1706071902"
MODIFIED
=
"1418606785607"
TEXT
=
"sortie7"
/>
<
node
CREATED
=
"1418606788532"
ID
=
"ID_1983287008"
MODIFIED
=
"1418606791442"
TEXT
=
"sortie8"
/>
</
node
>
<
node
CREATED
=
"1418606736223"
ID
=
"ID_1043802889"
MODIFIED
=
"1418606743306"
TEXT
=
"Alcool, Drogues"
>
<
node
CREATED
=
"1418606796625"
ID
=
"ID_1501404128"
MODIFIED
=
"1418606800268"
TEXT
=
"sortie9"
/>
<
node
CREATED
=
"1418606802305"
ID
=
"ID_448927919"
MODIFIED
=
"1418606804819"
TEXT
=
"sortie10"
/>
</
node
>
</
node
>
<
node
CREATED
=
"1418606528835"
ID
=
"ID_935257249"
MODIFIED
=
"1418606542045"
POSITION
=
"right"
TEXT
=
"Conduite semi-dirigée semi autonome"
>
<
node
CREATED
=
"1418606827484"
ID
=
"ID_853775069"
MODIFIED
=
"1418606844034"
TEXT
=
"fatigue , distractions"
>
<
node
CREATED
=
"1418606861776"
ID
=
"ID_24586248"
MODIFIED
=
"1418606867474"
TEXT
=
"sortie11"
/>
<
node
CREATED
=
"1418606875176"
ID
=
"ID_855560171"
MODIFIED
=
"1418606878093"
TEXT
=
"sortie12"
/>
</
node
>
<
node
CREATED
=
"1418606851998"
ID
=
"ID_541557490"
MODIFIED
=
"1418606858821"
TEXT
=
"Ecoconduite"
>
<
node
CREATED
=
"1418606882771"
ID
=
"ID_154074706"
MODIFIED
=
"1418606886369"
TEXT
=
"sortie13"
/>
<
node
CREATED
=
"1418606889201"
ID
=
"ID_1593713209"
MODIFIED
=
"1418606892102"
TEXT
=
"sortie14"
/>
<
node
CREATED
=
"1418606897432"
ID
=
"ID_1952539264"
MODIFIED
=
"1418606902141"
TEXT
=
"sortie15"
/>
</
node
>
</
node
>
</
node
>
</
map
>
mindmapping_to_opale/samples/sample3.mm
0 → 100755
View file @
723f3aeb
<
map
version
=
"0.9.0"
>
<!-
-
To
view
this
file
,
download
free
mind
mapping
software
FreeMind
from
http
:
//freemind.sourceforge.net -->
<
node
CREATED
=
"1418607438078"
ID
=
"ID_1958569107"
MODIFIED
=
"1418607448467"
TEXT
=
"Plan du Rapport"
>
<
node
CREATED
=
"1418607474480"
FOLDED
=
"true"
ID
=
"ID_86924294"
MODIFIED
=
"1418607616699"
POSITION
=
"right"
TEXT
=
"Introduction"
>
<
node
CREATED
=
"1418607614494"
ID
=
"ID_1063923620"
MODIFIED
=
"1418607614494"
TEXT
=
""
/>
</
node
>
<
node
CREATED
=
"1418607618206"
ID
=
"ID_910420031"
MODIFIED
=
"1418607623704"
POSITION
=
"right"
TEXT
=
"Organisation"
>
<
node
CREATED
=
"1418607641722"
ID
=
"ID_288284301"
MODIFIED
=
"1418607648211"
TEXT
=
"orga générale"
/>
<
node
CREATED
=
"1418607650971"
ID
=
"ID_370243324"
MODIFIED
=
"1418607658878"
TEXT
=
"orga des équipes"
/>
<
node
CREATED
=
"1418607669352"
ID
=
"ID_1808837894"
MODIFIED
=
"1418607672662"
TEXT
=
"orga interne"
/>
</
node
>
<
node
CREATED
=
"1418607682617"
ID
=
"ID_1726101553"
MODIFIED
=
"1418607687170"
POSITION
=
"right"
TEXT
=
"Decoupage du produit"
>
<
node
CREATED
=
"1418607697178"
ID
=
"ID_949238874"
MODIFIED
=
"1418607702783"
TEXT
=
"PBS de chaque module"
/>
<
node
CREATED
=
"1418607711378"
ID
=
"ID_1498809943"
MODIFIED
=
"1418607742604"
TEXT
=
"Aspect/ Fonctionnalité"
/>
</
node
>
<
node
CREATED
=
"1418607773053"
ID
=
"ID_1627301277"
MODIFIED
=
"1418607783321"
POSITION
=
"right"
TEXT
=
"Estimation des charges"
>
<
node
CREATED
=
"1418607819019"
ID
=
"ID_1957551472"
MODIFIED
=
"1418607834483"
TEXT
=
"reestimer des charges"
/>
<
node
CREATED
=
"1418607837276"
ID
=
"ID_1775330738"
MODIFIED
=
"1418607844591"
TEXT
=
"comparer le travail"
/>
<
node
CREATED
=
"1418607847276"
ID
=
"ID_1483689088"
MODIFIED
=
"1418607862033"
TEXT
=
"méthode de calcul de travail"
/>
<
node
CREATED
=
"1418607871871"
ID
=
"ID_1567742337"
MODIFIED
=
"1418607876991"
TEXT
=
"ordonnancement global"
/>
</
node
>
<
node
CREATED
=
"1418607925605"
ID
=
"ID_1701310771"
MODIFIED
=
"1418607932015"
POSITION
=
"right"
TEXT
=
"Analyse des risques"
/>
<
node
CREATED
=
"1418607943095"
ID
=
"ID_1606620696"
MODIFIED
=
"1418607946997"
POSITION
=
"right"
TEXT
=
"Conclusion"
/>
</
node
>
</
map
>
mindmapping_to_opale/samples/sect.hdoc
deleted
100644 → 0
View file @
200ec902
File deleted
mindmapping_to_opale/samples/three.hdoc
deleted
100644 → 0
View file @
200ec902
File deleted
wikipedia_to_hdoc/format_hdoc/hdoc1-xhtml.rng
0 → 100644
View file @
723f3aeb
<?xml version="1.0" encoding="UTF-8"?>
<grammar
xmlns=
"http://relaxng.org/ns/structure/1.0"
xmlns:a=
"http://relaxng.org/ns/compatibility/annotations/1.0"
datatypeLibrary=
"http://www.w3.org/2001/XMLSchema-datatypes"
ns=
"http://www.utc.fr/ics/hdoc/xhtml"
>
<a:documentation>
This schema describes the content file for hdoc format
</a:documentation>
<a:documentation>
This schema is a restriction of XHTML (it validates XHTML
schema, if namespace is changed to http://www.w3.org/1999/xhtml)
</a:documentation>
<a:documentation>
Last update : 2014-12-22
</a:documentation>
<a:documentation>
Changes since last update :
Adding biblio management via a href='' data-hdoc-type='bibtexml'
</a:documentation>
<start>
<element
name=
"html"
>
<ref
name=
"Head"
/>
<ref
name=
"Body"
/>
</element>
</start>
<define
name=
"Head"
>
<element
name=
"head"
>
<!-- mandatory : document title -->
<element
name=
"title"
>
<text/>
</element>
<!-- mandatory : charset=utf-8 -->
<element
name=
"meta"
>
<attribute
name=
"charset"
>
<value>
utf-8
</value>
</attribute>
</element>
<!-- optional : hdoc source generator -->
<optional>
<element
name=
"meta"
>
<attribute
name=
"name"
>
<value>
generator
</value>
</attribute>
<attribute
name=
"content"
>
<choice>
<value>
SimpleOptim
</value>
<value>
HdocConverter/SimpleChain
</value>
<value>
SimpleChain
</value>
<value>
HdocConverter/Etherpad
</value>
<value>
HdocConverter/Opale3.4
</value>
<value>
HdocConverter/Dokiel4.0
</value>
<value>
HdocConverter/Optim1.2
</value>
<value>
HdocConverter/Topaze1.3
</value>
<value>
HdocConverter/wikipedia
</value>
<value>
HdocConverter/Wordpress
</value>
<value>
HdocConverter/OpenDocumentText
</value>
<value>
HdocConverter/LaTeX
</value>
<value>
HdocConverter/OPML
</value>
<value>
HdocConverter/DITA
</value>
</choice>
</attribute>
</element>
</optional>
<!-- optional : metadata about content ; TODO : date...-->
<zeroOrMore>
<element
name=
"meta"
>
<attribute
name=
"name"
>
<choice>
<value>
description
</value>
<value>
keywords
</value>
<value>
author
</value>
<value>
rights
</value>
<value>
date
</value>
</choice>
</attribute>
<attribute
name=
"content"
>
<text/>
</attribute>
</element>
</zeroOrMore>
</element>
</define>
<define
name=
"Body"
>
<element
name=
"body"
>
<ref
name=
"Structure"
/>
</element>
</define>
<define
name=
"Structure"
>
<oneOrMore>
<ref
name=
"Section"
/>
</oneOrMore>
</define>
<!-- Recursive and hierachical organization of the document -->
<define
name=
"Section"
>
<element
name=
"section"
>
<!-- optional typing -->
<ref
name=
"SectionType"
/>
<!-- mandatory : title (header > h1) -->
<element
name=
"header"
>
<element
name=
"h1"
>
<text/>
</element>
<optional>
<element
name=
"div"
>
<attribute
name=
"data-hdoc-type"
>
<value>
author
</value>
</attribute>
<text/>
</element>
</optional>
<optional>
<element
name=
"div"
>
<attribute
name=
"data-hdoc-type"
>
<value>
date
</value>
</attribute>
<data
type=
"date"
/>
</element>
</optional>
<optional>
<element
name=
"div"
>
<attribute
name=
"data-hdoc-type"
>
<value>
rights
</value>
</attribute>
<text/>
</element>
</optional>
<optional>
<element
name=
"div"
>
<attribute
name=
"data-hdoc-type"
>
<value>
introduction
</value>
</attribute>
<text/>
</element>
</optional>
</element>
<!-- optional content of the section-->
<optional>
<ref
name=
"Content"
/>
</optional>
<!-- optional internal sub-structrure -->
<optional>
<ref
name=
"Structure"
/>
</optional>
<!-- optional footer -->
<optional>
<element
name=
"footer"
>
<optional>
<element
name=
"div"
>
<attribute
name=
"data-hdoc-type"
>
<value>
conclusion
</value>
</attribute>
<text/>
</element>
</optional>
<optional>
<element
name=
"div"
>
<attribute
name=
"data-hdoc-type"
>
<value>
tags
</value>
</attribute>
<oneOrMore>
<element
name=
"span"
>
<text/>
</element>
</oneOrMore>
</element>
</optional>
<optional>
<element
name=
"div"
>
<attribute
name=
"data-hdoc-type"
>
<value>
categories
</value>
</attribute>
<oneOrMore>
<element
name=
"span"
>
<text/>
</element>
</oneOrMore>
</element>
</optional>
</element>
</optional>
</element>
</define>
<!-- A content is a sequence of blocs -->
<define
name=
"Content"
>
<oneOrMore>
<element
name=
"div"
>
<!-- optional typing attribute -->
<ref
name=
"DivType"
/>
<!-- Optional title of a div -->
<optional>
<element
name=
"h6"
>
<text/>
</element>
</optional>
<ref
name=
"Flow"
/>
</element>
</oneOrMore>
</define>
<!-- A flow is a sequence of media : text, table, image, audio, video, others -->
<define
name=
"Flow"
>
<oneOrMore>
<choice>
<ref
name=
"Text"
/>
<ref
name=
"Table"
/>
<ref
name=
"Image"
/>
<ref
name=
"Audio"
/>
<ref
name=
"Video"
/>
<ref
name=
"ListingInformatique"
/>
<ref
name=
"Object"
/>
</choice>
</oneOrMore>
</define>
<!-- Text -->
<define
name=
"Text"
>
<oneOrMore>
<choice>
<ref
name=
"P"
/>
<ref
name=
"L"
/>
</choice>
</oneOrMore>
</define>
<!-- Paragraphe -->
<define
name=
"P"
>
<element
name=
"p"
>
<ref
name=
"Inline"
/>
</element>
</define>
<!-- Inline elements -->
<define
name=
"Inline"
>
<!-- TODO : cite, code, sub, sup... -->
<zeroOrMore>
<choice>
<text/>
<element
name=
"em"
>
<ref
name=
"Inline"
/>
</element>
<element
name=
"i"
>
<ref
name=
"Inline"
/>
</element>
<element
name=
"q"
>
<ref
name=
"Inline"
/>
</element>
<element
name=
"sub"
>
<ref
name=
"Inline"
/>
</element>
<element
name=
"sup"
>
<ref
name=
"Inline"
/>
</element>
<element
name=
"a"
>
<attribute
name=
"href"
>
<data
type=
"anyURI"
/>
</attribute>
<optional>
<!-- Biblio reference management -->
<attribute
name=
"data-hdoc-type"
>
<value>
bibtexml
</value>
</attribute>
</optional>
<ref
name=
"Inline"
/>
</element>
<element
name=
"span"
>
<ref
name=
"SpanType"
/>
<ref
name=
"Inline"
/>
</element>
</choice>
</zeroOrMore>
</define>
<!-- List -->
<define
name=
"L"
>
<choice>
<element
name=
"ul"
>
<ref
name=
"I"
/>
</element>
<element
name=
"ol"
>
<ref
name=
"I"
/>
</element>
</choice>
</define>
<!-- List item -->
<define
name=
"I"
>