diff --git a/geekodoc/rng/geekodoc5-flat.rnc b/geekodoc/rng/geekodoc5-flat.rnc
index 665b618..e6824b6 100644
--- a/geekodoc/rng/geekodoc5-flat.rnc
+++ b/geekodoc/rng/geekodoc5-flat.rnc
@@ -162,38 +162,39 @@ div {
| db.extension.blocks
| db.admonition.blocks)*
db.step.blocks =
- db.para.blocks
- | db.remark
- | db.indexterm
- | # TODO: Remove that (currently we have too much of that)
- db.example
- | db.figure
- | db.informalexample
- | db.informalfigure
- | db.informaltable
- | db.admonition.blocks
- | db.graphic.blocks
- | db.verbatim.blocks
- | db.extension.blocks
- | db.itemizedlist
- | db.orderedlist
- | db.simplelist
- | db.variablelist
- | db.calloutlist
- | db.calloutlist
- | db.annotation
- | db.xi.include
- | db.table
- # no db.publishing.blocks, db.technical.blocks
- # | db.formal.blocks - db.table - db.equation
- # | db.informal.blocks - db.informaltable - db.informalequation
- # | db.procedure
- # | db.segmentedlist
- # | db.glosslist
- # | db.bibliolist
- # | db.qandaset
- # - - - -
-
+ (db.para.blocks
+ | db.remark
+ | db.indexterm
+ | # TODO: Remove that (currently we have too much of that)
+ db.example
+ | db.figure
+ | db.informalexample
+ | db.informalfigure
+ | db.informaltable
+ | db.admonition.blocks
+ | db.graphic.blocks
+ | db.verbatim.blocks
+ | db.extension.blocks
+ | db.itemizedlist
+ | db.orderedlist
+ | db.simplelist
+ | db.variablelist
+ | db.calloutlist
+ | db.calloutlist
+ | db.annotation
+ | db.xi.include
+ | db.table
+ | db.screen)
+ # no db.publishing.blocks, db.technical.blocks
+ # | db.formal.blocks - db.table - db.equation
+ # | db.informal.blocks - db.informaltable - db.informalequation
+ # | db.procedure
+ # | db.segmentedlist
+ # | db.glosslist
+ # | db.bibliolist
+ # | db.qandaset
+ # - - - -
+ *
}
div {
db.xlink.hrefreq.simple.link.attributes =
@@ -10876,7 +10877,9 @@ div {
element step {
db.step.attlist,
# db.step.info?,
- ((db.step.blocks+,
+ db.remark?,
+ db.para,
+ ((db.step.blocks?,
((db.substeps | db.stepalternatives), db.step.blocks*)?,
db.result?)
| ((db.substeps | db.stepalternatives),
diff --git a/geekodoc/rng/geekodoc5.rnc b/geekodoc/rng/geekodoc5.rnc
index 612fb89..a100608 100644
--- a/geekodoc/rng/geekodoc5.rnc
+++ b/geekodoc/rng/geekodoc5.rnc
@@ -117,7 +117,7 @@ db.entry.model =
db.step.blocks =
- db.para.blocks
+ ( db.para.blocks
| db.remark
| db.indexterm # TODO: Remove that (currently we have too much of that)
| db.example
@@ -138,6 +138,7 @@ db.step.blocks =
| db.annotation
| db.xi.include
| db.table
+ | db.screen
# no db.publishing.blocks, db.technical.blocks
#| db.formal.blocks - db.table - db.equation
#| db.informal.blocks - db.informaltable - db.informalequation
@@ -147,6 +148,7 @@ db.step.blocks =
#| db.bibliolist
#| db.qandaset
# ----
+ )*
}
div {
@@ -1507,12 +1509,17 @@ include "docbookxi.rnc"
element step {
db.step.attlist,
# db.step.info?,
- ((db.step.blocks+,
+ db.remark?,
+ db.para,
+ (
+ (db.step.blocks?,
((db.substeps | db.stepalternatives), db.step.blocks*)?,
db.result?)
- | ((db.substeps | db.stepalternatives),
+ |
+ ((db.substeps | db.stepalternatives),
db.step.blocks*,
- db.result?))
+ db.result?)
+ )
}
}
diff --git a/geekodoc/tests/bad/article-procedure-step-para.xml b/geekodoc/tests/bad/article-procedure-step-para.xml
new file mode 100644
index 0000000..45c3bf7
--- /dev/null
+++ b/geekodoc/tests/bad/article-procedure-step-para.xml
@@ -0,0 +1,11 @@
+
+
+
+ Procedure: para as first child of step
+
+
+
+
+
+
diff --git a/geekodoc/tests/bad/procedure-informalfigure-in-step.xml b/geekodoc/tests/bad/procedure-informalfigure-in-step.xml
new file mode 100644
index 0000000..85efa4f
--- /dev/null
+++ b/geekodoc/tests/bad/procedure-informalfigure-in-step.xml
@@ -0,0 +1,15 @@
+
+
+
+ A procedure with an invalid step
+
+
+
+
+
+
+
+
+
+
diff --git a/geekodoc/tests/good/book.storage.admin.xml b/geekodoc/tests/good/book.storage.admin.xml
index 5b94980..df63ce6 100644
--- a/geekodoc/tests/good/book.storage.admin.xml
+++ b/geekodoc/tests/good/book.storage.admin.xml
@@ -1,4 +1,5 @@
+
Administration and Deployment GuideSUSE Enterprise StorageSES
@@ -2892,8 +2893,7 @@ screen install-ses-admin
-
-
+
Do Not Run zypper dup or Reboot the Node
After you prepare for the upgrade to SUSE Linux Enterprise Server 12 SP2 as suggested later in
@@ -2902,6 +2902,7 @@ screen install-ses-admin
correctly.
+
Upgrade the current SUSE Linux Enterprise Server to version 12 SP2. Refer to
@@ -11018,6 +11019,7 @@ Superuser created successfully.
+
In order for Calamari to work correctly, the admin keyring needs to be
diff --git a/geekodoc/tests/good/procedure-step.xml b/geekodoc/tests/good/procedure-step.xml
new file mode 100644
index 0000000..e8df6d9
--- /dev/null
+++ b/geekodoc/tests/good/procedure-step.xml
@@ -0,0 +1,42 @@
+
+
+
+ A procedure with valid steps
+
+ Just a remark before a para
+ A
+
+
+ B
+ A remark after the para
+
+
+ C
+
+
+
+
+
+ D
+
+
+
+
+
+
+
+
+
+
+
+
+ E
+
+
+
+
+
+
+