feature request #1080


Model changes for references, taxonBase, OriginalSource

Added by Andreas Müller over 13 years ago. Updated over 4 years ago.

Target version:
Start date:
Due date:
% Done:


Estimated time:


Dear All,

I would like to inform you that I was working on some model changes the last days. I committed them to the trunk so you will find the changes in the svn.

The changes are:

1) References:

1a) I added a new field "refererenceAbstract" to the referenceBase class

1b) I deleted the BibtexReference class -> as a result I merged the StrictReferenceBase class into the referenceBase class and deleted StrictReferenceBase

1c) I deleted BibTexEntryType and it's DefinedTerm csv file

1d) I moved all attributes of referenceBase subclasses to referenceBase. The according methods in the subclasses are passed through to the base class. At the same time created an Enum ReferenceType the represents all the subclasses an is an attribute in referenceBase.

This is the first step to remove the subclasses completedly (at least for persistence) which makes e.g. casting much easier. The type check will probably removed by hibernate validation later.

1e) I removed the attributes inSeries, inProceedings, inBook, inJournal by the one attribute inReference.

1f) I removed the "Publisher" class (this was an old class not in use anymore)

2) TaxonBase: I added an string field "appendedPhrase" and a boolean field "useNameCache". The first is used to add a concept related phrase like "sensu latu" to the pure name used for the taxon. The second is used to use only the names name cache instead the title cache. This is sometimes needed in combination with the appended phrase attribute.

I still have to adapt the according cache strategy!

3) I changed the molecular.Sequence.dataSequenced field from Calendar to joda times DateTime. Now all Calendar types should be removed by joda time types.

4) I added a boolean field "isTechnical" to MarkerType. This way we can differentiate between markers for user defined content (to be shown in applications) and markers that are just to be read by machines and define e.g. a role of on object (e.g. a FeatureTree may have different, these roles may be defined by markers, this is not an information a user needs but usually just a machine).

Problems to be solved:


1) Most tests are running. The only test I know that it is not running (except for cdmlib-remote tests) is in io.jaxb.ReferenceTest.

@Anahit, Katja, Ben: Could you please try to fix this test? Also the JAXB import and export or at least the schema may be broken. This should be fixed too.

The cdmlib-remobe tests also seem to be broken. Andreas K. & Ben could you please try to fix them?

2) ReferenceBase.inReference: I deleted the @IndexedEmbedded annotation because I just hadn't time to check how to use it correctly. I will try tomorrow.

@Ben: Do you have a hint? I think you added this annotation to the in-references

I hadn't have time to test the new model intensively yet (except for unit and integeration tests). A first try with diptera seems to be successful. But please be aware that some problems could appear when updating (please just let me know immidiately)


Andreas M.

Actions #1

Updated by Andreas Müller over 13 years ago

  • Subject changed from Model changes for references, taxonBase to Model changes for references, taxonBase, OriginalSource

Dear All,

In my last mail I forgot to mention that I also divided OriginalSource into to subclasses: IdentifiableSource and DescriptionElementSource both having the same abstract superclass OriginalSourceBase and implementing the same interface IOriginalSource.

This makes it possible to add original sources to DescriptionElementBases.

Everyone should use DescriptionElementBase.addSource(IOriginalSource) from now on instead of DescriptionElementBase.setCitation() and DescriptionElementBase.setMicrocitation(). These 2 methods will become deprecated.

We still have to discuss how to use the origi­nalNameString attribute that is also part of DescriptionElementBase (via ReferencedEntityBase).



Actions #2

Updated by Andreas Müller over 13 years ago

  • Status changed from New to In Progress
Actions #3

Updated by Pepe Ciardelli over 13 years ago

  • Priority changed from Priority14 to Priority11
Actions #4

Updated by Niels Hoffmann over 13 years ago

don't forget #1119

Actions #5

Updated by Andreas Müller almost 13 years ago

see also #1176

Actions #6

Updated by Andreas Müller over 4 years ago

  • Description updated (diff)
Actions #7

Updated by Andreas Müller over 4 years ago

  • Description updated (diff)
Actions #8

Updated by Andreas Müller over 4 years ago

  • Assignee changed from Andreas Müller to Andreas Kohlbecker
  • Target version changed from TaxEditor Next Major Release to Release 5.1
  • % Done changed from 0 to 80

Hi Andreas, can you please check if the "IndexedEmbedded" is still relevant for us. The according annotation is still commented.

If not, please remove annotation and close ticket.

Actions #9

Updated by Andreas Kohlbecker over 4 years ago

As none of the freetext search functions is using this field for filtering we can remove the @IndexedEmbedded from Reference.inReference without breaking something. It was commented for about two years anyway or for longer without obviously causing any trouble.

Actions #10

Updated by Andreas Kohlbecker over 4 years ago

  • Status changed from In Progress to Closed
  • % Done changed from 80 to 100
  • Private changed from Yes to No
Actions #11

Updated by Andreas Müller over 4 years ago

  • Target version deleted (Release 5.1)

remove version as it is misleading. Nothing changed really in 5.1, only a final decision was made.


Also available in: Atom PDF