Proposal number : Multilingual metadata support
Date | 2008/08/08 |
Contact(s) | francois |
Last edited | Timestamp |
Status | being discussed |
Assigned to release | Release number, to be determined |
Resources |
Overview
All gco:CharacterString elements could be multilingual. allow multilingual editing
Proposal type:
- Type: Editor
- App: GeoNetwork
- Module: SchemaLoader
Links:
Proposal:
Metadata is defined by one main language (gmd:MD_Metadata/gmd:language:gco:CharacterString) and other locale (gmd:MD_Metadata/gmd:locale/*).
If user add new translation, a new local element has to be added: <locale>
<gmd:PT_Locale id="FR">
<gmd:languageCode><gmd:LanguageCode codeList="#LanguageCode" codeListValue="fra">French</gmd:LanguageCode></gmd:languageCode> <gmd:characterEncoding><gmd:MD_CharacterSetCode codeList="#MD_CharacterSetCode" codeListValue="utf8">UTF 8</gmd:MD_CharacterSetCode></gmd:characterEncoding>
</gmd:PT_Locale>
</locale>
Configuration need to set the available languages the editor could use using a list of iso code.
After editing, the new translated element is stored with: an xsi:type= « gmd:PT_FreeText_PropertyType» a first gco:CharacterString in the metadata language (in the example en) n gmd:PT_FreeText elements with each translation
<scope xsi:type="gmd:PT_FreeText_PropertyType"> <gco:CharacterString>Codelists for description of metadata datasets compliant with ISO/TC 211 19115:2003 and 19139</gco:CharacterString> <gmd:PT_FreeText> <gmd:textGroup> <gmd:LocalisedCharacterString locale="#FR ">Listes de codes pour la description de lots de métadonnées conforme ISO TC/211 19115:2003 et 19139</gmd:LocalisedCharacterString> </gmd:textGroup> </gmd:PT_FreeText> </scope>
SchemaLoader should be able to register complexType which are extension based on a PropertyType (and not only a Type). For example :
<xs:complexType name="PT_FreeText_PropertyType"> <xs:complexContent> <xs:extension base="gco:CharacterString_PropertyType">
Then the metadocument should add for all elements which are of type gco:CharacterString_PropertyType an xsi:type option with the list of type available.
<xs:element name="title" type="gco:CharacterString_PropertyType"/>
For title which is a gco:CharacterString_PropertyType, xsi:type could be :
- gco:CharacterString_PropertyType
- gmd:PT_FreeText_PropertyType
Then if an xsi:type="gmd:PT_FreeText_PropertyType" the element is edited in multilingual.
Via schema_suggestion, the editor will define if one element should be « suggested » as multilingual or not and which languages to suggest.
<field name="gmd:title"> <suggest name="xsi:type" value="gmd:PT_FreeText_PropertyType"> <lang value= « eng »/> <lang value= « fra »/> <lang value= « deu »/> <lang value= « ita »/> </suggest> </field>
Then the editor will suggest multilingual editing interface.