IPSV Module for Joomla

On behalf of another UK software company, I implemented a module in a Joomla website for coding content according to the IPSV standard. Take a deep breath.

What is IPSV?

The IPSV (Integrated Public Sector Vocabulary) is a controlled vocabulary of approximately 7,000 terms, categorised in a hierarchy sometimes up to 7 or 8 levels deep. The IPSV serves as an encoding scheme for use with the Subject element of the e-GMS (e-Government Metadata Standard). By agreeing a consistent set of descriptive terms, search agents are more likely to find successful matches: for example, "Heritage" is a term to be used instead of near-synonyms such as "Conservation" or " Historic environment".

YUI Tools for the Administrator

When editing an article, the administrator was shown a tree of the 20ish top-level of IPSV terms, ie the most general ones. By clicking a plus sign he/she could open a term to show the next lower level, and work down the tree. When a term is highlighted, Javascript populates an explanation box to show a description and any other related information.

At any level, a term can be selected and attached to that article. The same tagging can be made to whole categories of articles, to avoid needless duplication at the level of articles themselves.

After this preparation, whenever that article is displayed (or, more importantly, found by search engines) the appropriate set of IPSV labels is set into the META statement of the HTML, using "Dublin Core" conventions, viz:

<meta name="eGMS.subject.category" scheme="IPSV" content="Heritage">.

This work used PHP in a Joomla site with the Yahoo User Interface (YUI) tree control, which is an excellent free offering of JavaScript to provide an all-purpose solution to a common and difficult problem. And even then, it wasn''t easy!