Skip to main content

SureDMS Nuxeo Document Object Model

SureDMS uses Nuxeo as its content repository. Nuxeo is a document-oriented platform — it does not expose a hand-written relational schema. Instead, Nuxeo manages its own internal table structure at runtime and exposes documents as typed objects defined by XML schemas (XSD).

From a developer perspective, the persistence model is document-centric:


Object Model Relationships


SureDMS Entity Reference

The following Java classes are the primary domain objects used by the desktop client and web platform. Each class maps to a Nuxeo document type defined by a corresponding XSD schema.

Java ClassNuxeo TypeKey PropertiesSource File
ArchiveSureDrive / SureStudyname, type, status, tenantName, ownerIdSC/suredms-desktop-client-data/src/main/java/com/sureclinical/suredms/entity/Archive.java
DocumentSureDocumenttitle, contentTypeId, categoryId, status, version, mimeTypeSC/suredms-desktop-client-data/src/main/java/com/sureclinical/suredms/entity/Document.java
ContentTypeContentTypename, path, ordinal, archiveIdSC/suredms-desktop-client-data/src/main/java/com/sureclinical/suredms/entity/ContentType.java
CategoryCategoryname, ordinal, contentTypeId, archiveIdSC/suredms-desktop-client-data/src/main/java/com/sureclinical/suredms/entity/Category.java
OrganizationOrganizationname, typeSC/suredms-desktop-client-data/src/main/java/com/sureclinical/suredms/entity/Organization.java
PersonPersonfirstName, lastName, email, userIdSC/suredms-desktop-client-data/src/main/java/com/sureclinical/suredms/entity/Person.java
UserUserusername, tenantName, personIdSC/suredms-desktop-client-data/src/main/java/com/sureclinical/suredms/entity/User.java
UserRoleUserRoleuserId, archiveId, roleSC/suredms-desktop-client-data/src/main/java/com/sureclinical/suredms/entity/UserRole.java
DocDiscrepancyDiscrepancydocumentId, reportedBy, status, reportedDateSC/suredms-desktop-client-data/src/main/java/com/sureclinical/suredms/entity/DocDiscrepancy.java
AuditAuditRecordarchiveId, documentId, userId, action, eventDateSC/suredms-desktop-client-data/src/main/java/com/sureclinical/suredms/entity/Audit.java

Schema Source Files

ResourcePurpose
SC/suredms-nuxeo-extensions/suredms-nuxeo-doctypes/src/main/resources/schemas/XSD schema definitions for all Nuxeo document types
SC/suredms-desktop-client-data/src/main/java/com/sureclinical/suredms/entity/Java POJOs for all SureDMS domain objects
SC/suredms-nuxeo-extensions/Nuxeo server extensions including lifecycle, doctypes, and templates