SlideShare a Scribd company logo
Code Tax: Programming
With The Taxonomy API
  In SharePoint 2010

       PATRICK TUCKER
About Me


• PATRICK TUCKER
   • STRATEGIC DATA SYSTEMS, MS GOLD PARTNER
   • PRINCIPAL CONSULTANT, SHAREPOINT
   • MCT, MCTS, MCPD, MCITP, MCSD, MCAD, MCDBA
   • PATRICK.TUCKER@SDS-CONSULTING.COM | TUCKERSNET@LIVE.COM
   • BLOG: WWW.TUCKERSNET.COM
   • TWITTER: @TUCKERSNET
The Managed Metadata
      Experience


HOW DO WE INTERACT WITH MANAGED METADATA IN SHAREPOINT?
Managed Metadata and Taxonomy



• MANAGED METADATA SERVICE APPLICATION
• TAXONOMY TERM STORE
• TERM SETS
• MANAGED METADATA COLUMN TYPE
Taxonomy Term Store
• AVAILABLE THROUGH MANAGED
  METADATA SERVICE
• COMPRISED OF SYSTEM OR ADMIN
  CREATED TERM SETS

• TERM SETS MAY BE GLOBAL OR
  LOCAL, OPEN OR CLOSED

• HIERARCHICAL
   • GROUPS CONTAIN TERM SETS
   • TERM SETS CONTAIN TERMS
   • TERMS MAY HAVE A DEFAULT LABEL
     AND OTHER LABELS (SYNONYMS)
Where are term sets surfaced?
• MANAGED METADATA COLUMNS
                                • THE TAXONOMY PICKER CONTROL




                                • THE DOCUMENT INFORMATION PANEL
Behind the Scenes


• TAXONOMIES ARE STORED IN A SINGLE DATABASE
• EACH ROOT SITE IN A SITE COLLECTION CONTAINS A “TAXONOMYHIDDENLIST”
• THE “TAXONOMY UPDATE SCHEDULER” TIMER JOB SYNCS HOURLY TO UPDATE THIS LIST
• TAXONOMY FIELD VALUES ARE IMPLEMENTED AS LOOKUP COLUMNS
• THE “MANAGED METADATA” FIELD IS ACTUALLY     COMPRISED OF MULTIPLE COLUMNS

   • TAXKEYWORDTAXHTFIELD
   • TAXCATCHALL
   • TAXCATCHALLLABEL
The Taxonomy API



WORKING WITH THE MANAGED METADATA SERVICE PROGRAMMATICALLY
Options




• SERVER SIDE OBJECT MODEL (MICROSOFT.SHAREPOINT.TAXONOMY)
• THE TAXONOMY CLIENT SERVICE
• DECLARATIVE XML
• POWERSHELL
Object Model
• NEED TO REFERENCE MICROSOFT.SHAREPOINT.TAXONOMY DLL
• ENTRY POINT IS A NEW TAXONOMY SESSION, CONNECTS   TO   MMS INSTANCE
• CLASSES IN TAXONOMY NAMESPACE MIRROR HIERARCHY SEEN IN TERM STORE MANAGEMENT TOOL

      • TAXONOMYSESSION CLASS
      • TERMSTORE CLASS
          (TAKES NAME OF MMS PROXY)


      • GROUP CLASS


      • TERMSET CLASS


      • TERM CLASS
          (MAY CONTAIN NESTED TERMS)
Terms and Synonyms
                     • EACH TERM MAY BE MARKED AS
                       AVAILABLE FOR TAGGING

                     • EACH TERM HAS A DEFAULT LABEL
                     • SYNONYMS ARE ADDED UNDER THE
                       “OTHER LABELS” SECTION
                     • SYNONYMS ARE EXPOSED IN CODE
                       THROUGH A LABELS COLLECTION ON
                       EACH TERM.    THE DEFAULT LABEL IS THE
                       FIRST TERM IN THE COLLECTION.
Creating New Items In The Term Store
• GET A REFERENCE TO SESSION . . . TERM STORE
• THE TERMSTORE CLASS CONTAINS A CREATEGROUP     METHOD

• THE GROUP CLASS CONTAINS A CREATETERMSET METHOD
• THE TERMSET CLASS CONTAINS A CREATE TERM METHOD



                                       Tips to Remember . . .

• ADDING ITEMS TO THE TERM STORE IS TRANSACTIONAL. WE MUST REMEMBER   TO CALL   “COMMITALL()”
DEMO




• TRAVERSE THE HIERARCHY OF GROUPS, TERM SETS AND TERMS
• DISPLAY THE HIERARCHY IN A TREE VIEW CONTROL VIA A CUSTOM   WEB PART

• CREATE A NEW GROUP, TERM SET AND TERMS PROGRAMMATICALLY
• RETRIEVE AND DISPLAY THE NEWLY   CREATED TERMS
The Taxonomy Client Service




• THE TAXONOMYCLIENTSERVICE.SVC IS AVAILABLE, BUT LIMITED
• OPERATIONS TO RETRIEVE TERM STORE ITEMS AND ADD TERMS ARE AVAILABLE
Taxonomy Client Service
• NAVIGATE TO HTTP://SITECOLLECTIONURL/_VTI_BIN/TAXONOMYCLIENTSERVICE.ASMX
• DO YOU KNOW THE GUIDS OF YOUR TERM STORE   AND TERM SET?

• XML PARSING IS IN YOUR FUTURE
The Taxonomy Field Type



• CUSTOM LIST DEFINITIONS WILL NEED TO CREATE THE FIELD – DECLARATIVELY OR
  PROGRAMMATICALLY

• THIS FIELD IS EXPOSED IN THE UI VIA THE TAXONOMY PICKER CONTROL (NOT AVAILABLE IN
  INFOPATH OR THE DATASHEET VIEW)
• PAGE LAYOUTS MAY ALSO MAKE USE OF THIS FIELD TYPE TO TAG PAGES AS WELL AS ITEMS
  AND DOCUMENTS
List Definition
 • DEFINING A NEW LIST IN A FEATURE   OR SITE DEFINITION WILL ALSO DEFINE LIST FIELDS

     • (NOTES FIELD AND LOOKUP FIELDS)



• DECLARATIVE APPROACH                                      • PROGRAMMATIC APPROACH
   • WILL NEED SSPID AND TERM SET GUIDS IN XML                  • ALSO WORKS WITH PARTIAL DECLARATIVE CODE
The Taxonomy Picker Control


• ALLOWS THE USER   TO SELECT TERM(S) TO TAG CONTENT

• THE CONTROL SHOWS UP ON NEW AND EDIT FORMS
• THE CONTROL MAY BE USED ON CUSTOM     PAGE LAYOUTS
DEMO




• USE THE TAXONOMY WEB SERVICE TO DISPLAY TERM STORE   ITEMS

• CREATE A CUSTOM LIST DEFINITION THAT CONTAINS A MANAGED METADATA COLUMN
• WORK   WITH A CUSTOM PAGE LAYOUT TO VIEW THE CURRENT TERM AND SYNONYMS

• RETRIEVE AND DISPLAY THE NEWLY   CREATED TERMS
The Undiscovered Country



 WHAT’S NEW WITH MANAGED METADATA IN SHAREPOINT 2013?
So what’s changed in 2013?
• MANAGED METADATA NAVIGATION
   • TERMS INTENDED USE MAY BE FOR NAVIGATION
   • TARGET PAGES ARE ATTACHED TO TERMS AND DRIVE THE NAVIGATION OF THE SITE
• CSOM – CLIENT SIDE OBJECT MODEL SUPPORT
   • AVAILABLE TO .NET, SILVERLIGHT AND JAVASCRIPT
   • PROJECTS MAY REFERENCE THE MICROSOFT.SHAREPOINT.CLIENT.TAXONOMY ASSEMBLY
• DATASHEET VIEW SUPPORT FOR THE MANAGED METADATA        COLUMN TYPE

• CUSTOM   PROPERTIES MAY BE ADDED TO A TERM TO STORE ADDITIONAL      DATA
   • MORE THAN JUST ADDITIONAL LABELS, THIS IS A DICTIONARY OF METADATA FOR YOUR METADATA
Q and A




• PATRICK.TUCKER@SDS-CONSULTING.COM | TUCKERSNET@LIVE.COM
• BLOG: WWW.TUCKERSNET.COM
• TWITTER: @TUCKERSNET

More Related Content

PDF
You Suck At PowerPoint!
PPTX
Programming with the SharePoint 2010 Taxonomy API - SPTechCon 2013
PDF
Marketplace integration
PDF
What Makes Great Infographics
PDF
STOP! VIEW THIS! 10-Step Checklist When Uploading to Slideshare
PDF
Masters of SlideShare
PDF
How To Get More From SlideShare - Super-Simple Tips For Content Marketing
PDF
10 Ways to Win at SlideShare SEO & Presentation Optimization
You Suck At PowerPoint!
Programming with the SharePoint 2010 Taxonomy API - SPTechCon 2013
Marketplace integration
What Makes Great Infographics
STOP! VIEW THIS! 10-Step Checklist When Uploading to Slideshare
Masters of SlideShare
How To Get More From SlideShare - Super-Simple Tips For Content Marketing
10 Ways to Win at SlideShare SEO & Presentation Optimization

Similar to Code Tax: Programming with the Taxonomy API in SharePoint 2010 by Patrick Tucker - SPTechCon (20)

PPTX
Managed metadata in SharePoint 2010
PPTX
Spstc2011 managed metadata real world
PPTX
Spstc2011 managed metadata real world
PDF
Taming Information Chaos in SharePoint 2010
PPTX
Managed metadata – SharePoint 2013
PPTX
Playing Tag: Managed Metadata and Taxonomies in SharePoint 2010
PPTX
PPTX
Share point summit_2010_lemieux-toc
PDF
SharePoint Saturday Vietnam 8th - managed metadata.pptx
PPTX
Chris McNulty - Managed Metadata and Taxonomies
PPTX
PPTX
SharePoint 2010 Managed Metadata Service Application
PPTX
Playing Tag: Managed Metadata and Taxonomies in SharePoint 2010
PPTX
iCE light - infoMENTUM Classification Engine
PPTX
SPSBOS15 - Must Love Term Sets: The New and Improved Managed Metadata Service...
PPTX
ECM And Enterprise Metadata in SharePoint 2010
PPTX
SharePoint 2010 Managed Metadata
PPTX
KMA Webinar: Managed Metadata Services in SharePoint 2010
PPTX
SharePoint Connections Coast to Coast Overview of Enterprise Content Management
Managed metadata in SharePoint 2010
Spstc2011 managed metadata real world
Spstc2011 managed metadata real world
Taming Information Chaos in SharePoint 2010
Managed metadata – SharePoint 2013
Playing Tag: Managed Metadata and Taxonomies in SharePoint 2010
Share point summit_2010_lemieux-toc
SharePoint Saturday Vietnam 8th - managed metadata.pptx
Chris McNulty - Managed Metadata and Taxonomies
SharePoint 2010 Managed Metadata Service Application
Playing Tag: Managed Metadata and Taxonomies in SharePoint 2010
iCE light - infoMENTUM Classification Engine
SPSBOS15 - Must Love Term Sets: The New and Improved Managed Metadata Service...
ECM And Enterprise Metadata in SharePoint 2010
SharePoint 2010 Managed Metadata
KMA Webinar: Managed Metadata Services in SharePoint 2010
SharePoint Connections Coast to Coast Overview of Enterprise Content Management
Ad

More from SPTechCon (20)

PPTX
Deep Dive into the Content Query Web Part by Christina Wheeler - SPTechCon
PDF
NOW I Get It... What SharePoint Is, and Why My Business Needs It by Mark Rack...
PPTX
“Managing Up” in Difficult Situations by Bill English - SPTechCon
PPTX
Part I: SharePoint 2013 Administration by Todd Klindt and Shane Young - SPTec...
PPTX
Part II: SharePoint 2013 Administration by Todd Klindt and Shane Young - SPTe...
PPTX
Microsoft Keynote by Richard Riley - SPTechCon
PPTX
Ten Best SharePoint Features You’ve Never Used by Christian Buckley - SPTechCon
PPTX
Looking Under the Hood: How Your Metadata Strategy Impacts Everything You Do ...
PPTX
Law & Order: Content Governance Strategies by Chrisitan Buckley - SPTechCon
PPTX
What IS SharePoint Development? by Mark Rackley - SPTechCon
PPTX
The SharePoint and jQuery Guide by Mark Rackley - SPTechCon
PPTX
Understanding and Implementing Governance for SharePoint 2010 by Bill English...
PPTX
Integrate External Data with the Business Connectivity Services by Tom Resing...
PDF
Converting an E-mail Culture into a SharePoint Culture by Robert Bogue - SPTe...
PPTX
Tutorial: Best Practices for Building a Records-Management Deployment in Shar...
PDF
Tutorial: Building Business Solutions: InfoPath & Workflows by Jennifer Mason...
PDF
Creating Simple Dashboards Using Out-of-the-Box Web Parts by Jennifer Mason- ...
PDF
Sponsored Session: Better Document Management Using SharePoint by Roland Simo...
PDF
Sponsored Session: The Missing Link: Content-Aware Integration to SharePoint ...
PPTX
Creating a Great User Experience in SharePoint by Marc Anderson - SPTechCon
Deep Dive into the Content Query Web Part by Christina Wheeler - SPTechCon
NOW I Get It... What SharePoint Is, and Why My Business Needs It by Mark Rack...
“Managing Up” in Difficult Situations by Bill English - SPTechCon
Part I: SharePoint 2013 Administration by Todd Klindt and Shane Young - SPTec...
Part II: SharePoint 2013 Administration by Todd Klindt and Shane Young - SPTe...
Microsoft Keynote by Richard Riley - SPTechCon
Ten Best SharePoint Features You’ve Never Used by Christian Buckley - SPTechCon
Looking Under the Hood: How Your Metadata Strategy Impacts Everything You Do ...
Law & Order: Content Governance Strategies by Chrisitan Buckley - SPTechCon
What IS SharePoint Development? by Mark Rackley - SPTechCon
The SharePoint and jQuery Guide by Mark Rackley - SPTechCon
Understanding and Implementing Governance for SharePoint 2010 by Bill English...
Integrate External Data with the Business Connectivity Services by Tom Resing...
Converting an E-mail Culture into a SharePoint Culture by Robert Bogue - SPTe...
Tutorial: Best Practices for Building a Records-Management Deployment in Shar...
Tutorial: Building Business Solutions: InfoPath & Workflows by Jennifer Mason...
Creating Simple Dashboards Using Out-of-the-Box Web Parts by Jennifer Mason- ...
Sponsored Session: Better Document Management Using SharePoint by Roland Simo...
Sponsored Session: The Missing Link: Content-Aware Integration to SharePoint ...
Creating a Great User Experience in SharePoint by Marc Anderson - SPTechCon
Ad

Code Tax: Programming with the Taxonomy API in SharePoint 2010 by Patrick Tucker - SPTechCon

  • 1. Code Tax: Programming With The Taxonomy API In SharePoint 2010 PATRICK TUCKER
  • 2. About Me • PATRICK TUCKER • STRATEGIC DATA SYSTEMS, MS GOLD PARTNER • PRINCIPAL CONSULTANT, SHAREPOINT • MCT, MCTS, MCPD, MCITP, MCSD, MCAD, MCDBA • PATRICK.TUCKER@SDS-CONSULTING.COM | TUCKERSNET@LIVE.COM • BLOG: WWW.TUCKERSNET.COM • TWITTER: @TUCKERSNET
  • 3. The Managed Metadata Experience HOW DO WE INTERACT WITH MANAGED METADATA IN SHAREPOINT?
  • 4. Managed Metadata and Taxonomy • MANAGED METADATA SERVICE APPLICATION • TAXONOMY TERM STORE • TERM SETS • MANAGED METADATA COLUMN TYPE
  • 5. Taxonomy Term Store • AVAILABLE THROUGH MANAGED METADATA SERVICE • COMPRISED OF SYSTEM OR ADMIN CREATED TERM SETS • TERM SETS MAY BE GLOBAL OR LOCAL, OPEN OR CLOSED • HIERARCHICAL • GROUPS CONTAIN TERM SETS • TERM SETS CONTAIN TERMS • TERMS MAY HAVE A DEFAULT LABEL AND OTHER LABELS (SYNONYMS)
  • 6. Where are term sets surfaced? • MANAGED METADATA COLUMNS • THE TAXONOMY PICKER CONTROL • THE DOCUMENT INFORMATION PANEL
  • 7. Behind the Scenes • TAXONOMIES ARE STORED IN A SINGLE DATABASE • EACH ROOT SITE IN A SITE COLLECTION CONTAINS A “TAXONOMYHIDDENLIST” • THE “TAXONOMY UPDATE SCHEDULER” TIMER JOB SYNCS HOURLY TO UPDATE THIS LIST • TAXONOMY FIELD VALUES ARE IMPLEMENTED AS LOOKUP COLUMNS • THE “MANAGED METADATA” FIELD IS ACTUALLY COMPRISED OF MULTIPLE COLUMNS • TAXKEYWORDTAXHTFIELD • TAXCATCHALL • TAXCATCHALLLABEL
  • 8. The Taxonomy API WORKING WITH THE MANAGED METADATA SERVICE PROGRAMMATICALLY
  • 9. Options • SERVER SIDE OBJECT MODEL (MICROSOFT.SHAREPOINT.TAXONOMY) • THE TAXONOMY CLIENT SERVICE • DECLARATIVE XML • POWERSHELL
  • 10. Object Model • NEED TO REFERENCE MICROSOFT.SHAREPOINT.TAXONOMY DLL • ENTRY POINT IS A NEW TAXONOMY SESSION, CONNECTS TO MMS INSTANCE • CLASSES IN TAXONOMY NAMESPACE MIRROR HIERARCHY SEEN IN TERM STORE MANAGEMENT TOOL • TAXONOMYSESSION CLASS • TERMSTORE CLASS (TAKES NAME OF MMS PROXY) • GROUP CLASS • TERMSET CLASS • TERM CLASS (MAY CONTAIN NESTED TERMS)
  • 11. Terms and Synonyms • EACH TERM MAY BE MARKED AS AVAILABLE FOR TAGGING • EACH TERM HAS A DEFAULT LABEL • SYNONYMS ARE ADDED UNDER THE “OTHER LABELS” SECTION • SYNONYMS ARE EXPOSED IN CODE THROUGH A LABELS COLLECTION ON EACH TERM. THE DEFAULT LABEL IS THE FIRST TERM IN THE COLLECTION.
  • 12. Creating New Items In The Term Store • GET A REFERENCE TO SESSION . . . TERM STORE • THE TERMSTORE CLASS CONTAINS A CREATEGROUP METHOD • THE GROUP CLASS CONTAINS A CREATETERMSET METHOD • THE TERMSET CLASS CONTAINS A CREATE TERM METHOD Tips to Remember . . . • ADDING ITEMS TO THE TERM STORE IS TRANSACTIONAL. WE MUST REMEMBER TO CALL “COMMITALL()”
  • 13. DEMO • TRAVERSE THE HIERARCHY OF GROUPS, TERM SETS AND TERMS • DISPLAY THE HIERARCHY IN A TREE VIEW CONTROL VIA A CUSTOM WEB PART • CREATE A NEW GROUP, TERM SET AND TERMS PROGRAMMATICALLY • RETRIEVE AND DISPLAY THE NEWLY CREATED TERMS
  • 14. The Taxonomy Client Service • THE TAXONOMYCLIENTSERVICE.SVC IS AVAILABLE, BUT LIMITED • OPERATIONS TO RETRIEVE TERM STORE ITEMS AND ADD TERMS ARE AVAILABLE
  • 15. Taxonomy Client Service • NAVIGATE TO HTTP://SITECOLLECTIONURL/_VTI_BIN/TAXONOMYCLIENTSERVICE.ASMX • DO YOU KNOW THE GUIDS OF YOUR TERM STORE AND TERM SET? • XML PARSING IS IN YOUR FUTURE
  • 16. The Taxonomy Field Type • CUSTOM LIST DEFINITIONS WILL NEED TO CREATE THE FIELD – DECLARATIVELY OR PROGRAMMATICALLY • THIS FIELD IS EXPOSED IN THE UI VIA THE TAXONOMY PICKER CONTROL (NOT AVAILABLE IN INFOPATH OR THE DATASHEET VIEW) • PAGE LAYOUTS MAY ALSO MAKE USE OF THIS FIELD TYPE TO TAG PAGES AS WELL AS ITEMS AND DOCUMENTS
  • 17. List Definition • DEFINING A NEW LIST IN A FEATURE OR SITE DEFINITION WILL ALSO DEFINE LIST FIELDS • (NOTES FIELD AND LOOKUP FIELDS) • DECLARATIVE APPROACH • PROGRAMMATIC APPROACH • WILL NEED SSPID AND TERM SET GUIDS IN XML • ALSO WORKS WITH PARTIAL DECLARATIVE CODE
  • 18. The Taxonomy Picker Control • ALLOWS THE USER TO SELECT TERM(S) TO TAG CONTENT • THE CONTROL SHOWS UP ON NEW AND EDIT FORMS • THE CONTROL MAY BE USED ON CUSTOM PAGE LAYOUTS
  • 19. DEMO • USE THE TAXONOMY WEB SERVICE TO DISPLAY TERM STORE ITEMS • CREATE A CUSTOM LIST DEFINITION THAT CONTAINS A MANAGED METADATA COLUMN • WORK WITH A CUSTOM PAGE LAYOUT TO VIEW THE CURRENT TERM AND SYNONYMS • RETRIEVE AND DISPLAY THE NEWLY CREATED TERMS
  • 20. The Undiscovered Country WHAT’S NEW WITH MANAGED METADATA IN SHAREPOINT 2013?
  • 21. So what’s changed in 2013? • MANAGED METADATA NAVIGATION • TERMS INTENDED USE MAY BE FOR NAVIGATION • TARGET PAGES ARE ATTACHED TO TERMS AND DRIVE THE NAVIGATION OF THE SITE • CSOM – CLIENT SIDE OBJECT MODEL SUPPORT • AVAILABLE TO .NET, SILVERLIGHT AND JAVASCRIPT • PROJECTS MAY REFERENCE THE MICROSOFT.SHAREPOINT.CLIENT.TAXONOMY ASSEMBLY • DATASHEET VIEW SUPPORT FOR THE MANAGED METADATA COLUMN TYPE • CUSTOM PROPERTIES MAY BE ADDED TO A TERM TO STORE ADDITIONAL DATA • MORE THAN JUST ADDITIONAL LABELS, THIS IS A DICTIONARY OF METADATA FOR YOUR METADATA
  • 22. Q and A • PATRICK.TUCKER@SDS-CONSULTING.COM | TUCKERSNET@LIVE.COM • BLOG: WWW.TUCKERSNET.COM • TWITTER: @TUCKERSNET