Correctly formatting host names in URIs for resources

If you install and configure Lifecycle Query Engine (LQE) to work in an IBM Engineering Lifecycle Management environment, and host names in the Uniform Resource Identifiers (URIs) contain mixed case characters, you will encounter problems when indexing application data.

Problem

Lifecycle tools make data available for indexing by using tracked resource sets (TRS); members of the TRS are retrievable resources with Resource Definition Framework (RDF) representations, called index resources. LQE stores these index resources in a Jena TDB. While mixed case host names are supported in HTTP, and RDF supports mixed case in host names, Apache Jena does not.

When RDF data is specified using a mixed case host name, during indexing, Jena parses the RDF data and sees a subject, predicate or object that can be a host name. Because the host name specs say that case is ignored, the host names should work. However, within Jena, the host names are not treated equally. Jena RDF does not normalize them, so they are considered different. When there is a mismatch, an error is generated, and the data from the application is not available for indexing.

You might also encounter an issue where, when you install LQE and then register it with JTS, it shows as being unregistered in the list of applications. This might be due to upper case characters in the host name.

Solution

To avoid running into issues, ensure that all host names in your Engineering Lifecycle Management environment use only lower case characters. The other parts of the URI can contain mixed case characters.