I've read it carefully, and it sounds great if everyone follow the rules.
Christian, I'm well aware of documentation process to know that you did a
huge and great job, congrats!

Any idea of a collaborative translation work (especially on the initial
translation process)?
Playing with small teams managed by a leader seems the easiest way to me
right now.

Emmanuel

-----Message d'origine-----
De : [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] la part de
Christian Bauer
Envoye : vendredi 26 mars 2004 00:56
A : [EMAIL PROTECTED]
Objet : [Hibernate] Documentation README


OK guys, this is the new process. Most of it is only relevant for the
translators, they have a copy of that README. Don't be afraid, it's not
as complex as it looks. Emmanuel, you are the guy for the French
translation, keep a copy and read it thoroughly.

All other committers to the original (English) documentation: Read it at
least once, especially the parts about "id" and "revision" attributes. I
won't have mercy if someone destroys the change tracking for the
translators. It's trivial, ask me if you need more info.

-----------------------------------------------------------------

THE HIBERNATE DOCUMENTATION

Preface

The Hibernate documentation is a modular documentation, it uses
various XML files (written with the DocBook DTD) and a Java-based
build process to generate HTML and PDF output. Use a simple text
editor with XML support, such as JEdit, to edit the source files. You
will need Java and Ant installed for the output generation, it is Java
only and should work on any operating system.

Note that this README sounds complex, but the process is actually
quite easy to learn and use. Don't skip steps, just because you
don't like them, ask first. Read it twice if neccessary.

1. How to get it

Check out a copy of Hibernate from CVS (v21branch). A regular
Hibernatea download will not contain the build process for the
documentation, only the PDF/HTML output, use CVS! You can use
anonymous CVS on SourceForge as described on the Hibernate
download page, http://www.hibernate.org/Download/DownloadOverview

2. Working on the original language

The original and master language is English, hence the "en" subdirectory
in /doc/reference/ is authorative. We use "id" and "revision" attributes on
XML elements to track changes. Here are the rules, they are mandatory:

2a. Changing existing content involves an update of the "revision" of the
XML
element you are working on (e.g. a <sect1>, <sect2> or even a <para>).
If a <sect1> has a revision="1", you update it to "2" after updating the
content in that section. You can also add revision attributes to elements
that don't have one, start with "1". You can add revision
attributes to any element, dependent on your changes, but the smallest
should be a <para>. You can't add a revision attribute to elements
without an "id" attribute! If the element you wish to update has no id,
have a look at the id of the parent element and use a similar (unique)
new identifier attribute for your child element (or, simply update the
revision of the parent). Never enumerate new id values, use short clear
text. After adding an id attribute, the element will be visible in change
tracking.

2b. Adding new content involves adding new elements (even new files), such
as <sect1>, <para> and so on. Any new element (or its new parent element)
needs an "id" attribute! If you add a <sect1>, give it a unique short text
identifer, look at the parent element's identifier for the common prefix.

2c. Deleting content involves removing old elements. Just remove them and
make sure that the parent elements revision is updated, if the removed
element did not itself have an identifer and a revision. If you removed an
element with its own identifier, everything is fine.

3. Starting a new language

If you start a translation for a new language, you have to copy
the default language (English) and start an initial translation.

3a. First, duplicate the default language "en" by duplicating the directory
/doc/reference/en. For example, a new German translation
will be a copy of that directory in /doc/reference/de. We use the ISO
codes to name the language subdirectories.

3b. You also have to add your new language to the language build file,
/doc/reference/build.xml. Look for the lines that have a "TRANSLATOR"
comment and duplicate them. Change the default "en" to your language
code. You will then be able to use the change tracking and PDF/HTML
output generation.

4. The initial translation

If you just copied the default language, start translating the DocBook
XML modules and illustrations in the new language subdirectory. For
example, all modules for German would be in /doc/reference/de/modules
and all illustrations in /doc/reference/de/images, note that you also have
to translate the master.xml in your language subdirectory.

The initial translation is straightforward: Translate all modules and
all illustrations, but don't add any files, don't add any new XML elements
(like a section or a chapter, not even a paragraph). Simply translate
sentence by sentence. This is very important.

If you need a new section or paragraph, because your translation requires
more explanation, you can add it if you also add an "id" and a "revision".
For example, if you add a new <para> element to the existing document,
give it an identifier, a short clear text extending the identifier of the
parent
element: <para id="queryhql-projection-specialnote"> would be a special
paragraph in the <sect1 id="queryhql-projection"> section in the chapter
<chapter id="queryhql">. Never add a new element in a translated version
without setting a new unique identifier value! Also, you have to mark this
new element as "only relevant in the translated version". Simply set the
"revision" attribute of your new element to "-1". For example, we set the
previously created paragraph to "only relevant in the translation" by
declaring <para id="queryhql-projection-specialnote" revision="-1">.
Changes to that paragraph will not be tracked, it is your responsibility to
watch out for neccessary updates. You may alsouse this technique (setting
the revision to "-1") later, if you have elements that are only present in
your translation).

5. Getting updates

Translators get updates by updating their CVS working directory, the
default language directory "en" must be updated from the Hibernate CVS.
You, as a translator, will get an e-mail from us when translation is
required,
you can then update your copy.

The documentation process can generate a report after you updated
from CVS and show you what needs to be translated and/or removed
in your local translation copy. To generate that report, run "ant
all.revdiff"
in the doc/reference/ subdirectory. Click on the generated HTML report
file for your language and you will see what has to be updated and/or
removed.

6. Translating the updates

If the report indicates that content in the original has been removed,
simply remove the identified XML element from your language modules.

If the report detects a new revision, open the file that has been updated
in your translation, find the identified XML element and update/translate
its contents. Important: Make sure you also update the "revision"
attribute of that XML element by setting it to the same version as in
the original file, hence both the original XML file and your translated
file should have the same revision number for all elements. If an
XML element in your translation doesn't have a revision, but the original
file has, add a new "revision" attribute to your XML element.
The HTML report shows the identifiers and revisions for both the original
and the translated files, use it to compare.

Rerun the "ant all.revdiff" report generation as often as you like, until
no more differences are detected. You should always try to get your
copy clean, with all updated revisions and all identified elements
synchronzied.

7. Getting a preview

Everyone can generate a PDF and HTML output of the documentation
by simply running "ant all.doc" in the doc/reference/ subdirectory.

8. Committing your translation

All translators will be asked to submit their translated versions from
time to time. This will be a manual process, you will get an e-mail from
the Hibernate team and simply send your language subdirectory as
a ZIP file to us. It will then be integrated in the main Hibernate
distribution
and on the website.

--
Christian Bauer
[EMAIL PROTECTED]
http://www.hibernate.org/


-------------------------------------------------------
This SF.Net email is sponsored by: IBM Linux Tutorials
Free Linux tutorial presented by Daniel Robbins, President and CEO of
GenToo technologies. Learn everything from fundamentals to system
administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click
_______________________________________________
hibernate-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/hibernate-devel



-------------------------------------------------------
This SF.Net email is sponsored by: IBM Linux Tutorials
Free Linux tutorial presented by Daniel Robbins, President and CEO of
GenToo technologies. Learn everything from fundamentals to system
administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click
_______________________________________________
hibernate-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/hibernate-devel

Reply via email to