;; $Id: dbdivis.dsl,v 1.4 2003/01/15 08:24:13 adicarlo Exp $ ;; ;; This file is part of the Modular DocBook Stylesheet distribution. ;; See ../README or http://docbook.sourceforge.net/projects/dsssl/ ;; ;; ============================= DIVISIONS ============================== (element set (let* ((setinfo (select-elements (children (current-node)) (normalize "setinfo"))) (ititle (select-elements (children setinfo) (normalize "title"))) (title (if (node-list-empty? ititle) (select-elements (children (current-node)) (normalize "title")) (node-list-first ititle))) (nl (titlepage-info-elements (current-node) setinfo)) (tsosofo (with-mode head-title-mode (process-node-list title)))) (html-document tsosofo (make element gi: "DIV" attributes: '(("CLASS" "SET")) (make element gi: "A" attributes: (list (list "NAME" (element-id))) (empty-sosofo)) (if %generate-set-titlepage% (make sequence (set-titlepage nl 'recto) (set-titlepage nl 'verso)) (empty-sosofo)) (if (not (generate-toc-in-front)) (process-children) (empty-sosofo)) (if %generate-set-toc% (make sequence (build-toc (current-node) (toc-depth (current-node)))) (empty-sosofo)) (if (generate-toc-in-front) (process-children) (empty-sosofo)))))) (element (set title) (empty-sosofo)) (element book (let* ((bookinfo (select-elements (children (current-node)) (normalize "bookinfo"))) (ititle (select-elements (children bookinfo) (normalize "title"))) (title (if (node-list-empty? ititle) (select-elements (children (current-node)) (normalize "title")) (node-list-first ititle))) (nl (titlepage-info-elements (current-node) bookinfo)) (tsosofo (with-mode head-title-mode (process-node-list title))) (dedication (select-elements (children (current-node)) (normalize "dedication")))) (html-document tsosofo (make element gi: "DIV" attributes: '(("CLASS" "BOOK")) (make element gi: "A" attributes: (list (list "NAME" (element-id))) (empty-sosofo)) (if %generate-book-titlepage% (make sequence (book-titlepage nl 'recto) (book-titlepage nl 'verso)) (empty-sosofo)) (if (node-list-empty? dedication) (empty-sosofo) (with-mode dedication-page-mode (process-node-list dedication))) (if (not (generate-toc-in-front)) (process-children) (empty-sosofo)) (if %generate-book-toc% (build-toc (current-node) (toc-depth (current-node))) (empty-sosofo)) (let loop ((gilist ($generate-book-lot-list$))) (if (null? gilist) (empty-sosofo) (if (not (node-list-empty? (select-elements (descendants (current-node)) (car gilist)))) (make sequence (build-lot (current-node) (car gilist)) (loop (cdr gilist))) (loop (cdr gilist))))) (if (generate-toc-in-front) (process-children) (empty-sosofo)))))) (element (book title) (empty-sosofo)) (element part (let* ((partinfo (select-elements (children (current-node)) (normalize "docinfo"))) (partintro (select-elements (children (current-node)) (normalize "partintro"))) (nl (titlepage-info-elements (current-node) partinfo (if %generate-partintro-on-titlepage% partintro (empty-node-list)))) (ititle (select-elements (children partinfo) (normalize "title"))) (title (if (node-list-empty? ititle) (select-elements (children (current-node)) (normalize "title")) (node-list-first ititle))) (tsosofo (with-mode head-title-mode (process-node-list title)))) (html-document tsosofo (make element gi: "DIV" attributes: '(("CLASS" "PART")) (make element gi: "A" attributes: (list (list "NAME" (element-id))) (empty-sosofo)) (if %generate-part-titlepage% (make sequence (part-titlepage nl 'recto) (part-titlepage nl 'verso)) (empty-sosofo)) (if (not (generate-toc-in-front)) (process-children) (empty-sosofo)) (if (and (not (node-list-empty? partintro)) (not %generate-partintro-on-titlepage%)) ($process-partintro$ partintro) (empty-sosofo)) (if (and %generate-part-toc% (not %generate-part-toc-on-titlepage%)) (make sequence (build-toc (current-node) (toc-depth (current-node)))) (empty-sosofo)) (if (generate-toc-in-front) (process-children) (empty-sosofo)))))) (element (part title) (empty-sosofo)) (element partintro (empty-sosofo)) (element (partintro title) (make element gi: "H1" (process-children))) (element (partintro sect1) ($section-body$)) (define ($process-partintro$ partintro) (make element gi: "DIV" attributes: (list (list "CLASS" "PARTINTRO")) (make element gi: "A" attributes: (list (list "NAME" (element-id partintro))) (empty-sosofo)) (process-node-list (children partintro)) (make-endnotes partintro)))