It was decided to perform a mass change through pdm_load to set the Expiration Date for knowledge documents. After a few weeks, it was noticed that knowledge documents are being retired earlier than the defined Expiration Date.
According to "History & Versions" tab:
Notice that the Expiration Date was changed from 2017-12-30 to 2017-07-10 and it was not performed by an end user.
Through pdm_load, the Expiration Date was set to the end of 2017, but somehow it was changed to months earlier and expired the knowledge document.
When the Expiration Date for a Knowledge Document is changed through the SDM interface, it creates a record in Anima table with the method ExpireStartKDspl. When it reaches the Expiration Date, the Animator process (animator_nxd) expires the knowledge document. Actually, only changing the Expiration Date in the Skeletons table through pdm_load is not enough to have knowledge documents expired.
Even though a load through pdm_load changes the Expiration Date in the Skeletons table, there are remaining records in Anima table with other Expiration Dates. Probably the Anima records were created through PDM interface when end users created Knowledge Documents and set an Expiration Data on Document Access tab. Because of that there are Knowledge Documents being expired earlier than expected.
The best way to get it solved is an effort to set the Expiration Date through the SDM interface on Document Access tab. It is a way to create the Anima table records properly and the knowledge documents will be expired according to the defined date. If it is a hard work, it is possible to remove the remaining records from the Anima table manually, but it involves some risk if there is any mistake when removing the remaining records. Removing the remaining records from Anima table will keep the knowledge documents indefinitely without any possibility of having them expired in the future.