Feature: Semantic Relationships

A semantic reference tells Gazette Builder that one Entry mentions another. A semantic relationship adds meaning to that connection.

Instead of only saying that the Dorchester Hotel references Syrtis Major, Gazette Builder can understand that the hotel is Located In Syrtis Major. A Character can be a Member of an Organization. A vessel can be Operated By a company. A custom Alien Entry Type might have a Homeworld relationship to a Planet Entry.

Relationships use a controlled vocabulary so the same connection is expressed consistently throughout the Gazette.

For example:

Located In: Syrtis Major
Member of: Royal Geographical Society

Each Relationship Definition tells Gazette Builder:

  • the canonical relationship name;
  • which Entry Types may use it as a source;
  • which Entry Types may be valid targets;
  • how the relationship is described in the opposite direction;
  • whether multiple targets are allowed;
  • whether the relationship is symmetric;
  • whether it should appear in the source Entry’s References block;
  • whether it should generate related-content sections on the target Entry.

That last capability is especially useful because Gazette Builder can use the same relationship in both directions.

If the Dorchester Hotel contains:

Located In: Syrtis Major

the Dorchester Hotel can display:

Located In: Syrtis Major

At the same time, Gazette Builder can examine all published Entries that point to Syrtis Major through the Located In relationship and automatically build a section on the Syrtis Major page such as:

Locations

  • Dorchester Hotel
  • Government House
  • Residency Park
  • Office of Streets and Bridges

Those related-entry sections are generated from the relationships stored on the source Entries. They do not have to be manually maintained on the target page.

The Relationship Definition controls the inverse label and whether that reverse presentation is enabled, so different relationships can produce appropriate sections such as Members, Locations, Vessels, Children, or whatever makes sense for the worldbuild.

The relationship is entered once, but Gazette Builder can use it to document the connection on the source Entry and organize related content on the target Entry.

Relationship Types are dynamic. Gazette Builder can provide a useful starting vocabulary, but worldbuilders can define new relationships and apply them to both predefined and custom Entry Types without changing plugin code.

Semantic relationships go further and answer “how are these Entries connected?”