Template Handler
1.0.2
1.0.2
  • About
  • Changelog
  • User
    • User guide
  • Admin
    • Config
    • Requirements
Powered by GitBook
On this page
  • Plugins
  • OC configuration

Was this helpful?

  1. Admin

Requirements

Plugins

The following plugins are needed in order to run the plugin

Content Agent

  • An action will be called to get content-handler instance to handle requests and fetching content

OC configuration

In order to work with this plugin you'll also need to have the Template content type configuration in OC as well as the Naviga ID access configuration.

indexfields:
    - name: TemplateType
      type: STRING
      multivalued: false
      sortable: true
      readonly: false
      description: "Template type"

    - name: TemplateCreator
      type: STRING
      multivalued: false
      sortable: false
      readonly: false
      description: "Sub for user who created"

    - name: TemplateIsShared
      type: BOOLEAN
      multivalued: false
      readonly: false
      suggest: false
      description: "DO NOT DELETE OR CHANGE... A flag to determine if a template is shared or personal"

contenttypes:
    - Template:
        - name: TemplateType
          type: STRING
          multivalued: false
          searchable: true
          readonly: false
          description: "Template type"
          indexfields:
            - TemplateType

        - name: Name
          type: STRING
          multivalued: false
          searchable: true
          readonly: false
          description: "For overview in xlibris"
          indexfields:
            - Name

        - name: TemplateCreator
          type: STRING
          multivalued: false
          searchable: true
          readonly: false
          description: "Sub for user who created"
          indexfields:
            - TemplateCreator

        - name: TemplateIsShared
          type: BOOLEAN
          multivalued: false
          searchable: false
          readonly: false
          description: "DO NOT DELETE OR CHANGE... A flag to determine if a template is shared or personal"
          indexfields:
            - TemplateIsShared
      
        - name: Headline
          type: STRING
          multivalued: false
          searchable: true
          readonly: false
          description: DO NOT DELETE OR CHANGE... For overview in xlibris
          indexfields:
            - Headline

xpathextractors:
#Type
    - id: 43c56a3b-0ab6-4b69-87dc-cf9fea67925a
      property: TemplateType
      contenttype: Template
      mimetype: application/vnd.iptc.g2.newsitem+xml.article.template
      xpath: /*:newsItem/*:itemMeta/*:itemMetaExtProperty[@type='imext:type']/@value

    - id: f89e5147-2945-4bcc-89cc-3bad8d4a1cf9
      property: TemplateType
      contenttype: Template
      mimetype: application/vnd.iptc.g2.conceptitem+xml.event.template
      xpath: /*:conceptItem/*:itemMeta/*:itemMetaExtProperty[@type='imext:type']/@value
      ignoreroot: false

    - id: bec0d5e9-666d-4d1b-b506-9d658dcc2677
      property: TemplateType
      contenttype: Template
      mimetype: application/vnd.iptc.g2.planningitem+xml.assignment.template
      xpath: /*:planning/*:planningExtProperty[@type='imext:type']/@value
      ignoreroot: false

    - id: 91155f2c-4327-4684-8363-b50112fa6781
      property: TemplateType
      contenttype: Template
      mimetype: application/vnd.iptc.g2.planningitem+xml.template
      xpath: /*:planningItem/*:itemMeta/*:itemMetaExtProperty[@type='imext:type']/@value
      ignoreroot: false

#Name
    - id: aa6635b1-fed8-4bb4-bb72-8b46d98537fd
      property: Name
      contenttype: Template
      mimetype: application/vnd.iptc.g2.newsitem+xml.article.template
      xpath: /*:newsItem/*:itemMeta/*:title/text()

    - id: cb5577d6-9e4c-4c23-83a5-f3d09caebc1a
      property: Name
      contenttype: Template
      mimetype: application/vnd.iptc.g2.conceptitem+xml.event.template
      xpath: //*:links/*:link[@rel="template-info"]/@title
      ignoreroot: false

    - id: 1133944d-1b81-401b-a38f-cdb23fbe0408
      property: Name
      contenttype: Template
      mimetype: application/vnd.iptc.g2.planningitem+xml.assignment.template
      xpath: //*:links/*:link[@rel="template-info"]/@title
      ignoreroot: false

    - id: 3ac4c35e-4d12-4dd0-9e15-f25f7487ce60
      property: Name
      contenttype: Template
      mimetype: application/vnd.iptc.g2.planningitem+xml.template
      xpath: //*:links/*:link[@rel="template-info"]/@title
      ignoreroot: false

#Creator
    - id: 02e533c3-f044-46f2-a6ea-40016f4cd100
      property: TemplateCreator
      contenttype: Template
      mimetype: application/vnd.iptc.g2.newsitem+xml.article.template
      xpath: /*:newsItem/*:itemMeta/*:links/*:link[@rel = 'creator']/substring-after(@uri, 'imid://user/sub/')

    - id: 296da437-a3d7-464c-912e-0a5d1d268876
      property: TemplateCreator
      contenttype: Template
      mimetype: application/vnd.iptc.g2.conceptitem+xml.event.template
      xpath: /*:conceptItem/*:itemMeta/*:links/*:link[@rel='creator']/substring-after(@uri, 'imid://user/sub/')
      ignoreroot: false

    - id: 21d75501-4dad-4aed-a680-77e4f05cc961
      property: TemplateCreator
      contenttype: Template
      mimetype: application/vnd.iptc.g2.planningitem+xml.assignment.template
      xpath: /*:planning/*:links/*:link[@rel='creator']/substring-after(@uri, 'imid://user/sub/')
      ignoreroot: false

    - id: 1ec4af79-d094-47f2-a08c-9a3f502a9502
      property: TemplateCreator
      contenttype: Template
      mimetype: application/vnd.iptc.g2.planningitem+xml.template
      xpath: /*:planningItem/*:itemMeta/*:links/*:link[@rel='creator']/substring-after(@uri, 'imid://user/sub/')
      ignoreroot: false

#IsShared
    - id: 28bfef1d-c01f-4797-9133-170dacbbd192
      property: TemplateIsShared
      contenttype: Template
      mimetype: application/vnd.iptc.g2.newsitem+xml.article.template
      xpath: /*:newsItem/*:itemMeta/*:links/*:link[@rel="template-info"]/@uri eq 'im://template/shared'
      ignoreroot: false

    - id: 04e14cd5-ec17-44e8-b79b-5aced9f08cd4
      property: TemplateIsShared
      contenttype: Template
      mimetype: application/vnd.iptc.g2.conceptitem+xml.event.template
      xpath: //*:links/*:link[@rel="template-info"]/@uri eq 'im://template/shared'
      ignoreroot: false

    - id: 0d1465b1-225d-4816-bfc6-869b0dae8e08
      property: TemplateIsShared
      contenttype: Template
      mimetype: application/vnd.iptc.g2.planningitem+xml.assignment.template
      xpath: //*:links/*:link[@rel="template-info"]/@uri eq 'im://template/shared'
      ignoreroot: false

    - id: e32a666a-26d0-4352-88a8-3d71adee0bdb
      property: TemplateIsShared
      contenttype: Template
      mimetype: application/vnd.iptc.g2.planningitem+xml.template
      xpath: //*:links/*:link[@rel="template-info"]/@uri eq 'im://template/shared'
      ignoreroot: false

#Headline
    - id: 55644308-6fe5-4865-a155-9eafe9f48011
      property: Headline
      contenttype: Template
      mimetype: application/vnd.iptc.g2.conceptitem+xml.event.template
      xpath: //*:links/*:link[@rel="template-info"]/@title
      ignoreroot: false

    - id: 7541b4b0-5c67-4b18-9276-ba48ba7ad5ee
      property: Headline
      contenttype: Template
      mimetype: application/vnd.iptc.g2.planningitem+xml.assignment.template
      xpath: //*:links/*:link[@rel="template-info"]/@title
      ignoreroot: false

    - id: 4f5d94fe-b870-4b1d-93b5-6b5dc42b319b
      property: Headline
      contenttype: Template
      mimetype: application/vnd.iptc.g2.planningitem+xml.template
      xpath: //*:links/*:link[@rel="template-info"]/@title
      ignoreroot: false

importcontenttyperules:
    - id: 2abdb19b-b5a7-4567-bccc-c5c823ee162d
      contenttype: Template
      metadatamimetypes:
          - application/vnd.iptc.g2.conceptitem+xml.event.template
          - application/vnd.iptc.g2.planningitem+xml.template
          - application/vnd.iptc.g2.planningitem+xml.assignment.template

versioning:
    contenttypes:
        - name: Template
          maxversions: 0
indexfields:
    - name: NavigaOrganisation
      type: STRING
      multivalued: false
      readonly: false
      suggest: false
      description: Naviga Organisation

    - name: NavigaOrganisationId
      type: STRING
      multivalued: false
      readonly: false
      suggest: false
      description: Naviga Organisation Id name

    - name: NavigaSharedWithOrgs
      type: STRING
      multivalued: true
      readonly: false
      suggest: true
      description: Naviga shared with the entire organisation

    - name: NavigaUnits
      type: STRING
      multivalued: true
      readonly: false
      suggest: true
      description: Naviga Units

    - name: NavigaUnitsId
      type: STRING
      multivalued: true
      readonly: false
      suggest: true
      description: Naviga Units Id name

    - name: ObjectCreated
      type: DATE
      multivalued: false
      readonly: false
      suggest: false
      description: Created date from metadata

    - name: ObjectCreator
      type: STRING
      multivalued: false
      readonly: false
      suggest: true
      description: Creator of the object

    - name: ObjectUpdated
      type: DATE
      multivalued: false
      readonly: false
      suggest: false
      description: Updated date from metadata

    - name: ObjectUpdater
      type: STRING
      multivalued: false
      readonly: false
      suggest: true
      description: Updater of the object

contenttypes:
    - Template:
        - name: NavigaOrganisation
          type: STRING
          multivalued: false
          searchable: false
          readonly: false
          description: Naviga Organisation
          indexfields:
            - NavigaOrganisation

        - name: NavigaOrganisationId
          type: STRING
          multivalued: false
          searchable: false
          readonly: false
          description: Naviga Organisation Id name
          indexfields:
            - NavigaOrganisationId

        - name: NavigaSharedWithOrgs
          type: STRING
          multivalued: true
          searchable: false
          readonly: false
          description: Naviga Shared with the entire organisation
          indexfields:
            - NavigaSharedWithOrgs

        - name: NavigaUnits
          type: STRING
          multivalued: true
          searchable: false
          readonly: false
          description: Naviga units
          indexfields:
            - NavigaUnits

        - name: NavigaUnitsId
          type: STRING
          multivalued: true
          searchable: false
          readonly: false
          description: Naviga Units Id name
          indexfields:
            - NavigaUnitsId

        - name: ObjectCreated
          type: DATE
          multivalued: false
          searchable: false
          readonly: false
          description: Created date from metadata
          indexfields:
            - ObjectCreated

        - name: ObjectCreator
          type: STRING
          multivalued: false
          searchable: false
          readonly: false
          description: Creator of the object
          indexfields:
            - ObjectCreator

        - name: ObjectUpdated
          type: DATE
          multivalued: false
          searchable: false
          readonly: false
          description: Updated date from metadata
          indexfields:
            - ObjectUpdated

        - name: ObjectUpdater
          type: STRING
          multivalued: false
          searchable: false
          readonly: false
          description: Updater of the object
          indexfields:
            - ObjectUpdater


xpathextractors:
    #Template - Article
    - id: 273e2339-de7f-417a-956e-fcf20916fb65
      property: NavigaOrganisation
      contenttype: Template
      mimetype: application/vnd.iptc.g2.newsitem+xml.article.template
      xpath: /*:newsItem/*:itemMeta/*:links/*:link[@rel='creator']/*:links//*:link[(@type='x-imid/organisation' and @rel='affiliation')]/@title
      ignoreroot: false

    - id: 350aa4a3-4d0a-4929-8e42-344b64c6ef0d
      property: NavigaOrganisationId
      contenttype: Template
      mimetype: application/vnd.iptc.g2.newsitem+xml.article.template
      xpath: /*:newsItem/*:itemMeta/*:links/*:link[@rel='creator']/*:links//*:link[(@type='x-imid/organisation' and @rel='affiliation')]/substring-after(@uri, 'imid://organisation/')
      ignoreroot: false

    - id: c5b526a4-042a-4586-971b-770f1714af8d
      property: NavigaSharedWithOrgs
      contenttype: Template
      mimetype: application/vnd.iptc.g2.newsitem+xml.article.template
      xpath: /*:newsItem/*:itemMeta/*:links/*:link[@rel='shared-with']/*:links//*:link[(@type='x-imid/organisation' and @rel='shared-with')]/substring-after(@uri, 'imid://organisation/')
      ignoreroot: false

    - id: 19dd1df2-26c4-4431-a34f-34f75c99c798
      property: NavigaUnits
      contenttype: Template
      mimetype: application/vnd.iptc.g2.newsitem+xml.article.template
      xpath: /*:newsItem/*:itemMeta/*:links/*:link[@rel='creator' or @rel='shared-with']/*:links//*:link[@type='x-imid/unit']/@title
      ignoreroot: false

    - id: 324f2dbe-d773-417f-95de-a816b2812f67
      property: NavigaUnitsId
      contenttype: Template
      mimetype: application/vnd.iptc.g2.newsitem+xml.article.template
      xpath: /*:newsItem/*:itemMeta/*:links/*:link[@rel='creator' or @rel='shared-with']/*:links//*:link[@type='x-imid/unit']/substring-after(@uri, 'imid://unit/')
      ignoreroot: false

    - id: 690ce898-7c3a-4edf-8ff8-03e78b5548cc
      property: ObjectCreator
      contenttype: Template
      mimetype: application/vnd.iptc.g2.newsitem+xml.article.template
      xpath: /*:newsItem/*:itemMeta/*:links/*:link[@rel="creator"]/@title
      ignoreroot: false

    - id: 7b03cfd2-c0dd-454b-ace0-2dcede02be86
      property: ObjectUpdater
      contenttype: Template
      mimetype: application/vnd.iptc.g2.newsitem+xml.article.template
      xpath: /*:newsItem/*:itemMeta/*:links/*:link[@rel="updater"]/@title
      ignoreroot: false

    #Template - Planning
    - id: ecc7698f-312b-4265-9c49-9fb74ed75645
      property: NavigaOrganisation
      contenttype: Template
      mimetype: application/vnd.iptc.g2.planningitem+xml.template
      xpath: /*:planningItem/*:itemMeta/*:links/*:link[@rel='creator']/*:links//*:link[(@type='x-imid/organisation' and @rel='affiliation')]/@title
      ignoreroot: false

    - id: aa14050b-7f75-498e-b022-e7bcb96da159
      property: NavigaOrganisationId
      contenttype: Template
      mimetype: application/vnd.iptc.g2.planningitem+xml.template
      xpath: /*:planningItem/*:itemMeta/*:links/*:link[@rel='creator']/*:links//*:link[(@type='x-imid/organisation' and @rel='affiliation')]/substring-after(@uri, 'imid://organisation/')
      ignoreroot: false

    - id: fb8cb6da-174c-4b74-b66b-1dbe8417d6fb
      property: NavigaSharedWithOrgs
      contenttype: Template
      mimetype: application/vnd.iptc.g2.planningitem+xml.template
      xpath: /*:planningItem/*:itemMeta/*:links/*:link[@rel='shared-with']/*:links//*:link[(@type='x-imid/organisation' and @rel='shared-with')]/substring-after(@uri, 'imid://organisation/')
      ignoreroot: false

    - id: 2cec9b8d-f57f-40fe-852a-c4d670e2b289
      property: NavigaUnits
      contenttype: Template
      mimetype: application/vnd.iptc.g2.planningitem+xml.template
      xpath: /*:planningItem/*:itemMeta/*:links/*:link[@rel='creator' or @rel='shared-with']/*:links//*:link[@type='x-imid/unit']/@title
      ignoreroot: false

    - id: 6ee1dfee-24e4-4b0a-8c17-36b8c422a138
      property: NavigaUnitsId
      contenttype: Template
      mimetype: application/vnd.iptc.g2.planningitem+xml.template
      xpath: /*:planningItem/*:itemMeta/*:links/*:link[@rel='creator' or @rel='shared-with']/*:links//*:link[@type='x-imid/unit']/substring-after(@uri, 'imid://unit/')
      ignoreroot: false

    - id: 7cfff9d3-ed2f-4479-9a4f-4a392f66af98
      property: ObjectCreator
      contenttype: Template
      mimetype: application/vnd.iptc.g2.planningitem+xml.template
      xpath: /*:planningItem/*:itemMeta/*:links/*:link[@rel="creator"]/@title
      ignoreroot: false

    - id: 9c6aee83-f5cf-4ece-9316-3903c99bae3d
      property: ObjectUpdater
      contenttype: Template
      mimetype: application/vnd.iptc.g2.planningitem+xml.template
      xpath: /*:planningItem/*:itemMeta/*:links/*:link[@rel="updater"]/@title
      ignoreroot: false

    #Template - Assignment    
    - id: ca548a01-846f-4854-a684-4b22a8a0b9c3
      property: NavigaOrganisation
      contenttype: Template
      mimetype: application/vnd.iptc.g2.planningitem+xml.assignment.template
      xpath: /*:planning/*:links/*:link[@rel='creator']/*:links//*:link[(@type='x-imid/organisation' and @rel='affiliation')]/@title
      ignoreroot: false
      
    - id: 05e5d574-edf9-4aad-9664-deb3593fcf7a
      property: NavigaOrganisationId
      contenttype: Template
      mimetype: application/vnd.iptc.g2.planningitem+xml.assignment.template
      xpath: /*:planning/*:links/*:link[@rel='creator']/*:links//*:link[(@type='x-imid/organisation' and @rel='affiliation')]/substring-after(@uri, 'imid://organisation/')
      ignoreroot: false

    - id: 8c4fdfed-9879-4c7c-9dd0-393960b3d537
      property: NavigaSharedWithOrgs
      contenttype: Template
      mimetype: application/vnd.iptc.g2.planningitem+xml.assignment.template
      xpath: /*:planning/*:links/*:link[@rel='shared-with']/*:links//*:link[(@type='x-imid/organisation' and @rel='shared-with')]/substring-after(@uri, 'imid://organisation/')
      ignoreroot: false

    - id: 4fad9239-78a4-4cb2-9a94-2fc52a358d11
      property: NavigaUnits
      contenttype: Template
      mimetype: application/vnd.iptc.g2.planningitem+xml.assignment.template
      xpath: /*:planning/*:links/*:link[@rel='creator' or @rel='shared-with']/*:links//*:link[@type='x-imid/unit']/@title
      ignoreroot: false

    - id: 32465103-0c6c-46d3-abda-243348dbe9f5
      property: NavigaUnitsId
      contenttype: Template
      mimetype: application/vnd.iptc.g2.planningitem+xml.assignment.template
      xpath: /*:planning/*:links/*:link[@rel='creator' or @rel='shared-with']/*:links//*:link[@type='x-imid/unit']/substring-after(@uri, 'imid://unit/')
      ignoreroot: false

    - id: 7ca10a48-14a9-4ae2-b170-a0b5000d68a7
      property: ObjectCreator
      contenttype: Template
      mimetype: application/vnd.iptc.g2.planningitem+xml.assignment.template
      xpath: /*:planning/*:links/*:link[@rel="creator"]/@title
      ignoreroot: false

    - id: e03338b2-0ca4-4efc-b80b-e45bc42b16a3
      property: ObjectUpdater
      contenttype: Template
      mimetype: application/vnd.iptc.g2.planningitem+xml.assignment.template
      xpath: /*:planning/*:links/*:link[@rel="updater"]/@title
      ignoreroot: false
      
    #Template - Event
    - id: c5b0ce5f-62c9-41a2-8ba3-364814dbc0e9
      property: NavigaOrganisation
      contenttype: Template
      mimetype: application/vnd.iptc.g2.conceptitem+xml.event.template
      xpath: /*:conceptItem/*:itemMeta/*:links/*:link[@rel='creator']/*:links//*:link[(@type='x-imid/organisation' and @rel='affiliation')]/@title
      ignoreroot: false

    - id: 05fd65d7-4505-4dd9-be93-c598066e468e
      property: NavigaOrganisationId
      contenttype: Template
      mimetype: application/vnd.iptc.g2.conceptitem+xml.event.template
      xpath: /*:conceptItem/*:itemMeta/*:links/*:link[@rel='creator']/*:links//*:link[(@type='x-imid/organisation' and @rel='affiliation')]/substring-after(@uri, 'imid://organisation/')
      ignoreroot: false

    - id: a79fa04a-96b8-415c-a992-9f6a0a5e3e0e
      property: NavigaSharedWithOrgs
      contenttype: Template
      mimetype: application/vnd.iptc.g2.conceptitem+xml.event.template
      xpath: /*:conceptItem/*:itemMeta/*:links/*:link[@rel='shared-with']/*:links//*:link[(@type='x-imid/organisation' and @rel='shared-with')]/substring-after(@uri, 'imid://organisation/')
      ignoreroot: false

    - id: d6e93c1e-7f2d-4ea6-988c-0e1fe0add3e9
      property: NavigaUnits
      contenttype: Template
      mimetype: application/vnd.iptc.g2.conceptitem+xml.event.template
      xpath: /*:conceptItem/*:itemMeta/*:links/*:link[@rel='creator' or @rel='shared-with']/*:links//*:link[@type='x-imid/unit']/@title
      ignoreroot: false

    - id: c315a3d1-fcc2-4f52-a6c4-7d5deb4fbb2d
      property: NavigaUnitsId
      contenttype: Template
      mimetype: application/vnd.iptc.g2.conceptitem+xml.event.template
      xpath: /*:conceptItem/*:itemMeta/*:links/*:link[@rel='creator' or @rel='shared-with']/*:links//*:link[@type='x-imid/unit']/substring-after(@uri, 'imid://unit/')
      ignoreroot: false

    - id: 8da7514f-c57d-4ff7-9af7-6f2c19406361
      property: ObjectCreator
      contenttype: Template
      mimetype: application/vnd.iptc.g2.conceptitem+xml.event.template
      xpath: /*:conceptItem/*:itemMeta/*:links/*:link[@rel="creator"]/@title
      ignoreroot: false

    - id: b62cfbba-7810-43d8-a0e8-33d994818c8d
      property: ObjectUpdater
      contenttype: Template
      mimetype: application/vnd.iptc.g2.conceptitem+xml.event.template
      xpath: /*:conceptItem/*:itemMeta/*:links/*:link[@rel="updater"]/@title
      ignoreroot: false
Due to us not being able to default import group rules 
these need to be setup manually.

#Article
Content type: Template
Property: TemplateType
Operator: EQ
Value: x-im/article-template

#Planning item
Content type: Template
Property: TemplateType
Operator: EQ
Value: x-im/newscoverage-template

#Assignment
Content type: Template
Property: TemplateType
Operator: EQ
Value: x-im/assignment-template

#Event
Content type: Template
Property: TemplateType
Operator: EQ
Value: x-im/event-template

PreviousConfig

Last updated 2 years ago

Was this helpful?