summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/latex/logreq
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2010-09-10 21:19:23 +0000
committerKarl Berry <karl@freefriends.org>2010-09-10 21:19:23 +0000
commit74f67a5d54a613355ce08a8233455ecdee5aeac2 (patch)
tree598af7fcdf42a847e8082886a76816f8267f1dad /Master/texmf-dist/doc/latex/logreq
parent75030959fe7e9e18a4237090b4173052d10e1740 (diff)
new package logreq, required by biblatex (report from herbs, 10sep10)
git-svn-id: svn://tug.org/texlive/trunk@19640 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/doc/latex/logreq')
-rw-r--r--Master/texmf-dist/doc/latex/logreq/README42
-rw-r--r--Master/texmf-dist/doc/latex/logreq/examples/01-basic.run.xml77
-rw-r--r--Master/texmf-dist/doc/latex/logreq/examples/01-basic.tex63
-rw-r--r--Master/texmf-dist/doc/latex/logreq/examples/02-index.run.xml117
-rw-r--r--Master/texmf-dist/doc/latex/logreq/examples/02-index.tex99
-rw-r--r--Master/texmf-dist/doc/latex/logreq/examples/03-biblatex+bibtex8.run.xml95
-rw-r--r--Master/texmf-dist/doc/latex/logreq/examples/03-biblatex+bibtex8.tex79
-rw-r--r--Master/texmf-dist/doc/latex/logreq/examples/04-biblatex+bibtex+refsections.run.xml183
-rw-r--r--Master/texmf-dist/doc/latex/logreq/examples/04-biblatex+bibtex+refsections.tex190
-rw-r--r--Master/texmf-dist/doc/latex/logreq/examples/05-biblatex+biber.run.xml86
-rw-r--r--Master/texmf-dist/doc/latex/logreq/examples/05-biblatex+biber.tex66
11 files changed, 1097 insertions, 0 deletions
diff --git a/Master/texmf-dist/doc/latex/logreq/README b/Master/texmf-dist/doc/latex/logreq/README
new file mode 100644
index 00000000000..d4f2436e938
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/logreq/README
@@ -0,0 +1,42 @@
+$Id: README,v 1.0 2010/08/04 18:56:41 lehman stable $
+
+ABOUT
+
+The logreq package helps to automate a typical LaTeX workflow that
+involves running LaTeX several times, running tools such as BibTeX
+or makeindex, and so on. It will log requests like "please rerun
+LaTeX" or "please run BibTeX on file X" to an external XML file
+which lists all open tasks in a machine-readable format. Compiler
+scripts and integrated LaTeX editing environments may parse this
+file to determine the next steps in the workflow in a way that is
+more efficient than parsing the main log file. In sum, the package
+will do two things: 1) enable package authors to use LaTeX commands
+to issue requests, 2) collect all requests from all packages and
+write them to an external XML file at the end of the document.
+
+LICENSE
+
+Copyright (c) 2010 Philipp Lehman. Permission is granted to copy,
+distribute and/or modify this software under the terms of the LaTeX
+Project Public License (LPPL), version 1.3. The LPPL maintenance
+status of this software is 'maintained'. The current maintainer is
+Philipp Lehman. This software is provided 'as is', without warranty
+of any kind, either expressed or implied, including, but not limited
+to, the implied warranties of merchantability and fitness for a
+particular purpose.
+
+REQUIREMENTS
+
+- e-TeX
+- etoolbox 1.9 or later
+- keyval
+
+DOCUMENTATION
+
+Unfortunately, there is no formal documentation for this package at
+the moment. For the time being, have a look at the examples which
+ship with the package and read this draft:
+
+https://sourceforge.net/apps/mediawiki/biblatex/index.php?title=Workflow_Automation
+
+A real manual will be added soon.
diff --git a/Master/texmf-dist/doc/latex/logreq/examples/01-basic.run.xml b/Master/texmf-dist/doc/latex/logreq/examples/01-basic.run.xml
new file mode 100644
index 00000000000..ca1eb870fb2
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/logreq/examples/01-basic.run.xml
@@ -0,0 +1,77 @@
+<?xml version="1.0" standalone="yes"?>
+<!-- logreq request file -->
+<!-- logreq version 1.0 / dtd version 1.0 -->
+<!-- Do not edit this file! -->
+<!DOCTYPE requests [
+ <!ELEMENT requests (internal | external)*>
+ <!ELEMENT internal (generic, (provides | requires)*)>
+ <!ELEMENT external (generic, cmdline?, input?, output?, (provides | requires)*)>
+ <!ELEMENT cmdline (binary, (option | infile | outfile)*)>
+ <!ELEMENT input (file)+>
+ <!ELEMENT output (file)+>
+ <!ELEMENT provides (file)+>
+ <!ELEMENT requires (file)+>
+ <!ELEMENT generic (#PCDATA)>
+ <!ELEMENT binary (#PCDATA)>
+ <!ELEMENT option (#PCDATA)>
+ <!ELEMENT infile (#PCDATA)>
+ <!ELEMENT outfile (#PCDATA)>
+ <!ELEMENT file (#PCDATA)>
+ <!ATTLIST requests
+ version CDATA #REQUIRED
+ >
+ <!ATTLIST internal
+ package CDATA #REQUIRED
+ priority (9) #REQUIRED
+ active (0 | 1) #REQUIRED
+ >
+ <!ATTLIST external
+ package CDATA #REQUIRED
+ priority (1 | 2 | 3 | 4 | 5 | 6 | 7 | 8) #REQUIRED
+ active (0 | 1) #REQUIRED
+ >
+ <!ATTLIST provides
+ type (static | dynamic | editable) #REQUIRED
+ >
+ <!ATTLIST requires
+ type (static | dynamic | editable) #REQUIRED
+ >
+ <!ATTLIST file
+ type CDATA #IMPLIED
+ >
+]>
+<requests version="1.0">
+ <internal package="sample" priority="9" active="1">
+ <generic>latex</generic>
+ </internal>
+ <external package="natbib" priority="5" active="1">
+ <generic>bibtex</generic>
+ <cmdline>
+ <binary>bibtex</binary>
+ <infile>01-basic</infile>
+ </cmdline>
+ <provides type="dynamic">
+ <file>01-basic.bbl</file>
+ </provides>
+ <requires type="dynamic">
+ <file>01-basic.aux</file>
+ </requires>
+ <requires type="editable">
+ <file>bibfile1.bib</file>
+ <file>bibfile2.bib</file>
+ <file>bibfile3.bib</file>
+ </requires>
+ <requires type="static">
+ <file>plainnat.bst</file>
+ </requires>
+ </external>
+ <internal package="natbib" priority="9" active="1">
+ <generic>latex</generic>
+ <provides type="dynamic">
+ <file>01-basic.aux</file>
+ </provides>
+ <requires type="dynamic">
+ <file>01-basic.bbl</file>
+ </requires>
+ </internal>
+</requests>
diff --git a/Master/texmf-dist/doc/latex/logreq/examples/01-basic.tex b/Master/texmf-dist/doc/latex/logreq/examples/01-basic.tex
new file mode 100644
index 00000000000..ab22edd8c59
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/logreq/examples/01-basic.tex
@@ -0,0 +1,63 @@
+\documentclass{minimal}
+\usepackage{logreq}
+
+% basic examples
+
+% shorthand for simple "rerun latex" requests
+% (for any package which requires another latex run)
+
+\ltxrequest{sample}{1}{}
+
+% typical bibtex request
+% (e.g., if natbib.sty were to support logreq)
+
+% sample code:
+
+% ...
+% \usepackage{natbib}
+% \begin{document}
+% ...
+% \bibliographystyle{plainnat}
+% \bibliography{bibfile1,bibfile2,bibfile3}
+% \end{document}
+
+% workflow:
+
+% latex file (-> both requests active)
+% bibtex file
+% latex file (-> latex request active, bibtex request inactive)
+% latex file (-> both requests inactive)
+
+\logrequest[package=natbib,priority=5,active=1]{
+ \generic{bibtex}
+ \cmdline{
+ \binary{bibtex}
+ \infile{\jobname}
+ }
+ \provides[type=dynamic]{
+ \file{\jobname.bbl}
+ }
+ \requires[type=dynamic]{
+ \file{\jobname.aux}
+ }
+ \requires[type=editable]{
+ \file{bibfile1.bib}
+ \file{bibfile2.bib}
+ \file{bibfile3.bib}
+ }
+ \requires[type=static]{
+ \file{plainnat.bst}
+ }
+}
+
+\ltxrequest{natbib}{1}{
+ \provides[type=dynamic]{
+ \file{\jobname.aux}
+ }
+ \requires[type=dynamic]{
+ \file{\jobname.bbl}
+ }
+}
+
+\begin{document}
+\end{document}
diff --git a/Master/texmf-dist/doc/latex/logreq/examples/02-index.run.xml b/Master/texmf-dist/doc/latex/logreq/examples/02-index.run.xml
new file mode 100644
index 00000000000..e03c0619f77
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/logreq/examples/02-index.run.xml
@@ -0,0 +1,117 @@
+<?xml version="1.0" standalone="yes"?>
+<!-- logreq request file -->
+<!-- logreq version 1.0 / dtd version 1.0 -->
+<!-- Do not edit this file! -->
+<!DOCTYPE requests [
+ <!ELEMENT requests (internal | external)*>
+ <!ELEMENT internal (generic, (provides | requires)*)>
+ <!ELEMENT external (generic, cmdline?, input?, output?, (provides | requires)*)>
+ <!ELEMENT cmdline (binary, (option | infile | outfile)*)>
+ <!ELEMENT input (file)+>
+ <!ELEMENT output (file)+>
+ <!ELEMENT provides (file)+>
+ <!ELEMENT requires (file)+>
+ <!ELEMENT generic (#PCDATA)>
+ <!ELEMENT binary (#PCDATA)>
+ <!ELEMENT option (#PCDATA)>
+ <!ELEMENT infile (#PCDATA)>
+ <!ELEMENT outfile (#PCDATA)>
+ <!ELEMENT file (#PCDATA)>
+ <!ATTLIST requests
+ version CDATA #REQUIRED
+ >
+ <!ATTLIST internal
+ package CDATA #REQUIRED
+ priority (9) #REQUIRED
+ active (0 | 1) #REQUIRED
+ >
+ <!ATTLIST external
+ package CDATA #REQUIRED
+ priority (1 | 2 | 3 | 4 | 5 | 6 | 7 | 8) #REQUIRED
+ active (0 | 1) #REQUIRED
+ >
+ <!ATTLIST provides
+ type (static | dynamic | editable) #REQUIRED
+ >
+ <!ATTLIST requires
+ type (static | dynamic | editable) #REQUIRED
+ >
+ <!ATTLIST file
+ type CDATA #IMPLIED
+ >
+]>
+<requests version="1.0">
+ <external package="index" priority="8" active="0">
+ <generic>makeindex</generic>
+ <cmdline>
+ <binary>makeindex</binary>
+ <option>-o example.ind</option>
+ <infile>02-index.idx</infile>
+ </cmdline>
+ <input>
+ <file>02-index.idx</file>
+ </input>
+ <output>
+ <file>02-index.ind</file>
+ </output>
+ <provides type="dynamic">
+ <file>02-index.ind</file>
+ </provides>
+ <requires type="dynamic">
+ <file>02-index.idx</file>
+ </requires>
+ </external>
+ <external package="index" priority="8" active="0">
+ <generic>makeindex</generic>
+ <cmdline>
+ <binary>makeindex</binary>
+ <option>-o example.nnd</option>
+ <infile>02-index.ndx</infile>
+ </cmdline>
+ <input>
+ <file>02-index.ndx</file>
+ </input>
+ <output>
+ <file>02-index.nnd</file>
+ </output>
+ <provides type="dynamic">
+ <file>02-index.nnd</file>
+ </provides>
+ <requires type="dynamic">
+ <file>02-index.ndx</file>
+ </requires>
+ </external>
+ <external package="index" priority="8" active="0">
+ <generic>makeindex</generic>
+ <cmdline>
+ <binary>makeindex</binary>
+ <option>-o example.tnd</option>
+ <infile>02-index.tdx</infile>
+ </cmdline>
+ <input>
+ <file>02-index.tdx</file>
+ </input>
+ <output>
+ <file>02-index.tnd</file>
+ </output>
+ <provides type="dynamic">
+ <file>02-index.tnd</file>
+ </provides>
+ <requires type="dynamic">
+ <file>02-index.tdx</file>
+ </requires>
+ </external>
+ <internal package="index" priority="9" active="0">
+ <generic>latex</generic>
+ <provides type="dynamic">
+ <file>02-index.idx</file>
+ <file>02-index.ndx</file>
+ <file>02-index.tdx</file>
+ </provides>
+ <requires type="dynamic">
+ <file>02-index.ind</file>
+ <file>02-index.nnd</file>
+ <file>02-index.tnd</file>
+ </requires>
+ </internal>
+</requests>
diff --git a/Master/texmf-dist/doc/latex/logreq/examples/02-index.tex b/Master/texmf-dist/doc/latex/logreq/examples/02-index.tex
new file mode 100644
index 00000000000..6444c2fd238
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/logreq/examples/02-index.tex
@@ -0,0 +1,99 @@
+\documentclass{minimal}
+\usepackage{logreq}
+
+% indexing example
+% (e.g., if index.sty were to support logreq)
+
+% sample preamble:
+
+% \usepackage{index}
+% \newindex{default}{idx}{ind}{Subject Index}
+% \newindex{names}{ndx}{nnd}{Name Index}
+% \newindex{titles}{tdx}{tnd}{Title Index}
+
+% workflow:
+
+% latex file
+% makeindex -o file.ind file.idx (= makeindex file)
+% makeindex -o file.nnd file.ndx
+% makeindex -o file.tnd file.tdx
+% latex file
+
+\logrequest[package=index,priority=8,active=0]{%
+ \generic{makeindex}
+ \cmdline{
+ \binary{makeindex}
+ \option{-o example.ind}
+ \infile{\jobname.idx}
+ }
+ \input{
+ \file{\jobname.idx}
+ }
+ \output{
+ \file{\jobname.ind}
+ }
+ \provides[type=dynamic]{
+ \file{\jobname.ind}
+ }
+ \requires[type=dynamic]{
+ \file{\jobname.idx}
+ }
+}
+
+\logrequest[package=index,priority=8,active=0]{%
+ \generic{makeindex}
+ \cmdline{
+ \binary{makeindex}
+ \option{-o example.nnd}
+ \infile{\jobname.ndx}
+ }
+ \input{
+ \file{\jobname.ndx}
+ }
+ \output{
+ \file{\jobname.nnd}
+ }
+ \provides[type=dynamic]{
+ \file{\jobname.nnd}
+ }
+ \requires[type=dynamic]{
+ \file{\jobname.ndx}
+ }
+}
+
+\logrequest[package=index,priority=8,active=0]{%
+ \generic{makeindex}
+ \cmdline{
+ \binary{makeindex}
+ \option{-o example.tnd}
+ \infile{\jobname.tdx}
+ }
+ \input{
+ \file{\jobname.tdx}
+ }
+ \output{
+ \file{\jobname.tnd}
+ }
+ \provides[type=dynamic]{
+ \file{\jobname.tnd}
+ }
+ \requires[type=dynamic]{
+ \file{\jobname.tdx}
+ }
+}
+
+\ltxrequest{index}{0}{
+ \provides[type=dynamic]{
+ \file{\jobname.idx}
+ \file{\jobname.ndx}
+ \file{\jobname.tdx}
+ }
+ \requires[type=dynamic]{
+ \file{\jobname.ind}
+ \file{\jobname.nnd}
+ \file{\jobname.tnd}
+ }
+}
+
+\begin{document}
+\end{document}
diff --git a/Master/texmf-dist/doc/latex/logreq/examples/03-biblatex+bibtex8.run.xml b/Master/texmf-dist/doc/latex/logreq/examples/03-biblatex+bibtex8.run.xml
new file mode 100644
index 00000000000..4db0f6e350c
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/logreq/examples/03-biblatex+bibtex8.run.xml
@@ -0,0 +1,95 @@
+<?xml version="1.0" standalone="yes"?>
+<!-- logreq request file -->
+<!-- logreq version 1.0 / dtd version 1.0 -->
+<!-- Do not edit this file! -->
+<!DOCTYPE requests [
+ <!ELEMENT requests (internal | external)*>
+ <!ELEMENT internal (generic, (provides | requires)*)>
+ <!ELEMENT external (generic, cmdline?, input?, output?, (provides | requires)*)>
+ <!ELEMENT cmdline (binary, (option | infile | outfile)*)>
+ <!ELEMENT input (file)+>
+ <!ELEMENT output (file)+>
+ <!ELEMENT provides (file)+>
+ <!ELEMENT requires (file)+>
+ <!ELEMENT generic (#PCDATA)>
+ <!ELEMENT binary (#PCDATA)>
+ <!ELEMENT option (#PCDATA)>
+ <!ELEMENT infile (#PCDATA)>
+ <!ELEMENT outfile (#PCDATA)>
+ <!ELEMENT file (#PCDATA)>
+ <!ATTLIST requests
+ version CDATA #REQUIRED
+ >
+ <!ATTLIST internal
+ package CDATA #REQUIRED
+ priority (9) #REQUIRED
+ active (0 | 1) #REQUIRED
+ >
+ <!ATTLIST external
+ package CDATA #REQUIRED
+ priority (1 | 2 | 3 | 4 | 5 | 6 | 7 | 8) #REQUIRED
+ active (0 | 1) #REQUIRED
+ >
+ <!ATTLIST provides
+ type (static | dynamic | editable) #REQUIRED
+ >
+ <!ATTLIST requires
+ type (static | dynamic | editable) #REQUIRED
+ >
+ <!ATTLIST file
+ type CDATA #IMPLIED
+ >
+]>
+<requests version="1.0">
+ <external package="biblatex" priority="5" active="1">
+ <generic>bibtex</generic>
+ <cmdline>
+ <binary>bibtex8</binary>
+ <option>--wolfgang</option>
+ <option>--min_crossrefs 1</option>
+ <option>--csfile latin9.csf</option>
+ <infile>03-biblatex+bibtex8</infile>
+ </cmdline>
+ <input>
+ <file>03-biblatex+bibtex8.aux</file>
+ </input>
+ <output>
+ <file>03-biblatex+bibtex8.bbl</file>
+ </output>
+ <provides type="dynamic">
+ <file>03-biblatex+bibtex8.bbl</file>
+ </provides>
+ <requires type="dynamic">
+ <file>03-biblatex+bibtex8.aux</file>
+ <file>03-biblatex+bibtex8-blx.bib</file>
+ </requires>
+ <requires type="editable">
+ <file>bibfile1</file>
+ <file>bibfile2</file>
+ <file>bibfile3</file>
+ </requires>
+ <requires type="static">
+ <file>biblatex.bst</file>
+ <file>latin9.csf</file>
+ </requires>
+ </external>
+ <internal package="biblatex" priority="9" active="1">
+ <generic>latex</generic>
+ <provides type="dynamic">
+ <file>03-biblatex+bibtex8.aux</file>
+ <file>03-biblatex+bibtex8-blx.bib</file>
+ </provides>
+ <requires type="dynamic">
+ <file>03-biblatex+bibtex8.bbl</file>
+ </requires>
+ <requires type="static">
+ <file>biblatex.def</file>
+ <file>authoryear.bbx</file>
+ <file>standard.bbx</file>
+ <file>authoryear.cbx</file>
+ <file>biblatex.cfg</file>
+ <file>american.lbx</file>
+ <file>english.lbx</file>
+ </requires>
+ </internal>
+</requests>
diff --git a/Master/texmf-dist/doc/latex/logreq/examples/03-biblatex+bibtex8.tex b/Master/texmf-dist/doc/latex/logreq/examples/03-biblatex+bibtex8.tex
new file mode 100644
index 00000000000..495ea364f73
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/logreq/examples/03-biblatex+bibtex8.tex
@@ -0,0 +1,79 @@
+\documentclass{minimal}
+\usepackage{logreq}
+
+% biblatex example
+% (this is a mockup of code which will be used in biblatex >= 0.9b)
+
+% sample preamble:
+
+% \usepackage[latin9]{inputenc}
+% \usepackage[american]{babel}
+% \usepackage[style=authoryear,backend=bibtex8,mincrossrefs=1,bibencoding=inputenc]{biblatex}
+% \bibliography{bibfile1,bibfile2,bibfile3}
+
+% workflow:
+
+% latex file (-> both requests active)
+% bibtex file
+% latex file (-> both requests inactive)
+
+% additional bibtex passes may be required to resolve xrefs,
+% additional latex passes may be required to resolve labels;
+% i.e., the workflow may get as complex as this:
+
+% latex file (-> both requests active)
+% bibtex file
+% latex file (-> both requests active)
+% bibtex file
+% latex file (-> latex request active, bibtex request inactive)
+% latex file (-> both requests inactive)
+
+\logrequest[package=biblatex,priority=5,active=1]{
+ \generic{bibtex}
+ \cmdline{
+ \binary{bibtex8}
+ \option{--wolfgang}
+ \option{--min_crossrefs 1}
+ \option{--csfile latin9.csf}
+ \infile{\jobname}
+ }
+ \input{
+ \file{\jobname.aux}
+ }
+ \output{
+ \file{\jobname.bbl}
+ }
+ \provides[type=dynamic]{
+ \file{\jobname.bbl}
+ }
+ \requires[type=dynamic]{
+ \file{\jobname.aux}
+ \file{\jobname-blx.bib}
+ }
+ \requires[type=editable]{
+ \let\do=\file
+ \docsvlist{bibfile1,bibfile2,bibfile3}
+ }
+ \requires[type=static]{
+ \file{biblatex.bst}
+ \file{latin9.csf}
+ }
+}
+
+\ltxrequest{biblatex}{1}{
+ \provides[type=dynamic]{
+ \file{\jobname.aux}
+ \file{\jobname-blx.bib}
+ }
+ \requires[type=dynamic]{
+ \file{\jobname.bbl}
+ }
+ \requires[type=static]{
+ \let\do=\file
+ \docsvlist{biblatex.def,authoryear.bbx,standard.bbx,authoryear.cbx,
+ biblatex.cfg,american.lbx,english.lbx}
+ }
+}
+
+\begin{document}
+\end{document}
diff --git a/Master/texmf-dist/doc/latex/logreq/examples/04-biblatex+bibtex+refsections.run.xml b/Master/texmf-dist/doc/latex/logreq/examples/04-biblatex+bibtex+refsections.run.xml
new file mode 100644
index 00000000000..280f9199459
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/logreq/examples/04-biblatex+bibtex+refsections.run.xml
@@ -0,0 +1,183 @@
+<?xml version="1.0" standalone="yes"?>
+<!-- logreq request file -->
+<!-- logreq version 1.0 / dtd version 1.0 -->
+<!-- Do not edit this file! -->
+<!DOCTYPE requests [
+ <!ELEMENT requests (internal | external)*>
+ <!ELEMENT internal (generic, (provides | requires)*)>
+ <!ELEMENT external (generic, cmdline?, input?, output?, (provides | requires)*)>
+ <!ELEMENT cmdline (binary, (option | infile | outfile)*)>
+ <!ELEMENT input (file)+>
+ <!ELEMENT output (file)+>
+ <!ELEMENT provides (file)+>
+ <!ELEMENT requires (file)+>
+ <!ELEMENT generic (#PCDATA)>
+ <!ELEMENT binary (#PCDATA)>
+ <!ELEMENT option (#PCDATA)>
+ <!ELEMENT infile (#PCDATA)>
+ <!ELEMENT outfile (#PCDATA)>
+ <!ELEMENT file (#PCDATA)>
+ <!ATTLIST requests
+ version CDATA #REQUIRED
+ >
+ <!ATTLIST internal
+ package CDATA #REQUIRED
+ priority (9) #REQUIRED
+ active (0 | 1) #REQUIRED
+ >
+ <!ATTLIST external
+ package CDATA #REQUIRED
+ priority (1 | 2 | 3 | 4 | 5 | 6 | 7 | 8) #REQUIRED
+ active (0 | 1) #REQUIRED
+ >
+ <!ATTLIST provides
+ type (static | dynamic | editable) #REQUIRED
+ >
+ <!ATTLIST requires
+ type (static | dynamic | editable) #REQUIRED
+ >
+ <!ATTLIST file
+ type CDATA #IMPLIED
+ >
+]>
+<requests version="1.0">
+ <external package="biblatex" priority="5" active="1">
+ <generic>bibtex</generic>
+ <cmdline>
+ <binary>bibtex</binary>
+ <option>--min_crossrefs 2</option>
+ <infile>04-biblatex+bibtex+refsections</infile>
+ </cmdline>
+ <input>
+ <file>04-biblatex+bibtex+refsections.aux</file>
+ </input>
+ <output>
+ <file>04-biblatex+bibtex+refsections.bbl</file>
+ </output>
+ <provides type="dynamic">
+ <file>04-biblatex+bibtex+refsections.bbl</file>
+ </provides>
+ <requires type="dynamic">
+ <file>04-biblatex+bibtex+refsections.aux</file>
+ <file>04-biblatex+bibtex+refsections-blx.bib</file>
+ </requires>
+ <requires type="editable">
+ <file>bibfile1</file>
+ <file>bibfile2</file>
+ <file>bibfile3</file>
+ </requires>
+ <requires type="static">
+ <file>biblatex.bst</file>
+ </requires>
+ </external>
+ <external package="biblatex" priority="5" active="1">
+ <generic>bibtex</generic>
+ <cmdline>
+ <binary>bibtex</binary>
+ <option>--min_crossrefs 2</option>
+ <infile>04-biblatex+bibtex+refsections1-blx</infile>
+ </cmdline>
+ <input>
+ <file>04-biblatex+bibtex+refsections1-blx.aux</file>
+ </input>
+ <output>
+ <file>04-biblatex+bibtex+refsections1-blx.bbl</file>
+ </output>
+ <provides type="dynamic">
+ <file>04-biblatex+bibtex+refsections1-blx.bbl</file>
+ </provides>
+ <requires type="dynamic">
+ <file>04-biblatex+bibtex+refsections1-blx.aux</file>
+ <file>04-biblatex+bibtex+refsections-blx.bib</file>
+ </requires>
+ <requires type="editable">
+ <file>bibfile1</file>
+ <file>bibfile3</file>
+ </requires>
+ <requires type="static">
+ <file>biblatex.bst</file>
+ </requires>
+ </external>
+ <external package="biblatex" priority="5" active="1">
+ <generic>bibtex</generic>
+ <cmdline>
+ <binary>bibtex</binary>
+ <option>--min_crossrefs 2</option>
+ <infile>04-biblatex+bibtex+refsections2-blx</infile>
+ </cmdline>
+ <input>
+ <file>04-biblatex+bibtex+refsections2-blx.aux</file>
+ </input>
+ <output>
+ <file>04-biblatex+bibtex+refsections2-blx.bbl</file>
+ </output>
+ <provides type="dynamic">
+ <file>04-biblatex+bibtex+refsections2-blx.bbl</file>
+ </provides>
+ <requires type="dynamic">
+ <file>04-biblatex+bibtex+refsections2-blx.aux</file>
+ <file>04-biblatex+bibtex+refsections-blx.bib</file>
+ </requires>
+ <requires type="editable">
+ <file>bibfile4</file>
+ <file>bibfile6</file>
+ <file>bibfile2</file>
+ </requires>
+ <requires type="static">
+ <file>biblatex.bst</file>
+ </requires>
+ </external>
+ <external package="biblatex" priority="5" active="1">
+ <generic>bibtex</generic>
+ <cmdline>
+ <binary>bibtex</binary>
+ <option>--min_crossrefs 2</option>
+ <infile>04-biblatex+bibtex+refsections3-blx</infile>
+ </cmdline>
+ <input>
+ <file>04-biblatex+bibtex+refsections3-blx.aux</file>
+ </input>
+ <output>
+ <file>04-biblatex+bibtex+refsections3-blx.bbl</file>
+ </output>
+ <provides type="dynamic">
+ <file>04-biblatex+bibtex+refsections3-blx.bbl</file>
+ </provides>
+ <requires type="dynamic">
+ <file>04-biblatex+bibtex+refsections3-blx.aux</file>
+ <file>04-biblatex+bibtex+refsections-blx.bib</file>
+ </requires>
+ <requires type="editable">
+ <file>bibfile5</file>
+ <file>bibfile6</file>
+ </requires>
+ <requires type="static">
+ <file>biblatex.bst</file>
+ </requires>
+ </external>
+ <internal package="biblatex" priority="9" active="1">
+ <generic>latex</generic>
+ <provides type="dynamic">
+ <file>04-biblatex+bibtex+refsections.aux</file>
+ <file>04-biblatex+bibtex+refsections1-blx.aux</file>
+ <file>04-biblatex+bibtex+refsections2-blx.aux</file>
+ <file>04-biblatex+bibtex+refsections3-blx.aux</file>
+ <file>04-biblatex+bibtex+refsections-blx.bib</file>
+ </provides>
+ <requires type="dynamic">
+ <file>04-biblatex+bibtex+refsections.bbl</file>
+ <file>04-biblatex+bibtex+refsections1-blx.bbl</file>
+ <file>04-biblatex+bibtex+refsections2-blx.bbl</file>
+ <file>04-biblatex+bibtex+refsections3-blx.bbl</file>
+ </requires>
+ <requires type="static">
+ <file>biblatex.def</file>
+ <file>numeric.bbx</file>
+ <file>standard.bbx</file>
+ <file>numeric.cbx</file>
+ <file>biblatex.cfg</file>
+ <file>american.lbx</file>
+ <file>english.lbx</file>
+ </requires>
+ </internal>
+</requests>
diff --git a/Master/texmf-dist/doc/latex/logreq/examples/04-biblatex+bibtex+refsections.tex b/Master/texmf-dist/doc/latex/logreq/examples/04-biblatex+bibtex+refsections.tex
new file mode 100644
index 00000000000..cf7b3f509b4
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/logreq/examples/04-biblatex+bibtex+refsections.tex
@@ -0,0 +1,190 @@
+\documentclass{minimal}
+\usepackage{logreq}
+
+% biblatex example
+% (this is a mockup of code which will be used in biblatex >= 0.9b)
+
+% sample code:
+
+% \usepackage{biblatex}
+% \bibliography{bibfile1,bibfile2,bibfile3}
+% \begin{document}
+% ...
+% \begin{refsection}[bibfile1,bibfile3]
+% ...
+% \end{refsection}
+% ...
+% \begin{refsection}[bibfile4,bibfile6,bibfile2]
+% ...
+% \end{refsection}
+% ...
+% \begin{refsection}[bibfile5,bibfile6]
+% ...
+% \end{refsection}
+% \end{document}
+
+% workflow:
+
+% latex file (-> all requests active)
+% bibtex file
+% bibtex file1-blx
+% bibtex file2-blx
+% bibtex file3-blx
+% latex file (-> all requests inactive)
+
+% additional bibtex passes may be required to resolve xrefs,
+% additional latex passes may be required to resolve labels;
+% i.e., the workflow may get as complex as this:
+
+% latex file (-> all requests active)
+% bibtex file
+% bibtex file1-blx
+% bibtex file2-blx
+% bibtex file3-blx
+% latex file (-> all requests inactive)
+% bibtex file
+% bibtex file1-blx
+% bibtex file2-blx
+% bibtex file3-blx
+% latex file (-> latex request active, bibtex requests inactive)
+% latex file (-> both requests inactive)
+
+\logrequest[package=biblatex,priority=5,active=1]{
+ \generic{bibtex}
+ \cmdline{
+ \binary{bibtex}
+ \option{--min_crossrefs 2}
+ \infile{\jobname}
+ }
+ \input{
+ \file{\jobname.aux}
+ }
+ \output{
+ \file{\jobname.bbl}
+ }
+ \provides[type=dynamic]{
+ \file{\jobname.bbl}
+ }
+ \requires[type=dynamic]{
+ \file{\jobname.aux}
+ \file{\jobname-blx.bib}
+ }
+ \requires[type=editable]{
+ \let\do=\file
+ \docsvlist{bibfile1,bibfile2,bibfile3}
+ }
+ \requires[type=static]{
+ \file{biblatex.bst}
+ }
+}
+
+\logrequest[package=biblatex,priority=5,active=1]{
+ \generic{bibtex}
+ \cmdline{
+ \binary{bibtex}
+ \option{--min_crossrefs 2}
+ \infile{\jobname1-blx}
+ }
+ \input{
+ \file{\jobname1-blx.aux}
+ }
+ \output{
+ \file{\jobname1-blx.bbl}
+ }
+ \provides[type=dynamic]{
+ \file{\jobname1-blx.bbl}
+ }
+ \requires[type=dynamic]{
+ \file{\jobname1-blx.aux}
+ \file{\jobname-blx.bib}
+ }
+ \requires[type=editable]{
+ \let\do=\file
+ \docsvlist{bibfile1,bibfile3}
+ }
+ \requires[type=static]{
+ \file{biblatex.bst}
+ }
+}
+
+\logrequest[package=biblatex,priority=5,active=1]{
+ \generic{bibtex}
+ \cmdline{
+ \binary{bibtex}
+ \option{--min_crossrefs 2}
+ \infile{\jobname2-blx}
+ }
+ \input{
+ \file{\jobname2-blx.aux}
+ }
+ \output{
+ \file{\jobname2-blx.bbl}
+ }
+ \provides[type=dynamic]{
+ \file{\jobname2-blx.bbl}
+ }
+ \requires[type=dynamic]{
+ \file{\jobname2-blx.aux}
+ \file{\jobname-blx.bib}
+ }
+ \requires[type=editable]{
+ \let\do=\file
+ \docsvlist{bibfile4,bibfile6,bibfile2}
+ }
+ \requires[type=static]{
+ \file{biblatex.bst}
+ }
+}
+
+\logrequest[package=biblatex,priority=5,active=1]{
+ \generic{bibtex}
+ \cmdline{
+ \binary{bibtex}
+ \option{--min_crossrefs 2}
+ \infile{\jobname3-blx}
+ }
+ \input{
+ \file{\jobname3-blx.aux}
+ }
+ \output{
+ \file{\jobname3-blx.bbl}
+ }
+ \provides[type=dynamic]{
+ \file{\jobname3-blx.bbl}
+ }
+ \requires[type=dynamic]{
+ \file{\jobname3-blx.aux}
+ \file{\jobname-blx.bib}
+ }
+ \requires[type=editable]{
+ \let\do=\file
+ \docsvlist{bibfile5,bibfile6}
+ }
+ \requires[type=static]{
+ \file{biblatex.bst}
+ }
+}
+
+\ltxrequest{biblatex}{1}{
+ \provides[type=dynamic]{
+ \file{\jobname.aux}
+ \file{\jobname1-blx.aux}
+ \file{\jobname2-blx.aux}
+ \file{\jobname3-blx.aux}
+ \file{\jobname-blx.bib}
+ }
+ \requires[type=dynamic]{
+ \file{\jobname.bbl}
+ \file{\jobname1-blx.bbl}
+ \file{\jobname2-blx.bbl}
+ \file{\jobname3-blx.bbl}
+ }
+ \requires[type=static]{
+ \let\do=\file
+ \docsvlist{biblatex.def,numeric.bbx,standard.bbx,numeric.cbx,
+ biblatex.cfg,american.lbx,english.lbx}
+ }
+}
+
+\begin{document}
+\end{document}
diff --git a/Master/texmf-dist/doc/latex/logreq/examples/05-biblatex+biber.run.xml b/Master/texmf-dist/doc/latex/logreq/examples/05-biblatex+biber.run.xml
new file mode 100644
index 00000000000..6d18d9b94db
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/logreq/examples/05-biblatex+biber.run.xml
@@ -0,0 +1,86 @@
+<?xml version="1.0" standalone="yes"?>
+<!-- logreq request file -->
+<!-- logreq version 1.0 / dtd version 1.0 -->
+<!-- Do not edit this file! -->
+<!DOCTYPE requests [
+ <!ELEMENT requests (internal | external)*>
+ <!ELEMENT internal (generic, (provides | requires)*)>
+ <!ELEMENT external (generic, cmdline?, input?, output?, (provides | requires)*)>
+ <!ELEMENT cmdline (binary, (option | infile | outfile)*)>
+ <!ELEMENT input (file)+>
+ <!ELEMENT output (file)+>
+ <!ELEMENT provides (file)+>
+ <!ELEMENT requires (file)+>
+ <!ELEMENT generic (#PCDATA)>
+ <!ELEMENT binary (#PCDATA)>
+ <!ELEMENT option (#PCDATA)>
+ <!ELEMENT infile (#PCDATA)>
+ <!ELEMENT outfile (#PCDATA)>
+ <!ELEMENT file (#PCDATA)>
+ <!ATTLIST requests
+ version CDATA #REQUIRED
+ >
+ <!ATTLIST internal
+ package CDATA #REQUIRED
+ priority (9) #REQUIRED
+ active (0 | 1) #REQUIRED
+ >
+ <!ATTLIST external
+ package CDATA #REQUIRED
+ priority (1 | 2 | 3 | 4 | 5 | 6 | 7 | 8) #REQUIRED
+ active (0 | 1) #REQUIRED
+ >
+ <!ATTLIST provides
+ type (static | dynamic | editable) #REQUIRED
+ >
+ <!ATTLIST requires
+ type (static | dynamic | editable) #REQUIRED
+ >
+ <!ATTLIST file
+ type CDATA #IMPLIED
+ >
+]>
+<requests version="1.0">
+ <external package="biblatex" priority="5" active="1">
+ <generic>biber</generic>
+ <cmdline>
+ <binary>biber</binary>
+ <infile>05-biblatex+biber</infile>
+ </cmdline>
+ <input>
+ <file>05-biblatex+biber.bcf</file>
+ </input>
+ <output>
+ <file>05-biblatex+biber.bbl</file>
+ </output>
+ <provides type="dynamic">
+ <file>05-biblatex+biber.bbl</file>
+ </provides>
+ <requires type="dynamic">
+ <file>05-biblatex+biber.bcf</file>
+ </requires>
+ <requires type="editable">
+ <file>bibfile1</file>
+ <file>bibfile2</file>
+ <file>bibfile3</file>
+ </requires>
+ </external>
+ <internal package="biblatex" priority="9" active="1">
+ <generic>latex</generic>
+ <provides type="dynamic">
+ <file>05-biblatex+biber.bcf</file>
+ </provides>
+ <requires type="dynamic">
+ <file>05-biblatex+biber.bbl</file>
+ </requires>
+ <requires type="static">
+ <file>biblatex.def</file>
+ <file>numeric.bbx</file>
+ <file>standard.bbx</file>
+ <file>numeric.cbx</file>
+ <file>biblatex.cfg</file>
+ <file>american.lbx</file>
+ <file>english.lbx</file>
+ </requires>
+ </internal>
+</requests>
diff --git a/Master/texmf-dist/doc/latex/logreq/examples/05-biblatex+biber.tex b/Master/texmf-dist/doc/latex/logreq/examples/05-biblatex+biber.tex
new file mode 100644
index 00000000000..a3e558dea19
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/logreq/examples/05-biblatex+biber.tex
@@ -0,0 +1,66 @@
+\documentclass{minimal}
+\usepackage{logreq}
+
+% biblatex example
+% (this is a mockup of code which will be used in biblatex >= 0.9b)
+
+% sample preamble:
+
+% \usepackage[backend=biber]{biblatex}
+% \bibliography{bibfile1,bibfile2,bibfile3}
+
+% workflow:
+
+% latex file (-> both requests active)
+% biber file
+% latex file (-> both requests inactive)
+
+% The Biber (> 0.5.3) workflow will be straightforward even if
+% there are refsection environments, but additional latex passes
+% may be required to resolve labels:
+
+% latex file (-> both requests active)
+% bibtex file
+% latex file (-> latex request active, biber request inactive)
+% latex file (-> both requests inactive)
+
+\logrequest[package=biblatex,priority=5,active=1]{
+ \generic{biber}
+ \cmdline{
+ \binary{biber}
+ \infile{\jobname}
+ }
+ \input{
+ \file{\jobname.bcf}
+ }
+ \output{
+ \file{\jobname.bbl}
+ }
+ \provides[type=dynamic]{
+ \file{\jobname.bbl}
+ }
+ \requires[type=dynamic]{
+ \file{\jobname.bcf}
+ }
+ \requires[type=editable]{
+ \let\do=\file
+ \docsvlist{bibfile1,bibfile2,bibfile3}
+ }
+}
+
+\ltxrequest{biblatex}{1}{
+ \provides[type=dynamic]{
+ \file{\jobname.bcf}
+ }
+ \requires[type=dynamic]{
+ \file{\jobname.bbl}
+ }
+ \requires[type=static]{
+ \let\do=\file
+ \docsvlist{biblatex.def,numeric.bbx,standard.bbx,numeric.cbx,
+ biblatex.cfg,american.lbx,english.lbx}
+ }
+}
+
+\begin{document}
+\end{document}