Blueprints

Looking at Gedcom information in a structured hierarchical manner like Edit View or Table View is one thing. Rendering the information about an entity in a static 2d way is another. Both Tree View and Entity View do just that. They render individuals and entities in a constrained rectangular space on your screen or paper.

The underlying technology used for this by GenJ is HTML. The instructions of how to render an entity is called a Blueprint. It consists of standard HTML with the addition of a new HTML element "prop".

Here's an example:

      <b><prop path=INDI></b>
      <prop path=INDI:NAME>
      born <prop path=INDI:BIRT:DATE>
      in <prop path=INDI:BIRT:PLAC>,
      lived in <prop path=INDI:RESI:ADDR:CITY>
      and worked as a <prop path=INDI:OCCU>. 
which looks like this once rendered:
I008 Meier, Nils born 25 May 1970 in Rendsburg, lived in San Francisco and worked as a Software Engineer.

As you can see the "path" argument to "prop" contains a Tag Path identifying what to render into the text-flow. Here the following values of properties are resolved;

path=...resultindividual's ...
INDI I008 ID
INDI:NAME Meier, Nilsname
INDI:BIRT:DATE 25 May 1970birth date
INDI:BIRT:PLACE Rendsburg birth place
INDI:RESI:ADDR:CITY San Franciscocity of residence
INDI:OCCU Software Engineeroccupation
By using different blueprints the same data can be rendered in various ways, because different sets of information, layouts and colors can be choosen:

Views utilizing blueprints will offer to select and edit them through their settings. Predefined blueprints cannot be changed but user-defined blueprints can be changed once created (blueprints are managed globally and not per view).

Note: This is a very advanced feature that won't be necessary to be understood by all users. The default blueprints should be sufficient for 80% of the users.