Package docutils :: Package transforms :: Module references :: Class Footnotes
[show private | hide private]
[frames | no frames]

Class Footnotes

Transform --+
            |
           Footnotes


Assign numbers to autonumbered footnotes, and resolve links to footnotes, citations, and their references.

Given the following document as input:

<document>
    <paragraph>
        A labeled autonumbered footnote referece:
        <footnote_reference auto="1" id="id1" refname="footnote">
    <paragraph>
        An unlabeled autonumbered footnote referece:
        <footnote_reference auto="1" id="id2">
    <footnote auto="1" id="id3">
        <paragraph>
            Unlabeled autonumbered footnote.
    <footnote auto="1" id="footnote" name="footnote">
        <paragraph>
            Labeled autonumbered footnote.

Auto-numbered footnotes have attribute auto="1" and no label. Auto-numbered footnote_references have no reference text (they're empty elements). When resolving the numbering, a label element is added to the beginning of the footnote, and reference text to the footnote_reference.

The transformed result will be:

<document>
    <paragraph>
        A labeled autonumbered footnote referece:
        <footnote_reference auto="1" id="id1" refid="footnote">
            2
    <paragraph>
        An unlabeled autonumbered footnote referece:
        <footnote_reference auto="1" id="id2" refid="id3">
            1
    <footnote auto="1" id="id3" backrefs="id2">
        <label>
            1
        <paragraph>
            Unlabeled autonumbered footnote.
    <footnote auto="1" id="footnote" name="footnote" backrefs="id1">
        <label>
            2
        <paragraph>
            Labeled autonumbered footnote.

Note that the footnotes are not in the same order as the references.

The labels and reference text are added to the auto-numbered footnote and footnote_reference elements. Footnote elements are backlinked to their references via "refids" attributes. References are assigned "id" and "refid" attributes.

After adding labels and reference text, the "auto" attributes can be ignored.


Method Summary
  apply(self)
Override to apply the transform to the document tree.
  number_footnote_references(self, startnum)
Assign numbers to autonumbered footnote references.
  number_footnotes(self, startnum)
Assign numbers to autonumbered footnotes.
  resolve_footnotes_and_citations(self)
Link manually-labeled footnotes and citations to/from their references.
  resolve_references(self, note, reflist)
  symbolize_footnotes(self)
Add symbols indexes to "[*]"-style footnotes and references.
    Inherited from Transform
  __init__(self, document, startnode)
Initial setup for in-place document transforms.

Class Variable Summary
NoneType autofootnote_labels = None                                                                  
int default_priority = 620                                                                   
list symbols = ['*', u'\u2020', u'\u2021', u'\xa7', u'\xb6', ...

Method Details

apply(self)

Override to apply the transform to the document tree.
Overrides:
docutils.transforms.Transform.apply (inherited documentation)

number_footnote_references(self, startnum)

Assign numbers to autonumbered footnote references.

number_footnotes(self, startnum)

Assign numbers to autonumbered footnotes.

For labeled autonumbered footnotes, copy the number over to corresponding footnote references.

resolve_footnotes_and_citations(self)

Link manually-labeled footnotes and citations to/from their references.

symbolize_footnotes(self)

Add symbols indexes to "[*]"-style footnotes and references.

Class Variable Details

autofootnote_labels

Type:
NoneType
Value:
None                                                                  

default_priority

Type:
int
Value:
620                                                                   

symbols

Type:
list
Value:
['*',
 u'\u2020',
 u'\u2021',
 u'\xa7',
 u'\xb6',
 '#',
 u'\u2660',
 u'\u2665',
...                                                                    

Generated by Epydoc 2.0 on Tue Jul 22 05:30:58 2003 http://epydoc.sf.net