Project

General

Profile

Actions

feature request #9500

open

Allow removing certain distribution status from distribution publication

Added by Andreas Müller about 3 years ago. Updated 3 months ago.

Status:
Feedback
Priority:
Priority14
Category:
cdmlib
Target version:
Start date:
Due date:
% Done:

90%

Estimated time:
Severity:
normal
Tags:

Description

from #8858#note-14

An even better solution might be to use a term tree for filtering and ordering the distribution status. Status not in the tree will not be shown/will be filtered out.

An example for distribution data with undefined status is Tanlinum paniculatum ( http://www.europlusmed.org/cdm_dataportal/taxon/3f28aea3-829f-46dc-957a-9991c30050f4 ) on area Madeira archipel and subareas

see parameter statusTreeUuid in TaxonPortalController.doGetTaxonPage()


Files

picture937-1.png (24.4 KB) picture937-1.png Andreas Müller, 03/02/2021 08:17 PM
picture851-1.png (6.91 KB) picture851-1.png Andreas Müller, 03/02/2021 08:18 PM

Related issues

Related to EDIT - bug #8297: Fix condensed distribution string for E+MClosedAndreas Müller

Actions
Related to EDIT - feature request #3816: Create "Undefined" status and choose it for NULL statusClosedAndreas Müller

Actions
Related to EDIT - task #9501: Find inconsistent higher area distribution status data in E+MNewAndreas Müller

Actions
Related to EDIT - task #8671: Distribution in E+M (BM) on different levelsRejectedAndreas Müller

Actions
Related to EDIT - feature request #9502: Implement subarea preference rule and fallback areas for areas with complex hierarchyResolvedAndreas Müller

Actions
Related to EDIT - feature request #3904: EuroMed: Implement filtering rules for distributionsClosedAndreas Müller

Actions
Related to EDIT - task #9524: Use non-model objects in database queries for getDistributionInfoFor In ProgressAndreas Müller

Actions
Related to EDIT - feature request #10322: Use DTOs for portal taxon page (cont.)In ProgressAndreas Müller

Actions
Related to EDIT - feature request #9503: Handle term tree of areas and distribution status for distributionInfo in dataportalClosedKatja Luther

Actions
Related to EDIT - feature request #10330: Handle term tree distribution status for distributionInfo in dataportalClosedKatja Luther

Actions
Copied from EDIT - bug #8858: Ordering of distribution status 'undefined' is not correct in E+MClosedAndreas Müller

Actions
Copied to EDIT - feature request #10467: Distribution status filter for exportsNewAndreas Müller

Actions
Actions #1

Updated by Andreas Müller about 3 years ago

  • Copied from bug #8858: Ordering of distribution status 'undefined' is not correct in E+M added
Actions #2

Updated by Andreas Müller about 3 years ago

  • Description updated (diff)
Actions #3

Updated by Andreas Müller about 3 years ago

  • Related to bug #8297: Fix condensed distribution string for E+M added
Actions #4

Updated by Andreas Müller about 3 years ago

  • Related to bug #9477: New ordered terms do not have correct order index added
Actions #5

Updated by Andreas Müller about 3 years ago

Actions #7

Updated by Andreas Müller about 3 years ago

  • Description updated (diff)
Actions #8

Updated by Andreas Müller about 3 years ago

  • Related to task #9501: Find inconsistent higher area distribution status data in E+M added
Actions #9

Updated by Andreas Müller about 3 years ago

  • Related to task #8671: Distribution in E+M (BM) on different levels added
Actions #10

Updated by Andreas Müller about 3 years ago

  • Related to feature request #9502: Implement subarea preference rule and fallback areas for areas with complex hierarchy added
Actions #11

Updated by Andreas Müller about 3 years ago

Actions #12

Updated by Andreas Müller about 3 years ago

  • Blocks feature request #9503: Handle term tree of areas and distribution status for distributionInfo in dataportal added
Actions #13

Updated by Andreas Müller about 3 years ago

  • Description updated (diff)
Actions #14

Updated by Andreas Müller about 3 years ago

AM:

In einigen Fällen, und insbesondere in den Fällen, bei denen die Unterareale nur eine undefined Verbreitung haben, kommt es zu Ergebnissen, die für mich erstmal nicht optimal aussehen.
Beispiel: Tanlinum paniculatum ( http://www.europlusmed.org/cdm_dataportal/taxon/3f28aea3-829f-46dc-957a-9991c30050f4 ) für Madeira. Dort hat das Unterareal undefined und das Überareal undefined + introduced:reported in error. Die Regel, dass Unterarealdaten bevorzugt werden, führt dann dazu, dass eben nur die undefined Daten für das Unterareal angezeigt werden. Einerseits führt das dazu, dass es mehr undefineds gibt, was nicht per se falsch sein muss, aber natürlich unschön ist. V.a. hört sich das erstmal inkonsistent an, wenn eine Quelle für das gesamte Areal sagt, dass es kein Vorkommen gibt, dann aber die relativ aussagearme undefined Information bevorzugt wird.
Sollten wir hier eventuell besondere Regeln aufstellen für die Behandlung von Subarealen, wenn diese nur undefined Informationen haben? Betroffen sind davon derzeit 407 Fälle (s. Anhang).

... noch ein kleiner Nachtrag: bei der derzeitigen Implementierung kann es auch dazu kommen, dass Daten sowohl im native als auch im introduced Bereich des CondensedDistributionString auftreten, aber mit einem eigentlich nicht passenden Symbol.
Für das Beispiel Talinum paniculatum (http://test.e-taxonomy.eu/dataportal/preview/euromed/cdm_dataportal/taxon/3f28aea3-829f-46dc-957a-9991c30050f4) ergibt sich z.B.
-Md(??M) [aAu(A) pAz(aF aP) aHu -Md]

Actions #15

Updated by Andreas Müller about 3 years ago

AM:

Und noch etwas bezüglich undefined:

Im alten Portal werden diese Status ja auch grundsätzlich nicht mitbrücksichtigt wie es scheint: http://ww2.bgbm.org/EuroPlusMed/PTaxonDetailOccurrence.asp?NameId=48608&PTRefFk=7300000

Es handelt sich dabei ja wohl weitgehend um die eingeklammerten Status:

Also Informationen, die zwar exisiteren, die aber explizit als weniger glaubwürdig geflaggt sind und somit nicht in die Berechnung der Verbreitung mit einfließen sollen. Dieses Konzept, eine Verbreitung so zu flaggen gibt es im CDM leider noch nicht, aber wir sollten vermutlich darüber nachdenken, sie zu implementieren. Zur Zeit wird die Information ja nur als Annotation gespeichert.
Gut, wenn man alle „undefined“ Verbreitungen grundsätzlich gar nicht berücksichtigt, wird die eigentlich vorhandene Information eben nicht angezeigt, weil falsch oder unsicher.
Derzeit wird sie aber im textuellen als Mouseover noch angezeigt:

was so nicht stimmt. In der Quelle ist der Status ja nicht undefined sondern introduced, lediglich die Quelle ist in diesem Fall nicht glaubwürdig.

Ich werde jetzt auf jeden Fall mal implementieren, dass man die undefined Verbreitungen grundsätzlich komplett rausfiltern kann. Ob wir das dann verwenden oder nicht, können wir ja noch sehen.

Actions #17

Updated by Andreas Müller about 3 years ago

  • Status changed from New to In Progress
  • % Done changed from 0 to 10

ERS:

Für mich hört es sich plausibel an, für die Behandlung von Subarealen mit dem Status undefined besondere Regeln aufzustellen. Ich vermute, dass der Status ja deswegen undefined ist, weil der ursprüngliche Status vom Bearbeiter verworfen wurde; das müsste man in den Annotationen dazu an einem eingeklammerten Status sehen können. Dann ergibt es keinen Sinn, diesem explizit verworfenen Status eine höhere Priorität über den absence-Status des Hauptareals zu geben, im Gegenteil – in diesem Fall sollte dem Hauptareal-Status der Vorzug gegeben werden. Die Frage ist nur, was man dann mit dem Unterareal-Status undefined macht… weglassen, oder besser in den Daten korrigieren und ihm ebenfalls den absence-status geben, den es ja logischerweise aufweisen muss (was im Hauptareal nicht vorkommt, kann auch in den Unterarealen nicht vorkommen). Ich denke, ein Fall für Data cleaning, händisch oder semi-automatisch.

AM:

Ok, portalseitig lasse ich die undefined Status dann auf jeden Fall weg. Zum Datacleaning: dazu hatte ich dir ja bereits 2 Tabellen (1 Excel) geschickt. Konntest du damit was anfangen? Das sind vermutlich noch nicht alle Fälle, aber auf jeden Fall sind wichtige Fälle dabei. Du kannst ja nochmal überlegen, welche Fälle sonst noch vorkommen können. Für die kann ich das Query dann noch entsprechend anpassen.

Actions #18

Updated by Andreas Müller about 3 years ago

  • Target version changed from Release 5.21 to Release 5.22
Actions #19

Updated by Andreas Müller about 3 years ago

  • Related to task #9524: Use non-model objects in database queries for getDistributionInfoFor added
Actions #20

Updated by Andreas Müller about 3 years ago

  • Target version changed from Release 5.22 to Release 5.46
Actions #21

Updated by Andreas Müller over 2 years ago

  • Related to deleted (bug #9477: New ordered terms do not have correct order index)
Actions #22

Updated by Andreas Müller about 1 year ago

  • Target version changed from Release 5.46 to Release 5.44
Actions #23

Updated by Andreas Müller 11 months ago

  • Description updated (diff)
Actions #24

Updated by Andreas Müller 11 months ago

Actions #25

Updated by Katja Luther 11 months ago

  • Description updated (diff)
Actions #26

Updated by Andreas Müller 11 months ago

  • Blocks deleted (feature request #9503: Handle term tree of areas and distribution status for distributionInfo in dataportal)
Actions #27

Updated by Andreas Müller 11 months ago

  • Related to feature request #9503: Handle term tree of areas and distribution status for distributionInfo in dataportal added
Actions #28

Updated by Andreas Müller 7 months ago

  • Target version changed from Release 5.44 to Release 5.41
Actions #29

Updated by Andreas Müller 7 months ago

  • Related to feature request #10330: Handle term tree distribution status for distributionInfo in dataportal added
Actions #30

Updated by Andreas Müller 6 months ago

  • Target version changed from Release 5.41 to Release 5.42
Actions #31

Updated by Andreas Müller 3 months ago

once the statusTree parameter works remove the ignoreDistributionStatusUndefined from DistributionInfoConfiguration

Actions #32

Updated by Andreas Müller 3 months ago

  • Status changed from In Progress to Resolved
  • % Done changed from 10 to 60

This is so far fixed for the dataportals as it is possible to have a statusTree parameter now which allows defining those status which should be shown on the portal and therefore remove those which should not be shown.

The same still needs to be implemented for print publication (CdmLight, CsvNameExport and WordClassificationExport). We could also have a CdmPreference for the default status tree to be used for publication. These issues might be a new ticket.

Actions #33

Updated by Andreas Müller 3 months ago

  • Priority changed from Highest to Priority14
Actions #34

Updated by Andreas Müller 3 months ago

It did not fully work yet for maps due to issues discussed in #10330.

The reason for this was that the subareaPreferenceRule worked only on direct parents not on all ancestors. Therefore in E+M the Euro+Med area was not filtered out as the child "Europe" never has a child defined. In some (rare?) cases this seems to lead to an error in the geoserver with the result that no map is shown.

Now all ancestors are filtered out which seems to lead to the correct result.

Actions #35

Updated by Andreas Müller 3 months ago

Andreas Müller wrote in #note-32:

The same still needs to be implemented for print publication (CdmLight, CsvNameExport and WordClassificationExport). We could also have a CdmPreference for the default status tree to be used for publication. These issues might be a new ticket.

This is still open.

Actions #36

Updated by Andreas Müller 3 months ago

Actions #37

Updated by Andreas Müller 3 months ago

  • Assignee changed from Andreas Müller to Katja Luther
  • % Done changed from 60 to 90

I moved open issues to #10467. Can you do a final review and close if appropriate.

Actions #38

Updated by Katja Luther 3 months ago

  • Status changed from Resolved to Feedback

Currently there is no test with a status tree != null, we should add a test for the status tree. But the code looks good.

Actions #39

Updated by Katja Luther 3 months ago

  • Assignee changed from Katja Luther to Andreas Müller
Actions

Also available in: Atom PDF