By Yehudad - Wednesday, August 17, 2005
|
I'm using English as my family tree language because I have relatives all over the world. My language is Hebrew. I dont want to have two family trees to maintain (English + Hebrew).
So
I thought of an idea. The dictionary.xml file lets me generate a report in Hebrew for my tree. The problem is that the name (first + last) will be in English.
I thought of using the dictionary.xml to translate names from English to Hebrew. I tried it and it worked. However - the list of names and surnamesis very long.
my question: I want to create a new xml file that will hold all the names and surnames I want. Is there any methods within the Report generator that I can use to retrieve information from the xml file (like the LanguageDictionary method)?
|
By GenoProSupport - Thursday, August 18, 2005
|
At the moment, the LanguageDictionary object has only two methods: Lookup and Peek . Both method return the translated text, however Peek does not display any error if the string identifier is not there.
The LanguageDictionary was designed to be very performant, so it uses a hybrid data structure, and this is the reason why there are no other built-in methods to iterate. Of course, I can add new methods. Would it be better to have a separate XML file for this purpose?
What about modifying GenoPro to have fields regarding translation, similar to DoroTree?
|
By maru-san - Thursday, August 18, 2005
|
I started all my trees in english, but then I thought about all my german and japanese relatives.
So for me it's like keeping one english xml for all and one xml especially for japanese. As far as reports are going I have to make three dictionaries for three kind of reports such as english with First and Last Names and all education, occupation and comments, no translation necessary.
Then one dictionary for german and also modifying the reports, however I would like to skip all comments for educations, occupations and pictures by some kind of selection mode beforehand and then one for japanese using only Alternative Names with the same selection as for german. The reports (html) to be translated correspondingly. A table style layout would be more suitable than a narrative style.
Modified the report of "ron" into german and modified the individual.htm. The first part looks ok now with me, but when it comes to education and occupation and! comments it is just too much to ask for. So it will be a stripped down report to basic information.
So the request goes for a very straight forward reporting style with the possibility for selections (included in report yes/no), This will make the translation a lot easyer.
|
By GenoProSupport - Thursday, August 18, 2005
|
maru-san (8/18/2005) So the request goes for a very straight forward reporting style with the possibility for selections (included in report yes/no), This will make the translation a lot easyer. Can you elaborate a bit more on this? I don't understand. By the way, I am adding new methods to better take advantage of the language dictionary. My goal is to have GenoPro capable to use a true universal HTML template, where all the language-dependent text is stored in the language dictionary.
|
By maru-san - Thursday, August 18, 2005
|
My suggestion is when you open the dialog box for making your report, you will have under option not only the path of pictures but actually the choice what you want to have included in the report (which name, education yes/no, occupation yes/no, comments yes/no, etc.). Whether this can be done is another question.
|
By GenoProSupport - Thursday, August 18, 2005
|
What you requested is not a problem at all. In fact, all the tags in the <Parameters> in Config.xml will be accessible from the report dialog. In the configuration file, you will be able to define whatever the parameter is plain text or a list of options.
In the meantime, you have to manually edit Config.xml using Nodepad.
|
By Yehudad - Thursday, August 18, 2005
|
The LanguageDictionary was designed to be very performant, so it uses a hybrid data structure, and this is the reason why there are no other built-in methods to iterate. Of course, I can add new methods. Would it be better to have a separate XML file for this purpose? What about modifying GenoPro to have fields regarding translation, similar to DoroTree?
First - as I understand it the LanguageDictionary is looking only in the <ReportGenerator> section of the dictionary. If I put my translated names there I can do what I want but the list is going to be a very long one, so I thought that it is better to put them in their own file. It will be also easier to maintain the list there.
As to modify GenoPro to have fields regarding translation similar to DoroTree, of course it is the better solution. In my method, however: 1. There is no need for such fields. 2. I don't have to translate first and last names for every individuals in my tree, I only have to do it once in the Names.xml file.
|
By GenoProSupport - Thursday, August 18, 2005
|
Should GenoPro store those translated names in the .gno or .xml file? GenoPro could have a list of translated names, and the report generator having a method such as Util.GetTranslatedName("morin") returning the translated name.
Of course, a an external file names.xml could also be used, as a "default" lookup if there is no names found in the .gno file.
|
By Yehudad - Thursday, August 18, 2005
|
Should GenoPro store those translated names in the .gno or .xml file? GenoPro could have a list of translated names, and the report generator having a method such as Util.GetTranslatedName("morin") returning the translated name.
If you are talking about my suggestion (no special fields in GenoPro) - GenoPro needs only to add a method of retrieving information from an xml file. The maintance of this file is on the user, not GenoPro. The method should be somthing like: Util.GetXMLValue (xmlFile, LookUpVal) or Util.GetXmlValue (xmlFile, xmlSection, LookUpVal).
On the other hand if you are talking about additional fields then GenoPro can store it on the .gno file since it can be retrieved as any other field.
|
By V.L.o - Thursday, August 18, 2005
|
Wouldn't it be complicated for user to have data stored in two different files!
Shouldn't single source for data be *xml OR *gno file... the other one just might exist as a backup?!
|
By Yehudad - Thursday, August 18, 2005
|
V.L.o (8/18/2005) Wouldn't it be complicated for user to have data stored in two different files!
Shouldn't single source for data be *xml OR *gno file... the other one just might exist as a backup?!
It is not data in different files!! You can call it a names dictionary. If you want to translate your reports to other language you are modifying dictionary.xml to your language. You are only translating not keeping duplicate data. It is the same in the names.
|
By GenoProSupport - Thursday, August 18, 2005
|
GenoPro could have a small table in the "Tools" menu for name translation. One column could be English and the other column could be some other language such as Hebrew. You would then enter all the names you want to be translated without having to know any XML. This table would be automatically be stored in the .gno file, and could be exported to an external XML file, so it can be re-used in another .gno document. GenoPro would then provide a built-in mechanism to perform name translation while generating reports.
The LanguageDictionary is already an object on its own. I could have a method named Util.NewLanguageDictionary(strFileXML, strSectionXML) to create a new language dictionary from a section within an XML file. This way, all the methods of the LanguageDictionary object such as Lookup and Peek would be available to the user. I plan to add several methods to the LanguageDictionary object.
Ideallly, the method Util.NewLanguageDictionary would be called at the begining of the report, and the returned language dictionary object would be stored in the Session object.
|
By V.L.o - Thursday, August 18, 2005
|
It seams as a much better idea!
As it happens, most computer users are more or less computer illiterate persons... They just want to have something that works it's job (with as less tuning as possible) and don't want to know how it works...
|
By Yehudad - Thursday, August 18, 2005
|
GenoPro could have a small table in the "Tools" menu for name translation. One column could be English and the other column could be some other language such as Hebrew. You would then enter all the names you want to be translated without having to know any XML. This table would be automatically be stored in the .gno file, and could be exported to an external XML file, so it can be re-used in another .gno document. GenoPro would then provide a built-in mechanism to perform name translation while generating reports.
This sounds like a very good idea. Can GenoPro automatcally take all the names / surnames in the tree and put them in this table, or the user will enter the names and translations?
will the names and surname be in the same table or they will be separated?
|
By GenoProSupport - Thursday, August 18, 2005
|
GenoPro can populate the table with all unique names (first name, middle, last, second last, alternative). This mechanism could be extended for places (cities, provinces/states).
All you would have to do is to enter the equivalent translated name in the next column. GenoPro could easily offer multiple columns for different languages such as "EN" (English), "HE" (Hebrew), and say "JA" (Japanese). During the initialization of the language dictionary, you could specify which translation you want. If none is specified, GenoPro would default to the second column.
My question is: Would that solution work for you? It is almost too good (easy) to be true.
|
By V.L.o - Thursday, August 18, 2005
|
Would it be pushing if the default 2nd language name would be some original form of Name (I sometimes placed such data under Nickname)?
It could work, at least for me!
|
By GenoProSupport - Thursday, August 18, 2005
|
Pushing is good. GenoPro is about pushing the limits of genealogy software to reach new levels of genealogy computing.
V.L.o (8/18/2005) Would it be pushing if the default 2nd language name would be some original form of Name (I sometimes placed such data under Nickname)?
What do you mean by "original form of Name"?
|
By rdn - Thursday, August 18, 2005
|
My question is: Would that solution work for you? It is almost too good (easy) to be true.
I'm all for it. It sounds like a good idea. We should note that the translation is not always exactly the same each time. There should be a way to override for a specific individual.
I will give an example: The name Chaim in Hebrew can be translated to Haim, Chaim or Howie in English. The reverse translations are not always 1:1 either.
|
By GenoProSupport - Thursday, August 18, 2005
|
Well I am glad this solution would work for you. The more "votes" I get, the more confident I am with this solution. You have to understand, I only know French and English, and therefore it is difficult for me to truly grasp the challenges you are facing.
Would you like the translation only in the report, or also in the GenoPro application?
I will give an example: The name Chaim in Hebrew can be translated to Haim, Chaim or Howie in English. The reverse translations are not always 1:1 either.
What can be done in this case. Would specifying the Permanent ID of that individual solve the problem?
|
By rdn - Thursday, August 18, 2005
|
Would you like the translation only in the report, or also in the GenoPro application?
Both, I think. With an ability to override, by using specific fields. In this manner, we can have the best of both worlds.
Here is what I envision:
Having a standard set of translations of names, so that when entered in the Name field, the translation would appear automatically in the Foriegn Name field. Then we can override this name by specifying a new one in that same Foriegn Name field.
Optimally, perhaps we can have multiple translations, and one would have to be chosen from a list in the Foriegn Name field. This would work by defining a name to translate, with multiple choices, e.g.:
Chaim -> Haim / Chaim / Howie
One of these would be selected upon insertion of a new name, or an update of an existing name, based upon the drop-down list created automatically.
A translated name can be fed back into the dictionary table, thus removing the need for non-techies to update manually. In addition, a table created expressly for this purpose can be brought up, just as a table of individuals or pictures (under View - table layout...), where insertions / deletions / updates can be made by the non-techie.
Reports would automatically look at the translation table, unless something already appears in the Foriegn Name field. This can be a setting of the report, i.e.: Auto-translate names?
Bottom line: the translation has to be specific to individuals.
I hope the description does not cause you to go into a programming warp of great deal of time. On the other hand, I think it would only enhance the program.
|
By Yehudad - Thursday, August 18, 2005
|
GenoPro can populate the table with all unique names (first name, middle, last, second last, alternative). This mechanism could be extended for places (cities, provinces/states).
All you would have to do is to enter the equivalent translated name in the next column. GenoPro could easily offer multiple columns for different languages such as "EN" (English), "HE" (Hebrew), and say "JA" (Japanese). During the initialization of the language dictionary, you could specify which translation you want. If none is specified, GenoPro would default to the second column.
My question is: Would that solution work for you? It is almost too good (easy) to be true.
Yes it is. Thanks a lot! My first idea was a little method to retrieve information from a file and it came out with a great new feature in GenoPro that makes it easier to use GenoPro with more than one language without the need to hold duplicate data.
Can you specify how this table can be accessed from the Report Generator?
|
By Yehudad - Thursday, August 18, 2005
|
Bottom line: the translation has to be specific to individuals.
I disagree. It can be a general table, not specific. I think that for the use of any report what Dan suggested is a very good idea. You can alwayes Enter name like "Chaimke" and translate it in the table. You can then enter names like Chaim, Haim, Haimke, Chaimke and translate them as you wish.
When I came up with the idea of translating names, while we talked over the phone, I never thought of such simple solution in GenoPro with Dan's help. I think that the table is a good thing, and that people that are not programmers can maintain this table.
|
By GenoProSupport - Thursday, August 18, 2005
|
The "Table" of translated names would appear in the Table Layout. As for accessing this table from the report generator, there would be another object named TranslatedNames with similar methods as the LanguageDictionary object. In fact, GenoPro can apply all the translated names to all individuals and places before generating the report, so there is no need to do any special processing while generating the report. GenoPro can also have an option in the "Display" menu to display translated names in the pedigree view. Just a thought.
Question: Is this translation only for names, or it is also for other things such comments and other fields?
|
By V.L.o - Thursday, August 18, 2005
|
What do you mean by "original form of Name"? I was meaning about names allready present in persons properties... as I mentioned I usually placed second name under nickname, or within one of the fields...
BTW I still miss some of the forms of the full name... as mentioned in Last Name / Maiden last name
Question: Is this translation only for names, or it is also for other things such comments and other fields? I think this two things should stay appart. One thing is translating a skin, but names differ much more, even locally...
|
By Yehudad - Thursday, August 18, 2005
|
Question: Is this translation only for names, or it is also for other things such comments and other fields?
I thought only of translating first names and surnames.
Other fields are being translated with the dictionary.xml file. As for notes - I dont see how you can translate a free text field without writing this note again in the other language.
In fact, GenoPro can apply all the translated names to all individuals and places before generating the report, so there is no need to do any special processing while generating the report. GenoPro can also have an option in the "Display" menu to display translated names in the pedigree view. Just a thought.
The report template has a meta data:
meta http-equiv="Content-Language" content="He" |
Can you use that to automatically refer to the translated name language, without any other processing?
|
By Yehudad - Thursday, August 18, 2005
|
Dan,
When do you think this feature will be added to GenoPro?
|
By GenoProSupport - Thursday, August 18, 2005
|
Next Beta
|
By Yehudad - Thursday, August 18, 2005
|
Can't wait.
Looking forward to it
|
By ezrab - Thursday, August 18, 2005
|
Simplicity is imperative, noting that most users are not computer savvy.
I need both English- my mother tongue- and Hebrew- for my children, whose English is useful but not congenial.
In the names, I enter both the English and the Hebrew, where relevant, but separated by an underscore. The generated report prints out both legibly. For the Hebrew, (right-2-left script) using the Code- WINDOWS-HEBREW produced the good results. In emails, I often have to change the code to UTF-8 but UTF-8 did not show Hebrew with genoPro. And this canged code worked in the free version.
Maybe it will work in other languages.
ezrab
|
By Yehudad - Thursday, August 18, 2005
|
Well according to this solution you wont need this method anymore. You can choose the language you want for the tree, lets say that it will be Hebrew. You then can use the Table Dan suggested to have the names in other language, say English.
You then can generate reports in Hebrew using the names in the tree and at the same time generate English report using the values from the translation Table.
No need for any duplicate data!
|
By GenoProSupport - Thursday, August 18, 2005
|
I made an update at http://www.genopro.com/beta/InstallGenoProBeta13j.exe This is a build just for you guys. The documentation is available at http://www.genopro.com/NewReportGenerator/Objects/NameDictionary/
Sample code is found in the file Init.htm and Individual.htm from the skin template.
Let me know what you think about this solution. Does that work for you? If so, I will write more code so you won't have to edit the file NameDictionary.xml.
|
By maru-san - Thursday, August 18, 2005
|
Dan,
just checked the names dictionary and found the name "Mike" being translated by google into マイクロフォン, which means microphone; please correct into マイク.
the name Daniel was correct. (phonetic translation)
|
By GenoProSupport - Thursday, August 18, 2005
|
Thanks for your feedback. The Google translate does sometimes produce funny results. Once my sister Estelle was reading a page translated from English to French. The pharse "When he arrived, all his fans were waiting for him" had been translated to "Lorsqu'il est arrivé, tout ses ventilateurs l'attendaient". In french, the word "ventilateur" means an object with propellers, which is indeed a fan.
|
By Yehudad - Thursday, August 18, 2005
|
I keep getting this message, while trying to generate report using Beta 13i:
Error at line 85 (init.htm) : Object doesn't support this property or method: 'LanguageDictionary.Families' Microsoft VBScript runtime error 800A01B6
|
I'm getting it even without the lines I added to my init.htm file
Set oNameDictionary = Util.NewNameDictionary Session("oNameDictionary") = oNameDictionary oNameDictionary.BuildLookupTable "NameDictionary.xml", "EN", "HE" |
Another question: As I understand - the build in feature is not yet implemented and we should enter the translation manually?
|
By GenoProSupport - Thursday, August 18, 2005
|
Yes, you have to enter the names manually in the file NameDictionary.xml until I provide a tool within GenoPro. First of all, I want to get feedback if this technique will work for you guys.
Should GenoPro substitute the translated names before generating the report, so you don't have to deal with the NameDictionary object while generating the report?
|
By Yehudad - Thursday, August 18, 2005
|
Yes, you have to enter the names manually in the file NameDictionary.xml until I provide a tool within GenoPro. First of all, I want to get feedback if this technique will work for you guys.
I did tried it using the LanguageDictionary and it worked great then. I will try the new method using the NameDictionary.
Should GenoPro substitute the translated names before generating the report, so you don't have to deal with the NameDictionary object while generating the report?
I am not sure what you mean. Do you mean that GenoPro will translate the names automatically without any need for the user to write code?
BTW, I edited my last post. I got an error message using 13i.
|
By GenoProSupport - Thursday, August 18, 2005
|
I am not sure what you mean. Do you mean that GenoPro will translate the names automatically without any need for the user to write code? Yes. For instance, the Config.xml could have a tag:
<ReportGenerator> <NameDictionary File="NameDictionary.xml" From="EN" To="JA" />
<Report Template=" ... " /> </ReportGenerator> |
This way, GenoPro would automatically load the NameDictionary.xml and perform a name lookup (translation) for every individual and place within the genealogy tree before starting generating the report. In other words, this name translation would be transparent to the report templates.
BTW, I edited my last post. I got an error message using 13i. What error do you get? The version is 13j.
|
By V.L.o - Thursday, August 18, 2005
|
Sorry but there is no link to 13j!
altough i tried and succeded downloading from link to "InstallGenoProBeta13j.exe"
|
By GenoProSupport - Thursday, August 18, 2005
|
V.L.o Sorry but there is no link to 13j! Beta 13j is only for you guys... for the translation issue...
|
By GenoProSupport - Thursday, August 18, 2005
|
Oh, my mistake. The link should be http://www.genopro.com/beta/InstallGenoProBeta13j.exe
I typed i instead of j. Everyone is welcome to download Beta13j, however this beta is not listed at http://www.genopro.com/beta/ .
|
By Yehudad - Thursday, August 18, 2005
|
I am not sure what you mean. Do you mean that GenoPro will translate the names automatically without any need for the user to write code? Yes. For instance, the Config.xml could have a tag: <ReportGenerator> <NameDictionary File="NameDictionary.xml" From="EN" To="JA" />
<Report Template=" ... " /> </ReportGenerator> |
This way, GenoPro would automatically load the NameDictionary.xml and perform a name lookup (translation) for every individual and place within the genealogy tree before starting generating the report. In other words, this name translation would be transparent to the report templates.
It sounds like a great idea. If GenoPro can do it automatically it would be great. The user wont need to go over the code and add the code for the translation.
As for the Beta 13j I will try to generate the report with it.
|
By Yehudad - Thursday, August 18, 2005
|
OK. I tried it and it worked just fine for me. The names I entered to the NameDictionary.xml were translated and the rest remained the same. Will the names and surnames will be at the same table and xml file? Should I work with the NameDictionary.xml now or wait for the built-in tool?
I do see trouble with the skins. In each Beta version there can be some modifications to the /English skin. Some of them are crucial, because we are talking about Methods changed. The problem is that that I have to check where all the changes are and modify all my skins with the changes. Otherwise they wont work...
|
By GenoProSupport - Thursday, August 18, 2005
|
The names I entered to the NameDictionary.xml were translated and the rest remained the same. My question is the following: Is the use of NameDictionary.xml a solution for translating names? Is there anything missing in this solution? Would it be better to have another dialog named "General HE" for entering the names in Hebrew within GenoPro?
Will the names and surnames will be at the same table and xml file? Would you prefer to have XML sectionss for given names, surnames, and perhaps places? GenoPro can build the lookup table by merging all of them if necessary. Having sections may offer benefits in the future to classify information, and tweak/customize the translation. At first, I wanted the NameDictionary.xml to be simple, but adding sections is not difficult at all.
Should I work with the NameDictionary.xml now or wait for the built-in tool? If the NameDictionary.xml solution works for translating names, I will write some code within GenoPro to edit the file NameDictionary.xml. GenoPro can build a list of all unique names, so you only have to type the translated name.
I do see trouble with the skins. In each Beta version there can be some modifications to the /English skin. Some of them are crucial, because we are talking about Methods changed. The problem is that that I have to check where all the changes are and modify all my skins with the changes. Otherwise they wont work... This is a problem everywhere. I use Windiff to compare modifications between files and perform the merging if necessary. The trick is to keep a backup of your work before upgrading, so you can compare what has been upgraded. Windiff is a free tool you can download almost everywhere (http://www.grigsoft.com/download-windiff.htm - 75 Kb)
|
By Yehudad - Thursday, August 18, 2005
|
My question is the following: Is the use of NameDictionary.xml a solution for translating names? Is there anything missing in this solution? Would it be better to have another dialog named "General HE" for entering the names in Hebrew within GenoPro? When I first thought about the name translation I thought of a simple xml file to read from and write to. What I asked for was only a method or two within the report generator to read from the file.
I think that what we came up with is a better solution, especially for those who don't know anything about programming and they stil want to use the report generator. Therefore any build-in solution that enables the simple user to maintain the name translation easily is better.
Would you prefer to have XML sectionss for given names, surnames, and perhaps places? GenoPro can build the lookup table by merging all of them if necessary. Having sections may offer benefits in the future to classify information, and tweak/customize the translation. At first, I wanted the NameDictionary.xml to be simple, but adding sections is not difficult at all. I think that different sections are better because it will be easier to maintain the xml file. If you will add the build-in translation tool it will help to distinguish between the different lists, so the user will know weather he updates the surnames list or the given names list. You will be able to add other tables in the future like the places, occupation, education etc.
If the NameDictionary.xml solution works for translating names, I will write some code within GenoPro to edit the file NameDictionary.xml. GenoPro can build a list of all unique names, so you only have to type the translated name. I think this is what we talked about. A list of unique names and the ability to translate them to any other language that the user wants.
This is a problem everywhere. I use Windiff to compare modifications between files and perform the merging if necessary. The trick is to keep a backup of your work before upgrading, so you can compare what has been upgraded. Windiff is a free tool you can download almost everywhere ( http://www.grigsoft.com/download-windiff.htm - 75 Kb) You're right. But, any new version supports tha old version. So if I used old methods they should still be supprted or you can put a list of the new methods and the ones they replaced. This way a simple search will do.
|
By GenoProSupport - Thursday, August 18, 2005
|
Great, this is what I wanted to read. I am currently working on a Privacy Filter to hide some information while generating a report. For instance, the privacy filter allows to hide contact information on a report.
I will work on this name translation next, because I consider it part of the report generator. As for deleted methods, there are only two at the moment: LanguageDictionary.Individuals() and LanguageDictionary.Families(). I forgot to remove them when I released the betas. In the future, I will have a page about new methods and deleted methods. In the meantime, if you see an error or have a question, post a message and I will help you.
|
By Yehudad - Thursday, August 18, 2005
|
Thanks.
I did found those methods and removed them with the new ones.
I do think that you are doing a great job in making GenoPro a multi-lingual software.
|
By GenoProSupport - Thursday, August 18, 2005
|
I do think that you are doing a great job in making GenoPro a multi-lingual software. It is all of the feedback I am getting from users like you. I have plans to improve the multi-lingual reports. For instance, a single report skin will be capable to support multiple language dictionaries, say LanguageDictionary.xml, LanguageDictionaryHE.xml, LanguageDictionaryFR.xml, and so on. GenoPro will load the proper language dictionary before generating the report. A new method named ReportGenerator.SkinLanguage will return the language code such as "EN","HE", "FR" so the developer can write VBScript/JavaScript code for a specific language if necessary. This way, the same skin template can be re-used for multiple languages.
|
By Yehudad - Thursday, August 18, 2005
|
What I think will be great is for the report generator to be able to create all kinds of reports not just HTML but word documents (doc and rtf), pdf files and so on.
Users can then use it to create their own books and reports.
|
By GenoProSupport - Thursday, August 18, 2005
|
I agree. I think supporting VBScript and JavaScript is a step in the right direction. With time, new features will be added. I truly believe the report generator is stake of GenoPro's future.
|
By Yehudad - Thursday, August 18, 2005
|
So this is the plan for GenoPro v. 3?
|
By GenoProSupport - Thursday, August 18, 2005
|
Probably. I would love to have the report generator capable to generate a PDF document to create an eBook of a family (which would include each GenoMap and pictures).
|
By Yehudad - Thursday, August 18, 2005
|
I would love to have the report generator capable to generate a PDF document to create an eBook of a family (which would include each GenoMap and pictures).
I Agree. Anyone can then "write" his own family book and design it in any way he wants... That would be a great thing for GenoPro to do. To be able to design anything in this book. I am not sure that there are many softwares that gives this ability. They do give the ability to select which pre-defined reports will appear in the book, but not to use your own reports.
I have plans to improve the multi-lingual reports. For instance, a single report skin will be capable to support multiple language dictionaries, say LanguageDictionary.xml, LanguageDictionaryHE.xml, LanguageDictionaryFR.xml, and so on. GenoPro will load the proper language dictionary before generating the report. This way, the same skin template can be re-used for multiple languages.
In this way you can solve the problem of the skins changes. If I don't need to translate a specific skin, the skin can be modified and upgraded by GenoPro. Users can then share their skins and it dosnt matter in which language, they orignally had been written...
|
By V.L.o - Thursday, August 18, 2005
|
Whit each new feature, I like this program even more...
I just hope it'll stay a good way for Dan to live out of it, so he keeps upgrading it with new ideas...
I'm sure, when time comes, if I'll have enough time, I'll sure try to translate skins and other features on my language!!!
|
By Yehudad - Thursday, August 18, 2005
|
This is what so great in Dan's idea. You only have to create LanguageDictionary.xml in your own language and GenoPro will make any report from any skin in your language.
|
By GenoProSupport - Thursday, August 18, 2005
|
Yes, indeed. The goal is to never duplicate code or data. This is why you can include a .vbs file within the template, and in the future, have multiple dictionaries per skin. GenoPro will also provide a mechanism to share dictionaries between skins. In fact, I plan to make the NameDictionary.xml public on the web with a nice easy web interface so everyone can add/update names. This way, third party tools will be able to download the xml file and use it for other purpose.
|
By Yehudad - Thursday, August 18, 2005
|
In fact, I plan to make the NameDictionary.xml public on the web with a nice easy web interface so everyone can add/update names. This way, third party tools will be able to download the xml file and use it for other purpose.
This will be an addition to the build-in tool in GenoPro or it will replace it?
|
By GenoProSupport - Thursday, August 18, 2005
|
This will be an addition to the build-in tool in GenoPro or it will replace it? An addition. The idea is to have a large dictionary of names available for download, so the user has something to start with. The user can have his/her own NameDictionary.xml to take precedence over the global name dictionary.
|
By Yehudad - Thursday, August 18, 2005
|
The idea is to have a large dictionary of names available for download, so the user has something to start with. The user can have his/her own NameDictionary.xml to take precedence over the global name dictionary.
Do you mean that there will be two namedictionary? the one you download and the one the user defined?
|
By GenoProSupport - Thursday, August 18, 2005
|
Do you mean that there will be two namedictionary? the one you download and the one the user defined?
Eventually yes. I will make sure the download is easy for the user and/or automatic. The reason why I use the word "eventually" is because this is a feature in the future. I don't plan to implement this for version 2.0.
|
By Yehudad - Thursday, August 18, 2005
|
Eventually yes. I will make sure the download is easy for the user and/or automatic. The reason why I use the word "eventually" is because this is a feature in the future. I don't plan to implement this for version 2.0.
The built-in tool is still planed for the next Beta version 13.x?
|
By beraha - Thursday, August 18, 2005
|
So, what kind of those features mentioned in this discussion will be included in beta14?
B.t.w - Any ETA for beta 14? We just can’t wait anymore
All I have to say to you Dan is: BRAVO!!! You are doing a great Job.
|
By Yehudad - Thursday, August 18, 2005
|
So, what kind of those features mentioned in this discussion will be included in beta14?
If I understood Dan corectly the built in tool to translate names will be in Beta 14 as well as the abilities of the report generator to display the translated name.
B.t.w - Any ETA for beta 14? We just can’t wait anymore
As Dan said before he will release the beta as soon as it will be ready. There are a lot of new features in this beta and unless Dan is sure about its quality he won't release it.
I agree that all of us are looking forward for this release...
|
By GenoProSupport - Thursday, August 18, 2005
|
The name translation will be done using a combination of GenoPro and the Web, so the database (master list) can be shared. My brother is currently working on it.
|
By Yehudad - Thursday, August 18, 2005
|
The name translation will be done using a combination of GenoPro and the Web, so the database (master list) can be shared.
Can you specify more?
If someone hasnt got a connection to the web, will he be able to work with the translation tool?
|
By GenoProSupport - Thursday, August 18, 2005
|
The idea is GenoPro can generate a list of unique names, and submit them to the server GenoPro.com. Later, GenoPro can download the "Master List" from the server. All of this will be XML-based, so it can be used by third party applications. This feature will be easy to use.
If someone does not have a connection to the web, he/she will be able to use the list, but I am not sure about updating it.
|
By Yehudad - Thursday, August 18, 2005
|
I thought that each user can have his own list based on the people on his tree.
If I understand correctly, the user will be able to download some source list and add to it people which are not there.
So, how can he update this list if he already modified it?
|
By 30909 - Thursday, August 18, 2005
|
This thread in it's full length attracted me. Excuse me if I don't fully understand what this is all about but could one of you explain me WHY you want to translate names? :shock:
I thought earlier that it was only about changing, for example, Japanese writing into "normal" text, left-to-right, right-to-left etc. but the following makes me wonder:
I will give an example: The name Chaim in Hebrew can be translated to Haim, Chaim or Howie in English. The reverse translations are not always 1:1 either.
Finland is a bilingual country because there is a remarkable Swedish-speaking minority. For this reason all the services should be provided in both languages. I have understanding to this but having place names in both languages is something I do not. People should find their way to the right place without having two signs in different languages saying, for example, Vaasa - Vasa 80 kilometers. I don't really care which one they pick but they should be able to choose. Same goes to capitals: for some reason, in many languages, the name of the capital of a foreign country is translated. Finnish first and family names are not translated in any language that I know of and in English our place names remain the same.
|
By Yehudad - Thursday, August 18, 2005
|
I will try to explain it to you.
It is a little complecated.
I thought earlier that it was only about changing, for example, Japanese writing into "normal" text, left-to-right, right-to-left etc.
This is part I. Hebrew is written from right to left. Most of us have also family out of Israel where Hebrew is not widly used. Moreover not everyone has Hebrew on their computer and thus when we want to send them our family tree we must do it in their forign language. What we have to do is change the names phoneticly to other language. It can be done in several ways like it was demonstrated with the name Chaim in the example you quoted.
This example has more complex situation.
As I said the translation is being done phoneticly but not everything is converted perfectly. The Hebrew letter "Chait" is not exist in any language and thus some translating it as "ch" and some as "h". Because of this reason people who bare this name and not living in Israel change their name to somthing similar in sound or meaning.
this is why each name can be translated in several ways.
The need for translating names is a need of us users, so we will be able to avoid the need to maintain our tree in two languages. The translating tool will enable us to maintain the tree in Hebrew and in the same time produce a report in English/Franch/Whatever without the need to duplicate the data and translate it.
Is this explanation make things clearer?
|
By GenoProSupport - Thursday, August 18, 2005
|
I thought that each user can have his own list based on the people on his tree. If I understand correctly, the user will be able to download some source list and add to it people which are not there. So, how can he update this list if he already modified it? There will be two lists: 1) The Master List from GenoPro.com and 2) the (optional) Personal List. The Personal List will have precedence over the Master List.
|
By Yehudad - Thursday, August 18, 2005
|
There will be two lists: 1) The Master List from GenoPro.com and 2) the (optional) Personal List. The Personal List will have precedence over the Master List.
That is a great idea.
I must say that I love the way GenoPro develops towaeds sharing work with other users, so anyone can share and have work that others did.
|
By Anna - Thursday, August 18, 2005
|
One source for "translating" or "generalizing" names is the swedish genealogy site / web magazine "rötter" (roots).
An introduction in english to why people are known by such divergent names (latinizations, dialectic changes etc) is found at
http://www.genealogi.se/namneng.htm
They suggest normalization of the given name since the name written down in sources are not always a "true" or invariable form; just like a "Tom" at your workplace is more likely a Thomas.
It was a lot worse when spelling was not normalized: One example given is how one person named Per Eriksson can be registered as: Pehr Erichson, Pähr Ericksson, Peer Ersson, Per Ehrsson, or Phär Ericksånn
Hence, they supply lists of the most "original" male (http://www.genealogi.se/namnnorm.htm#man) and female
http://www.genealogi.se/namnnorm.htm#kvi name forms, and suggest you use them instead of more or less similar name forms you may find in your sources.
The idea is to facilitate comparisons and searches, just as in our case.
Now, for historic searches, this is great. On a more personal note however, I believe people today actually place a bit of their identity into how they spell their names. Using a z instead of an s is a concious decision, and not everyone would like the idea of having their name automatically "corrected"....
Anyway, this is one good place to start if you wish european names. It is in Swedish, but by simply importing only bold text, you'd have a list to start with...
Or contact the magazine for suggestions! I'm sure your (I mean Dan!) brother and the name guy at rötter could find a brain storm interesting!
Anna
|
By V.L.o - Thursday, August 18, 2005
|
Sorry, at this time seams that the server is down. I just couldn't open the page! Has anybody succeded?
|
By GenoProSupport - Thursday, August 18, 2005
|
I was successful opening the page http://www.genealogi.se/namneng.htm this morning.
|
By Yehudad - Monday, August 29, 2005
|
Great job on the new Beta 14. Is this feature in Beta 14, or it will be in a later version?
|
By GenoProSupport - Monday, August 29, 2005
|
Yehudad (8/29/2005) Is this feature in Beta 14, or it will be in a later version?Using Beta14, you can always use the Util.NewNameDictionary and do the name translation within the report. Set oNameDictionary = Util.NewNameDictionary oNameDictionary.BuildLookupTable "NameDictionary.xml", "EN", "JA"
Report.WriteFormattedBr "<br><br>Name: Daniel is {&t} in Japanese", oNameDictionary("Daniel") |
It will take several weeks of development to have an interface within GenoPro to list all unique names, edit directly the file NameDictionary.xml, download & upload those names to the master list stored on GenoPro.com server, and do the name translation automatically before generating the report.
|
By Yehudad - Monday, August 29, 2005
|
GenoProSupport (8/29/2005) It will take several weeks of development to have an interface within GenoPro to list all unique names, edit directly the file NameDictionary.xml, download & upload those names to the master list stored on GenoPro.com server, and do the name translation automatically before generating the report.When we are talking about translating to different languages the interface is only a part from what we talked about. We also talked about giving the Report Generator the ability to use any language dictionary and build report in different languages from the same skin. From what I understand, for now, we still need to translate any skin to the language we want?
|
By GenoProSupport - Monday, August 29, 2005
|
You are correct, each skin will support multiple language too. With Beta14, all the language-dependent text is found in the file Dictionary.xml. Translating the skin should require little code. One thing I need to do is add support for RTL (Right-to-Left) text. I am still thinking how I will design the format of Config.xml to support multiple languages. I want something simple yet flexible to allow language customization. As for the name translation, I can write a small tool to dump all the unique names into an XML file. You can then edit those names using Notepad. You will need to modify the VBScript code to use the NameDictionary object.
|
By Yehudad - Monday, August 29, 2005
|
GenoProSupport (8/29/2005)
You are correct, each skin will support multiple language too. With Beta14, all the language-dependent text is found in the file Dictionary.xml. Translating the skin should require little code. One thing I need to do is add support for RTL (Right-to-Left) text. I am still thinking how I will design the format of Config.xml to support multiple languages. I want something simple yet flexible to allow language customization. As for the name translation, I can write a small tool to dump all the unique names into an XML file. You can then edit those names using Notepad. You will need to modify the VBScript code to use the NameDictionary object. That sounds great, but I'm not suppose it will be any time soon? As for the tool to drop the names it will be very helpful, seance I am going to translate your recent report into Hebrew and I need the name translation.
|
By Yehudad - Monday, August 29, 2005
|
A few problema I found while translating the current report into Hebrew: In the dictionary.xml file there is a PlacePrefix which is used by the place's property NameNarrative to format the place string. the PlacePrefix for a place in English is a word: "in". In Hebrew however it is not a word. it is the letter "BET" which indicates the relationship. The Report Generator adds a space after the prefix for the English syntax, but in Hebrew this space is not suppose to be there. I know that I can bypass this by not calling the method. However I think that the ReportGenerator must be able to take care of these situations also. Another thing: If I want to translate the name using the NameDictionary.xml I have a problem with the method ToHtmlHyperlink since it converts the name internaly and I can change the name into Hebrew. Third: the function ToBe2 determines if to objects are alive or deceased. The problem is that the translation of the words is/are/was/were is gender related. My question is: can I assume that the object is always individual?
|
By GenoProSupport - Tuesday, August 30, 2005
|
Yehudad The Report Generator adds a space after the prefix for the English syntax, but in Hebrew this space is not suppose to be there.Remove the space between {0} and {1} in the tag _FmtPlaceNarrative have something like below. By removing this space, there will be no space between the prefix and the place name. <_FmtPlaceNarrative T=" {0}{1}"/> |
Another thing: If I want to translate the name using the NameDictionary.xml I have a problem with the method ToHtmlHyperlink since it converts the name internaly and I can change the name into Hebrew. I agree, and this is why I want to have a built-in translation of names. The translation would be done automatically by GenoPro, so calling ToHtmlHyperlink would return the translated name inside the hyperlink. Third: the function ToBe2 determines if to objects are alive or deceased. The problem is that the translation of the words is/are/was/were is gender related. My question is: can I assume that the object is always individual? I am not sure about this, however you are welcome to write a function ToBe2Ind where the object is always an individual. Translating into multiple languages is new to me. I did my best to write a report structure to facilitate the translation, but I realize there is still many improvements. All suggestions are welcome.
|
By Yehudad - Tuesday, August 30, 2005
|
GenoProSupport (8/30/2005)Remove the space between {0} and {1} in the tag _FmtPlaceNarrative have something like below. By removing this space, there will be no space between the prefix and the place name. I don't know how I missed it... I agree, and this is why I want to have a built-in translation of names. The translation would be done automatically by GenoPro, so calling ToHtmlHyperlink would return the translated name inside the hyperlink. So what should I do now? shell I translate the report or wait until this option will be enabled? I am not sure about this, however you are welcome to write a function ToBe2Ind where the object is always an individual. Translating into multiple languages is new to me. I did my best to write a report structure to facilitate the translation, but I realize there is still many improvements. I agree that this is a great chalange. I am sure that we will manage to do it together. I know that I can write a function to do what I want. But, when I'm translating the report I want to keep the original code as much as I can, so future changes will not affect the translated code. For ti I'm trying to enter the changes to the dictionary.xml file. Of course I still have to do little modifications in the original code. I brought this up to see if we can find a "GenoPro solution" for this.
|
By GenoProSupport - Tuesday, August 30, 2005
|
Here is my suggestion: 1. Create a function ToBe2Ind and use it whenever necessary. Send me the code and I will update it to the master template, so next update everyone benefits from your change. 2. You are welcome to translate the Dictionary.xml into Hebrew. This work will be preserved. Then, when the automatic translation of names is available, you won't have much to do. The automatic name translation will use a different XML file than Dictionary.xml.
|
By Yehudad - Tuesday, August 30, 2005
|
GenoProSupport 1. Create a function ToBe2Ind and use it whenever necessary. Send me the code and I will update it to the master template, so next update everyone benefits from your change.No problem. I meant to write this function anyway. I'm going to write it to be used on both posibilities. GenoProSupport 2. You are welcome to translate the Dictionary.xml into Hebrew. This work will be preserved. Then, when the automatic translation of names is available, you won't have much to do. The automatic name translation will use a different XML file than Dictionary.xml.Are you refering to the NameDictionary.xml or to another XML file?
|
By GenoProSupport - Tuesday, August 30, 2005
|
Yehudad [quote]Are you refering to the NameDictionary.xml or to another XML file?File NameDictionary.xml. I forgot I had already given a name in the following code snipet: Set oNameDictionary = Util.NewNameDictionary oNameDictionary.BuildLookupTable "NameDictionary.xml", "EN", "JA" strName = oNameDictionary("Daniel") ' Should return the Japanese name |
|
By Yehudad - Tuesday, August 30, 2005
|
GenoProSupport Create a function ToBe2Ind and use it whenever necessary. Send me the code and I will update it to the master template, so next update everyone benefits from your change. I have a little problem creating this function. When you call the function ToBe2 , you send two objects. For example: i and i.father . If I want to put the right linguistic phrase, I have to know the gender of the second object (in the example it can be either the father or the mother of an individual). My questions: 1. Is the object i.father has the same structure as i (which mean I can access his gender.id )? - when I tried it in the code the gender was not found. If Not how can I get it to send it to my function? 2. Can you explain more about the method you use in the function Util.GetStatisticsForIndividuals(obj1) ? 3. We spoke about it in the past - what about documentation on all the available methods in each object, and all the objects in the Report Generator?
|
By GenoProSupport - Tuesday, August 30, 2005
|
The property i.father does return another individual. You can chain them together. For instance, if you want to get the maternal grandfather's picture, you can do the following: i.father.mother.pictures.primary . I verified if you can access the gender.id and it does. For instance, the following code works flawlessly for every individual: Report.WriteText "Gender: " & i.mother.father.gender.id |
I knew someonw would ask about Util.GetStatisticsForIndividuals(obj1) . The method GetStatisticsForIndividuals return a number representing the statistics of one individual or a collection of individuals. In short, the number 1 represents one individual and the number 2 represents two (or more) individuals. The number 4 means one individual deceased, and the number 8 means two individuals deceased. Of course, you cannot have one individual deceased without an individual, so the value for one indivdiual deceased is 5 (4+1) and two individuals deceased is (4+4+1+1). I am documenting this method at http://www.genopro.com/NewReportGenerator/Objects/Util/GetStatisticsForIndividuals/
|
By Yehudad - Tuesday, August 30, 2005
|
GenoProSupport
The property i.father does return another individual. You can chain them together. For instance, if you want to get the maternal grandfather's picture, you can do the following: i.father.mother.pictures.primary . I verified if you can access the gender.id and it does. For instance, the following code works flawlessly for every individual: Report.WriteText "Gender: " & i.mother.father.gender.id |
I tried to extract i.father.gender.id yesterday, but when I generated the report it said that he can't found "is_" in the dictionary.xml, which means that it didn't got "M" or "F" to the string. I will have to try it again then...
|
By GenoProSupport - Wednesday, August 31, 2005
|
Maybe you have an older version of Dictionary.xml. Try generating it from the a fresh copy of Beta14. The sample code Report.WriteText "Gender: " & i.mother.father.gender.id | does not use the dictionary.
|
By Yehudad - Wednesday, August 31, 2005
|
GenoProSupport Maybe you have an older version of Dictionary.xml. Try generating it from the a fresh copy of Beta14. I do use the Beta14 copy. My function looks like this: Function ToBe2Ind(ind1, ind2)Dim nStatistics1, nStatistics2 nStatistics1 = Util.GetStatisticsForIndividuals(ind1) nStatistics2 = Util.GetStatisticsForIndividuals(ind2) ... ' Additional code for Hebrew IndGender = ind2.gender.id DicWord = DicWord & "_" & IndGender ToBe2Ind = Dic(DicWord) End Function |
Where ind1 = i and ind2 = i.father. DicWord gets is/are/was/were the same way as it is today. If I use ind1 to get the gender.id there is no problem. The current row, with ind2 is not returning anything.
|
By GenoProSupport - Wednesday, August 31, 2005
|
Sometimes ind2 is set to Nothing , and there is nothing the report generator can do to prevent a runtime error from happening. In this case, you need to use the method Util.IsNothing . Can you try try the following code:If (Not Util.IsNothing(ind2)) Then IndGender = ind2.gender.id End If |
|
By Yehudad - Wednesday, August 31, 2005
|
Problem Solved! Thanks.
|
By Alfi - Friday, September 9, 2005
|
Pay attention(for Post #6912) There's still a difference between translation and transcription By the way, you've forgotten the correct Latin transcription which should be "Chayim" ! Alfi
|
By Yehudad - Tuesday, November 8, 2005
|
In which Beta version this translating names tools will be available?
|
By GenoProSupport - Wednesday, November 9, 2005
|
Yehudad (11/9/2005) In which Beta version this translating names tools will be available?My brother Jean Claude will join GenoPro full time in December. He will be working on this tool.
|
By beraha - Friday, February 16, 2007
|
[b]GenoProSupport My brother Jean Claude will join GenoPro full time in December. He will be working on this tool. Any ETA for that tool?
|
By jcmorin - Friday, February 16, 2007
|
The name project has been put on hold since we had created familytrees.genopro.com, online backup, files transfer instead and various internal applications. This project is not dropped, it's a matter of time. Make sure you participate in GenoPro gamma when it will start to tell us your opinion on what *should* be included in the next version of GenoPro.
|
By Yehudad - Saturday, February 17, 2007
|
JcMorin (2/16/2007) Make sure you participate in GenoPro gamma when it will start to tell us your opinion on what *should* be included in the next version of GenoPro.I'm looking forward for the Gamma version. I would very much like to see GenoPro in Hebrew... However, the "Names" utility tool is more for the Report Generator than for a multi lingual GenoPro. The idea was first mentioned to take the English name in the Tree and translate it to an Hebrew name in a Hebrew skin in the Report Generator. I'm also sure that we will find it very useful for the Gamma version...
|