• Skip to primary navigation
  • Skip to main content
  • Skip to primary sidebar
  • Skip to footer
TSB Alfresco Cobrand White tagline

Technology Services Group

  • Home
  • Products
    • Alfresco Enterprise Viewer
    • OpenContent Search
    • OpenContent Case
    • OpenContent Forms
    • OpenMigrate
    • OpenContent Web Services
    • OpenCapture
    • OpenOverlay
  • Solutions
    • Alfresco Content Accelerator for Claims Management
      • Claims Demo Series
    • Alfresco Content Accelerator for Policy & Procedure Management
      • Compliance Demo Series
    • OpenContent Accounts Payable
    • OpenContent Contract Management
    • OpenContent Batch Records
    • OpenContent Government
    • OpenContent Corporate Forms
    • OpenContent Construction Management
    • OpenContent Digital Archive
    • OpenContent Human Resources
    • OpenContent Patient Records
  • Platforms
    • Alfresco Consulting
      • Alfresco Case Study – Canadian Museum of Human Rights
      • Alfresco Case Study – New York Philharmonic
      • Alfresco Case Study – New York Property Insurance Underwriting Association
      • Alfresco Case Study – American Society for Clinical Pathology
      • Alfresco Case Study – American Association of Insurance Services
      • Alfresco Case Study – United Cerebral Palsy
    • HBase
    • DynamoDB
    • OpenText & Documentum Consulting
      • Upgrades – A Well Documented Approach
      • Life Science Solutions
        • Life Sciences Project Sampling
    • Veeva Consulting
    • Ephesoft
    • Workshare
  • Case Studies
    • White Papers
    • 11 Billion Document Migration
    • Learning Zone
    • Digital Asset Collection – Canadian Museum of Human Rights
    • Digital Archive and Retrieval – ASCP
    • Digital Archives – New York Philharmonic
    • Insurance Claim Processing – New York Property Insurance
    • Policy Forms Management with Machine Learning – AAIS
    • Liferay and Alfresco Portal – United Cerebral Palsy of Greater Chicago
  • About
    • Contact Us
  • Blog

Extends vs. Modifies in D6.5 WDK

You are here: Home / Documentum / D6 / Extends vs. Modifies in D6.5 WDK

December 3, 2009

As more and more of our clients are upgrading to Documentum 6/6.5, we’ve encountered many significant changes between development methods in 5.3 WDK and 6.5 WDK. The good news is they are changes for the better, allowing for more efficient and streamlined development of Webtop customizations. One of the big changes is the ability to modify a Webtop component rather than having to extend it. 

For those of us that have developed Webtop customizations on Documentum 5.3, we are all too familiar with the extend function when customizing a Webtop component. Extending a component is in essence creating a subtype of that component, and allows that subtype to inherit attributes of the out-of-the box (OOTB) component, unless otherwise overwritten by the subtype. However, extending a component can be cumbersome.  In the past, we’ve had to customize components by copying the entire Webtop component xml over to the custom component xml in order to add only one or two new nodes to the xml. For example, in this scenario, we are trying to implement a customization to display a text area for some custom attributes. The following is what the custom component xml would look like using extends: 

Click to view larger version

You can see that most of this xml is just out-of-the-box Webtop. With 6.5, you can use modifies instead of extends and slim down your custom component xml. The following is what the custom component would look like using modifies: 

Click to view larger version

By using the modifies function, you have access to tags such as <insertbefore>, <insertafter>, <replace>, and <remove>, that take in an XPath query to locate the node that needs to be modified. This removes the need to copy over the OOTB Webtop component xml. This, in turn, allows for easier maintenance of customizations when upgrading to new Documentum versions. You no longer have to make the changes that were made to the out-of-the-box component xml when it was upgraded, to your custom component as well. This would only be necessary now if the part changed during the upgrade ended up being the part that was customized. 

Most of the time, modifying a component is preferred over extending, however there are cases where extending a component is actually necessary rather than modifying.  One such scenario is when you are creating new Webtop functionality that is based on, or needs to replicate, OOTB functionality. For example, a recent client asked for a customization that, upon importing a document, would promote the document to the final state of its lifecycle. They wanted to keep the original Import option, but wanted to provide users with an additional Import to Final option. In order to implement this, a new component was created that extended the OOTB import component so that the same import logic would be used regardless of what import option was chosen. However, for Import to Final, a custom processor was created to run after the import logic and promote the document. 

Click to view larger version

There are also other ways of using modifies and extends depending on the functionality you’re looking for. For example, you can add modifications to a component that’s already been modified at a previous level, or you can modify a component inside of an extension. The one thing to remember when using them together is that when customizations are loaded, extensions are always applied after all modifications have been applied to the component. 

Please feel free to contact us if you have any additional questions about WDK development.

Filed Under: D6, D6.5, Documentum, Tech Tip, Webtop Tagged With: WDK

Reader Interactions

Trackbacks

  1. Documentum – What’s Next Updated for 2010 « TSG Blog says:
    February 23, 2010 at 3:26 pm

    […] throughout blog.tsgrp.com for many posts including upgrade alternatives, extends versus modifies in 6.5, understanding the impact of WDK development, migration, clone or in-place upgrade, high volume […]

    Reply

Leave a Reply Cancel reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Primary Sidebar

Search

Related Posts

  • Documentum 6.5 Upgrade – Character Encoding Issues
  • Documentum Upgrade – Understanding Impact of WDK Development
  • Documentum Web Services – Documentum DFS and TSG OpenContent
  • Webtop Search Query Customization
  • Customize User Management Columns in Webtop's Administration Node
  • Documentum Webtop 5.3 running on Documentum Content Server 6.x
  • Documentum Workflow Manager, BPM, and Licensing
  • Documentum Search – How to get around the user request of “I just want a search like Google”
  • Documentum and Momentum EMC World 2010 Recap
  • Documentum Full Text Search with Lucene – Honoring ACL Security

Recent Posts

  • Alfresco Content Accelerator and Alfresco Enterprise Viewer – Improving User Collaboration Efficiency
  • Alfresco Content Accelerator – Document Notification Distribution Lists
  • Alfresco Webinar – Productivity Anywhere: How modern claim and policy document processing can help the new work-from-home normal succeed
  • Alfresco – Viewing Annotations on Versions
  • Alfresco Content Accelerator – Collaboration Enhancements
stacks-of-paper

11 BILLION DOCUMENT
BENCHMARK
OVERVIEW

Learn how TSG was able to leverage DynamoDB, S3, ElasticSearch & AWS to successfully migrate 11 Billion documents.

Download White Paper

Footer

Search

Contact

22 West Washington St
5th Floor
Chicago, IL 60602

inquiry@tsgrp.com

312.372.7777

Copyright © 2023 · Technology Services Group, Inc. · Log in

This website uses cookies to improve your experience. Please accept this site's cookies, but you can opt-out if you wish. Privacy Policy ACCEPT | Cookie settings
Privacy & Cookies Policy

Privacy Overview

This website uses cookies to improve your experience while you navigate through the website. Out of these cookies, the cookies that are categorized as necessary are stored on your browser as they are essential for the working of basic functionalities of the website. We also use third-party cookies that help us analyze and understand how you use this website. These cookies will be stored in your browser only with your consent. You also have the option to opt-out of these cookies. But opting out of some of these cookies may have an effect on your browsing experience.
Necessary
Always Enabled
Necessary cookies are absolutely essential for the website to function properly. This category only includes cookies that ensures basic functionalities and security features of the website. These cookies do not store any personal information.
Non-necessary
Any cookies that may not be particularly necessary for the website to function and is used specifically to collect user personal data via analytics, ads, other embedded contents are termed as non-necessary cookies. It is mandatory to procure user consent prior to running these cookies on your website.
SAVE & ACCEPT