In our work, we manipulate the descriptions of data as path-like patterns. We capture the notion of alternative path-like patterns and complex patterns to provide a framework to query raw data from many catalogs together with their patterns. Under this perspective, we have already suggested models to represent hierarchical catalogs, emphasizing on the role of paths as knowledge artifacts in such
Abstract. Hierarchical structures are a way to organize and enrich semantically the available information on the Web. Popular examples of such structures are the product catalogs of e-market stores, which provide data (i.e. products) organized in thematic
structures, and defined the PatManQL language to manipulate path-like patterns together with raw data [2].
This paper extents the work in [2] and presents PatMan, a fully-functionable prototype system that implements the aforementioned framework. The system provides modules to import structures from hierarchical catalogs coming in various forms (e.g. RDFs representation), and stores them in a relational database system. It also helps the user posing queries using a visual interface that offers pictorial query-by-example capabilities. Finally, it can visualize the query results, showing navigational paths for hierarchical catalogs as well as the raw data organized in these catalogs.
The rest of the paper is organized as follows. Section 2 discusses representation issues for hierarchical catalogs. Section 3 presents an overview of the PatManQL language. Section 4 gives an overall description of PatMan system. Section 5 describes some application scenarios using PatMan. Finally, Section 6 concludes this paper and presents some issues for further work.
2. Representing Hierarchical Catalogs
We consider data in hierarchical catalogs to be records in relations, organized in the leaves of the hierarchy. These relations are called resource items. Every resource item is characterized by a number of attributes. For example, SLR cameras is a resource item with attributes brand, model and price, reached through the path /cameras&lenses/35mmSLR in Figure 2. Three products (cameras) are records of this resource item. The hierarchy together with the resource items form the catalog schema. Definition 1. A catalog schema (CS) is a tree CS={r, N, R} with a root r, a set N of nodes as non-leaf nodes and a set R of resource items as leaf-nodes.
Figure 2 presents the catalog schema of Adorama's catalog for photo equipment.
We can combine several catalog schemas with common resource items, creating tree-structured relations (TSRs). Common resource items are items with a similar semantic interpretation in the knowledge domain that catalogs refer to. Intuitively, a TSR represents the different ways of accessing a resource item in a set of catalog schemas and can be modelled using an AND/OR-like graph. This graph can be seen as a set of patterns, where each pattern is one of the different ways to access a resource item. Definition 2. Let S = {{r, N1, R1}, {r, N2, R2}, …, {r, Nk, Rk}} be a set of k catalog schemas in a knowledge domain and ri a resource item in one or more Ri, 1 i k. A TSR is a graph G having a root r, a node representing the resource item ri and all paths from r to ri. Paths are grouped in OR components. Every OR component can be either an individual path or an AND group of paths.
Figure 3(a) presents an example of a TSR with two OR components, one of which is an AND group denoted by the curved line crossing the involved paths /photo/35mmSLR/bodies and /photo/lenses.
Abstract. Hierarchical structures are a way to organize and enrich semantically the available information on the Web. Popular examples of such structures are the product catalogs of e-market stores, which provide data (i.e. products) organized in thematic
Figure 2: A catalog schema for Adorama’s catalog.
Intuitively, an OR component captures a way to access a resource item. For example, /photo/35mm systems is one of the two alternative patterns for the resource item SLR cameras. An AND group corresponds to complex resource items that can be constructed using items from one or many catalog schemas. To access such items, one should exploit all paths of the group. For example, the AND group in Figure 3(a) corresponds to SLR systems built from camera bodies and lenses, two resource items that are in different catalog schemas. The construction of AND groups is closely related to the cartesian product operator that we present in the next section.
Note that in this work we do not consider schema matching issues. We assume that a schema matching pre-processing resolves name mismatches and other inconsistencies [11].
3. The PatManQL Language
In this section, we briefly discuss the PatManQL language (a detailed description of the language is presented in [2]). The PatManQL language manipulates paths together with raw data in hierarchical catalogs. It is based on a set of operators (select, project, cartesian product, union, intersection and difference) to manipulate TSRs from catalog schemas.