SlideShare una empresa de Scribd logo
1 de 25
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 in SharePoint



• A WAY TO DO CLASSIFICATION OF CONTENT    BASED ON ATTRIBUTES

• APPLIES TO DOCUMENTS, LIST ITEMS & PAGES AT THE COLUMN LEVEL
• ASSISTS SHAREPOINT IN BEING A DOCUMENT   MANAGEMENT   & COLLABORATION PLATFORM
• TAXONOMY AND FOLKSONOMY
Where Is Managed Metadata Surfaced?
• MANAGED METADATA COLUMNS   • THE TAXONOMY PICKER CONTROL




                             • THE DOCUMENT INFORMATION PANEL




                             • SEARCH
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)
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

   • TAXONOMYFIELD
   • TAXKEYWORDTAXHTFIELD
   • “TAXCATCHALL”
   • “TAXCATCHALLLABEL”
Managed Metadata Limitations

   • PRACTICAL LIMITATIONS:
       • NOT SUPPORTED IN INFOPATH FORMS
       • NOT SUPPORTED IN SHAREPOINT WORKSPACE
       • NOT SUPPORTED IN DATASHEET VIEWS
       • LIMITED SUPPORT IN SPD WORKFLOWS
   • PER TECHNET, THE RECOMMENDED STORAGE GUIDELINES ARE:
       • MAX 7 LEVELS OF NESTING IN A TERM STORE
       • MAX 1000 TERM SETS IN A TERM STORE
       • MAX 30,000 TERMS IN A TERM SET
       • MAX 1 MILLION TOTAL ITEMS IN A TERM STORE
The Taxonomy API



WORKING WITH THE MANAGED METADATA SERVICE PROGRAMMATICALLY
Options



• SERVER SIDE OBJECT MODEL (MICROSOFT.SHAREPOINT.TAXONOMY)
   • SORRY, NOT AVAILABLE TO SANDBOXED SOLUTIONS
• 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)
So The Hierarchy Is…




 MMS Instance   Term Store   Groups   Term Sets   Terms
Terms, Keywords and Synonyms
                               • TERMS ARE EITHER MANAGED TERMS OR
                                 ENTERPRISE KEYWORDS

                               • 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 Term Store Items In Code
• 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 (OR BOTH)

• THIS FIELD IS EXPOSED IN THE UI VIA THE TAXONOMY PICKER CONTROL
• PAGE LAYOUTS MAY ALSO MAKE USE OF THIS FIELD TYPE TO TAG PAGES AS WELL AS ITEMS
  AND DOCUMENTS
Implementing a Taxonomy Field in a Custom List
                                  Create            Link the
   Create site columns
                                content type     taxonomy field
   (taxonomy & note
                               and reference      up to a term
          field)
                                the columns            set

• 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
• VIEW A PAGE LAYOUT TO SEE THE ATTACHED TAXONOMY TERM
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

Más contenido relacionado

Similar a Programming with the SharePoint 2010 Taxonomy API - SPTechCon 2013

Taming Information Chaos in SharePoint 2010
Taming Information Chaos in SharePoint 2010Taming Information Chaos in SharePoint 2010
Taming Information Chaos in SharePoint 2010
Eric Shupps
 
conceptTermStoreManager – The Native SharePoint Utility to Manage Term Sets W...
conceptTermStoreManager – The Native SharePoint Utility to Manage Term Sets W...conceptTermStoreManager – The Native SharePoint Utility to Manage Term Sets W...
conceptTermStoreManager – The Native SharePoint Utility to Manage Term Sets W...
Concept Searching, Inc
 

Similar a Programming with the SharePoint 2010 Taxonomy API - SPTechCon 2013 (20)

Software design with Domain-driven design
Software design with Domain-driven design Software design with Domain-driven design
Software design with Domain-driven design
 
Xamarin.Forms or Write Once, Run Anywhere
Xamarin.Forms or Write Once, Run AnywhereXamarin.Forms or Write Once, Run Anywhere
Xamarin.Forms or Write Once, Run Anywhere
 
Java development with the dynamo framework
Java development with the dynamo frameworkJava development with the dynamo framework
Java development with the dynamo framework
 
Taming Information Chaos in SharePoint 2010
Taming Information Chaos in SharePoint 2010Taming Information Chaos in SharePoint 2010
Taming Information Chaos in SharePoint 2010
 
MDM: Integrating Oracle PIM & iStore
MDM: Integrating Oracle PIM & iStoreMDM: Integrating Oracle PIM & iStore
MDM: Integrating Oracle PIM & iStore
 
Tagging Best Practices for Cloud Governance
Tagging Best Practices for Cloud GovernanceTagging Best Practices for Cloud Governance
Tagging Best Practices for Cloud Governance
 
Data Harmony update 2020 final
Data Harmony update 2020 finalData Harmony update 2020 final
Data Harmony update 2020 final
 
Data Harmony Update 2020 final
Data Harmony Update 2020 finalData Harmony Update 2020 final
Data Harmony Update 2020 final
 
Ladies Be Architects - Study Group I: Territory Management
Ladies Be Architects - Study Group I: Territory ManagementLadies Be Architects - Study Group I: Territory Management
Ladies Be Architects - Study Group I: Territory Management
 
MongoDB at Agilysys: A Case Study
MongoDB at Agilysys: A Case StudyMongoDB at Agilysys: A Case Study
MongoDB at Agilysys: A Case Study
 
Journey of Implementing Solr at Target: Presented by Raja Ramachandran, Target
Journey of Implementing Solr at Target: Presented by Raja Ramachandran, TargetJourney of Implementing Solr at Target: Presented by Raja Ramachandran, Target
Journey of Implementing Solr at Target: Presented by Raja Ramachandran, Target
 
How to Apply Your Taxonomy to Your Content Automatically
How to Apply Your Taxonomy to Your Content AutomaticallyHow to Apply Your Taxonomy to Your Content Automatically
How to Apply Your Taxonomy to Your Content Automatically
 
Net online training
Net online trainingNet online training
Net online training
 
conceptTermStoreManager – The Native SharePoint Utility to Manage Term Sets W...
conceptTermStoreManager – The Native SharePoint Utility to Manage Term Sets W...conceptTermStoreManager – The Native SharePoint Utility to Manage Term Sets W...
conceptTermStoreManager – The Native SharePoint Utility to Manage Term Sets W...
 
CapitalCamp DC 2012: Taxonomy
CapitalCamp DC 2012: TaxonomyCapitalCamp DC 2012: Taxonomy
CapitalCamp DC 2012: Taxonomy
 
SharePoint for Records Management
SharePoint for Records ManagementSharePoint for Records Management
SharePoint for Records Management
 
Managed metadata in SharePoint 2010
Managed metadata in SharePoint 2010Managed metadata in SharePoint 2010
Managed metadata in SharePoint 2010
 
conceptTermStoreManager Demo On Demand
conceptTermStoreManager Demo On DemandconceptTermStoreManager Demo On Demand
conceptTermStoreManager Demo On Demand
 
NHSPUG June 2015 - Must Love Term Sets: The New and Improved Managed Metadat...
NHSPUG June 2015  - Must Love Term Sets: The New and Improved Managed Metadat...NHSPUG June 2015  - Must Love Term Sets: The New and Improved Managed Metadat...
NHSPUG June 2015 - Must Love Term Sets: The New and Improved Managed Metadat...
 
AWS Amazon S3 Mastery Bootcamp
AWS Amazon S3 Mastery BootcampAWS Amazon S3 Mastery Bootcamp
AWS Amazon S3 Mastery Bootcamp
 

Más de Patrick Tucker

Code PaLOUsa - Architecting a Content Management Solution with SharePoint 2013
Code PaLOUsa - Architecting a Content Management Solution with SharePoint 2013Code PaLOUsa - Architecting a Content Management Solution with SharePoint 2013
Code PaLOUsa - Architecting a Content Management Solution with SharePoint 2013
Patrick Tucker
 
SPS St Louis - SSRS 2012 SharePoint 2013 List Reporting
SPS St Louis -  SSRS 2012 SharePoint 2013 List ReportingSPS St Louis -  SSRS 2012 SharePoint 2013 List Reporting
SPS St Louis - SSRS 2012 SharePoint 2013 List Reporting
Patrick Tucker
 
SPS Virginia Beach - SSRS 2012 and SharePoint 2010 Reporting
SPS Virginia Beach - SSRS 2012 and SharePoint 2010 ReportingSPS Virginia Beach - SSRS 2012 and SharePoint 2010 Reporting
SPS Virginia Beach - SSRS 2012 and SharePoint 2010 Reporting
Patrick Tucker
 
SPS Cinci 2012 - Enterprise Content Management
SPS Cinci 2012  - Enterprise Content Management SPS Cinci 2012  - Enterprise Content Management
SPS Cinci 2012 - Enterprise Content Management
Patrick Tucker
 
How to Manage Managing Your Enterprise Content
How to Manage Managing Your Enterprise ContentHow to Manage Managing Your Enterprise Content
How to Manage Managing Your Enterprise Content
Patrick Tucker
 
SPS Dayton Content Types
SPS Dayton Content TypesSPS Dayton Content Types
SPS Dayton Content Types
Patrick Tucker
 

Más de Patrick Tucker (12)

SharePoint Fest Chicago Web Content Management in SharePoint 2013
SharePoint Fest Chicago   Web Content Management in SharePoint 2013SharePoint Fest Chicago   Web Content Management in SharePoint 2013
SharePoint Fest Chicago Web Content Management in SharePoint 2013
 
SharePoint Fest Chicago - Document Management with Content Types, Taxonomy an...
SharePoint Fest Chicago - Document Management with Content Types, Taxonomy an...SharePoint Fest Chicago - Document Management with Content Types, Taxonomy an...
SharePoint Fest Chicago - Document Management with Content Types, Taxonomy an...
 
Code PaLOUsa - Architecting a Content Management Solution with SharePoint 2013
Code PaLOUsa - Architecting a Content Management Solution with SharePoint 2013Code PaLOUsa - Architecting a Content Management Solution with SharePoint 2013
Code PaLOUsa - Architecting a Content Management Solution with SharePoint 2013
 
SharePoint Fest - Document Management with Content Types, Taxonomy and Search
SharePoint Fest - Document Management with Content Types, Taxonomy and SearchSharePoint Fest - Document Management with Content Types, Taxonomy and Search
SharePoint Fest - Document Management with Content Types, Taxonomy and Search
 
Reduce, Reuse and Recycle with Content Types - SPTechCon 2013
Reduce, Reuse and Recycle with Content Types - SPTechCon 2013Reduce, Reuse and Recycle with Content Types - SPTechCon 2013
Reduce, Reuse and Recycle with Content Types - SPTechCon 2013
 
SPS St Louis - SSRS 2012 SharePoint 2013 List Reporting
SPS St Louis -  SSRS 2012 SharePoint 2013 List ReportingSPS St Louis -  SSRS 2012 SharePoint 2013 List Reporting
SPS St Louis - SSRS 2012 SharePoint 2013 List Reporting
 
SPS Virginia Beach - SSRS 2012 and SharePoint 2010 Reporting
SPS Virginia Beach - SSRS 2012 and SharePoint 2010 ReportingSPS Virginia Beach - SSRS 2012 and SharePoint 2010 Reporting
SPS Virginia Beach - SSRS 2012 and SharePoint 2010 Reporting
 
SPS Cinci 2012 - Enterprise Content Management
SPS Cinci 2012  - Enterprise Content Management SPS Cinci 2012  - Enterprise Content Management
SPS Cinci 2012 - Enterprise Content Management
 
Code Free or Die
Code Free or DieCode Free or Die
Code Free or Die
 
How to Manage Managing Your Enterprise Content
How to Manage Managing Your Enterprise ContentHow to Manage Managing Your Enterprise Content
How to Manage Managing Your Enterprise Content
 
SPS Kansas City 2011
SPS Kansas City 2011SPS Kansas City 2011
SPS Kansas City 2011
 
SPS Dayton Content Types
SPS Dayton Content TypesSPS Dayton Content Types
SPS Dayton Content Types
 

Último

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

Último (20)

Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 

Programming with the SharePoint 2010 Taxonomy API - SPTechCon 2013

  • 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 in SharePoint • A WAY TO DO CLASSIFICATION OF CONTENT BASED ON ATTRIBUTES • APPLIES TO DOCUMENTS, LIST ITEMS & PAGES AT THE COLUMN LEVEL • ASSISTS SHAREPOINT IN BEING A DOCUMENT MANAGEMENT & COLLABORATION PLATFORM • TAXONOMY AND FOLKSONOMY
  • 5. Where Is Managed Metadata Surfaced? • MANAGED METADATA COLUMNS • THE TAXONOMY PICKER CONTROL • THE DOCUMENT INFORMATION PANEL • SEARCH
  • 6. Managed Metadata and Taxonomy • MANAGED METADATA SERVICE APPLICATION • TAXONOMY TERM STORE • TERM SETS • MANAGED METADATA COLUMN TYPE
  • 7. 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)
  • 8. 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 • TAXONOMYFIELD • TAXKEYWORDTAXHTFIELD • “TAXCATCHALL” • “TAXCATCHALLLABEL”
  • 9. Managed Metadata Limitations • PRACTICAL LIMITATIONS: • NOT SUPPORTED IN INFOPATH FORMS • NOT SUPPORTED IN SHAREPOINT WORKSPACE • NOT SUPPORTED IN DATASHEET VIEWS • LIMITED SUPPORT IN SPD WORKFLOWS • PER TECHNET, THE RECOMMENDED STORAGE GUIDELINES ARE: • MAX 7 LEVELS OF NESTING IN A TERM STORE • MAX 1000 TERM SETS IN A TERM STORE • MAX 30,000 TERMS IN A TERM SET • MAX 1 MILLION TOTAL ITEMS IN A TERM STORE
  • 10. The Taxonomy API WORKING WITH THE MANAGED METADATA SERVICE PROGRAMMATICALLY
  • 11. Options • SERVER SIDE OBJECT MODEL (MICROSOFT.SHAREPOINT.TAXONOMY) • SORRY, NOT AVAILABLE TO SANDBOXED SOLUTIONS • THE TAXONOMY CLIENT SERVICE • DECLARATIVE XML • POWERSHELL
  • 12. 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)
  • 13. So The Hierarchy Is… MMS Instance Term Store Groups Term Sets Terms
  • 14. Terms, Keywords and Synonyms • TERMS ARE EITHER MANAGED TERMS OR ENTERPRISE KEYWORDS • 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.
  • 15. Creating New Term Store Items In Code • 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()”
  • 16. 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
  • 17. The Taxonomy Client Service • THE TAXONOMYCLIENTSERVICE.SVC IS AVAILABLE, BUT LIMITED • OPERATIONS TO RETRIEVE TERM STORE ITEMS AND ADD TERMS ARE AVAILABLE
  • 18. 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
  • 19. The Taxonomy Field Type • CUSTOM LIST DEFINITIONS WILL NEED TO CREATE THE FIELD – DECLARATIVELY OR PROGRAMMATICALLY (OR BOTH) • THIS FIELD IS EXPOSED IN THE UI VIA THE TAXONOMY PICKER CONTROL • PAGE LAYOUTS MAY ALSO MAKE USE OF THIS FIELD TYPE TO TAG PAGES AS WELL AS ITEMS AND DOCUMENTS
  • 20. Implementing a Taxonomy Field in a Custom List Create Link the Create site columns content type taxonomy field (taxonomy & note and reference up to a term field) the columns set • DECLARATIVE APPROACH • PROGRAMMATIC APPROACH • WILL NEED SSPID AND TERM SET GUIDS IN XML • ALSO WORKS WITH PARTIAL DECLARATIVE CODE
  • 21. 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
  • 22. DEMO • USE THE TAXONOMY WEB SERVICE TO DISPLAY TERM STORE ITEMS • CREATE A CUSTOM LIST DEFINITION THAT CONTAINS A MANAGED METADATA COLUMN • VIEW A PAGE LAYOUT TO SEE THE ATTACHED TAXONOMY TERM
  • 23. The Undiscovered Country WHAT’S NEW WITH MANAGED METADATA IN SHAREPOINT 2013?
  • 24. 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
  • 25. Q and A • PATRICK.TUCKER@SDS-CONSULTING.COM | TUCKERSNET@LIVE.COM • BLOG: WWW.TUCKERSNET.COM • TWITTER: @TUCKERSNET