[GeoNetwork-devel] Metadata element hiding [SEC=UNCLASSIFIED]

Hi Stefano,

WooHoo! Of course I am *very* interested in what you are proposing as my
email titled "Can GeoNetwork hide content of the XML elements to the public"
identified a scenario where we would like to use it.

As I mentioned in that email the XML content can be used to determine what
the users see. That is, GeoNetwork will not show sub-elements and the
content of any element with an attribute of 'gco:nilReason="withheld"'. The
actual element name and attributes could be shown in the XML to allow people
to determine why they can't see the content and sub-elements. It may also
have a small "hidden" in the UI to show to the user that the content has been
hidden.

For example,
...
<gmd:individualName gco:nilReason="withheld">
  <gco:CharacterString>John Hockaday</gco:CharacterString>
</gmd:individualName>
...

Would only show for privacy reasons:
<gmd:individualName gco:nilReason="withheld">
</gmd:individualName>

OR
...
<gmd:distributionOrderProcess gco:nilReason="withheld">
  <gmd:MD_StandardOrderProcess>
   <gmd:fees>
    <gco:CharacterString>Charge as much as they are willing to spend.
;--)</gco:CharacterString>
   </gmd:fees>
  </gmd:MD_StandardOrderProcess>
</gmd:distributionOrderProcess>
...

Would only show for obvious reasons ;--) :
...
<gmd:distributionOrderProcess gco:nilReason="withheld">
</gmd:distributionOrderProcess>
...

Regarding indexing I would suggest that these elements are *not* indexed. It
may be confusing if someone gets a metadata record that complies with their
search and when they try to find the content within that record they fail.
If it is to be withheld then it shouldn't be indexed.

As for how this is done in the editing interface, I don't really have any
preferences. A template may be used to set and hide all <individualName
gco:nilReason="withheld"> and/or <gmd:distributionOrderProcess
gco:nilReason="withheld"> elements. Alternatively, the template may be used
to identify which elements can have a 'hide' check box. The choice is then
left to the metadata author to choose which elements are hidden by using such
a checkbox in the editing UI. As you mention you don't want to have too many
checkboxes throughout the interface. However, it up to the business rules of
an organisation to determine what elements can be hidden and what can't.

I believe our organisation would use combinations of both. That is, all
individualName elements are hidden for privacy reasons whereas it is up to
the author to decide which distributionOrderProcess elements are hidden.
Comments like above can be hidden whereas actual prices could be shown.

That's my two cents worth. Thanks for the opportunity to comment and I am
looking forward to using the implementation. ;--)

Thanks.

John

-----Original Message-----
From: geonetwork-devel-bounces@lists.sourceforge.net
[mailto:geonetwork-devel-bounces@lists.sourceforge.net] On
Behalf Of Stefano Giaccio
Sent: Tuesday, 5 August 2008 9:06 PM
To: geonetwork-devel@lists.sourceforge.net
Subject: [GeoNetwork-devel] Metadata element hiding

Dear list,

I would like to know your opinion on new developments on metadata
section hiding.

Currently is only possible to make the full metadata record
available
or not to a certain group or to public guests. With metadata section
hiding it would be possible to hide only parts of a metadata.

A draft proposal is in:

http://trac.osgeo.org/geonetwork/wiki/HiddenElements

From the UI point of view, in the editor page there should be a
checbox/button to hide a particular metadata section.
Elements to hide
could be limited to a certain subset to make the interface not too
crowded.

This would probably imply some modifications on the DB, as explained
in point 3 of the proposal, and a way to access and hide single
elements using xPath expressions. A new db table, dependent on the
operationAllowed table, would probably contain metadata id and xpath
expression.

An important implication is in the lucene indexing: do we want to
perform search on an element even if it's not visible? If so, one
could get a record as a result of a search but not be able to
view the
information he is looking for. On the other hand if the search must
exclude metadata with hidden elements, indexing must be modified and
take into account accessibility to subelements by different groups.

A configuration file could be used to let the administrator choose
which elements can be hidden/shown by users, to make the editor not
too overcrowded with buttons.

Regards
Stefano

--------------------------------------------------------------
-----------
This SF.Net email is sponsored by the Moblin Your Move
Developer's challenge
Build the coolest Linux based applications with Moblin SDK &
win great prizes
Grand prize is a trip for two to an Open Source event
anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
GeoNetwork-devel mailing list
GeoNetwork-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geonetwork-devel
GeoNetwork OpenSource is maintained at
http://sourceforge.net/projects/geonetwork