Skip to content

Commit fb6dd1a

Browse files
committed
Further updates and improvements to setup
1 parent a1f0071 commit fb6dd1a

6 files changed

Lines changed: 82 additions & 29 deletions

File tree

docs/xproc-pages.html

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -172,16 +172,23 @@ <h1>Researching XProc</h1>
172172
specifications</q> (from <a class="internal"
173173
href="">XProc.org</a>).</p>
174174
</details>
175+
<div>
176+
<h2>Channels</h2>
177+
<p>
178+
<a href="https://xml.com">XML.com</a> hosts a <a href="https://www.xml.com/news/2020-04-slack-workspace-for-the-xml-community/">Slack workspace</a> to which XProc practitioners contribute.</p>
179+
<p>The W3C hosts <a href="https://lists.w3.org/Archives/Public/xproc-dev/">an XProc mailing list</a>.</p>
180+
<p>Since 2026 an informal XProc Users Group has met from time to time (quarterly) using synchronous video: read the mailing list or watch the Slack channel for invitations.</p>
181+
</div>
175182
<div>
176183
<h2>Bound codex (book)</h2>
177184
<p>Erik Siegel's <a href="https://xmlpress.net/publications/xproc-3-0/">
178185
<em>XProc
179-
3.0 Programmer Reference</em>
186+
3.0 Programmer Reference</em>
180187
</a> provides reference info,
181-
introductory-level material and many remarks and observations that reward coming
182-
back to.</p>
188+
introductory-level material and many remarks and observations that reward coming
189+
back to.</p>
183190
<p>Also available <a href="https://store.xmlpress.com/product/xproc/">direct from
184-
the publisher in electronic formats</a> (EPUB, PDF).</p>
191+
the publisher in electronic formats</a> (EPUB, PDF).</p>
185192
</div>
186193
<div>
187194
<h2>XProc links</h2>

lib/xml-calabash3-config.xml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,8 @@
1313

1414
<!--currently the value of @xsl-formatter appears to have no effect
1515
and UserConfig is ignored in any case even if it is set for FOP -->
16-
<!--<cc:paged-media xsl-formatter="https://xmlcalabash.com/paged-media/xsl-formatter/fop"
17-
UserConfig="/C:/Users/ xxx /Documents/Projects/Github/xproc-zone/lib/fop.xconf"/>-->
16+
<cc:paged-media xsl-formatter="https://xmlcalabash.com/paged-media/xsl-formatter/fop"
17+
UserConfig="/C:/Users/wapie/Documents/Projects/Github/xproc-zone/lib/fop.xconf"/>
1818
<!--file:/C:/Users/wapie/Documents/Projects/Github/xproc-zone/lib/fop.xconf-->
1919

2020
<!-- So instead, an AVT in @UserConfig provides for finding the file relative to this configuration file -->

portal/xproc-pages.xhtml

Lines changed: 16 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -44,16 +44,22 @@
4444
also publishes a number of additional step libraries as finished
4545
specifications</q> (from <a>XProc.org</a>).</p>
4646
</details>
47-
<div>
48-
<h2>Bound codex (book)</h2>
49-
<p>Erik Siegel's <a href="https://xmlpress.net/publications/xproc-3-0/"><em>XProc
50-
3.0 Programmer Reference</em></a> provides reference info,
51-
introductory-level material and many remarks and observations that reward coming
52-
back to.</p>
53-
<p>Also available <a href="https://store.xmlpress.com/product/xproc/">direct from
54-
the publisher in electronic formats</a> (EPUB, PDF).</p>
55-
</div>
56-
<div>
47+
<div>
48+
<h2>Channels</h2>
49+
<p><a href="https://xml.com">XML.com</a> hosts a <a href="https://www.xml.com/news/2020-04-slack-workspace-for-the-xml-community/">Slack workspace</a> to which XProc practitioners contribute.</p>
50+
<p>The W3C hosts <a href="https://lists.w3.org/Archives/Public/xproc-dev/">an XProc mailing list</a>.</p>
51+
<p>Since 2026 an informal XProc Users Group has met from time to time (quarterly) using synchronous video: read the mailing list or watch the Slack channel for invitations.</p>
52+
</div>
53+
<div>
54+
<h2>Bound codex (book)</h2>
55+
<p>Erik Siegel's <a href="https://xmlpress.net/publications/xproc-3-0/"><em>XProc
56+
3.0 Programmer Reference</em></a> provides reference info,
57+
introductory-level material and many remarks and observations that reward coming
58+
back to.</p>
59+
<p>Also available <a href="https://store.xmlpress.com/product/xproc/">direct from
60+
the publisher in electronic formats</a> (EPUB, PDF).</p>
61+
</div>
62+
<div>
5763
<h2>XProc links</h2>
5864
<p>XProc practitioners with current links or news are invited to <a
5965
href="https://github.com/wendellpiez/xproc-zone/issues">contact the

setup/readme.md

Lines changed: 36 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,13 @@ Use *both* (or again, PowerXML) if:
5454
- You wish to be able to rule out processor bugs (by cross-testing) when diagnosing deep problems
5555
- You are building an XProc engine and wish to compare against other implementations known to be conformant
5656

57-
Finally, being able to call on expert assistance from someone who knows is a good reason to use either processor.
57+
Both processors (and PowerXML) are actively supported by their developers as well as the broader XProc user community, so help is always available. One approach is to identify your support lines first, then follow their leads and recommendations.
58+
59+
### Xproc Support
60+
61+
Some XProc support channels are described on the [XProc Zone portal](xproc-pages.html) web site.
62+
63+
5864

5965
### Why so many options?
6066

@@ -74,23 +80,23 @@ The same set of SMOKETEST pipelines will work for all processors. Run them using
7480

7581
### Using the scripts, check your paths
7682

77-
The scripts [xz.sh](xz.sh) and [xz.bat](xz.bat) call scripts in the Morgana distribution. If the path to Morgana changes, or the path to the Morgana configuration file, these scripts must be updated to work.
83+
The scripts [xz.sh](../xz.sh) and [xz.bat](../xz.bat) call scripts in the Morgana distribution. If the path to Morgana changes, or the path to the Morgana configuration file, these scripts must be updated to work.
7884

79-
Same for the scripts [xc.bat](xc.bat) and [xc.ps1](xc.ps1) calling XML Calabash.
85+
Same for the scripts [xc.bat](../xc.bat) and [xc.ps1](../xc.ps1) calling XML Calabash.
8086

8187
Scripts in other shells or with other usage should be straightforward to contrive based on these examples.
8288

8389
### Run the smoke tests
8490

8591
Because it reduces to (nearly) the most minimal use of XProc, if the [smoke test](./smoketest/TEST-XPROC3.xpl) application doesn't work, nothing can be expected to work.
8692

87-
Likewise, tests are provided that can show that XSLT and Schematron capabilities are correctly provided for (by the Saxon and SchXSLT libraries). See [TESTING.md](TESTING.md) for more information.
93+
Likewise, tests are provided that can show that XSLT and Schematron capabilities are correctly provided for (by the Saxon and SchXSLT libraries).
8894

8995
- [smoketest/TEST-XSLT.xpl](smoketest/TEST-XSLT.xpl)
9096
- [smoketest/TEST-SCHEMATRON.xpl](smoketest/TEST-SCHEMATRON.xpl)
9197
- [smoketest/TEST-XSPEC.xpl](smoketest/TEST-XSPEC.xpl)
9298

93-
Note that since Schematron and XSpec depend on XSLT and hence invoke Saxon, the Saxon-only smoketest can often be skipped.
99+
This folder also provides other tests as requirements are addressed over time.
94100

95101
### Smoke tests work, but a pipeline does not?
96102

@@ -100,7 +106,7 @@ XProc being XML-centric, you will typically see information about errors and war
100106

101107
Any problems with any pipelines on this site (or any pipelines not otherwise called out in documentation or comments) can be [reported](https://github.com/wendellpiez/xproc-zone/issues). Of course, if your aim is to learn XProc and related tech, we also hope you are looking at useful error messages very soon - signposts on your journey.
102108

103-
## How to run XProc (more detail)
109+
## Using a script to invoke XProc (more detail)
104110

105111
At the repository root, four scripts are offered, all of which do the same thing - invoke an XProc engine to execute an XProc pipeline. Use the one that works best on your system.
106112

@@ -111,19 +117,39 @@ At the repository root, four scripts are offered, all of which do the same thing
111117

112118
A bash shell script for XML Calabash or a Powershell script for Morgana can be contrived from these as well.
113119

114-
As described above, there are many other ways ...
120+
For example, in Windows, from the `setup` directory:
121+
122+
```
123+
> ..\xc.bat PROCESSOR-REPORT.xpl
124+
```
125+
126+
On a different platform using a different script, adjust the syntax accordingly:
127+
128+
```
129+
$ ../xc.sh PROCESSOR-REPORT.xpl
130+
```
131+
132+
If you need to provide a script with arguments, use the same syntax as you would using the engine directly. For example, to provide an value to XML Calabash for an option `exclamation` offered by the pipeline `ECHO-OPTION.xpl`:
133+
134+
```
135+
$ ../xc.sh smoketest/ECHO-OPTION.xpl exclamation="Away!"
136+
```
137+
138+
This test pipeline returns a bit of XML: `<ECHO>Away!</ECHO>`.
115139

116140
### Hints and tips
117141

118142
If you plan to run XProc from a command line, consider putting the repository path on your system PATH for greater convenience, making the repository scripts (or your versions of them) available across your system.
119143

120-
On a Windows system it is also possible to associate an entire file type (such as `*.xpl`) with a a `bat` file executable - offering a convenient way to run standalone XProc pipelines requiring no special runtime settings, with the **Open** choice on the context menu (right click on file) in Explorer. The same, or the equivalent, is possible in other operating system shells.
144+
On a Windows system it is also possible to associate an entire file type (such as `*.xpl`) with a `bat` file executable - offering a convenient way to run standalone XProc pipelines requiring no special runtime settings, with the **Open** choice on the context menu (right click on file) in Explorer. The same, or the equivalent, is possible in other operating system shells.
121145

122146
### No network
123147

124-
Once downloaded, installed and running, nothing in this stack should require an Internet connection to work.
148+
Once downloaded and installed, nothing in this stack should depend on or require an Internet connection to run.
149+
150+
Note that this does not mean that a processor might not attempt to connect without your knowledge, as directed by a pipeline. A (painful) example: a processor unequipped with a cache may download a copy of the W3C SVG 1.0 DTD every time an SVG is processed with a prescribed `DOCTYPE`. (Solution: do without the `DOCTYPE` declaration.)
125151

126-
Note that this does not mean that a processor might not attempt to connect without your knowledge, such as (painful example) to download a copy of the W3C SVG 1.0 DTD every time an SVG is called with a prescribed `DOCTYPE`. (Solution: do without the DTD.) Keep an eye on your data and processes since this is where such dependencies are often hidden. The typical symptom of this problem is that your XProc engine hangs up or pauses longer than it should.
152+
Keep an eye on your data and processes since this is where such dependencies are often hidden. The typical symptom of this problem is that your XProc engine hangs up or pauses longer than it should.
127153

128154
---
129155

setup/smoketest/ECHO-OPTION.xpl

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<p:declare-step xmlns:p="http://www.w3.org/ns/xproc"
3+
xmlns:c="http://www.w3.org/ns/xproc-step" version="3.1"
4+
exclude-inline-prefixes="#all">
5+
6+
<p:option name="exclamation" select="' o . p . t . i . o . n '"/>
7+
8+
<p:output port="result" serialization="map { 'omit-xml-declaration': true() }"/>
9+
10+
<p:identity>
11+
<p:with-input>
12+
<ECHO>{ $exclamation }</ECHO>
13+
</p:with-input>
14+
</p:identity>
15+
16+
</p:declare-step>

setup/smoketest/TEST-SCHEMATRON.xpl

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,9 +12,7 @@
1212
message="[TEST-SCHEMATRON] Running a Schematron, expecting to see no errors ...">
1313
<p:with-input port="schema" href="src/doing-well.sch"/>
1414
<p:with-input port="source">
15-
<p:inline>
16-
<CONGRATULATIONS>Schematron runs under XProc 3.0.</CONGRATULATIONS>
17-
</p:inline>
15+
<CONGRATULATIONS>Schematron runs under XProc 3.0.</CONGRATULATIONS>
1816
</p:with-input>
1917
</p:validate-with-schematron>
2018

0 commit comments

Comments
 (0)