Commit c653dd65 authored by dje's avatar dje
Browse files

ajout de la documentation

parent 1a9bc8c6
This diff is collapsed.
This diff is collapsed.
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="210mm"
height="297mm"
viewBox="0 0 744.09448819 1052.3622047"
id="svg4302"
version="1.1"
inkscape:version="0.91 r13725"
sodipodi:docname="parcours_fragments.svg">
<defs
id="defs4304">
<marker
inkscape:stockid="Arrow1Lend"
orient="auto"
refY="0.0"
refX="0.0"
id="marker5359"
style="overflow:visible;"
inkscape:isstock="true">
<path
id="path5361"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="fill-rule:evenodd;stroke:#d69300;stroke-width:1pt;stroke-opacity:1;fill:#d69300;fill-opacity:1"
transform="scale(0.8) rotate(180) translate(12.5,0)" />
</marker>
<marker
inkscape:isstock="true"
style="overflow:visible;"
id="marker5293"
refX="0.0"
refY="0.0"
orient="auto"
inkscape:stockid="Arrow1Lend"
inkscape:collect="always">
<path
transform="scale(0.8) rotate(180) translate(12.5,0)"
style="fill-rule:evenodd;stroke:#d69300;stroke-width:1pt;stroke-opacity:1;fill:#d69300;fill-opacity:1"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
id="path5295" />
</marker>
<marker
inkscape:stockid="Arrow1Lend"
orient="auto"
refY="0.0"
refX="0.0"
id="marker5257"
style="overflow:visible;"
inkscape:isstock="true"
inkscape:collect="always">
<path
id="path5259"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="fill-rule:evenodd;stroke:#0f1dab;stroke-width:1pt;stroke-opacity:1;fill:#0f1dab;fill-opacity:1"
transform="scale(0.8) rotate(180) translate(12.5,0)" />
</marker>
<marker
inkscape:stockid="Arrow1Lend"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1Lend"
style="overflow:visible;"
inkscape:isstock="true">
<path
id="path4954"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="fill-rule:evenodd;stroke:#bf3200;stroke-width:1pt;stroke-opacity:1;fill:#bf3200;fill-opacity:1"
transform="scale(0.8) rotate(180) translate(12.5,0)" />
</marker>
</defs>
<sodipodi:namedview
id="base"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="0.98994949"
inkscape:cx="185.41245"
inkscape:cy="641.21831"
inkscape:document-units="px"
inkscape:current-layer="layer1"
showgrid="false"
inkscape:window-width="1920"
inkscape:window-height="1028"
inkscape:window-x="0"
inkscape:window-y="30"
inkscape:window-maximized="1" />
<metadata
id="metadata4307">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<g
inkscape:label="Calque 1"
inkscape:groupmode="layer"
id="layer1">
<rect
y="55.709541"
x="18.152456"
height="531.22552"
width="722.36804"
id="rect8081"
style="display:inline;opacity:0.9196;fill:#ffd42a;fill-opacity:1;stroke:#000000;stroke-width:1.13482058;stroke-linecap:butt;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
<rect
style="opacity:0.33;fill:#008000;fill-opacity:1;stroke:#000000;stroke-width:2.13499999;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:2.13499999,8.53999996;stroke-dashoffset:1.70799999;stroke-opacity:0.95107031"
id="rect4865"
width="158.53494"
height="88.050316"
x="50.639698"
y="92.081757" />
<rect
y="90.479874"
x="278.58966"
height="88.050316"
width="158.53494"
id="rect4882"
style="opacity:0.33;fill:#008000;fill-opacity:1;stroke:#000000;stroke-width:2.13499999;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:2.13499999,8.53999996;stroke-dashoffset:1.70799999;stroke-opacity:0.95107031" />
<rect
style="opacity:0.33;fill:#008000;fill-opacity:1;stroke:#000000;stroke-width:2.13499999;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:2.13499999,8.53999996;stroke-dashoffset:1.70799999;stroke-opacity:0.95107031"
id="rect4884"
width="158.53494"
height="88.050316"
x="524.58966"
y="90.479874" />
<rect
y="228.14372"
x="173.73459"
height="84.720795"
width="139.42435"
id="rect5242"
style="display:inline;opacity:0.81999966;fill:#008080;fill-opacity:1;stroke:#000000;stroke-width:0.54574567;stroke-linecap:butt;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
<rect
style="display:inline;opacity:0.81999966;fill:#008080;fill-opacity:1;stroke:#000000;stroke-width:0.54574567;stroke-linecap:butt;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
id="rect4912"
width="139.42435"
height="84.720795"
x="172.74474"
y="331.98636" />
<rect
y="435.98636"
x="172.74474"
height="84.720795"
width="139.42435"
id="rect4916"
style="display:inline;opacity:0.81999966;fill:#008080;fill-opacity:1;stroke:#000000;stroke-width:0.54574567;stroke-linecap:butt;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
<rect
style="display:inline;opacity:0.9196;fill:#ff5555;fill-opacity:1;stroke:#000000;stroke-width:0.24447875;stroke-linecap:butt;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
id="rect3398"
width="138.37212"
height="83.903664"
x="418.26071"
y="228.04723" />
<rect
y="336.04724"
x="418.26071"
height="83.903664"
width="138.37212"
id="rect4935"
style="display:inline;opacity:0.9196;fill:#ff5555;fill-opacity:1;stroke:#000000;stroke-width:0.24447875;stroke-linecap:butt;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
<rect
style="display:inline;opacity:0.9196;fill:#ff5555;fill-opacity:1;stroke:#000000;stroke-width:0.24447875;stroke-linecap:butt;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
id="rect4937"
width="138.37212"
height="83.903664"
x="418.26071"
y="440.04724" />
<path
style="fill:none;fill-rule:evenodd;stroke:#0f1dab;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none;marker-end:url(#marker5257)"
d="m 131.31983,179.59041 115.15739,91.92388 238.396,109.09647 -245.46707,104.04571"
id="path4939"
inkscape:connector-curvature="0" />
<path
style="fill:none;fill-rule:evenodd;stroke:#bf3200;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#Arrow1Lend);stroke-miterlimit:4;stroke-dasharray:none"
d="m 365.67522,178.58025 125.25892,98.99495 0,90.91373 -253.54829,15.15229 0,75.76144"
id="path4945"
inkscape:connector-curvature="0" />
<path
style="fill:none;fill-rule:evenodd;stroke:#d69300;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#marker5293);stroke-miterlimit:4;stroke-dasharray:none"
d="m 606.09153,179.59041 -245.46707,33.33503 -150.51273,78.7919 0,111.11678 1.01015,85.86296"
id="path5285"
inkscape:connector-curvature="0" />
<path
style="fill:none;fill-rule:evenodd;stroke:#d69300;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#marker5359);stroke-miterlimit:4;stroke-dasharray:none"
d="m 360.62446,211.91529 157.5838,77.78174 1.01015,191.92899"
id="path5351"
inkscape:connector-curvature="0" />
<text
xml:space="preserve"
style="font-style:normal;font-weight:normal;font-size:40px;line-height:125%;font-family:Sans;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
x="77.781746"
y="144.23505"
id="text5435"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan5437"
x="77.781746"
y="144.23505"
style="font-size:20px">Parcours A</tspan></text>
<text
sodipodi:linespacing="125%"
id="text5439"
y="144.23505"
x="305.78174"
style="font-style:normal;font-weight:normal;font-size:40px;line-height:125%;font-family:Sans;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
xml:space="preserve"><tspan
style="font-size:20px"
y="144.23505"
x="305.78174"
id="tspan5441"
sodipodi:role="line">Parcours B</tspan></text>
<text
xml:space="preserve"
style="font-style:normal;font-weight:normal;font-size:40px;line-height:125%;font-family:Sans;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
x="557.78174"
y="144.23505"
id="text5443"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan5445"
x="557.78174"
y="144.23505"
style="font-size:20px">Parcours C</tspan></text>
<text
sodipodi:linespacing="125%"
id="text5447"
y="240.23505"
x="207.78175"
style="font-style:normal;font-weight:normal;font-size:40px;line-height:125%;font-family:Sans;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
xml:space="preserve"><tspan
style="font-size:12.5px"
y="240.23505"
x="207.78175"
id="tspan5449"
sodipodi:role="line">Fragment 1</tspan></text>
<text
xml:space="preserve"
style="font-style:normal;font-weight:normal;font-size:40px;line-height:125%;font-family:Sans;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
x="457.78174"
y="240.23505"
id="text5451"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan5453"
x="457.78174"
y="240.23505"
style="font-size:12.5px">Fragment 4</tspan></text>
<text
sodipodi:linespacing="125%"
id="text5455"
y="348.23505"
x="457.78174"
style="font-style:normal;font-weight:normal;font-size:40px;line-height:125%;font-family:Sans;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
xml:space="preserve"><tspan
style="font-size:12.5px"
y="348.23505"
x="457.78174"
id="tspan5457"
sodipodi:role="line">Fragment 5</tspan></text>
<text
xml:space="preserve"
style="font-style:normal;font-weight:normal;font-size:40px;line-height:125%;font-family:Sans;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
x="457.78174"
y="516.23505"
id="text5459"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan5461"
x="457.78174"
y="516.23505"
style="font-size:12.5px">Fragment 6</tspan></text>
<text
sodipodi:linespacing="125%"
id="text5463"
y="514.23505"
x="205.78174"
style="font-style:normal;font-weight:normal;font-size:40px;line-height:125%;font-family:Sans;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
xml:space="preserve"><tspan
style="font-size:12.5px"
y="514.23505"
x="205.78174"
id="tspan5465"
sodipodi:role="line">Fragment 3</tspan></text>
<text
xml:space="preserve"
style="font-style:normal;font-weight:normal;font-size:40px;line-height:125%;font-family:Sans;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
x="205.78174"
y="346.23505"
id="text5467"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan5469"
x="205.78174"
y="346.23505"
style="font-size:12.5px">Fragment 2</tspan></text>
</g>
</svg>
@startuml
actor Utilisateur
participant Navigateur
participant max.max
participant max.html
participant max.route
participant max.config
participant menu.xml
participant max.i18n
database Ressources
database XMLDB
Utilisateur --> Navigateur: Fragment F de l'éditon E ?
Navigateur --> max.max: GET(edition: E, Fragment F)
note right: début encapsulation HTML
alt F ressource DB
max.max --> XMLDB: Fragment F ?
XMLDB --> max.max: F
else F ressource statique
max.max --> Ressources: contenu de F ?
Ressources --> max.max: contenu de F
end
max.max --> max.html: page complète \n(squelette + fragment F)\n édition E?
activate max.html
max.html --> max.html: génération imports CSS et JS
activate max.html #DarkSalmon
max.html --> max.config: liste des plugins de E ?
max.config --> max.html: liste des plugins de E
max.html --> max.html: imports CSS de MaX + E
max.html --> max.html: imports CSS plugins de E
max.html --> max.html: imports JS de MaX + E
max.html --> max.html: imports JS plugins de E
deactivate max.html
max.html --> max.html: construction menu de E
activate max.html #DarkSalmon
max.html --> menu.xml: lecture entrées de menu de E
max.html --> max.i18n: i18n des entrées de menu ?
max.html --> max.html: génération entrées de menu
deactivate max.html
alt F requiert une barre de navigation
'activate max.html #DarkSalmon
max.html --> max.route: barre nav. ?
max.route --> max.html: barre nav.
'deactivate max.html
end
alt F requiert des options de lecture
max.html --> max.html: ajout options de lecture
activate max.html #DarkSalmon
max.html --> max.config: options de lecture ?
max.config --> max.html: options de lecture
deactivate max.html
end
max.html --> max.config: template pour édition E?
max.config --> max.html: template T
max.html --> max.html: intégration imports CSS + JS+\n Menu + Options + F dans template T
max.html --> max.max: page complète \n(squelette + fragment F)\n édition E
deactivate max.html
note left: fin encapsulation HTML
max.max --> Navigateur: page complète \n(squelette + fragment F)\n édition E
@enduml
\ No newline at end of file
'Consultation d'un parcours
@startuml
actor Utilisateur
participant Navigateur
participant "Plugin Pager\n(JS)" as pager
participant max.max
participant max.html
participant max.route
participant max.config
database Resources
database XMLDB
Utilisateur --> Navigateur: Parcours P de E ?
Navigateur --> max.max: GET(Parcours P de E)
max.max --> max.route: XQuery pour parcours P ?
max.route --> Resources: Fichier XQuery pour P?
Resources --> max.route: Fichier FQ
max.route --> max.max: Fichier FQ
alt FQ == NULL
max.max --> max.max: page complète + doc XML (P)
max.max --> max.config: DBPath pour E ?
max.config -> max.max: DBPath pour E
max.max --> XMLDB: doc XML complet (P) ?
XMLDB --> max.max: doc XML complet (P) ?
max.max --> max.html: encapsulation HTML du doc?
note right: cf. diagramme 1 pour l'encapsulation
max.html --> max.max: page complète
else
max.max --> max.route: liste des entrées de P\n(=exécution de FQ) ?
max.route --> max.config: XSL pour les entrées de P ?
max.config --> max.route: Fichier XSL
alt Fichier XSL != NULL
max.route --> max.route: transfo XSL(entrées de P, fichier XSL)
end
max.route --> max.max: liste des entrées (en HTML)
max.max --> max.html: encapsultation HTML\npage complète \n(squelette + liste des entrées) ?
note right: cf. diagramme 1 pour l'encapsulation
max.html-->max.max: page complète\n(squelette + liste des entrées)
end
max.max--> Navigateur: page complète
create pager
Navigateur --> pager: new
pager --> Navigateur: mise à jour des liens des \nentrées du parcours
@enduml
\ No newline at end of file
@startuml
actor Utilisateur
participant Navigateur
participant "Apparat Critique\n(JS)" as AC
participant max.max
participant max.html
participant max.apparat
Utilisateur --> Navigateur: Fragment XML F de l'éditon E ?
Navigateur --> max.max: GET(edition: E, Fragment F)
max.max --> max.html: encapsulation HTML de F
note left: cf. diagramme 1 pour l'encapsulation
max.html --> max.max: page complète \n(squelette + fragment F)\n édition E
max.max --> Navigateur: page complète \n(squelette + fragment F)\n édition E
create AC
Navigateur --> AC: new
AC --> max.apparat: liste des témoins de E pour F?
max.apparat --> AC: liste des témoins
AC --> Navigateur: mise à jour interface de lecture
@enduml
\ No newline at end of file
'Consultation d'un sommaire
@startuml
actor Utilisateur
participant Navigateur
participant max.max
participant max.route
participant max.config
participant max.html
database XMLDB
Utilisateur --> Navigateur: sommaire de E ?
Navigateur --> max.max: GET(sommaire de E)
max.max --> max.route: Liste des parcours de E?
max.route --> max.config: Type de liste de parcours de E?
max.config -> max.route: Type T
alt T = 'default'
max.route --> max.config: DBPath de E ?
max.config --> max.route: DBPath P
max.route --> XMLDB: ressources de P ?
XMLDB -> max.route: ressources collection (HTML)
end
max.route --> max.config: XSLT sommaire de E ?
max.config -->max.route: Feuille FXsl
alt FXsl != null
max.route --> max.route: transform(HTML, FXSL)
end
max.route --> max.max: sommaire HTML
max.max --> max.html: page complète \n(squelette + sommaire) ?
'max.html --> max.config: liste des plugins de E ?
'max.config --> max.html: liste de plugins PList
'note right: dont le plugin Pager
'max.html --> max.config: template/layout HTML de E ?
'max.config --> max.html: template Tmpl
'max.html --> max.html: création page complète\n(fragment + import CSS\net JS de PList)dans Tmpl
'note left: dont le plugin Pager
max.html -->max.max: page complète sommaire de E
max.max --> Navigateur: page complète sommaire de E
'Navigateur --> Navigateur: MAJ liens sommaire
'note right: Le module Javascript du plugin Pager modifie les liens\nafin de pointer vers des URLs gérées par le Pager
@enduml
\ No newline at end of file
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment