I'm sure you've already thought of this, but couldn't your migration process just persist the legacy ids in a separate location (e.g. database table, possibly cached in memory for performance)? Then you would just need to check that for each document being migrated, to make sure that the same doc hasn't been seen previously.
Not a CMIS related solution, but seems like it would work fine... The other option, as you suggest, is to see if FileNet supports a 'uniqueness' constraint for custom metadata properties. I believe Sharepoint does but not sure about FileNet. Thanks michael lucas | Senior Software Developer | Great-West Life -----Original Message----- From: Tim Webster [mailto:[email protected]] Sent: June 20, 2014 8:15 AM To: [email protected] Subject: document 'uniqueness' Hi, I am developing a migration process (using Spring Batch) to migrate documents from a legacy CMS into a CMIS-compliant system, and I need to ensure that duplicate documents are not created accidentally. However, our CMIS system (IBM FileNet) allows the addition of documents with the same name. Documents with identical values for cmis:name or cmis:contentStreamFilename are allowed. Even if this could be disabled (I don't know if it can or cannot), it is a business requirement and I wouldn't be able to. The only thing I can think of to prevent this is to save the 'legacy' ID of the document in a new CMIS property and somehow check that it doesn't already exist when adding a new document. However this will be very inefficient and slow down the migration (we're talking about up to 2 million documents). Ideally the 'uniqueness constraint' would be checked on the server and would throw an exception, which I could then deal with. Does anyone know of an easier way to do this, or is there anything I can make use of in the CMIS spec to help? Thanks,
