Skip to content

Commit

Permalink
corr div
Browse files Browse the repository at this point in the history
  • Loading branch information
emchateau committed Aug 27, 2023
1 parent 7c3b6ed commit 49ddb0d
Show file tree
Hide file tree
Showing 33 changed files with 2,158 additions and 4 deletions.
Binary file added A22_Notes_HNU.xlsx
Binary file not shown.
26 changes: 22 additions & 4 deletions docs/18-xslt.html
Original file line number Diff line number Diff line change
Expand Up @@ -483,7 +483,7 @@

???

Comment sélectionner titre principal ? Comment travailler sur les deux titres.
Comment sélectionner titre principal ? Comment travailler avec deux titres ?


---
Expand All @@ -503,17 +503,35 @@

- l’utilisation de règles `xsl:template` permet de traiter la récursion en XSLT
- `xsl:for-each` exécution d’instructions en bouclant sur chacun des nœuds désignés par l’attribut `select`.
- les nœuds sont traités successivement chacun leur tour (le nœud contexte `.` change)
- `xsl:sort` tri de la séquence de nœuds sélectionnés par `xsl:for-each` ou `xsl:apply-templates`
- `xsl:foreach-group` avec les attributs `select` et `group-by`
- le processuer traite les items dans la séquence définie par l’attribut mandataire **`@select`** successivement, chacun leur tour dans l’ordre du document (le nœud contexte `.` change)
- `xsl:sort` trie la séquence de nœuds sélectionnés par `xsl:for-each` ou `xsl:apply-templates`
- `xsl:foreach-group` avec les attributs `select` et `group-by` permet de travailler sur des groupes d’éléments (nous ne couvrirons pas son utilisation)

---

## Instructions conditionnelles

- `xsl:if` instruction conditionnelle

```xml
<xsl:if test="@type">
<!-- do something -->
</xsl:if>
```

- `xsl:choose` exécution d’une série de tests exprimés par une série de sous éléments `xsl:when`

```xml
<xsl:choose>
<xsl:when test="@ref[starts-with(., '#')]">
<!-- do something -->
</xsl:when>
<xsl:otherwise>
<!-- do something -->
</xsl:otherwise>
</xsl:choose>
```

---

## Ex 04
Expand Down
70 changes: 70 additions & 0 deletions docs/exercices/oddex/nouveau.odd
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
<?xml version="1.0" encoding="UTF-8"?>
<TEI xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:svg="http://www.w3.org/2000/svg"
xmlns:math="http://www.w3.org/1998/Math/MathML" xmlns="http://www.tei-c.org/ns/1.0">
<teiHeader>
<fileDesc>
<titleStmt>
<title>Mon schéma</title>
</titleStmt>
<publicationStmt>
<p>Publication Information</p>
</publicationStmt>
<sourceDesc>
<p>Information about the source</p>
</sourceDesc>
</fileDesc>
</teiHeader>
<text>
<body>
<schemaSpec ns="" start="book" ident="bookSchema">
<elementSpec ident="book">
<desc>Élément racine d’un schéma simplissime pour encoder les livres</desc>
<content>
<alternate maxOccurs="unbounded">
<elementRef key="para"/>
<elementRef key="image"/>
</alternate>
</content>
</elementSpec>
<elementSpec ident="para">
<desc>un paragraphe de text</desc>
<content>
<textNode/>
</content>
</elementSpec>
<elementSpec ident="image">
<desc>un élément vide qui pointe sur un fichier graphique</desc>
<attList>
<attDef ident="href">
<desc>fournit l’URI de l’objet ciblé</desc>
<datatype>
<dataRef name="anyURI"/>
</datatype>
</attDef>
</attList>
</elementSpec>

<classSpec ident="bookAtts" type="atts">
<desc>attributs applicables aux objets contenus par des <gi>book</gi></desc>
<attList>
<attDef ident="xml:id">
<desc>fournit un identifiant unique pour le composant</desc>
<datatype>
<dataRef name="ID"/>
</datatype>
</attDef>
<attDef ident="status">
<desc>indique le statut de l'élément </desc>
<valList type="closed">
<valItem ident="red"/>
<valItem ident="green"/>
<valItem ident="unknown"/>
</valList>
</attDef>
</attList>
</classSpec>

</schemaSpec>
</body>
</text>
</TEI>
89 changes: 89 additions & 0 deletions docs/exercices/oddex/oddex-2nv.odd
Original file line number Diff line number Diff line change
@@ -0,0 +1,89 @@
<?xml version="1.0" encoding="UTF-8"?>
<?xml-model href="http://www.tei-c.org/release/xml/tei/custom/schema/relaxng/tei_odds.rng" type="application/xml" schematypens="http://relaxng.org/ns/structure/1.0"?>
<?xml-model href="http://www.tei-c.org/release/xml/tei/custom/schema/relaxng/tei_odds.rng" type="application/xml"
schematypens="http://purl.oclc.org/dsdl/schematron"?>
<TEI xmlns="http://www.tei-c.org/ns/1.0">
<teiHeader>
<fileDesc>
<titleStmt>
<title>Mon premier ODD</title>
</titleStmt>
<publicationStmt>
<p>[informations sur l'edition]</p>
</publicationStmt>
<sourceDesc>
<p>[informations sur la source]</p>
</sourceDesc>
</fileDesc>
</teiHeader>
<text>
<body>
<p>Dans ce schéma simplissime, l'élément de racine s'appelle <gi>book</gi> et il peut
contenir les éléments suivants: <specList>
<specDesc key="para"/>
<specDesc key="image" atts="href"/>
</specList></p>
<schemaSpec ns="" start="book" ident="bookSchema">

<classSpec ident="bookPart" type="model">
<desc>éléments qui ont la possibilité de figurer dans un <gi>book</gi></desc>
</classSpec>


<elementSpec ident="book">
<desc>Elément racine d'un schéma simplissime pour encoder les livres</desc>
<content>
<classRef key="bookPart" minOccurs="1" maxOccurs="unbounded"/>
</content>
</elementSpec>

<elementSpec ident="para">
<desc>une paragraph de text </desc>
<classes>
<memberOf key="bookPart"/>
<memberOf key="bookAtts"/>
</classes>
<content>
<textNode/>
</content>
</elementSpec>

<elementSpec ident="image">
<desc>un élément vide qui pointe sur un fichier graphique</desc>
<classes>
<memberOf key="bookPart"/>
</classes>
<content/>
<attList>
<attDef ident="href">
<desc>fournit l' URI de l'objet ciblé</desc>
<datatype>
<dataRef name="anyURI"/>
</datatype>
</attDef>
</attList>
</elementSpec>

<classSpec ident="bookAtts" type="atts">
<desc>attributs applicables aux objets contenus par des <gi>book</gi></desc>
<attList>
<attDef ident="xml:id">
<desc>fournit un identifiant unique pour le composant</desc>
<datatype>
<dataRef name="ID"/>
</datatype>
</attDef>
<attDef ident="status">
<desc>indique le statut de l'élément </desc>
<valList type="closed">
<valItem ident="red"/>
<valItem ident="green"/>
<valItem ident="unknown"/>
</valList>
</attDef>
</attList>
</classSpec>
</schemaSpec>
</body>
</text>
</TEI>
34 changes: 34 additions & 0 deletions docs/exercices/oddex/out/nouveau.rnc
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
default namespace = ""
namespace sch = "http://purl.oclc.org/dsdl/schematron"
namespace tei = "http://www.tei-c.org/ns/1.0"
namespace teix = "http://www.tei-c.org/ns/Examples"
namespace xlink = "http://www.w3.org/1999/xlink"

# Schema generated from ODD source 2022-12-02T14:55:44Z. .
# TEI Edition: Version 4.3.0. Last updated on
# 31st August 2021, revision b4f72b1ff
# TEI Edition Location: https://www.tei-c.org/Vault/P5/Version 4.3.0/
#

#

sch:ns [ prefix = "tei" uri = "http://www.tei-c.org/ns/1.0" ]
book =

## Élément racine d’un schéma simplissime pour encoder les livres
element book { (para | image)+ }
para =

## un paragraphe de text
element para { text }
image =

## un élément vide qui pointe sur un fichier graphique
element image {
empty,

## fournit l’URI de l’objet ciblé
attribute href { xsd:anyURI }?,
empty
}
start = book
52 changes: 52 additions & 0 deletions docs/exercices/oddex/out/nouveau.rng
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
<?xml version="1.0" encoding="utf-8"?>
<grammar xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:tei="http://www.tei-c.org/ns/1.0"
xmlns:teix="http://www.tei-c.org/ns/Examples"
xmlns="http://relaxng.org/ns/structure/1.0"
datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"
ns=""><!--
Schema generated from ODD source 2022-12-02T14:56:33Z. .
TEI Edition: Version 4.3.0. Last updated on
31st August 2021, revision b4f72b1ff
TEI Edition Location: https://www.tei-c.org/Vault/P5/Version 4.3.0/
--><!---->
<sch:ns xmlns:sch="http://purl.oclc.org/dsdl/schematron"
prefix="tei"
uri="http://www.tei-c.org/ns/1.0"/>
<define name="book">
<element name="book">
<a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Élément racine d’un schéma simplissime pour encoder les livres</a:documentation>
<oneOrMore>
<choice>
<ref name="para"/>
<ref name="image"/>
</choice>
</oneOrMore>
</element>
</define>
<define name="para">
<element name="para">
<a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">un paragraphe de text</a:documentation>
<text/>
</element>
</define>
<define name="image">
<element name="image">
<a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">un élément vide qui pointe sur un fichier graphique</a:documentation>
<empty/>
<optional>
<attribute name="href">
<a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">fournit l’URI de l’objet ciblé</a:documentation>
<data type="anyURI"/>
</attribute>
</optional>
<empty/>
</element>
</define>
<start>
<choice>
<ref name="book"/>
</choice>
</start>
</grammar>
35 changes: 35 additions & 0 deletions docs/exercices/oddex/out/oddex-2.rnc
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
default namespace = ""
namespace sch = "http://purl.oclc.org/dsdl/schematron"
namespace tei = "http://www.tei-c.org/ns/1.0"
namespace teix = "http://www.tei-c.org/ns/Examples"
namespace xlink = "http://www.w3.org/1999/xlink"

# Schema generated from ODD source 2022-12-02T15:08:28Z. .
# TEI Edition: Version 4.3.0. Last updated on
# 31st August 2021, revision b4f72b1ff
# TEI Edition Location: https://www.tei-c.org/Vault/P5/Version 4.3.0/
#

#

sch:ns [ prefix = "tei" uri = "http://www.tei-c.org/ns/1.0" ]
bookPart = para | image
book =

## Elément racine d'un schéma simplissime pour encoder les livres
element book { bookPart+ }
para =

## une paragraph de text
element para { text }
image =

## un élément vide qui pointe sur un fichier graphique
element image {
empty,

## fournit l' URI de l'objet ciblé
attribute href { xsd:anyURI }?,
empty
}
start = book
55 changes: 55 additions & 0 deletions docs/exercices/oddex/out/oddex-2nv.rnc
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
default namespace = ""
namespace sch = "http://purl.oclc.org/dsdl/schematron"
namespace tei = "http://www.tei-c.org/ns/1.0"
namespace teix = "http://www.tei-c.org/ns/Examples"
namespace xlink = "http://www.w3.org/1999/xlink"

# Schema generated from ODD source 2022-12-02T15:14:21Z. .
# TEI Edition: Version 4.3.0. Last updated on
# 31st August 2021, revision b4f72b1ff
# TEI Edition Location: https://www.tei-c.org/Vault/P5/Version 4.3.0/
#

#

sch:ns [ prefix = "tei" uri = "http://www.tei-c.org/ns/1.0" ]
bookPart = para | image
book =

## Elément racine d'un schéma simplissime pour encoder les livres
element book { bookPart+ }
para =

## une paragraph de text
element para { text, bookAtts.attributes, empty }
image =

## un élément vide qui pointe sur un fichier graphique
element image {
empty,

## fournit l' URI de l'objet ciblé
attribute href { xsd:anyURI }?,
empty
}
bookAtts.attributes =
bookAtts.attribute.xmlid, bookAtts.attribute.status
bookAtts.attribute.xmlid =

## fournit un identifiant unique pour le composant
attribute xml:id { xsd:ID }?
bookAtts.attribute.status =

## indique le statut de l'élément
attribute status {

##
"red"
|
##
"green"
|
##
"unknown"
}?
start = book
Loading

0 comments on commit 49ddb0d

Please sign in to comment.