diff options
| author | Ralph Amissah <ralph@amissah.com> | 2008-12-13 14:08:19 -0500 | 
|---|---|---|
| committer | Ralph Amissah <ralph@amissah.com> | 2008-12-13 14:08:24 -0500 | 
| commit | f20476d31f60bd1e8c83e91379f414bdc0cfdd60 (patch) | |
| tree | 19756fc868fe2658f7940147f65c717a7dc89226 | |
| parent | help and changelog update (diff) | |
mostly additional metadata fields
additional metadata fields
css minor touch
help minor info touch
| -rw-r--r-- | CHANGELOG | 11 | ||||
| -rw-r--r-- | data/doc/sisu/html/sisu.1.html | 7 | ||||
| -rw-r--r-- | data/doc/sisu/sisu_markup_samples/sisu_manual/sisu_markup.sst | 12 | ||||
| -rw-r--r-- | lib/sisu/v0/css.rb | 2 | ||||
| -rw-r--r-- | lib/sisu/v0/db_columns.rb | 41 | ||||
| -rw-r--r-- | lib/sisu/v0/db_create.rb | 120 | ||||
| -rw-r--r-- | lib/sisu/v0/db_tests.rb | 78 | ||||
| -rw-r--r-- | lib/sisu/v0/harvest_authors.rb | 27 | ||||
| -rw-r--r-- | lib/sisu/v0/param.rb | 41 | ||||
| -rw-r--r-- | man/man1/sisu.1 | 8 | 
10 files changed, 207 insertions, 140 deletions
| @@ -9,7 +9,7 @@ Reverse Chronological:  %% STABLE MANIFEST -%% sisu_0.70.1.orig.tar.gz (2008-12-11:49/4) +%% sisu_0.70.1.orig.tar.gz (2008-12-12:49/5)  http://www.jus.uio.no/sisu/pkg/src/sisu_0.70.1.orig.tar.gz    sisu_0.70.1.orig.tar.gz    sisu_0.70.1-1.dsc @@ -19,13 +19,13 @@ http://www.jus.uio.no/sisu/pkg/src/sisu_0.70.1.orig.tar.gz      * improved integration with sisu      * close output files before remote posting      * ensure html output is read by browser as utf-8 +    * add publication date to author works summary      [integration not quite complete as not added to sql, reason, each addition      of a field requires users recreating database, and there are other metadata      header additions under consideration, though unavoidable reduce the number      by grouping] -  * manifest -    * show topic register metadata for each document +  * manifest, show topic register metadata for each document    * css main html modified      * left margin changed, affects html generally @@ -40,6 +40,11 @@ http://www.jus.uio.no/sisu/pkg/src/sisu_0.70.1.orig.tar.gz    * latex/pdf bullet mark (bug in texlive, missing (at this instant) provide      workaround) +  * sql (postgresql), add proposed metadata fields for though not yet populated +    [if changes correctly anticipated, will enable future use of database +    structure built with current version, without need to re-create, will not +    affect existing sisu databases] +  %% sisu_0.70.0.orig.tar.gz (2008-12-03:48/3)  http://www.jus.uio.no/sisu/pkg/src/sisu_0.70.0.orig.tar.gz    51e4d5c2ac3c490332d8468de2400abcf454b55ac1e21ec625680a346fb41e4a 1540091 sisu_0.70.0.orig.tar.gz diff --git a/data/doc/sisu/html/sisu.1.html b/data/doc/sisu/html/sisu.1.html index c17fecc6..8f8bff3f 100644 --- a/data/doc/sisu/html/sisu.1.html +++ b/data/doc/sisu/html/sisu.1.html @@ -743,8 +743,7 @@ one (without the comments):    @title: SiSU    @subtitle: Markup    @creator: Amissah, Ralph -  % note formatting on author / creator field, surname comma then other -names, if more than one author separate by semi-colon +  % note formatting rules on author / creator field,    @rights: Copyright (C) Ralph Amissah 2007, part of SiSU documentation,  License GPL 3    @type: information @@ -754,11 +753,13 @@ search    @topic_register: text markup language; application:text processing;output:html|xml|latex|pdf|sql    % note formatting for topic_register topic levels are separated by a  colon, a semi-colon separates main topics +  @date: 2007-09-16 +  % original publication date unless the substantive text is updated/modified, +then date of update    @date.created: 2002-08-28    @date.issued: 2002-08-28    @date.available: 2002-08-28    @date.modified: 2007-09-16 -  @date: 2007-09-16    @level: new=C; break=1; num_top=1    % comment: in this @level header num_top=1 starts automatic heading numbering  at heading level 1 (numbering continues 3 levels down); the new and break diff --git a/data/doc/sisu/sisu_markup_samples/sisu_manual/sisu_markup.sst b/data/doc/sisu/sisu_markup_samples/sisu_manual/sisu_markup.sst index 853b4124..c31a1abe 100644 --- a/data/doc/sisu/sisu_markup_samples/sisu_manual/sisu_markup.sst +++ b/data/doc/sisu/sisu_markup_samples/sisu_manual/sisu_markup.sst @@ -10,8 +10,12 @@  @type: information +@topic_register: SiSU:manual:sisu markup +  @subject: ebook, epublishing, electronic book, electronic publishing, electronic document, electronic citation, data structure, citation systems, search +@date: 2008-05-22 +  @date.created: 2002-08-28  @date.issued: 2002-08-28 @@ -20,8 +24,6 @@  @date.modified: 2008-05-22 -@date: 2008-05-22 -  @level: new=C; break=1; num_top=1  @skin: skin_sisu_manual @@ -139,6 +141,10 @@ code{  % note formatting for topic_register topic levels are separated by a colon, a semi-colon separates main topics +@date: 2007-09-16 + +% original publication date unless the substantive text is updated/modified, then date of update +  @date.created: 2002-08-28  @date.issued: 2002-08-28 @@ -147,8 +153,6 @@ code{  @date.modified: 2007-09-16 -@date: 2007-09-16 -  @level: new=C; break=1; num_top=1  % comment: in this @level header num_top=1 starts automatic heading numbering at heading level 1 (numbering continues 3 levels down); the new and break instructions are used by the LaTeX/pdf and odf output to determine where to put page breaks (that are not used by html output or say sql database population). diff --git a/lib/sisu/v0/css.rb b/lib/sisu/v0/css.rb index 2094134f..927a253f 100644 --- a/lib/sisu/v0/css.rb +++ b/lib/sisu/v0/css.rb @@ -302,7 +302,7 @@ WOK      position: absolute;      top: 80px;      left: 0; -    margin-left: 0; +    margin-left: 1%;      width: 20%;    }    #column_center { diff --git a/lib/sisu/v0/db_columns.rb b/lib/sisu/v0/db_columns.rb index 6c9778ab..1ea16c95 100644 --- a/lib/sisu/v0/db_columns.rb +++ b/lib/sisu/v0/db_columns.rb @@ -66,9 +66,15 @@ module SiSU_DB_columns      def lt_subtitle        600      end -    def lt_creator +    def lt_author        600      end +    def lt_author_title +      100 +    end +    def lt_author_nationality +      100 +    end      def lt_illustrator        600      end @@ -87,21 +93,6 @@ module SiSU_DB_columns      def lt_date        10      end -    def lt_date_created -      10 -    end -    def lt_date_issued -      10 -    end -    def lt_date_available -      10 -    end -    def lt_date_modified -      10 -    end -    def lt_date_valid -      10 -    end      def lt_type        600      end @@ -198,6 +189,24 @@ module SiSU_DB_columns      def lt_subj        64      end +    def lt_orig_pub +      400 +    end +    def lt_orig_pub_date +      400 +    end +    def lt_orig_pub_institution +      200 +    end +    def lt_orig_pub_nationality +      200 +    end +    def lt_writing_focus_nationality +      100 +    end +    def lt_topic_register +      2000 +    end      def document_clean # restriction not necessary #12000 #2712        60000      end diff --git a/lib/sisu/v0/db_create.rb b/lib/sisu/v0/db_create.rb index 189b7acf..df1e91df 100644 --- a/lib/sisu/v0/db_create.rb +++ b/lib/sisu/v0/db_create.rb @@ -100,59 +100,73 @@ module SiSU_DB_create          } unless @opt.cmd =~/q/          @conn.execute(%{            CREATE TABLE metadata ( -            tid               BIGINT PRIMARY KEY, -            title             VARCHAR(#{lt_title}) NULL, -            subtitle          VARCHAR(#{lt_subtitle}) NULL, -            creator           VARCHAR(#{lt_creator}) NULL, -            illustrator       VARCHAR(#{lt_illustrator}) NULL, -            translator        VARCHAR(#{lt_translator}) NULL, -            subject           VARCHAR(#{lt_subject}) NULL, -            date              VARCHAR(#{lt_date}) NULL, -            date_created      VARCHAR(#{lt_date_created}) NULL, -            date_issued       VARCHAR(#{lt_date_issued}) NULL, -            date_available    VARCHAR(#{lt_date_available}) NULL, -            date_valid        VARCHAR(#{lt_date_valid}) NULL, -            date_modified     VARCHAR(#{lt_date_modified}) NULL, -/*          date              DATE, */ -/*          date_created      DATE, */ -/*          date_issued       DATE, */ -/*          date_available    DATE, */ -/*          date_valid        DATE, */ -/*          date_modified     DATE, */ -            type              VARCHAR(#{lt_type}) NULL, -            description       VARCHAR(#{lt_description}) NULL, -            publisher         VARCHAR(#{lt_publisher}) NULL, -            contributor       VARCHAR(#{lt_contributor}) NULL, -            prepared_by       VARCHAR(#{lt_prepared_by}) NULL, -            digitized_by      VARCHAR(#{lt_digitized_by}) NULL, -            format            VARCHAR(#{lt_format}) NULL, -            identifier        VARCHAR(#{lt_identifier}) NULL, -            source            VARCHAR(#{lt_source}) NULL, -            language          VARCHAR(#{lt_language}) NULL, -            language_original VARCHAR(#{lt_language_original}) NULL, -            relation          VARCHAR(#{lt_relation}) NULL, -            coverage          VARCHAR(#{lt_coverage}) NULL, -            rights            VARCHAR(#{lt_rights}) NULL, -            copyright         VARCHAR(#{lt_copyright}) NULL, -            owner             VARCHAR(#{lt_owner}) NULL, -            keywords          VARCHAR(#{lt_keywords}) NULL, -            comment           VARCHAR(#{lt_comment}) NULL, -            loc               VARCHAR(#{lt_loc}) NULL, -            dewey             VARCHAR(#{lt_dewey}) NULL, -            isbn              VARCHAR(#{lt_isbn}) NULL, -            pg                VARCHAR(#{lt_pg}) NULL, -            abstract          VARCHAR(#{lt_abstract}) NULL, -            prefix_a          TEXT NULL, -            prefix_b          TEXT NULL, -            skin              VARCHAR(#{lt_skin}) NULL, -            markup            VARCHAR(#{lt_markup}) NULL, -            links             VARCHAR(#{lt_links}) NULL, -            information       VARCHAR(#{lt_information}) NULL, -            contact           VARCHAR(#{lt_contact}) NULL, -            suffix            VARCHAR(#{lt_suffix}) NULL, -            filename          VARCHAR(#{lt_filename}) NULL UNIQUE, -            types             CHAR(#{lt_types}) NULL, -            subj              VARCHAR(#{lt_subj}) NULL +            tid                  BIGINT PRIMARY KEY, +            title                VARCHAR(#{lt_title}) NULL, +            subtitle             VARCHAR(#{lt_subtitle}) NULL, +            author               VARCHAR(#{lt_author}) NULL, +/* plan to replace creator field, currently used, with author field */ +            creator              VARCHAR(#{lt_author}) NULL, +            author_title         VARCHAR(#{lt_author_title}) NULL, +            author_nationality   VARCHAR(#{lt_author_nationality}) NULL, +            illustrator          VARCHAR(#{lt_illustrator}) NULL, +            translator           VARCHAR(#{lt_translator}) NULL, +            subject              VARCHAR(#{lt_subject}) NULL, +            date                 VARCHAR(#{lt_date}) NULL, +            date_added_to_site   VARCHAR(#{lt_date}) NULL, +            date_created         VARCHAR(#{lt_date}) NULL, +            date_issued          VARCHAR(#{lt_date}) NULL, +            date_available       VARCHAR(#{lt_date}) NULL, +            date_valid           VARCHAR(#{lt_date}) NULL, +            date_modified        VARCHAR(#{lt_date}) NULL, +            date_translated      VARCHAR(#{lt_date}) NULL, +/*          date                 DATE, */ +/*          date_added_to_site   DATE, */ +/*          date_created         DATE, */ +/*          date_issued          DATE, */ +/*          date_available       DATE, */ +/*          date_valid           DATE, */ +/*          date_modified        DATE, */ +/*          date_translated      DATE, */ +            type                 VARCHAR(#{lt_type}) NULL, +            description          VARCHAR(#{lt_description}) NULL, +            publisher            VARCHAR(#{lt_publisher}) NULL, +            contributor          VARCHAR(#{lt_contributor}) NULL, +            prepared_by          VARCHAR(#{lt_prepared_by}) NULL, +            digitized_by         VARCHAR(#{lt_digitized_by}) NULL, +            format               VARCHAR(#{lt_format}) NULL, +            identifier           VARCHAR(#{lt_identifier}) NULL, +            source               VARCHAR(#{lt_source}) NULL, +            language             VARCHAR(#{lt_language}) NULL, +            language_original    VARCHAR(#{lt_language_original}) NULL, +            relation             VARCHAR(#{lt_relation}) NULL, +            coverage             VARCHAR(#{lt_coverage}) NULL, +            rights               VARCHAR(#{lt_rights}) NULL, +            copyright            VARCHAR(#{lt_copyright}) NULL, +            owner                VARCHAR(#{lt_owner}) NULL, +            keywords             VARCHAR(#{lt_keywords}) NULL, +            comment              VARCHAR(#{lt_comment}) NULL, +            loc                  VARCHAR(#{lt_loc}) NULL, +            dewey                VARCHAR(#{lt_dewey}) NULL, +            isbn                 VARCHAR(#{lt_isbn}) NULL, +            pg                   VARCHAR(#{lt_pg}) NULL, +            abstract             VARCHAR(#{lt_abstract}) NULL, +            prefix_a             TEXT NULL, +            prefix_b             TEXT NULL, +            skin                 VARCHAR(#{lt_skin}) NULL, +            markup               VARCHAR(#{lt_markup}) NULL, +            links                VARCHAR(#{lt_links}) NULL, +            information          VARCHAR(#{lt_information}) NULL, +            contact              VARCHAR(#{lt_contact}) NULL, +            suffix               VARCHAR(#{lt_suffix}) NULL, +            filename             VARCHAR(#{lt_filename}) NULL UNIQUE, +            types                CHAR(#{lt_types}) NULL, +            subj                 VARCHAR(#{lt_subj}) NULL, +            original_publication VARCHAR(#{lt_orig_pub}) NULL, +            original_publication_date VARCHAR(#{lt_orig_pub_date}) NULL, +            original_publication_institution VARCHAR(#{lt_orig_pub_institution}) NULL, +            original_publication_nationality VARCHAR(#{lt_orig_pub_nationality}) NULL, +            writing_focus_nationality VARCHAR(#{lt_writing_focus_nationality}) NULL, +            topic_register       VARCHAR(#{lt_topic_register}) NULL            );            #{@comment.metadata}          }) diff --git a/lib/sisu/v0/db_tests.rb b/lib/sisu/v0/db_tests.rb index 4a18f694..86e7ca25 100644 --- a/lib/sisu/v0/db_tests.rb +++ b/lib/sisu/v0/db_tests.rb @@ -70,45 +70,49 @@ module SiSU_DB_tests      end      def verify        unless @opt.cmd =~/q/ -      puts @ck.tp[:fns].length.to_s            + ' checklength ' + @ck.tp[:fns]            if @ck.tp[:fns]            and @ck.tp[:fns].length            >@ck.lt_filename -      puts @ck.tp[:title].length.to_s          + ' checklength ' + @ck.tp[:title]          if @ck.tp[:title]          and @ck.tp[:title].length          >@ck.lt_title -      puts @ck.tp[:subtitle].length.to_s       + ' checklength ' + @ck.tp[:subtitle]       if @ck.tp[:subtitle]       and @ck.tp[:subtitle].length       >@ck.lt_subtitle -      puts @ck.tp[:creator].length.to_s        + ' checklength ' + @ck.tp[:creator]        if @ck.tp[:creator]        and @ck.tp[:creator].length        >@ck.lt_creator -      puts @ck.tp[:illustrator].length.to_s    + ' checklength ' + @ck.tp[:illustrator]    if @ck.tp[:illustrator]    and @ck.tp[:illustrator].length    >@ck.lt_illustrator -      puts @ck.tp[:translator].length.to_s     + ' checklength ' + @ck.tp[:translator]     if @ck.tp[:translator]     and @ck.tp[:translator].length     >@ck.lt_translator -      puts @ck.tp[:prepared_by].length.to_s    + ' checklength ' + @ck.tp[:prepared_by]    if @ck.tp[:prepared_by]    and @ck.tp[:prepared_by].length    >@ck.lt_prepared_by -      puts @ck.tp[:digitized_by].length.to_s   + ' checklength ' + @ck.tp[:digitized_by]   if @ck.tp[:digitized_by]   and @ck.tp[:digitized_by].length   >@ck.lt_digitized_by -      puts @ck.tp[:subject].length.to_s        + ' checklength ' + @ck.tp[:subject]        if @ck.tp[:subject]        and @ck.tp[:subject].length        >@ck.lt_subject -      puts @ck.tp[:description].length.to_s    + ' checklength ' + @ck.tp[:description]    if @ck.tp[:description]    and @ck.tp[:description].length    >@ck.lt_description -      puts @ck.tp[:publisher].length.to_s      + ' checklength ' + @ck.tp[:publisher]      if @ck.tp[:publisher]      and @ck.tp[:publisher].length      >@ck.lt_publisher -      puts @ck.tp[:contributor].length.to_s    + ' checklength ' + @ck.tp[:contributor]    if @ck.tp[:contributor]    and @ck.tp[:contributor].length    >@ck.lt_contributor -      puts @ck.tp[:date].length.to_s           + ' checklength ' + @ck.tp[:date]           if @ck.tp[:date]           and @ck.tp[:date].length           >@ck.lt_date -      puts @ck.tp[:date_created].length.to_s   + ' checklength ' + @ck.tp[:date_created]   if @ck.tp[:date_created]   and @ck.tp[:date_created].length   >@ck.lt_date_created -      puts @ck.tp[:date_issued].length.to_s    + ' checklength ' + @ck.tp[:date_issued]    if @ck.tp[:date_issued]    and @ck.tp[:date_issued].length    >@ck.lt_date_issued -      puts @ck.tp[:date_valid].length.to_s     + ' checklength ' + @ck.tp[:date_valid]     if @ck.tp[:date_valid]     and @ck.tp[:date_valid].length     >@ck.lt_date_valid -      puts @ck.tp[:date_available].length.to_s + ' checklength ' + @ck.tp[:date_available] if @ck.tp[:date_available] and @ck.tp[:date_available].length >@ck.lt_date_available -      puts @ck.tp[:date_modified].length.to_s  + ' checklength ' + @ck.tp[:date_modified]  if @ck.tp[:date_modified]  and @ck.tp[:date_modified].length  >@ck.lt_date_modified -      puts @ck.tp[:type].length.to_s           + ' checklength ' + @ck.tp[:type]           if @ck.tp[:type]           and @ck.tp[:type].length           >@ck.lt_type -      puts @ck.tp[:format].length.to_s         + ' checklength ' + @ck.tp[:format]         if @ck.tp[:format]         and @ck.tp[:format].length         >@ck.lt_format -      puts @ck.tp[:identifier].length.to_s     + ' checklength ' + @ck.tp[:identifier]     if @ck.tp[:identifier]     and @ck.tp[:identifier].length     >@ck.lt_identifier -      puts @ck.tp[:source].length.to_s         + ' checklength ' + @ck.tp[:source]         if @ck.tp[:source]         and @ck.tp[:source].length         >@ck.lt_source -      puts @ck.tp[:language].length.to_s       + ' checklength ' + @ck.tp[:language]       if @ck.tp[:language]       and @ck.tp[:language].length       >@ck.lt_language -      puts @ck.tp[:language_original].length.to_s + ' checklength ' + @ck.tp[:language_original] if @ck.tp[:language_original] and @ck.tp[:language_original].length >@ck.lt_language_original +      puts @ck.tp[:fns].length.to_s                + ' checklength ' + @ck.tp[:fns]                if @ck.tp[:fns]                and @ck.tp[:fns].length                >@ck.lt_filename +      puts @ck.tp[:title].length.to_s              + ' checklength ' + @ck.tp[:title]              if @ck.tp[:title]              and @ck.tp[:title].length              >@ck.lt_title +      puts @ck.tp[:subtitle].length.to_s           + ' checklength ' + @ck.tp[:subtitle]           if @ck.tp[:subtitle]           and @ck.tp[:subtitle].length           >@ck.lt_subtitle +      puts @ck.tp[:creator].length.to_s            + ' checklength ' + @ck.tp[:creator]            if @ck.tp[:creator]            and @ck.tp[:creator].length            >@ck.lt_creator +      puts @ck.tp[:author_title].length.to_s       + ' checklength ' + @ck.tp[:author_title]       if @ck.tp[:author_title]       and @ck.tp[:author_title].length       >@ck.lt_author_title +      puts @ck.tp[:illustrator].length.to_s        + ' checklength ' + @ck.tp[:illustrator]        if @ck.tp[:illustrator]        and @ck.tp[:illustrator].length        >@ck.lt_illustrator +      puts @ck.tp[:translator].length.to_s         + ' checklength ' + @ck.tp[:translator]         if @ck.tp[:translator]         and @ck.tp[:translator].length         >@ck.lt_translator +      puts @ck.tp[:prepared_by].length.to_s        + ' checklength ' + @ck.tp[:prepared_by]        if @ck.tp[:prepared_by]        and @ck.tp[:prepared_by].length        >@ck.lt_prepared_by +      puts @ck.tp[:digitized_by].length.to_s       + ' checklength ' + @ck.tp[:digitized_by]       if @ck.tp[:digitized_by]       and @ck.tp[:digitized_by].length       >@ck.lt_digitized_by +      puts @ck.tp[:subject].length.to_s            + ' checklength ' + @ck.tp[:subject]            if @ck.tp[:subject]            and @ck.tp[:subject].length            >@ck.lt_subject +      puts @ck.tp[:description].length.to_s        + ' checklength ' + @ck.tp[:description]        if @ck.tp[:description]        and @ck.tp[:description].length        >@ck.lt_description +      puts @ck.tp[:publisher].length.to_s          + ' checklength ' + @ck.tp[:publisher]          if @ck.tp[:publisher]          and @ck.tp[:publisher].length          >@ck.lt_publisher +      puts @ck.tp[:contributor].length.to_s        + ' checklength ' + @ck.tp[:contributor]        if @ck.tp[:contributor]        and @ck.tp[:contributor].length        >@ck.lt_contributor +      puts @ck.tp[:date].length.to_s               + ' checklength ' + @ck.tp[:date]               if @ck.tp[:date]               and @ck.tp[:date].length               >@ck.lt_date +      puts @ck.tp[:date_created].length.to_s       + ' checklength ' + @ck.tp[:date_created]       if @ck.tp[:date_created]       and @ck.tp[:date_created].length       >@ck.lt_date +      puts @ck.tp[:date_issued].length.to_s        + ' checklength ' + @ck.tp[:date_issued]        if @ck.tp[:date_issued]        and @ck.tp[:date_issued].length        >@ck.lt_date +      puts @ck.tp[:date_valid].length.to_s         + ' checklength ' + @ck.tp[:date_valid]         if @ck.tp[:date_valid]         and @ck.tp[:date_valid].length         >@ck.lt_date +      puts @ck.tp[:date_available].length.to_s     + ' checklength ' + @ck.tp[:date_available]     if @ck.tp[:date_available]     and @ck.tp[:date_available].length     >@ck.lt_date +      puts @ck.tp[:date_modified].length.to_s      + ' checklength ' + @ck.tp[:date_modified]      if @ck.tp[:date_modified]      and @ck.tp[:date_modified].length      >@ck.lt_date +      puts @ck.tp[:date_translated].length.to_s    + ' checklength ' + @ck.tp[:date_translated]    if @ck.tp[:date_translated]    and @ck.tp[:date_translated].length    >@ck.lt_date +      puts @ck.tp[:date_added_to_site].length.to_s + ' checklength ' + @ck.tp[:date_added_to_site] if @ck.tp[:date_added_to_site] and @ck.tp[:date_added_to_site].length >@ck.lt_date +      puts @ck.tp[:type].length.to_s               + ' checklength ' + @ck.tp[:type]               if @ck.tp[:type]               and @ck.tp[:type].length               >@ck.lt_type +      puts @ck.tp[:format].length.to_s             + ' checklength ' + @ck.tp[:format]             if @ck.tp[:format]             and @ck.tp[:format].length             >@ck.lt_format +      puts @ck.tp[:identifier].length.to_s         + ' checklength ' + @ck.tp[:identifier]         if @ck.tp[:identifier]         and @ck.tp[:identifier].length         >@ck.lt_identifier +      puts @ck.tp[:source].length.to_s             + ' checklength ' + @ck.tp[:source]             if @ck.tp[:source]             and @ck.tp[:source].length             >@ck.lt_source +      puts @ck.tp[:language].length.to_s           + ' checklength ' + @ck.tp[:language]           if @ck.tp[:language]           and @ck.tp[:language].length           >@ck.lt_language +      puts @ck.tp[:language_original].length.to_s  + ' checklength ' + @ck.tp[:language_original]  if @ck.tp[:language_original]  and @ck.tp[:language_original].length  >@ck.lt_language_original        #puts @ck.tp[:language_char].length.to_s     + ' checklength ' + @ck.tp[:language_char]       if @ck.tp[:language_char]       and @ck.tp[:language_char].length       >@ck.lt_language_char        #puts @ck.tp[:language_original_char].length.to_s + ' checklength ' + @ck.tp[:language_original_char]       if @ck.tp[:language_original_char]       and @ck.tp[:language_original_char].length       >@ck.lt_language_original_char -      puts @ck.tp[:relation].length.to_s       + ' checklength ' + @ck.tp[:relation]       if @ck.tp[:relation]       and @ck.tp[:relation].length       >@ck.lt_relation -      puts @ck.tp[:coverage].length.to_s       + ' checklength ' + @ck.tp[:coverage]       if @ck.tp[:coverage]       and @ck.tp[:coverage].length       >@ck.lt_coverage -      puts @ck.tp[:rights].length.to_s         + ' checklength ' + @ck.tp[:rights]         if @ck.tp[:rights]         and @ck.tp[:rights].length         >@ck.lt_rights -      puts @ck.tp[:copyright].length.to_s      + ' checklength ' + @ck.tp[:copyright]      if @ck.tp[:copyright]      and @ck.tp[:copyright].length      >@ck.lt_copyright -      puts @ck.tp[:owner].length.to_s          + ' checklength ' + @ck.tp[:owner]          if @ck.tp[:owner]          and @ck.tp[:owner].length          >@ck.lt_owner -      puts @ck.tp[:keywords].length.to_s       + ' checklength ' + @ck.tp[:keywords]       if @ck.tp[:keywords]       and @ck.tp[:keywords].length       >@ck.lt_keywords -      puts @ck.tp[:abstract].length.to_s       + ' checklength ' + @ck.tp[:abstract]       if @ck.tp[:abstract]       and @ck.tp[:abstract].length       >@ck.lt_abstract -      puts @ck.tp[:comment].length.to_s        + ' checklength ' + @ck.tp[:comment]        if @ck.tp[:comment]        and @ck.tp[:comment].length        >@ck.lt_comment -      puts @ck.tp[:loc].length.to_s            + ' checklength ' + @ck.tp[:loc]            if @ck.tp[:loc]            and @ck.tp[:loc].length            >@ck.lt_loc -      puts @ck.tp[:dewey].length.to_s          + ' checklength ' + @ck.tp[:dewey]          if @ck.tp[:dewey]          and @ck.tp[:dewey].length          >@ck.lt_dewey -      puts @ck.tp[:isbn].length.to_s           + ' checklength ' + @ck.tp[:isbn]           if @ck.tp[:isbn]           and @ck.tp[:isbn].length           >@ck.lt_isbn -      puts @ck.tp[:pg].length.to_s             + ' checklength ' + @ck.tp[:pg]             if @ck.tp[:pg]             and @ck.tp[:pg].length             >@ck.lt_pg -      puts @ck.tp[:date]                                                                   if  @ck.tp[:date] and not @ck.tp[:date].empty? and @ck.tp[:date] !~/\d\d-\d\d-\d\d/ +      puts @ck.tp[:relation].length.to_s           + ' checklength ' + @ck.tp[:relation]           if @ck.tp[:relation]           and @ck.tp[:relation].length           >@ck.lt_relation +      puts @ck.tp[:coverage].length.to_s           + ' checklength ' + @ck.tp[:coverage]           if @ck.tp[:coverage]           and @ck.tp[:coverage].length           >@ck.lt_coverage +      puts @ck.tp[:rights].length.to_s             + ' checklength ' + @ck.tp[:rights]             if @ck.tp[:rights]             and @ck.tp[:rights].length             >@ck.lt_rights +      puts @ck.tp[:copyright].length.to_s          + ' checklength ' + @ck.tp[:copyright]          if @ck.tp[:copyright]          and @ck.tp[:copyright].length          >@ck.lt_copyright +      puts @ck.tp[:owner].length.to_s              + ' checklength ' + @ck.tp[:owner]              if @ck.tp[:owner]              and @ck.tp[:owner].length              >@ck.lt_owner +      puts @ck.tp[:keywords].length.to_s           + ' checklength ' + @ck.tp[:keywords]           if @ck.tp[:keywords]           and @ck.tp[:keywords].length           >@ck.lt_keywords +      puts @ck.tp[:abstract].length.to_s           + ' checklength ' + @ck.tp[:abstract]           if @ck.tp[:abstract]           and @ck.tp[:abstract].length           >@ck.lt_abstract +      puts @ck.tp[:comment].length.to_s            + ' checklength ' + @ck.tp[:comment]            if @ck.tp[:comment]            and @ck.tp[:comment].length            >@ck.lt_comment +      puts @ck.tp[:loc].length.to_s                + ' checklength ' + @ck.tp[:loc]                if @ck.tp[:loc]                and @ck.tp[:loc].length                >@ck.lt_loc +      puts @ck.tp[:dewey].length.to_s              + ' checklength ' + @ck.tp[:dewey]              if @ck.tp[:dewey]              and @ck.tp[:dewey].length              >@ck.lt_dewey +      puts @ck.tp[:isbn].length.to_s               + ' checklength ' + @ck.tp[:isbn]               if @ck.tp[:isbn]               and @ck.tp[:isbn].length               >@ck.lt_isbn +      puts @ck.tp[:pg].length.to_s                 + ' checklength ' + @ck.tp[:pg]                 if @ck.tp[:pg]                 and @ck.tp[:pg].length                 >@ck.lt_pg +      puts @ck.tp[:topic_register].length.to_s     + ' checklength ' + @ck.tp[:topic_register]     if @ck.tp[:topic_register]     and @ck.tp[:topci_register].length     >@ck.lt_topic_register +      puts @ck.tp[:date]                                                                           if @ck.tp[:date] and not @ck.tp[:date].empty? and @ck.tp[:date] !~/\d\d-\d\d-\d\d/        end      end    end diff --git a/lib/sisu/v0/harvest_authors.rb b/lib/sisu/v0/harvest_authors.rb index 9586fcc3..9678e4f7 100644 --- a/lib/sisu/v0/harvest_authors.rb +++ b/lib/sisu/v0/harvest_authors.rb @@ -102,16 +102,18 @@ module HARVEST_authors      end      def extract_harvest        data,filename,idx_array=@data,@filename,@idx_array -      @publication_details,@title,@subtitle,@fulltitle,@author,@author_format=nil,nil,nil,nil,nil,nil +      @orig_pub,@title,@subtitle,@fulltitle,@author,@author_format=nil,nil,nil,nil,nil,nil        @authors=[]        rgx={}        rgx[:author]=/^@(?:author|creator):\s+(.+)/        rgx[:title]=/^@title:\s+(.+)/        rgx[:subtitle]=/^@subtitle:\s+(.+)/ -      rgx[:publication_details]=/^@original_publication_details:\s+(.+)/ +      rgx[:date]=/^@subtitle:\s+(.+)/ +      rgx[:date]=/^@date:\s+(\d{4})/ +      rgx[:orig_pub]=/^@original_publication:\s+(.+)/        data.each do |para| -        if para=~ rgx[:publication_details] -          @publication_details=rgx[:publication_details].match(para)[1] +        if para=~ rgx[:orig_pub] +          @orig_pub=rgx[:orig_pub].match(para)[1]          end          if para=~ rgx[:title]            @title=rgx[:title].match(para)[1] @@ -122,19 +124,22 @@ module HARVEST_authors          if para=~ rgx[:author]            @author_format=rgx[:author].match(para)[1]          end -        break if @title and @subtitle and @author and @publication_details +        if para=~ rgx[:date] +          @date=rgx[:date].match(para)[1] +        end +        break if @title and @subtitle and @author and @date and @orig_pub        end        @fulltitle=if @subtitle          @title + ' - ' + @subtitle        else @title        end -      if @title and @author_format #and @publication_details +      if @title and @author_format #and @orig_pub (publication details)          creator=FORMAT::Author.new(@author_format.strip).author_details          @authors,@authorship=creator[:authors],creator[:authorship]          file=filename.sub(/\.ss[mt]$/,'') -        idx_array <<= { :filename => filename, :file => file, :publication_details => @publication_details, :title => @fulltitle, :author => creator } +        idx_array <<= { :filename => filename, :file => file, :orig_pub => @orig_pub, :date => @date, :title => @fulltitle, :author => creator }        else -        #p "missing author field: #@filename title: #@title; author: #@author_format; idx: #@publication_details" +        #p "missing author field: #@filename title: #@title; author: #@author_format; idx: #@orig_pub"        end        idx_array.flatten!        idx_array @@ -156,7 +161,7 @@ module HARVEST_authors            if @@the_idx_authors[author].class==NilClass              @@the_idx_authors[author]={:md => []}            end -          @@the_idx_authors[author][:md] << { :filename => idx[:filename], :file => idx[:file], :author => idx[:author], :title => idx[:title] } +          @@the_idx_authors[author][:md] << { :filename => idx[:filename], :file => idx[:file], :author => idx[:author], :title => idx[:title], :date => idx[:date] }          end        end        @the_idx=@@the_idx_authors @@ -290,9 +295,9 @@ WOK            @output[:html] << x            a[1][:md].each do |x|              if @output[:html_mnt].class == File -              @output[:html_mnt] << %{<p class="publication">[<a href="#{x[:file]}.sst">src</a>]  <a href="file://#{@env.path.output}/#{x[:file]}/#{@page}">#{x[:title]}</a>, #{x[:author][:authors_s]} -- [<a href="#{x[:file]}.sst">#{x[:file]}.sst</a>]</p>} +              @output[:html_mnt] << %{<p class="publication">[<a href="#{x[:file]}.sst">src</a>]  #{x[:date]} <a href="file://#{@env.path.output}/#{x[:file]}/#{@page}">#{x[:title]}</a>, #{x[:author][:authors_s]} -- [<a href="#{x[:file]}.sst">#{x[:file]}.sst</a>]</p>}              end -            @output[:html] << %{<p class="publication"><a href="../#{x[:file]}/#{@page}">#{x[:title]}</a>, #{x[:author][:authors_s]}</p>} +            @output[:html] << %{<p class="publication">#{x[:date]} <a href="../#{x[:file]}/#{@page}">#{x[:title]}</a>, #{x[:author][:authors_s]}</p>}            end          end        end diff --git a/lib/sisu/v0/param.rb b/lib/sisu/v0/param.rb index 0d2095dd..ec80e0dd 100644 --- a/lib/sisu/v0/param.rb +++ b/lib/sisu/v0/param.rb @@ -118,9 +118,9 @@ module SiSU_Param        @doc={ :lv=>[] }        @doc[:fns],@doc[:fnb],@doc[:scr_suffix]='','',''        @@publisher='SiSU scribe' -      attr_accessor :cmd,:mod,:env,:fn,:fns,:fnb,:fnn,:fnt,:fnl,:flv,:fnz,:fnstex,:ocn,:sfx_src,:sfx,:pdf,:file_type,:dir_out,:dir_tex,:dir_lout,:txt_path,:site_skin,:sisu,:sisu_version,:ruby_version,:title,:dc_title,:html_title,:subtitle,:subtitle_tex,:creator_home,:dc_creator,:authors,:authorship,:translator,:illustrator,:prepared_by,:digitized_by,:dc_subject,:dc_description,:dc_publisher,:dc_contributor,:dc_date,:dc_date_created,:dc_date_issued,:dc_date_available,:dc_date_valid,:dc_date_modified,:date_scheme,:date_created_scheme,:date_issued_scheme,:date_available_scheme,:date_valid_scheme,:date_modified_scheme,:dc_type,:dc_format,:dc_identifier,:dc_source,:dc_language,:language_original,:dc_relation,:dc_coverage,:dc_rights,:keywords,:comments,:abstract,:cls_loc,:cls_dewey,:cls_pg,:cls_isbn,:papersize,:papersize_array,:toc,:lv1,:lv2,:lv3,:lv4,:lv5,:lv6,:pagenew,:pagebreak,:num_top,:toc_lev_limit,:flag_endnotes,:flag_auto_endnotes,:flag_separate_endnotes,:flag_separate_endnotes_make,:flag_auto_heading_num,:markup,:markup_instruction,:markup_version,:markup_declared,:make_bold,:make_italic,:flag_tables,:vocabulary,:doc_skin,:doc_css,:yaml,:lnk,:prefix_a,:prefix_b,:suffix,:information,:contact,:icon,:image,:ad_url,:ad_png,:ad_alt,:ad_began,:flag_promo,:promo,:ad_home,:stmp,:stmpd,:sc_filename,:sc_number,:sc_date,:sc_time,:sc_info,:yamladdr,:locale,:wc_lines,:wc_words,:wc_bytes,:file_encoding,:file_size,:user,:home,:hostname,:pwd,:firstseg,:programs,:creator_copymark,:lang,:en,:dgst,:dgst_skin,:generated,:tags,:tag_array,:concord_make,:seg_names,:seg_autoname_safe,:set_header_title,:set_heading_top,:set_heading_seg,:heading_seg_first,:heading_seg_first_flag,:base_program,:man_section,:man_name,:man_synopsis,:ec,:opt,:sem_tag,:book_idx,:topic_register,:topic_register_array,:original_publication_details +      attr_accessor :cmd,:mod,:env,:fn,:fns,:fnb,:fnn,:fnt,:fnl,:flv,:fnz,:fnstex,:ocn,:sfx_src,:sfx,:pdf,:file_type,:dir_out,:dir_tex,:dir_lout,:txt_path,:site_skin,:sisu,:sisu_version,:ruby_version,:title,:dc_title,:html_title,:subtitle,:subtitle_tex,:creator_home,:dc_creator,:author_title,:author_nationality,:authors,:authorship,:translator,:illustrator,:prepared_by,:digitized_by,:dc_subject,:dc_description,:dc_publisher,:dc_contributor,:dc_date,:dc_date_created,:dc_date_issued,:dc_date_available,:dc_date_valid,:dc_date_modified,:date_translated,:date_added_to_site,:date_scheme,:date_created_scheme,:date_issued_scheme,:date_available_scheme,:date_valid_scheme,:date_modified_scheme,:dc_type,:dc_format,:dc_identifier,:dc_source,:dc_language,:language_original,:dc_relation,:dc_coverage,:dc_rights,:keywords,:comments,:abstract,:cls_loc,:cls_dewey,:cls_pg,:cls_isbn,:papersize,:papersize_array,:toc,:lv1,:lv2,:lv3,:lv4,:lv5,:lv6,:pagenew,:pagebreak,:num_top,:toc_lev_limit,:flag_endnotes,:flag_auto_endnotes,:flag_separate_endnotes,:flag_separate_endnotes_make,:flag_auto_heading_num,:markup,:markup_instruction,:markup_version,:markup_declared,:make_bold,:make_italic,:flag_tables,:vocabulary,:doc_skin,:doc_css,:yaml,:lnk,:prefix_a,:prefix_b,:suffix,:information,:contact,:icon,:image,:ad_url,:ad_png,:ad_alt,:ad_began,:flag_promo,:promo,:ad_home,:stmp,:stmpd,:sc_filename,:sc_number,:sc_date,:sc_time,:sc_info,:yamladdr,:locale,:wc_lines,:wc_words,:wc_bytes,:file_encoding,:file_size,:user,:home,:hostname,:pwd,:firstseg,:programs,:creator_copymark,:lang,:en,:dgst,:dgst_skin,:generated,:tags,:tag_array,:concord_make,:seg_names,:seg_autoname_safe,:set_header_title,:set_heading_top,:set_heading_seg,:heading_seg_first,:heading_seg_first_flag,:base_program,:man_section,:man_name,:man_synopsis,:ec,:opt,:sem_tag,:book_idx,:topic_register,:topic_register_array,:original_publication,:original_publication_date,:original_publication_nationality,:original_publication_institution,:writing_focus        def initialize(fns_array,opt) -        @env=@fn=@fns=@fnb=@fnn=@fnt=@fnl=@flv=@fnz=@fnstex=@ocn=@sfx_src=@sfx=@pdf=@file_type=@dir_out=@dir_tex=@dir_lout=@txt_path=@flag_endnotes=@flag_auto_endnotes=@flag_separate_endnotes=@flag_separate_endnotes_make=@site_skin=@sisu=@sisu_version=@ruby_version=@title=@dc_title=@html_title=@subtitle=@subtitle_tex=@creator_home=@dc_creator=@translator=@illustrator=@prepared_by=@digitized_by=@dc_subject=@dc_description=@dc_publisher=@dc_contributor=@dc_date=@dc_date_created=@dc_date_issued=@dc_date_available=@dc_date_valid=@dc_date_modified=@date_scheme=@date_created_scheme=@date_issued_scheme=@date_available_scheme=@date_valid_scheme=@date_modified_scheme=@dc_type=@dc_format=@dc_identifier=@dc_source=@dc_language=@language_original=@dc_relation=@dc_coverage=@dc_rights=@keywords=@comments=@abstract=@cls_loc=@cls_dewey=@cls_pg=@cls_isbn=@papersize=@toc=@lv1=@lv2=@lv3=@lv4=@lv5=@lv6=@pagenew=@pagebreak=@num_top=@toc_lev_limit=@flag_auto_heading_num=@make_bold=@make_italic=@flag_tables=@vocabulary=@doc_skin=@doc_css=@yaml=@lnk=@prefix_a=@prefix_b=@suffix=@information=@contact=@icon=@ad_url=@ad_png=@ad_alt=@ad_began=@promo=@ad_home=@stmp=@stmpd=@sc_filename=@sc_number=@sc_date=@sc_time=@sc_info=@yamladdr=@locale=@wc_lines=@wc_words=@wc_bytes=@file_encoding=@file_size=@firstseg=@programs=@creator_copymark=@lang=@en=@dgst=@dgst_skin=@generated=@heading_seg_first=@base_program=@man_synopsis=@topic_register=@original_publication_details=nil +        @env=@fn=@fns=@fnb=@fnn=@fnt=@fnl=@flv=@fnz=@fnstex=@ocn=@sfx_src=@sfx=@pdf=@file_type=@dir_out=@dir_tex=@dir_lout=@txt_path=@flag_endnotes=@flag_auto_endnotes=@flag_separate_endnotes=@flag_separate_endnotes_make=@site_skin=@sisu=@sisu_version=@ruby_version=@title=@dc_title=@html_title=@subtitle=@subtitle_tex=@creator_home=@dc_creator=@author_title=@author_nationality=@translator=@illustrator=@prepared_by=@digitized_by=@dc_subject=@dc_description=@dc_publisher=@dc_contributor=@dc_date=@dc_date_created=@dc_date_issued=@dc_date_available=@dc_date_valid=@dc_date_modified=@date_translated=@date_added_to_site=@date_scheme=@date_created_scheme=@date_issued_scheme=@date_available_scheme=@date_valid_scheme=@date_modified_scheme=@dc_type=@dc_format=@dc_identifier=@dc_source=@dc_language=@language_original=@dc_relation=@dc_coverage=@dc_rights=@keywords=@comments=@abstract=@cls_loc=@cls_dewey=@cls_pg=@cls_isbn=@papersize=@toc=@lv1=@lv2=@lv3=@lv4=@lv5=@lv6=@pagenew=@pagebreak=@num_top=@toc_lev_limit=@flag_auto_heading_num=@make_bold=@make_italic=@flag_tables=@vocabulary=@doc_skin=@doc_css=@yaml=@lnk=@prefix_a=@prefix_b=@suffix=@information=@contact=@icon=@ad_url=@ad_png=@ad_alt=@ad_began=@promo=@ad_home=@stmp=@stmpd=@sc_filename=@sc_number=@sc_date=@sc_time=@sc_info=@yamladdr=@locale=@wc_lines=@wc_words=@wc_bytes=@file_encoding=@file_size=@firstseg=@programs=@creator_copymark=@lang=@en=@dgst=@dgst_skin=@generated=@heading_seg_first=@base_program=@man_synopsis=@topic_register=@original_publication_details=@original_publication=@original_publication_date=@original_publication_nationality=@original_publication_institution=@writing_focus=nil          @man_section=1          @man_name='man page "name/whatis" information not provided, set in header @man: name=[whatis information]'          @data,@fns,@cmd,@mod,@opt=fns_array,opt.fns,opt.cmd,opt.mod,opt #@data used as data @@ -324,6 +324,8 @@ module SiSU_Param                names=name_format($1)                @authorship=@dc_creator=names[:name_str]                @authors=names[:name_a_h] +            when /^@(?:creator|author)\.title:\s+(.+?)$/; @author_title=$1                          # Prof. Dr. etc. +            when /^@(?:creator|author)\.nationality:\s+(.+?)$/; @author_nationality=$1              when /^(?:@(?:translator|translated_by):|0~(?:translator|translated_by))\s+(.+?)$/m     #% metainfo                names=name_format($1)                @translator=names[:name_str] @@ -336,18 +338,20 @@ module SiSU_Param              when /^(?:@digitized_by:|0~digitized_by)\s+(.+?)$/m                                     #% metainfo DC                names=name_format($1)                @digitized_by=names[:name_str] -            when /^(?:@subject:|0~subject)\s+(.+?)$/m                                               #% metainfo DC -              @dc_subject=$1 -            when /^(?:@description:|0~description)\s+(.+?)$/m                                       #% metainfo DC & rss feed -              @dc_description=$1 +            when /^(?:@subject:|0~subject)\s+(.+?)$/m; @dc_subject=$1                                               #% metainfo DC +            when /^(?:@description:|0~description)\s+(.+?)$/m; @dc_description=$1                   #% metainfo DC & rss feed              when /^(?:@contributor:|0~contributor)\s+(.+?)$/m                                       #% metainfo DC                names=name_format($1)                @dc_contributor=names[:name_str] -            when /^(?:@publisher:|0~publisher)\s+(.+?)$/m                                           #% metainfo DC -              @dc_publisher=$1 +            when /^(?:@publisher:|0~publisher)\s+(.+?)$/m; @dc_publisher=$1                         #% metainfo DC +            when /^@original_publication:\s+(.+?)$/m; @original_publication=$1 +            when /^@original_publication\.date:\s+(.+?)$/; @original_publication_date=$1 +            when /^@original_publication\.nationality:\s+(.+?)$/; @original_publication_nationality=$1 +            when /^@original_publication\.institution:\s+(.+?)$/; @original_publication_institution=$1 +            when /^@writing_focus\.nationality:\s+(.+?)$/; @writing_focus=$1                       # e.g. Finland (where and article on Finnish law)              when /^(?:@|0~)date.+?$/m                                                               #% metainfo DC                if para =~/(?:@date:|0~date)\s+(.+?)$/m -                @dc_date=$1.strip +                @dc_date=$1.strip                                                                   #% original publication date unless the substantive text is updated/modified, then date of update                  if @dc_date !~regx_date \                  and not @dc_date.empty?                    tell=SiSU_Screen::Ansi.new(@cmd,'Date Format should be','YYYY-MM-DD','please correct document','Date','field, current value:',@dc_date) @@ -355,6 +359,15 @@ module SiSU_Param                  end                  @date_scheme='scheme="ISO-8601"' if @dc_date =~/\d{4}-\d{2}-\d{2}/                end +              if para =~/(?:@date\.added_to_site:|0~date\.added_to_site)\s+(.+?)$/m +                @date_added_to_site=$1.strip +                if @date_added_to_site !~regx_date \ +                and not @date_added_to_site.empty? +                  tell=SiSU_Screen::Ansi.new(@cmd,'Date Format should be','YYYY-MM-DD','please correct document','Date','field, current value:',@date_added_to_site) +                  tell.instruct if @cmd =~/v/ +                end +                @date_scheme='scheme="ISO-8601"' if @date_added_to_site =~/\d{4}-\d{2}-\d{2}/ +              end                if para =~/(?:@date\.created:|0~date\.created)\s*(.+?)$/m                  date=$1.strip                  if date !~regx_date \ @@ -405,6 +418,16 @@ module SiSU_Param                  @dc_date_modified=date                  @date_modified_scheme='scheme="ISO-8601"' if date =~/\d{4}-\d{2}-\d{2}/                end +              if para =~/^(?:@date\.translated:|0~date\.translated)\s*(.+?)$/m +                date=$1.strip +                if date !~regx_date \ +                and not date.empty? +                  tell=SiSU_Screen::Ansi.new(@cmd,'Date Format should be','YYYY-MM-DD','please correct document','Date','field, current value:',date) +                  tell.instruct if @cmd =~/v/ +                end +                @date_translated=date +                @date_translated_scheme='scheme="ISO-8601"' if date =~/\d{4}-\d{2}-\d{2}/ +              end              when /^(?:@type:|0~type)\s+(.+?)$/m;             @dc_type=$1                                                 #% metainfo DC              when /^(?:@format:|0~format)\s+(.+?)$/m;         @dc_format=$1                                               #% metainfo DC              #when /^(?:@identifier:|0~identifier)\s+(.+?)$/m; @dc_identifier=$1                                           #% metainfo DC diff --git a/man/man1/sisu.1 b/man/man1/sisu.1 index a65a3f3e..66b9d47a 100644 --- a/man/man1/sisu.1 +++ b/man/man1/sisu.1 @@ -888,7 +888,7 @@ This current document has a header similar to this one (without the comments):  .BR    @creator: Amissah, Ralph  .BR -  % note formatting on author / creator field, surname comma then other names, if more than one author separate by semi\-colon +  % note formatting rules on author / creator field, \"Surname, Other names\", if more than one author separate by semi\-colon (if name is of an institution just write name or the name contains a comma enclose in quotation marks)  .BR    @rights: Copyright (C) Ralph Amissah 2007, part of SiSU documentation, License GPL 3  .BR @@ -900,6 +900,10 @@ This current document has a header similar to this one (without the comments):  .BR    % note formatting for topic_register topic levels are separated by a colon, a semi\-colon separates main topics  .BR +  @date: 2007\-09\-16 +.BR +  % original publication date unless the substantive text is updated/modified, then date of update +.BR    @date.created: 2002\-08\-28  .BR    @date.issued: 2002\-08\-28 @@ -908,8 +912,6 @@ This current document has a header similar to this one (without the comments):  .BR    @date.modified: 2007\-09\-16  .BR -  @date: 2007\-09\-16 -.BR    @level: new=C; break=1; num_top=1  .BR    % comment: in this @level header num_top=1 starts automatic heading numbering at heading level 1 (numbering continues 3 levels down); the new and break instructions are used by the LaTeX/pdf and odf output to determine where to put page breaks (that are not used by html output or say sql database population). | 
