Project

General

Profile

feature request #6581

Make all microreferenced references OriginalSources

Added by Andreas Müller over 3 years ago. Updated 27 days ago.

Status:
In Progress
Priority:
Highest
Category:
cdm
Target version:
Start date:
04/24/2017
Due date:
% Done:

10%

Severity:
normal

Description

Currently we have OriginalSource usually used for collections of sources while single references such as nomenclaturalReference or references for relations (or even secundum reference) use 2 fields for defining the reference, the references and the microreference fields. This is generally problematic e.g. when formatting the nomenclatural citation. Also it reduces the possibility to add further information that is available in OriginalSource such as name used in source (could be used for original spelling), source information (currently "name in source"), or further features such as URL(s) that do link to an online version of the source together with a comment (see #6588).

We may want to handle all these references as OriginalSources. Also this eases the usage of the Reference class as it is not linked from so many places anymore (but therefore OriginalSource is linked more). Also we can easier implement common formatters for sources.
Also this could improve the handling for protologues and similar "proves" for nomenclatural acts or references in general.

Possible candidates are

  • nomenclatural reference
  • RelationshipBase reference
  • TypeDesignation (rename to designationSource)
  • Classification => needs further discussion as classification is SourcedEntityBase #9211
  • Secundum reference
  • TaxonNode
  • NomenclaturalStatus

Note: We already have the class ReferencedEntityBase which inherits from AnnotatableEntity and is the base class for RelationshipBase and TypeDesignation. This can be kept and the 3 parameters citation, microCitation and originalNameString can be replaced by according OriginalSource fields.

Open issues:

  • do we want to keep the direct methods, e.g. getNomenclaturalReference() in the main classes
  • how to delete a source if it became completely empty
    • how to decide if a source is completely empty (is an attached annotation or import source enough to make it not empty, or is it required that a "citation" exist. What about external links as only information
    • where to delete it (in model or only during persistence)
  • should we support one common interface which makes it easier to program against but methods are difficult to name, getSource() or getOriginalSource() might not be an expected label for getNomenclaturalSource() in TaxonName or TypeDesignationBase. Maybe we use 2 interfaces, one for nomenclatural sources.
  • What OriginalSourceType to use: NomenclaturalReference could be a very strict source type for names and type designations, OriginalSource might be a more general one, maybe NomenclaturalReference might become a subtype; how is the relationship to PrimaryTaxonomicSource
  • IMPORTANT: should we store this source together with other sources if available. This is the case for TaxonName.nomenclaturalReference and TaxonBase.secundum where the main classes are identifiable and already have sources. There might be performance issues and lazy loading issues if the specific source is stored together with the set of OrginalSources.
  • Should we have a strict type checking for the OriginalSourceType?
  • Should we allow to always return a placeholder empty source in case no source exists, this reduces NPEs but the semantic must be strictly followed that this placeholder may not be attached to the parent and therefore changes will have no effect; we may have a singleton for this to improve performance and to throw exceptions when any changes are done on this placeholder
  • Rename DescriptionElementSource to NamedSource as the only reason for distinguishing it from IdentifiableSource is now the additional attribute; the back link to the sourced entity does not exist anymore

Related issues

Related to Edit - feature request #6588: Add URL and URL comment to OriginalSource / ExternalLink Closed 04/24/2017
Related to Edit - task #6591: Use name used in source for original spelling New 04/25/2017
Related to Edit - bug #6623: formatter for bibliografic citations with citationDetail New 05/05/2017
Related to Edit - feature request #6916: Link IntextReference to OriginalSource, not Reference In Progress 08/15/2017
Related to Edit - bug #7781: original spelling is missing for accepted taxon in taxon page New 09/21/2018
Related to Edit - feature request #8017: TypeDesignations need sources additional to lectotypifcation sources Closed 01/24/2019
Related to Edit - feature request #9004: Make TaxonNode.referenceForParentChildRelation an OriginalSource and rename it to (placement)source Closed 05/06/2020
Related to Edit - feature request #9116: Adapt Editor to switch to originalSource for TaxonNode and improve layout of TaxonNode dialogue Closed 07/01/2020
Related to Edit - feature request #9194: Make RelationshipBase and NomenclaturalStatus reference OriginalSource New 08/17/2020
Related to Edit - bug #9199: Adapt Editor to switch to originalSource for remaining single sourced objects In Progress 07/02/2020
Related to Edit - task #9222: Adapt dataportal to switch to originalSource for remaining single sourced classes New 07/02/2020
Related to Edit - bug #9223: make changes of nomenclatural references detectable again in TaxonGraphBeforeTransactionCompleteProcess Feedback 09/11/2020
Related to Edit - feature request #9225: Make TaxonName.nomenclaturalSource a new DescriptionElementSource subclass In Progress 09/14/2020
Related to Edit - feature request #9229: TaxonNameEditor: use NomenclaturalStatusDTO to avoid data loading probems within setters in TaxonName Closed 09/22/2020
Blocks Edit - feature request #6589: Handle protologue as original source with URI link In Progress 04/24/2017
Copied from Edit - bug #9069: Remove orphan single sources New 06/13/2020
Copied to Edit - feature request #9211: Handle source(s) for Classification New 09/02/2020

Associated revisions

Revision 94d72025 (diff)
Added by Andreas Müller over 2 years ago

ref #6581 first incomplete version for making nomenclatural reference an orginal source

Revision 82ceb6d9 (diff)
Added by Andreas Müller over 2 years ago

ref #6581 nomRef to OriginalSource allow setNomRef by Interface for compiling

Revision 0e34b7ad (diff)
Added by Andreas Müller over 2 years ago

ref #6581 add DescriptionElementSource to TaxonName import

Revision 5d30857a (diff)
Added by Andreas Müller over 2 years ago

ref #6581 add uuid to OriginalSourceType.NomenclaturalReference

Revision 19bb1cb2 (diff)
Added by Andreas Müller over 2 years ago

ref #6581 add TaxonName.nomenclaturalSource_id and adapt constructor visibility for DescriptionElementSource

Revision 59e36d30 (diff)
Added by Andreas Müller over 2 years ago

ref #6581 preliminary revert some changes for making nomenclaturalReference an OriginalSource

Revision cbdcc8dd (diff)
Added by Andreas Müller 4 months ago

ref #9004, ref #6581 add isEmpty to OriginalSource and super classes

Revision 027f931b (diff)
Added by Andreas Müller 4 months ago

ref #9004, ref #6581 link TaxonNode to OriginalSource, not Reference and micro reference String

Revision 046711ec (diff)
Added by Andreas Müller 4 months ago

ref #6581 checkSource uses OriginalSource.isEmpty for nomenclaturalSources

Revision 03e4c253 (diff)
Added by Andreas Müller 4 months ago

ref #6581 add "source" to Classification, TypeDesignation, RelationshipBase and NomenclaturalStatus

Revision 1f1f7ea1 (diff)
Added by Andreas Müller 4 months ago

ref #6581 , fix #9004 update script for TaxonNode.source and some fixes

Revision 149ff443 (diff)
Added by Andreas Müller 4 months ago

ref #6581 ,ref #9004 fix Reference2SourceMover

Revision cf6aefdd (diff)
Added by Andreas Müller 4 months ago

ref #6581 ,ref #9004 fix preliminary SingleSourcedEntityBase class hierarchy

Revision fdf36f4e (diff)
Added by Andreas Müller 4 months ago

ref #6581 ,ref #9004 fix preliminary SingleSourcedEntityBase class hierarchy (cont.)

Revision 4513cfd5 (diff)
Added by Andreas Müller 4 months ago

ref #6581 ,ref #9004 fix orphanRemoval for ISingleSourced

Revision d17a60c0 (diff)
Added by Andreas Müller about 1 month ago

ref #9194, ref #6581 use DescriptionElementSource for SingleSourcedEntityBase

Revision b6d851cf (diff)
Added by Andreas Müller about 1 month ago

ref #9194, ref #6581 Remove ReferencedEntityBase

Revision 869cb64b (diff)
Added by Andreas Müller about 1 month ago

ref ##9199, ref #6581, #9194 adapt TaxEditor to ReferencedEntityBase removal (has open issues)

Revision c7482183 (diff)
Added by Andreas Müller about 1 month ago

ref #9194, ref #6581 fix propOrder

Revision 24352587 (diff)
Added by Andreas Müller about 1 month ago

ref #9194, ref #6581 update model cache

Revision e604c689 (diff)
Added by Andreas Müller about 1 month ago

ref #9194, ref #6581 remove null values for CitationMicroReference and OriginalNameString from test data

Revision ece6b63a (diff)
Added by Andreas Müller about 1 month ago

ref #9194, ref #6581 remove null values for CitationMicroReference and OriginalNameString from test data in vaadin

Revision 4b585df9 (diff)
Added by Katja Luther about 1 month ago

ref #6581: adapt getter/setter of citation/microcitation in typedesignationbase

Revision b5aa6bf0 (diff)
Added by Katja Luther about 1 month ago

ref #6581: fix problems with getter and setter

Revision b417d8fa (diff)
Added by Katja Luther about 1 month ago

ref #6581: activate nomenclatural source

Revision d4f22ec1 (diff)
Added by Andreas Müller about 1 month ago

ref #6581 adapt registration tests to new source handling in typeDesignation and for nomenclaturalReference

Revision 370c23ac (diff)
Added by Andreas Müller about 1 month ago

ref #6581 fix persistence tests (except for 1)

Revision 8317f888 (diff)
Added by Andreas Müller about 1 month ago

ref #6581 fix further tests

Revision 33defdeb (diff)
Added by Andreas Müller about 1 month ago

ref #6581 fix further testdata for nomenclatural reference testing

Revision 2686feab (diff)
Added by Andreas Müller about 1 month ago

ref #6581 remove null-values for nomenclaturalReference and nomenclaturalMicroReference from Test-Files

Revision c6c60718 (diff)
Added by Andreas Müller about 1 month ago

ref #6581 fix source type in TypeDesignationBase

Revision a26ed8d5 (diff)
Added by Andreas Müller about 1 month ago

ref #6581 fix RegistrationServiceTest test data

Revision 3bb1975d (diff)
Added by Andreas Müller about 1 month ago

ref #6581 adapt list/count query in RegistrationDaoHibernateImpl

Revision 0ae9e37c (diff)
Added by Andreas Müller about 1 month ago

ref #6581 fix test data with nomenclaturalMicroReference not being null

Revision 267940ec (diff)
Added by Andreas Müller about 1 month ago

ref #6581 fix test data with nomenclaturalMicroReference not being null

Revision 1e29642a (diff)
Added by Andreas Müller about 1 month ago

ref #6581 fix test data with nomenclaturalMicroReference not being null (cont)

Revision 72644cc0 (diff)
Added by Andreas Müller about 1 month ago

ref #6581 remove null values for citationmicroreference and citation_id from test data

Revision 6aae1432 (diff)
Added by Andreas Müller about 1 month ago

ref #6581 remove unnecessary nomenclaturalReference_ids from test data

Revision d43f4436 (diff)
Added by Andreas Müller about 1 month ago

ref #6581 adapt search in ReferenceDaoHibernateImpl

Revision 777ccdd0 (diff)
Added by Andreas Müller about 1 month ago

ref #6581 remove unnecessary links to nomenclaturalReference in persistence test data

Revision b0a6f980 (diff)
Added by Andreas Müller about 1 month ago

ref #6581 adapt links to nomenclaturalReference in persistence test data

Revision 806a0fa9 (diff)
Added by Andreas Müller about 1 month ago

ref #6581 remove CITATIONMICROREFERENCE from TaxonRelationship in test data

Revision eae56a30 (diff)
Added by Andreas Müller about 1 month ago

ref #6581 update HQL and property paths and similar to nomenclaturalSource (some issues unclear)

Revision 35a1b7c4 (diff)
Added by Andreas Müller about 1 month ago

ref #6581 remove or adapt nomenclaturalReference in service test data (and some removing of not needed data)

Revision 7ccaf356 (diff)
Added by Andreas Müller about 1 month ago

ref #6581 adapt TaxonGraphBeforeTransactionCompleteProcess to nomenclaturalSource

Revision c41c3457 (diff)
Added by Andreas Müller about 1 month ago

ref #6581 adapt NoDuplicateNamesValidator to nomenclaturalSource (doubtful if correct, but all this validation rule must be refactored)

Revision 5eaab3bf (diff)
Added by Andreas Müller about 1 month ago

ref #6581 fully remove nomenclaturalReference and nomenclaturalMicroReference fields from TaxonName

Revision b5e55a3d (diff)
Added by Andreas Müller about 1 month ago

ref #6581 !!! PRELIMINARY IGNORE TaxonGraphHibernateListenerTest !!!

Revision 53fe462e (diff)
Added by Andreas Müller about 1 month ago

ref #6581 fully remove nomenclaturalReference and nomenclaturalMicroReference fields from TaxonName (cont.)

Revision ab6924d5 (diff)
Added by Andreas Müller about 1 month ago

ref #6581 fix ReferringObjectMetadataFactoryTest.xml

Revision 4e3ee11f (diff)
Added by Andreas Müller about 1 month ago

ref #6581 improve setNomenclaturalReference(...) handling

Revision 4919978c (diff)
Added by Andreas Müller about 1 month ago

ref #6581 !!! PRELIMINARY IGNORE TaxonNameDefaultCacheStrategyTest !!!

Revision d2bbfb7a (diff)
Added by Andreas Müller about 1 month ago

ref #6581 remove unused reference and microreference fields from SingleSourced classes (incl. TypeDesignationBase)

Revision 560db24d (diff)
Added by Andreas Müller about 1 month ago

ref #6581 update dataset.dtd in cdmlib

Revision 6b250b8c (diff)
Added by Andreas Müller about 1 month ago

ref #6581 update dataset.dtd in taxeditor

Revision 1a5f4cbd (diff)
Added by Andreas Müller about 1 month ago

ref #6581 fix testdata for DerivedUnitConverterIntegrationTest.cascadeDelete

Revision 526f235a (diff)
Added by Andreas Müller about 1 month ago

ref #6581 remove referenceForParentChildRelation from 001-cdm.h2.sql

Revision 67a5e8fa (diff)
Added by Andreas Müller about 1 month ago

ref #6581 adapt StatisticsDaoHibernateImpl to TaxonNode.source

Revision 7016ecce (diff)
Added by Andreas Müller about 1 month ago

ref #6581 adapt SpecimenImportConfiguratorTest test data

Revision 7da4623a (diff)
Added by Andreas Müller about 1 month ago

ref #6581 fix tests in SpecimenTypeDesignationWorkingSetServiceImpl

Revision fa734b21 (diff)
Added by Andreas Müller about 1 month ago

ref #6581 fix CdmSpringContextHelperTest in vaadin

Revision 8a626c70 (diff)
Added by Andreas Müller about 1 month ago

ref #6581 try to fix key issue in SpecimenTypeDesignationWorkingSetServiceImplTest

Revision 6562ccfe (diff)
Added by Andreas Müller 29 days ago

try to fix exception in MatchStrategyConfigurator

Revision e807e438 (diff)
Added by Andreas Müller 29 days ago

ref #6581 try to fix exception in MatchStrategyConfigurator

Revision f800c017 (diff)
Added by Andreas Müller 22 days ago

ref #6581 move references to sources for NomenclaturalStatus, NameRelationship, TaxonRelationship, HybridRelationship, TypeDesignation and TaxonName.nomenclaturalReference

Revision c754177e (diff)
Added by Andreas Müller 22 days ago

ref #6581 fix detail handling with single quote character

Revision 4dee6d44 (diff)
Added by Andreas Kohlbecker 21 days ago

ref #9222 ref #6581 adapting web services to single sourced classes

Revision 84d9a25e (diff)
Added by Andreas Kohlbecker 20 days ago

ref #6581 ref #9222 adding PolytomousKeyNodePortalController and missing name.nomenclaturalSource init strategys in TaxonPortalController

Revision 96847705 (diff)
Added by Andreas Kohlbecker 20 days ago

ref #6581 ref #9222 fixing init strategy in TaxonPortalController

Revision 98505c5e (diff)
Added by Andreas Kohlbecker 20 days ago

ref #6581 ref #9222 fixing NPE in TaxonPortalController

Revision 7058de02 (diff)
Added by Andreas Müller 20 days ago

ref #6581 adapt vaadin to new nomenclatural source handling

Revision cbd1fe7a (diff)
Added by Andreas Kohlbecker 19 days ago

ref #6581 fixing erroneously changes DTP field name

Revision a38340e1 (diff)
Added by Andreas Kohlbecker 18 days ago

ref #6581 fixing means to get bean property

Revision 9e4028e0 (diff)
Added by Andreas Müller 15 days ago

ref #6581 add listener to TaxonName.nomenclaturalSource

Revision cdbbcaaf (diff)
Added by Andreas Müller 15 days ago

ref #6581 add listener to TaxonName.nomenclaturalSource (cont.)

Revision 2d909919 (diff)
Added by Andreas Müller 7 days ago

ref #6581 , ref #9225 cleanup TaxonName from nomenclaturalSource handling

History

#1 Updated by Andreas Müller over 3 years ago

  • Description updated (diff)

#2 Updated by Andreas Müller over 3 years ago

  • Description updated (diff)

#3 Updated by Andreas Müller over 3 years ago

#4 Updated by Andreas Müller over 3 years ago

#5 Updated by Andreas Müller over 3 years ago

  • Description updated (diff)

#6 Updated by Andreas Müller over 3 years ago

  • Related to task #6591: Use name used in source for original spelling added

#7 Updated by Andreas Müller over 3 years ago

AK: > Viel besser sollten wir das im ValidationFramework als Rule definieren.
+1

das Ticket https://dev.e-taxonomy.eu/redmine/issues/6581 freut mich wirklich sehr, denn die Nomenklatorischen Referenzen sind auch in Portal sehr lästig, da man mit citation und citationDetail immer noch einen extra Request an den Server schicken muss um den kompletten Citation String zu bekommen.

#8 Updated by Andreas Müller over 3 years ago

  • Priority changed from New to Priority14

#9 Updated by Andreas Müller over 3 years ago

  • Target version changed from CDM UML 4.7 to CDM UML 5.0

#10 Updated by Andreas Müller over 3 years ago

  • Description updated (diff)
  • Status changed from New to In Progress
  • Priority changed from Priority14 to Highest

#11 Updated by Andreas Müller over 3 years ago

  • Description updated (diff)
  • % Done changed from 0 to 10

#12 Updated by Andreas Müller over 3 years ago

  • Description updated (diff)

#13 Updated by Andreas Müller over 3 years ago

  • Related to bug #6623: formatter for bibliografic citations with citationDetail added

#14 Updated by Andreas Müller about 3 years ago

#15 Updated by Andreas Müller over 2 years ago

  • Priority changed from Highest to Priority14

#16 Updated by Andreas Müller over 2 years ago

  • Target version changed from CDM UML 5.0 to CDM UML 5.5

#18 Updated by Andreas Müller about 2 years ago

  • Related to bug #7781: original spelling is missing for accepted taxon in taxon page added

#19 Updated by Andreas Müller over 1 year ago

  • Priority changed from Priority14 to Priority13

#20 Updated by Andreas Müller over 1 year ago

  • Related to feature request #8017: TypeDesignations need sources additional to lectotypifcation sources added

#21 Updated by Andreas Müller over 1 year ago

  • Description updated (diff)

#22 Updated by Andreas Müller over 1 year ago

  • Target version changed from CDM UML 5.5 to CDM UML 5.15

#23 Updated by Andreas Müller 4 months ago

  • Related to feature request #9004: Make TaxonNode.referenceForParentChildRelation an OriginalSource and rename it to (placement)source added

#24 Updated by Andreas Müller 4 months ago

  • Copied from bug #9069: Remove orphan single sources added

#25 Updated by Andreas Müller 3 months ago

  • Priority changed from Priority13 to Highest

#26 Updated by Andreas Müller 3 months ago

  • Target version changed from CDM UML 5.15 to CDM UML 5.18

#27 Updated by Andreas Müller 3 months ago

  • Related to feature request #9116: Adapt Editor to switch to originalSource for TaxonNode and improve layout of TaxonNode dialogue added

#28 Updated by Andreas Müller about 1 month ago

  • Description updated (diff)

#29 Updated by Andreas Müller about 1 month ago

  • Related to feature request #9194: Make RelationshipBase and NomenclaturalStatus reference OriginalSource added

#30 Updated by Andreas Müller about 1 month ago

  • Related to bug #9199: Adapt Editor to switch to originalSource for remaining single sourced objects added

#31 Updated by Andreas Müller 27 days ago

#32 Updated by Andreas Müller 27 days ago

  • Description updated (diff)

#33 Updated by Andreas Kohlbecker 21 days ago

  • Related to task #9222: Adapt dataportal to switch to originalSource for remaining single sourced classes added

#34 Updated by Andreas Kohlbecker 18 days ago

  • Related to bug #9223: make changes of nomenclatural references detectable again in TaxonGraphBeforeTransactionCompleteProcess added

#35 Updated by Andreas Müller 15 days ago

  • Related to feature request #9225: Make TaxonName.nomenclaturalSource a new DescriptionElementSource subclass added

#36 Updated by Andreas Kohlbecker 7 days ago

  • Related to feature request #9229: TaxonNameEditor: use NomenclaturalStatusDTO to avoid data loading probems within setters in TaxonName added

Also available in: Atom PDF

Add picture from clipboard (Maximum size: 40 MB)