An Introduction to PoolParty
PoolParty, a globally renowned Semantic Middleware, uses linked data technologies and knowledge graphs as a basis of its AI strategy. It primarily applies the SKOS standard, as well as other RDF schemas, thus making it compliant with the semantic web.
By adding a connector to your semantic layer within your chosen platform, you are simplifying processes, freeing up time, and developing the flexibility needed to maintain sites, without overcomplicating your governance model.
Late last year, we performed a demo integration between Tridion Docs and PoolParty, and wanted to share that walkthrough with you to illustrate just how helpful this tool is for non-technical teams.
We referred to the Custom Metadata Binder on SDL’s documentation site.
Side note: If you’re unfamiliar with PoolParty’s interface or need an understanding of Semantic Technologies, I highly recommend going to PoolParty’s YouTube channel and taking advantage of their tutorials.
Creating (or importing) a Taxonomy in PoolParty
For the purposes of our demo, we created a trial account where we built a taxonomy of beverages.
We organized it so that all Top Concepts have multiple Narrow Concepts and a few of those Narrow Concepts were assigned Narrower Concepts, thus creating nested Concepts to better facilitate our needs for a use case.
If you have an existing Taxonomy that can be exported into RDF format, you will be able to import that taxonomy into PoolParty for your use case
Our Example Taxonomy:
Steps:
Acquire the API call
Obtain the API call (Request URL) and generate a JSON representation of the whole Data Tree (JSONConceptTree).
In order for us to understand the format of the API and find the Web Service Methods that are relevant to our objective, we referred to the PoolParty Thesaurus API Reference Documentation.
A Glossary of all available web service methods for the PoolParty Thesaurus API, listed and documented (FYI: An active account is required to access the Documentation).
From there we concluded the format of the API call:
http://<server>/PoolParty/api/thesaurus/<project-id>/<web-service-method>?root=<uri-of-root-node>
Where,
- <server> represents the base URL. In our case this was enterprise.poolparty.biz.
- <project-id> can be found when clicking on your project and observing the code under the title.
- <web-service-method>?<parameters>
Using the Reference Documentation we acquired the <web-service-method> ‘subtree’, which returns all concepts under the ‘root’. The root is a String passed as a <parameter> to the method.
The root can be the id/uri of either the Concept Scheme (acquire the entire Data Tree) or a Top Concept (specifically get Narrower Concepts under a specific Concept).
We used the Concept Scheme for our objective, and its id/uri can be found by clicking on the Concept Scheme of the project and observing the URI present under the title:
The final request URL we concluded was:
https://enterprise.poolparty.biz/PoolParty/api/thesaurus/1E264942-63DF-0001-BF38-1D203ABA3780/subtree?root=https://enterprise.poolparty.biz/Test/0
Deserialize
Write code to deserialize the Data Tree into a list of entries. The subtree is returned in JSON format, as shown below.
Next, we created models to deserialize the JSON and use the JSONProperties into usable objects. We created type classes for a Concept, referring to a concept’s URI and label; a Concept Node, which contains the concept and its narrowers (which are a list of Concept Nodes); and a class for the Scheme that refers to its URI and label.
Associate entries
Use the Custom Metadata Binder code and associate each entry in the Data Tree to a metatag on Tridion Docs.
Side note: For information on creating and deploying a custom metadata binder, see this great post from fellow Content Bloomer, Manish Mehmood.
Though we’ve strictly focused on taxonomy management for our demo, PoolParty includes and provides multiple other features and services such as Powertagging (to enhance CMS search features), Semi auto-generated metadata/tag suggestions (augmented by Knowledge Graphs), and other Data/Knowledge mining capabilities.
It’s an incredible content management tool. Book your free consultation today and take the first step towards smarter, streamlined content operations!