All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
12.3.0 - 2023-11-23
- Added mapping of data attributes to table cell and paragraph elements
FilterOperation
s for regular expression matching (case sensitive, insensitive and "not")- Expand
FilterCriterion.Builder
by regexp operations
12.2.1 - 2023-09-15
- Builders don't reset the
identifiableObjectType
anymore, if previously set
12.2.0 - 2023-09-12
- Added missing builders and missing
hashCode
,equals
,toString
methods - Added mapping logic for table elements to
HtmlMapper
- Added possibility to define a custom parser in
HtmlMapper
- Added builder for
RenderingHints
12.1.0 - 2023-08-01
- Add field
labelNormalized
toHeadword
to allow language independent sorting and searching in a normalized version oflabel
.
12.0.1 - 2023-07-06
- LocalizedUrlAliases must contain a
targetLanguage
, also in builder
- Dependency updates
12.0.0 - 2023-06-06
- New fields in
Work
- New fields in
Manifestation
- New models:
Subject
,Publisher
,Title
,Tag
,LocalDateRange
,TimeValueRange
,PublicationInfo
,DistributionInfo
,ProductionInfo
, - New models: Interface
ManagedContent
and EnumerationPublicationStatus
for content being managed in a content management system and having different states of publication ("online visibility") - New subtypes
MainSubType
,ExpressionType
,TitleType
,WorkType
- Add field
tags
toIdentifiable
- Bucket-Handling: Bucket (Sublist/Range of UniqueObjects), BucketRequest/Response and List of Bucket-Objects-Handling added
EntityRelation
can contain additional predicates- Breaking: Jackson-MixIns (type info
objectType
) for classes directly extendingUniqueObject
(Headword, Identifiable, Identifier, IdentifierType, License, Predicate, RenderingTemplate, User
) - Breaking: Predicate's description field changed from LocalizedText to LocalizedStructuredContent
- Add submodule "mappings" with submodule "html" for mapping HTML code (currently supporting ul, li, a) to DC-Model StructuredContent
- Add convenience method addLocalizedUrlAlias(UrlAlias urlAlias) to Identifiable
- ValidationError/ValidationException classes for providing field specific validation errors over system borders (e.g. via REST)
- Property
subjects
toIdentifiable
- Add
EntityToFileResourceRelation
,IdentifiableToEntityRelation
,IdentifiableToFileResourceRelation
- Deprecated
PagingInfo
after adding paging util methodList<PageItem> getNavItems(int maxNumberOfItems)
toPageResponse
. Collection
implementsManagedContent
- Breaking: Moved WEMI classes into new packaged structure
- Set "ignore unknown properties" as default (removes several
JsonIgnoreProperties
annotations) - Fix
FilterCriterion.Builder
for native expressions (no longer setting native expression flag at the beginning necessary) - Updated
FilerCriterion
example documentation inREADME.md
- Breaking: Replace flat uuid members with targeted objects instead: Replace DB-oriented fields targetIdentitfiableType, targetIdentifiableObjectType, targetUuid in UrlAlias with target Identifiable holding these data
- Use Builders for test creation of objects
- Breaking: remove error prone Identifier-constructor with two strings (namespace, id) - use Builder instead
- Breaking: introduce lombok for all (uniqueobject) model objects (replacing other builders). access now by
.builder()
- Breaking: Removed
Expression
(which is now part ofManifestation
) including correspondingIdentifiableObjectType
- Breaking: Removed
title
attribute fromWork
(which is now part ofManifestation
) - Breaking: Removed
WorkType
andcreators
fromWork
- Breaking: In
UniqueObject
and its descendants empty collections and strings are not serialized (no empty brackets) except foridentifiers
andUser#roles
Work
andManifestation
: Subjects are inherited fromIdentifiable
instead of being their own properties- remove test specific
PreviewImageBuilder
from model - Breaking: remove
Identifiable
member from Identifier (as it always comes in pair with the related Identifiable), caused recursion. - Breaking: remove deprecated getTargetEntityType from UrlAlias
11.0.3 - 2023-04-14
- Fixed deserialization (unknown
objectType
andlistRequestType
)
11.0.2 - 2023-03-29
- Do not serialize empty collections (empty JSON array)
- Initialised properties of a collection type with empty collections, with capacity of
0
11.0.1 - 2022-08-22
- Fixed deserialization of
CorporateBody
11.0.0 - 2022-07-18
- New fields in
Item
- Ability to remove an Identifier of an (inherited)
Identifiable
- Builder for
Identifier
- Breaking: Changed the type of
numberOfBinaryResources
inDigitalObject
fromint
toInteger
, so it can also benull
- Breaking: Removed obsolete fields
language
,publicationDate
,publicationPlace
,publisher
andversion
inItem
since they belong to the Manifestation/Expression.
10.0.2 - 2022-06-21
- Removed setter of field
targetEntityType
inUrlAlias
- Removed field
targetEntityType
fromequals
inUrlAlias
10.0.1 - 2022-06-20
- Fixed getter of field
targetEntityType
10.0.0 - 2022-06-07
- Added
IdentifiableObjectType
enumeration to specify all types ofIdentifiable
s - Added
identifiableObjectType
field toIdentifiable
(and all inherited classes) - Added
targetIdentifiableObjectType
field toUrlAlias
- Added
searchTerm
toListRequest
andexecutedSearchTerm
toListResponse
- Breaking: Refactored Builder classes into inner classes of their belonging model classes and made their API consistent
- Breaking: Set ignore case as default for sorting order
- Breaking: If Mimetype can not be detected for a filename (or extension) "application/octet-stream" (instead of null) is returned.
- Breaking: Refactored
ListRequest
,ListResponse
,PageRequest
andPageResponse
packages
- Removed build with Java 8
- Removed
Entity.entityType
field (deprecatedgetEntityType
method) - Breaking: Removed
SearchPageRequest
andSearchPageResponse
9.2.0 - 2022-04-06
- Added some more builders
- Added new domain model diagram
- Added missing geo location domain classes: Canyon, Cave, Continent, Country, Creek, Lake, Mountain, Ocean, River, Sea, StillWaters, Valley
- Added (de)serialization tests for all geo location types
- Added a less verbose domain model diagram
- Added new attributes to
- Introduced
navDate
toEntity
to make positioning entities on a timeline possible.
9.1.1 - 2022-03-17
- Added convenience methode for url aliases:
getPrimaryUrlAlias
9.1.0 - 2021-09-20
- Added url aliases with the classes
- Improved domain model documentation
- Refactored filtering model, see here
- Refactored list query and result model
9.0.0 - 2021-06-05
- Added
ToCEntry
- Added new breadcrumb navigation with the classes
- Removed Api / Impl splitting
- Renamed model implementation classes
- Eliminated package names from serialization
8.2.1 - 2021-02-24
- Added wildcard mimetype for audios, videos and texts
8.2.0 - 2021-02-15
- Added
FamilyName
- Added
GivenName
- Improved filtering and sorting
8.1.0 - 2021-01-21
- Added
GeoLocation
- Added
RenderingTemplate
- Fixed serialization
- Added rendering hints to
Webpage
8.0.0 - 2020-10-20
- Added custom attributes to
Entity
- Added documentation diagrams
- Fixed serialization
7.0.0 - 2020-10-20
- Added model classes:
- Added stuff vor video content blocks
- Fixed serialization
6.2.1 - 2020-09-07
- Changed filename handling on
FileResouce
by cutting path if filename is created from uri
6.2.0 - 2020-07-22
- Added breadcrumb navigation
6.1.1 - 2020-05-11
- Added type information as property instead of as wrapper on serialization
6.1.0 - 2020-05-11
- Added
refId
toIdentifiable
- Added filtering model, see here
- Added basic search page request/response model with paging, see here
- Updated and fixed serialization
- Renamed ContentTree to Topic
- Renamed ContentNode to Subtopic
4.0.3 - 2019-11-25
- Updated changelog
4.0.2 - 2019-11-25
- Added xml aliases for table classes
- Added classes for
HorizontalRule
- Fixed possible NPE in accessing mimetype of unknown types
4.0.1 - 2019-11-08
- Changed return type of
getLocales
inLocalizedText
fromLinkedHashSet
toArrayList
4.0.0 - 2019-10-23
- Added structured data navigation model
- Added table content block
- Added
DigitalObject
- Added
EntityRelation
- Added
Identifier
andIdentifierType
- Added
getIdentifierByNamespace
toIdentifiable
- Added
ImageFileResource
as preview image toIdentifiable
- Added entities and fileresources to
ContentNode
- Added versioning of
DigitalObject
- Added
License
- Added
LinkedDataFileResource
- Added
Corporation
andProject
- Added
FindParams
for paging
- Added simplified version of
LocalizedStructuredContent
- Refactored
LocalizedText
to aHashMap
- Removed OracleJDK from build matrix
- Removed
IdentifiablesContainer
and introduceEntityPart(Impl)
classes
3.0.0 - 2019-03-12
- Added static mimetype application/octet-stream
- Upgraded dependencies
- Deleted
FileResourcePersistenceType
(breaking change)
2.2.0 - 2019-01-09
- Introduced
WebpageFactory
for creating test webpage - Versioned Model (V1 support)
- Fixed badges in
README.md
- Fixed checkstyle warnings
- Upgraded dependencies
- Migrated unit tests from JUnit 4 to JUnit 5