= Metadata Element hiding = || '''Date''' || 2012/09/14 || || '''Contact(s)''' || [http://wiki.osgeo.org/wiki/User:Jeichar Jesse Eichar] || || '''Last edited''' || || || '''Status''' || In Progress || || '''Assigned to release''' || 2.9.x || || '''Resources''' || Funding IFremer || || '''Code''' || https://github.com/jesseeichar/core-geonetwork/commits/feature/jmeter || == Overview == In certain circumstances it can be desirable to hide certain elements of metadata, for example if passwords or connection information is contained in the metadata. This proposal allows these elements to be hidden when viewed by non-owner/administrator users. === Proposal Type === * '''Type''': Metadata * '''App''': !GeoNetwork * '''Module''': === Links === * '''Email discussions''': * '''IRC discussions''': * '''Related work''': === Voting History === * None as yet ---- == Proposal == This proposal will modify loading metadata so that the method will do the following things: * check the settings parameter hidewithheldelements if it is false then this feature is disabled * check if the current user is either an administrator or the owner of the metadata if both are false then all elements will be retrieved * search the document for the attribute: gco:nilReason='withheld'. if the following two checks are true then all attributes (excepting gco:nilReason) will be removed, as will all child elements. The element itself will remain as a marker * Note: at the moment only gco:nilReason='withheld' attribute marks an element as hidden. In the future more tags can be added for other schema's By default this feature is disabled but this setting can be changed in the configuration page in administration. In addition to hiding the metadata the Show metadata UIs will show a message that there is hidden/censored metadata. The most important use of this is to notify editors (that can't see the data) that they should not remove the element. One of the expected uses of this is to have some semantics in update-fixed-info that adds the attribute tags to the metadata when needed. In addition a user could add the attribute via the edit UI. === Backwards Compatibility Issues === Settings needs to be updated. Will be part of the migrate sql files. == Risks == == Participants == * As above