Additional Relational Metadata for artifacts in MOSS
Organizations which select Microsoft Office SharePoint Server 2007 (MOSS 2007) for managing artifacts (like documents, records) often leverage the out of the box (OOTB) features available in MOSS like libraries, OOTB Workflows, version management, workspaces, etc for the same. When it comes to the metadata, often there might be requirement to attach additional relational metadata in addition to the flat/standard metadata offered by MOSS. E.g. Documents/Records may have to be associated with different hierarchies like ABC.doc may need to be part of India zone and US zone drilling down through the structure, so that the document is retrieved when queried on data across both the zones.
We (myself and one of my collegue Prasana Srinivasan) did a small exercise and would like share the custom approach we took to add additional hierarchical metadata which involved a custom database and ASPX Page. We will have this as a 2 part series.
In the solution we would take a sample document for attaching the hierarchical metadata. Also we have defined a custom DB schema as shown below.
The database can handle one additional metadata. However this can be extended to take care of any number of additional metadata.
Quick one liner description of the tables
Hierarchy Master – Table contains master values of the hierarchical metadata like location, Division, subdivision.
Hierarchy Header – Table contains details about the hierarchy header values like legal entity, location. This table values are populated in the combo box for selection.
Hierarchy Mapping – Table provides the mapping details of Header with the hierarchy Master. In this table the master values are grouped into a specific header.
Document Master – Table specifies the header values of the Documents.
Document Details – Table Contains the extended properties of the document with respect to the mapping Id from hierarchy Mapping (metadata values updated by the user against the hierarchy master value).
Note: This is just representative schema for the demonstration purpose and users can have a schema as per their requirement
Rest we will see in the next part of the series.