A property value can refer not just to another type of repository item, but also to a repository item in another repository. When you define a property that refers to an item in a different repository, use the repository attribute as part of the property tag. For example, if you had a workAddress item type in an LDAP repository, you might refer to it in an SQL repository like this:

<table name="employees" id-column-names="id">
  <property name="work_address"

The repository attribute can be used with the attribute item-type or the component-item-type to indicate that this item is in a different repository, not the current repository. The value of the linked property in the database is the repository ID of the item in the other repository.

The repository attribute specifies a Nucleus component name relative to the location of the current repository. This enables you to create a composite repository that combines the item descriptors from more than one repository. Note, however, that a single repository query cannot span repositories with different data sources.

When you use composite repositories, make sure that your affiliated repositories do not use the same item descriptor names. In this way, your application can go to the composite repository, get an item descriptor named products, and not have to know that it is dealing with a separate repository.