When I tried to run this against Spring Security's docbook. I got the following error:
$ ruby docbookrx.rb index.xml
No visitor defined for <info> element! Skipping.
No visitor defined for <preface> element! Skipping.
No visitor defined for <part> element! Skipping.
No visitor defined for <part> element! Skipping.
No visitor defined for <part> element! Skipping.
No visitor defined for <part> element! Skipping.
No visitor defined for <part> element! Skipping.
docbookrx.rb:387:in `generate_id': undefined method `downcase' for nil:NilClass (NoMethodError)
from docbookrx.rb:366:in `process_section'
from docbookrx.rb:89:in `visit'
from /var/lib/gems/1.9.1/gems/nokogiri-1.6.0/lib/nokogiri/xml/node.rb:691:in `accept'
from docbookrx.rb:320:in `visit_include'
from docbookrx.rb:85:in `visit'
from /var/lib/gems/1.9.1/gems/nokogiri-1.6.0/lib/nokogiri/xml/node.rb:691:in `accept'
from docbookrx.rb:106:in `block in traverse_children'
from /var/lib/gems/1.9.1/gems/nokogiri-1.6.0/lib/nokogiri/xml/node_set.rb:237:in `block in each'
from /var/lib/gems/1.9.1/gems/nokogiri-1.6.0/lib/nokogiri/xml/node_set.rb:236:in `upto'
from /var/lib/gems/1.9.1/gems/nokogiri-1.6.0/lib/nokogiri/xml/node_set.rb:236:in `each'
from docbookrx.rb:105:in `traverse_children'
from docbookrx.rb:271:in `process_doc'
from docbookrx.rb:254:in `visit_book'
from docbookrx.rb:85:in `visit'
from /var/lib/gems/1.9.1/gems/nokogiri-1.6.0/lib/nokogiri/xml/node.rb:691:in `accept'
from docbookrx.rb:905:in `<main>'
Resolved by e1c54e90284c24116c0ea46a815011cae9cfc683. I also added support for the <info> element. At the time of writing, the <part> element is not yet handled.
When I tried to run this against Spring Security's docbook. I got the following error:
The docbook has since been removed, but you can see it at: /github.com/spring-projects/spring-security/tree/df5e03