The Product Compatibility Rule Editor (PCRE) is the ideal tool for your Product Relationship Management. It digitizes the knowledge around compatibilities between components and products.

Rules for the compatibility of product classes


The Product Compatibility Rule Editor is used to create abstract rules that can be used to determine compatible products, for example in web shops or in sales. The editor is also very useful for creating rules for product configurators.

As eCommerce customers, we all know the situation where we have found a product in an online shop and are looking for a suitable accessory. During this process, customers or procurement department people look actively for products and must recognize the relationship between the products themselves. That means, you look for all the parts yourself and have no specifications. This process is called pick-to-order (PTO) in technical terms. 

In doing so, no products are mutually exclusive and the whole process could end up with parts missing or ordered twice. To provide a remedy for this, many shop operators offer “suggestion lists” with more or less suitable additional articles for a product currently viewed by a shop visitor.

Display of suggestion lists – configure to order

The second approach, called configure-to-order (CTO), specifies relations between individual products. This will show the buyer all possible components that might be of interest to them for a certain project. Very important here: they cannot buy products twice or forget parts.

Example for the display of compatible products; here: construction fittings

Many products sell better when they are put into a relation to each other. Put simply: Look here, product A is compatible with product B is compatible with component C. For example: My smartphone with matching spare battery with matching case with matching bike holder. Ideally, these suggestions are very precise and fit perfectly.

How are suggestion lists created?

There are two common and one completely new method for generating the required data:

Method 1: “Excessive Data Maintenance”

For each product, a list of potentially suitable parts is maintained by the shop operator and then presented to the customer. This approach naturally requires high effort, i.e., a lot of human labor.

Method 2: “Artificial Intelligence (AI)”

The system records which products customers have purchased together in the past and then filters the matching parts based on that. So, you more or less let the customer maintain the accessory lists (“Is often bought together with …” or “Customers who bought this also bought …”). This approach is technically implemented using AI. However, it unfortunately relies on as much user input as possible and thus – especially in the beginning – is blurry to the maximum. In addition, customers lack expertise in technical products, so the AI will often generate incorrect information.

NEW METHOD: “Compatibility Rules”

With this method, products are divided up into defined product classes. Properties and values are maintained for each of the defined classes. A product is then assigned to a class and values are selected or entered. The connections between products are “abstract” because you define which products will fit together based on classes and attributes (product compatibility rules, PC Rules) – not the direct connections between products. This allows to handle huge quantities of products with just a few inputs, check them for compatibility and display matching parts.

Example: Finding suitable attachments for a bike frame with logic

In which areas is this method used?

In principle, PC Rules can be used wherever products need to be linked to each other. However, there are areas where immediate and noticeable savings potential in product management and sales can be realized through this type of software. These are in particular:

  • Sanitary / Bathroom / Kitchen
  • Furniture
  • Bike parts
  • Car parts
  • Mechanical engineering
  • Electronics … and many more.

How do Product Compatibility Rules work exactly?

Product Compatibility Rules can be used to find products that match each other. A compatibility rule defines which properties of a product match properties of another product. The “product” we are talking about includes articles, components, optional parts, spare parts or accessory articles.

These rules can be very simple, but can also take on any level of complexity. Example:

WENN Herstellername von Produkttyp A  = 'Hersteller X' DANN Herstellername von Produkttyp B = 'Hersteller X'

In this case, products are compatible if they come from the same manufacturer. But rules can be as extensive as you like them to be. We can extend our example as follows:

WENN Herstellername von Produkttyp X = 'Hersteller X' UND Herstellername von Produkttyp Y = 'Hersteller X' UND Durchmesser von Produkttyp X = 10.00 mm UND Durchmesser von Produkttyp Y = 9.95 mm UND ...

Here, the criterion “diameter” is used in addition to the manufacturer. In rules, values can also be calculated via formulas and then compared. Parts of a rule are called constraints and can be linked by AND or OR.

In principle, such rules can be arbitrarily powerful.

In summary: Product objects are precisely defined by properties. Properties, in turn, can be used to determine whether objects are compatible with each other. In order to determine the dependencies of the properties on each other as precisely as possible, rules can be defined.

Example of display of compatible products; here from the area of sanitary installation

Where are such Product Compatibility Rules used?

The rules created in this way can be used in various scenarios. A sensible requirement would be to store the rules in a web shop system so that other parts can be found there that match the products selected by a customer.

This searching and finding of suitable parts can also be a part of a product configurator, in which not only variants of a product (variant configuration) but entire systems have to be configured using individual parts.

Another case would be that companies use these rules for their sales departments to check offers consisting of numerous products/parts for validity. This ensures that the no wrong components are delivered by mistake for larger projects.

Special case: Quantity of products of type A + quantity of products of type B

The scenario is different when subsets of products have to be matched with each other – i.e. show me a set of products and then the compatible further products in each case. In this scenario, obtaining a result set in an acceptable computing time places considerably higher demands on the systems used and requires intelligent data management in the background. Sepia Alterra has a special temporary product cache for this purpose, which is precisely tailored to search queries of this type.

Example: 2 lists of products from 2 classes which are all compatible respectively.

This type of information output can be relevant in product management for quality assurance. In this way, a product manager can check whether his set of rules is complete, coherent, and therefore working error-free.

Performance: How fast can products be found?

In almost all cases where Product Compatibility Rules are used, the issue of performance is key. Most consumers want to have the results of a rule-based search output after a very short wait. If a product has already been selected and then a compatibility search is started from here, it is still quite easy to calculate the result after a short time.

The matter becomes more difficult when the compatible parts have to be issued for a number of products of a class - see above: “Special case: Quantity of products of type A + quantity of products of type B”. In this case, the computing effort increases and particularly intelligent software functions are required to generate results in an acceptable time. Alterra also masters this rarer case of compatibility search.

Compatibility rules for articles, components, optional parts or accessory articles

The term“product” includes articles, components, optional parts or accessory articles. These objects are precisely defined by properties. Properties, in turn, can be used to determine whether objects match each other. In order to determine the dependencies of the properties on each other as precisely as possible, rules can be defined.

Rules can be formally written to allow programs to identify matching components or articles. To ensure that these rules are logical and in a given form usable for these purposes, product managers can now use Sepia’s new Product Compatibility Rule Editor.

Which data sources are suitable for the PCRE?

The Rule Editor has its own product memory (cache – see also above), in which product data and classification data are stored so that the editor can access them.

PCRE with PIM system: BMEcat catalog as a data source

Electronic catalogs in which products are classified – such as BMEcat – are suitable for filling this cache. Data sources for the PCRE: electronic catalogs such as BMEcat etc.

Alternative variant: the PCRE with WebServices for classes and product data as data source

If the products in your ERP system are organized via central attribute groups, you can also dock this system seamlessly with the PCRE. Please note that to evaluate master data via the rules
The PCRE can be connected via WebService to PIM or ERP system (SAP ERP, Microsoft Dynamics 365 ERP).

The PCRE masters semantics and grammar

In order for a rule to be used by a target system (shop system, product configurator…), it must be correct not only semantically and in terms of content, but also syntactically, i.e. formally or grammatically. Theoretically, you can create your rules manually using a text editor. Checking whether a rule is correct in terms of content and form would then be done by “trial and error”.

The far better solution is to use an editor that both provides the right content and ensures that your rules are formally written correctly. And this is exactly what the PCRE does.

Content directly from the classification

In terms of content, Sepia’s PCRE works with classification data from, for example, a PIM system or an electronic catalog such as BMEcat. This means that the correct basic data such as classes, attributes and values are used interactively.

Grammar: Rules represented by Abstract Syntax Tree

Sepia’s PCRE enables us to capture complex compatibility conditions syntactically and semantically correctly with graphical support. For this purpose, it contains a “grammar” for the necessary set of language elements. The formal correctness of the conditions captured in this way is ensured via an Abstract Syntax Tree (AST). An AST is a tree representation of an abstract syntactic structure of text or source code written in a formal language. The constants and variables used in the AST are derived from the contents of the classification.

Testing the rules on real product data

Just grammatical correctness and the correct use of possible attributes and values is of course not enough to check our rules completely. The PCRE can validate rules automatically, but the correctness of the results should be done by applying the rules to real data sets (products). The PCRE can be connected to real product data to check the correctness of the rules while working with result lists.

Thinning of result sets via blacklisting

To define possible result sets absolutely precisely, you can first create a rule, then check the result and finally remove certain products from this result set, so that these will definitely not be included in the future when the rule is called. Using this method is useful when global rules for identifying products return too many results.

For which companies is the PCRE suitable?

In general, the Product Compatiblility Rule Editor is recommended for manufacturers or distributors with a portfolio of products that tend to be compatible with each other. For many of these companies, these products could only be sold in combination using the expertise of a salesperson or planner. Against the backdrop of a shortage of skilled personnel to handle large numbers of inquiries, the aim is not only to leverage considerable potential for more sales, but also simply to maintain the current level of sales.

Compatible accessories in welding technology

This can only be achieved with fewer staff if the knowledge of compatibilities is digitized. For the existing products, the expert product manager can name rules that sufficiently describe their compatibility with each other. By defining compatibility rules, it is possible to enable even less expert salespersons or the prospective customer to combine products in a suitable way. The know-how of an employee can thus be multiplied at will.

However, even when the expertise and personnel are available, errors occur when manually assembling products, especially on larger projects, so that incorrect parts arrive at the final assembly or construction site. The quality of the combined data is better controlled by the quality of a set of rules than by the (un)reliability of individual employees.

Implementation of Product Compatibility Rules in practice

We can best explain how the PCRE works in practice with an example. Example: Planning of a bathroom

With bathroom planners, customers combine, arrange and organize their bathroom using various bathroom design options and also visually immerse themselves in their “dream bathroom”. This individual bathroom planning can then be turned into reality by a sanitary specialist.

In connection with the elements used in the design drawn up with a planning tool, there are some potential difficulties, especially with regard to the assembly of the installation components; i.e. the supply of the appropriate components, especially in the case of pipes for water supply and drainage, rinsing boxes, etc. How to ensure that the complete set of matching parts is available for installation? How do you determine replacement components needed in the event of supply bottlenecks?

The solution to this is for the supplier to classify as far as possible the complete product master and thus provide it with the required dimensions and other information necessary for determining compatibilities. Once this data is available, we use the PCRE to create the rules for determining the appropriate components. Subsequently, in the event of a supply shortage, the installer can then find and have delivered exactly the right alternative part, either from the same manufacturer or from an alternative supplier.

Special challenges and difficulties

How must your product master be maintained and which data fields must be present so that you can control and output compatibilities? In general, you should define base classes with attribute sets and values for your products. You can draw on this central structure as the basis for your set of rules. Products must be equipped with these attribute sets and values. There can also be several (internal, external) classifications. The Rule Editor must be able to access the base classes underlying the product data. If there is no such classification in the source data, the product data can be prepared automatically via product administration scripts – i.e. classes with attribute sets are automatically created from existing data especially for the PCRE.

Product configuration taken to the extreme: the “Compatibilty Chain” of configurable variants

If compatibility rules are in place, both simple and even complex configurators can be launched based on them. Compatibility rules can also play a role in the context of variant configuration. Possible processes then look like this:

  • Configure variant

    • => find suitable compatible product
  • Configure variant

    • => determine suitable partially configured master product
    • => configure a variant from this
    • => determine suitable partially configured master product
    • => configure a variant from this
    • => and so on…

A configurator then consists of several variant configurations that are linked to each other via a so-called “compatibility chain”.

Or a product variant can be created using the variant configurator and matching parts determined, which in turn result in variant-configured parts or simple parts. It is obvious that this chain can, in principle, be spun on endlessly and thus any number of complex overall configurations up to entire large-scale projects can be mapped.

Conclusion and outlook

Sepia is the only provider to offer the complete process chain from product data collection, classification, rule definition to evaluation and display of configurations on their “Alterra Sales Portal” sales platform. Sepia maintains project teams to integrate and customize the platform and train your staff. And all this with very short project durations and a 100% success guarantee. Many renowned experts assume that the market for software solutions for these problems will take on ever greater proportions due to the shortage of skilled workers. As one of the first providers of special solutions for Product Compatibility Management, Sepia is thus brilliantly positioned and expects another significant boost in sales in this software segment in 2023.