[GeoNetwork-devel] [GeoNetwork opensource Developer website] #691: Keyword selection / add keyword using gmx:Anchor instead of gco:CharacterString

#691: Keyword selection / add keyword using gmx:Anchor instead of
gco:CharacterString
-------------------------+--------------------------------------------------
Reporter: fxp | Owner: geonetwork-devel@…
     Type: enhancement | Status: new
Priority: major | Milestone: Future release
Component: General | Version:
Keywords: |
-------------------------+--------------------------------------------------
In some metadata profiles, keywords are created using gmx:Anchor instead
of gco:CharacterString. It needs basic support for Anchor (See #681) and
changes on !KeywordBean#getComplexIso19139Elt which is called before
adding keywords.

Example:
{{{
<gmd:descriptiveKeywords>
         <gmd:MD_Keywords>
                 <gmd:keyword>
                         <gmx:Anchor
xlink:href="http://www.seadatanet.org/urnurl/SDN:P021::ATVS&quot;&gt;Atmospheric
visibility and transparency</gmx:Anchor>
                 </gmd:keyword>
                 <gmd:keyword>
                         <gmx:Anchor
xlink:href="http://www.seadatanet.org/urnurl/SDN:P021::SAGE&quot;&gt;Sediment
age</gmx:Anchor>
                 </gmd:keyword>
                 <gmd:type>
                         <gmd:MD_KeywordTypeCode
codeList="http://www.seadatanet.org/urnurl/codelists.xml#MD_KeywordTypeCode&quot;
codeListValue="parameter"
codeSpace="http://www.seadatanet.org/urnurl/&quot;&gt;parameter&lt;/gmd:MD\_KeywordTypeCode&gt;
                 </gmd:type>
                 <gmd:thesaurusName>
                         <gmd:CI_Citation>
                                 <gmd:title>
                                         <gco:CharacterString>BODC
Parameter Discovery Vocabulary</gco:CharacterString>
                                 </gmd:title>
                                 <gmd:alternateTitle>
<gco:CharacterString>P021</gco:CharacterString>
                                 </gmd:alternateTitle>
                                 <gmd:date>
                                         <gmd:CI_Date>
                                                 <gmd:date>
<gco:Date>2009-06-05</gco:Date>
                                                 </gmd:date>
                                                 <gmd:dateType>
<gmd:CI_DateTypeCode
codeList="http://www.isotc211.org/2005/resources/Codelist/gmxCodelists.xml#CI_DateTypeCode&quot;
codeListValue="revision"
codeSpace="ISOTC211/19115">revision</gmd:CI_DateTypeCode>
                                                 </gmd:dateType>
                                         </gmd:CI_Date>
                                 </gmd:date>
                                 <gmd:edition>
<gco:CharacterString>41</gco:CharacterString>
                                 </gmd:edition>
                                 <gmd:identifier>
                                         <gmd:MD_Identifier>
                                                 <gmd:code>
<gco:CharacterString>http://www.seadatanet.org/urnurl/SDN:P021&lt;/gco:CharacterString&gt;
                                                 </gmd:code>
                                         </gmd:MD_Identifier>
                                 </gmd:identifier>
                         </gmd:CI_Citation>
                 </gmd:thesaurusName>
         </gmd:MD_Keywords>
</gmd:descriptiveKeywords>
}}}

--
Ticket URL: <http://trac.osgeo.org/geonetwork/ticket/691&gt;
GeoNetwork opensource Developer website <http://sourceforge.net/projects/geonetwork/&gt;
GeoNetwork opensource is a standards based, Free and Open Source catalog application to manage spatially referenced resources through the web. It provides powerful metadata editing and search functions as well as an embedded interactive web map viewer. This website contains information related to the development of the software.

#691: Keyword selection / add keyword using gmx:Anchor instead of
gco:CharacterString
--------------------------+-------------------------------------------------
  Reporter: fxp | Owner: geonetwork-devel@…
      Type: enhancement | Status: closed
  Priority: major | Milestone: Future release
Component: General | Version:
Resolution: fixed | Keywords:
--------------------------+-------------------------------------------------
Changes (by simonp):

  * status: new => closed
  * resolution: => fixed

Comment:

Fixed in commit #9241

--
Ticket URL: <http://trac.osgeo.org/geonetwork/ticket/691#comment:1&gt;
GeoNetwork opensource Developer website <http://sourceforge.net/projects/geonetwork/&gt;
GeoNetwork opensource is a standards based, Free and Open Source catalog application to manage spatially referenced resources through the web. It provides powerful metadata editing and search functions as well as an embedded interactive web map viewer. This website contains information related to the development of the software.

#691: Keyword selection / add keyword using gmx:Anchor instead of
gco:CharacterString
--------------------------+-------------------------------------------------
  Reporter: fxp | Owner: geonetwork-devel@…
      Type: enhancement | Status: closed
  Priority: major | Milestone: v2.7.0
Component: General | Version:
Resolution: fixed | Keywords:
--------------------------+-------------------------------------------------
Changes (by ianwallen):

  * milestone: Future release => v2.7.0

--
Ticket URL: <http://trac.osgeo.org/geonetwork/ticket/691#comment:2&gt;
GeoNetwork opensource Developer website <http://sourceforge.net/projects/geonetwork/&gt;
GeoNetwork opensource is a standards based, Free and Open Source catalog application to manage spatially referenced resources through the web. It provides powerful metadata editing and search functions as well as an embedded interactive web map viewer. This website contains information related to the development of the software.

#691: Keyword selection / add keyword using gmx:Anchor instead of
gco:CharacterString
--------------------------+-------------------------------------------------
  Reporter: fxp | Owner: geonetwork-devel@…
      Type: enhancement | Status: reopened
  Priority: major | Milestone: v2.7.0
Component: General | Version: v2.8.0RC1
Resolution: | Keywords:
--------------------------+-------------------------------------------------
Changes (by mcoudert):

  * status: closed => reopened
  * version: => v2.8.0RC1
  * resolution: fixed =>

Comment:

Keywords selection in the advanced GUI, in the editor, leads to create
keywords using gmx:Anchor... Is it an expected behavior in 2.8.0-RC1?

I'm wondering how gmx:Anchor elements are supported in that version
because it breaks search on keywords (i.e. computing extent from
keywords).
Thanks in advance for your reply

--
Ticket URL: <http://trac.osgeo.org/geonetwork/ticket/691#comment:3&gt;
GeoNetwork opensource Developer website <http://sourceforge.net/projects/geonetwork/&gt;
GeoNetwork opensource is a standards based, Free and Open Source catalog application to manage spatially referenced resources through the web. It provides powerful metadata editing and search functions as well as an embedded interactive web map viewer. This website contains information related to the development of the software.

#691: Keyword selection / add keyword using gmx:Anchor instead of
gco:CharacterString
--------------------------+-------------------------------------------------
  Reporter: fxp | Owner: geonetwork-devel@…
      Type: enhancement | Status: reopened
  Priority: major | Milestone: v2.7.0
Component: General | Version: v2.8.0RC1
Resolution: | Keywords:
--------------------------+-------------------------------------------------

Comment(by simonp):

I think the idea behind this is that if you going to select a keyword from
the thesaurus then you need to be able to recover the exact keyword from
the thesaurus - to do this you need the id of that keyword in the
thesaurus otherwise you can't really know which one it is (reliably that
is) - to do that you would need a gmx:Anchor (or some other substitute)
rather than a gco:CharacterString. In what way does it break the computing
extent from keywords process (apart from the obviously allowing for both
gco:CharacterString and gmx:Anchor)? Just looking at the process xslt I
can't see that it would be difficult to make it work with either?

--
Ticket URL: <http://trac.osgeo.org/geonetwork/ticket/691#comment:4&gt;
GeoNetwork opensource Developer website <http://sourceforge.net/projects/geonetwork/&gt;
GeoNetwork opensource is a standards based, Free and Open Source catalog application to manage spatially referenced resources through the web. It provides powerful metadata editing and search functions as well as an embedded interactive web map viewer. This website contains information related to the development of the software.

#691: Keyword selection / add keyword using gmx:Anchor instead of
gco:CharacterString
--------------------------+-------------------------------------------------
  Reporter: fxp | Owner: geonetwork-devel@…
      Type: enhancement | Status: reopened
  Priority: major | Milestone: v2.7.0
Component: General | Version: v2.8.0RC1
Resolution: | Keywords:
--------------------------+-------------------------------------------------

Comment(by fxp):

I think that should be a profile configuration. I'm working on a proposal
for that which extends the ideas described in the registers proposal by
providing a way to use a thesaurus selection for making any ISO elements
by defining:
  * association: eg. thesaurus A could be used to define ISO element of
type gmd:descriptiveKeywords (but could be other like gmd:extent)
  * transformation: eg. gmd:descriptiveKeywords could be added as XLinks,
gco:CharacterString, gmx:Anchor
The configuration could be made on a per profile basis and the type of
transformation will be available as a choice in the thesaurus selection
popup (instead of having the xlink or not only option as currently).

The configuration would look like this:
{{{
<!-- All thesaurus for gmd:descriptiveKeywords -->
<registerAssociation registerId="local://thesaurus/*"
element="gmd:descriptiveKeywords"/>

<!-- 3 conversions from SKOS to ISO -->
<!-- Add keyword as ISO19139 fragments -->
<registerTransformation element="gmd:descriptiveKeywords"
xslTpl='skos2gmd_keywords'/>
<!-- Add keyword as ISO19139 fragments using gmx:Anchor -->
<registerTransformation element="gmd:descriptiveKeywords"
xslTpl='skos2gmd_keywords_with_anchor'/>
<!-- Add keyword using an Xlink -->
<registerTransformation element="gmd:descriptiveKeywords"
xslTpl='skos2gmd_keywords_with_xlink'/>
}}}

I'll write a draft proposal on it this month probably.

For 2.8.x, it's maybe better to keep gco:CharacterString by default ? as
gmx:Anchor is probably not so well known for the general user.

--
Ticket URL: <http://trac.osgeo.org/geonetwork/ticket/691#comment:5&gt;
GeoNetwork opensource Developer website <http://sourceforge.net/projects/geonetwork/&gt;
GeoNetwork opensource is a standards based, Free and Open Source catalog application to manage spatially referenced resources through the web. It provides powerful metadata editing and search functions as well as an embedded interactive web map viewer. This website contains information related to the development of the software.

#691: Keyword selection / add keyword using gmx:Anchor instead of
gco:CharacterString
--------------------------+-------------------------------------------------
  Reporter: fxp | Owner: geonetwork-devel@…
      Type: enhancement | Status: reopened
  Priority: major | Milestone: v2.7.0
Component: General | Version: v2.8.0RC1
Resolution: | Keywords:
--------------------------+-------------------------------------------------

Comment(by mcoudert):

Yep Simon and François, I fully understand the need or the use of the
gmx:Anchor for keywords but my concern is more focused on coming 2.8
version where defaults gmx:Anchor elements break the computing extent from
keywords process.
Can we update the process stylesheet to support default gmx:Anchor or
maybe can we set back gco:CharacterString as default element when creating
keywords for the 2.8.x branch?
Any thoughts...

--
Ticket URL: <http://trac.osgeo.org/geonetwork/ticket/691#comment:6&gt;
GeoNetwork opensource Developer website <http://sourceforge.net/projects/geonetwork/&gt;
GeoNetwork opensource is a standards based, Free and Open Source catalog application to manage spatially referenced resources through the web. It provides powerful metadata editing and search functions as well as an embedded interactive web map viewer. This website contains information related to the development of the software.

#691: Keyword selection / add keyword using gmx:Anchor instead of
gco:CharacterString
--------------------------+-------------------------------------------------
  Reporter: fxp | Owner: geonetwork-devel@…
      Type: enhancement | Status: reopened
  Priority: major | Milestone: v2.7.0
Component: General | Version: v2.8.0RC1
Resolution: | Keywords:
--------------------------+-------------------------------------------------

Comment(by simonp):

I'll happily update the process stylesheet to handle both (don't think
this is a big task). Also, for the time being (until we get a per profile
config as described above) maybe we could config this as a global option -
default is the kind of stupid old gco:Char thing but if config is set then
Anchors are used. Certainly critical for Anchors to be supported for use
cases here where we sometimes have > 10 thesauri in use....

--
Ticket URL: <http://trac.osgeo.org/geonetwork/ticket/691#comment:7&gt;
GeoNetwork opensource Developer website <http://sourceforge.net/projects/geonetwork/&gt;
GeoNetwork opensource is a standards based, Free and Open Source catalog application to manage spatially referenced resources through the web. It provides powerful metadata editing and search functions as well as an embedded interactive web map viewer. This website contains information related to the development of the software.

#691: Keyword selection / add keyword using gmx:Anchor instead of
gco:CharacterString
--------------------------+-------------------------------------------------
  Reporter: fxp | Owner: geonetwork-devel@…
      Type: enhancement | Status: reopened
  Priority: major | Milestone: v2.8.0 RC2
Component: General | Version: v2.8.0RC1
Resolution: | Keywords:
--------------------------+-------------------------------------------------
Changes (by mcoudert):

  * milestone: v2.7.0 => v2.8.0 RC2

--
Ticket URL: <http://trac.osgeo.org/geonetwork/ticket/691#comment:8&gt;
GeoNetwork opensource Developer website <http://sourceforge.net/projects/geonetwork/&gt;
GeoNetwork opensource is a standards based, Free and Open Source catalog application to manage spatially referenced resources through the web. It provides powerful metadata editing and search functions as well as an embedded interactive web map viewer. This website contains information related to the development of the software.

#691: Keyword selection / add keyword using gmx:Anchor instead of
gco:CharacterString
--------------------------+-------------------------------------------------
  Reporter: fxp | Owner: geonetwork-devel@…
      Type: enhancement | Status: reopened
  Priority: major | Milestone: v2.8.0
Component: General | Version: v2.8.0RC1
Resolution: | Keywords:
--------------------------+-------------------------------------------------
Changes (by ianwallen):

  * milestone: v2.8.0 RC2 => v2.8.0

--
Ticket URL: <http://trac.osgeo.org/geonetwork/ticket/691#comment:9&gt;
GeoNetwork opensource Developer website <http://sourceforge.net/projects/geonetwork/&gt;
GeoNetwork opensource is a standards based, Free and Open Source catalog application to manage spatially referenced resources through the web. It provides powerful metadata editing and search functions as well as an embedded interactive web map viewer. This website contains information related to the development of the software.

#691: Keyword selection / add keyword using gmx:Anchor instead of
gco:CharacterString
--------------------------+-------------------------------------------------
  Reporter: fxp | Owner: geonetwork-devel@…
      Type: enhancement | Status: reopened
  Priority: major | Milestone: v2.8.0
Component: General | Version: v2.8.0RC1
Resolution: | Keywords:
--------------------------+-------------------------------------------------

Comment(by fxp):

Here is a mechanism which could handle !CharacterString, Anchor and XLink
addition mode using a widget in the editor instead of the popup. See
http://www.youtube.com/watch?v=prSRnnUmyDA

Feedback welcomed.

This change could be added to 2.9.x I think.

--
Ticket URL: <http://trac.osgeo.org/geonetwork/ticket/691#comment:10&gt;
GeoNetwork opensource Developer website <http://sourceforge.net/projects/geonetwork/&gt;
GeoNetwork opensource is a standards based, Free and Open Source catalog application to manage spatially referenced resources through the web. It provides powerful metadata editing and search functions as well as an embedded interactive web map viewer. This website contains information related to the development of the software.