Page History
...
- Books
- Book Chapter
- Edited Volume
- Monograph
- Theses
- Bachelor Thesis
- Doctoral Thesis
- Habilitation Thesis
- Master Thesis
- People
- Projects
Designing your own model
When using a different entities model, the new model has to be configured an loaded into your repository
Thinking about the object model
First step: identify the entity types
- Which types of objects would you want to create items for: e.g. Person, Publication, JournalVolume
- Be careful not to confuse a type with a relationship. A Person is a type, an author is a relationship between the publication and the person
Second step: identify the relationship types
- Which relationship types would you want to create between the entity items from the previous step: e.g. isAuthorOfPublication, isEditorOfPublication, isProjectOfPublication, isOrgUnitOfPerson, isJournalIssueOfPublication
- Multiple relationships between the same 2 types can be created: isAuthorOfPublication, isEditorOfPublication
- Relationships are automatically bidirectional, so no need to worry about whether you want to display the authors in a publication or the publications of an author
Third step: visualize your model
- By creating a drawing of your model, you’ll be able to quickly verify whether anything is missing
Configuring the object model
Configure the model in relationship-types.xml
- Similar to the default relationship-types.xml, configure a relationship type per connection between 2 entity types
- Include the 2 entity type names which are being connected
- Determine a clear an unambiguous name for the relation in both directions
- Optionally: determine the cardinality (min/max occurrences) for the relationships
- Optionally: determine default behavior for copying metadata if the relationship is deleted
Configuring the metadata fields
Determining the metadata fields to use
- Dublin Core works for publications, but not for a Person, JournalVolume, …
- There are many standards which can be easily configured: schema.org, eurocris, datacite, …
- Pick a schema which suits your needs
Configure the submission forms
- Add a form in submission-forms.xml for each entity type, containing the relevant metadata fields
- Configure which relationships to create
Configuring the item display pages
- The metadata configuration is not specific to configurable entities.
- Similar to other customizations to the item display pages, configure in Angular which metadata fields to display and their label. A template per entity type can be created
- The relationship display is similar to the metadata configuration
- Similar to the metadata configuration: configure in Angular which relationship to display and their label
Configuring virtual metadata
- The isAuthorOfPublication relationship can be displayed for the Publication item as dc.contributor.author
- The isOrgUnitOfPerson relationship can be displayed for the Person item as organization.legalName
- This can be configured in virtual-metadata.xml
Configuring discovery
- Configure the discovery facets, filters, sort options, …
- The facets for a Person can be job title, organization, project, …
- The filters for a Person can be person.familyName, person.givenName, …
Overview
Content Tools