HMNL Home
| Publishing Virtual Templates
Virtual Template Structure
A Virtual Template consists of a Manifest, this is an XML file that describes the complete payload needed for a Virtual Template.
The Manifest then consists of a number of Design Sets, each Design Set defines a number of individual Design Elements. The grouping of Design Elements into Sets allows for easy re-use of groups of Design Elements that are needed to provide particular functionality. Each Design Element describes a Design Item e.g. Form, view etc and provides the URL to retrieve the DXL for that design item.
The Manifest and each design item are published via HTTP as pages within a database.
Manifest File
The XML content of a (Virtual Template) Manifest is fairly self explanatory, attributes or nodes that require special attantioan are noted below.
XML comments may appaer anywhere in the Manifest.
Note: The XML format is quite rigorous as the Design Manager uses a dedicated portable micro-parser to interpret the manifest. In particular the URL value of the designelement node MUST be specified on a separate line from the start and end tags.
Note: The name= attribute for the designelement node MUST specify the exact name of the design element as it appears in the database design.
Note: The type= attribute for the current release of the design manager supports the following design item types.
"Page"
"View"
"Form"
"SubForm"
"Frameset"
"Agent"
"ImageResource"
"ShareadField"
"SharedAction"
"Library"
"Folder"
"Outline"
"DBIcon"
"SharedColumn"
"HelpAbout"
"HelpUsing"
Publishing A Manifest File
Create a new Page in a Notes Database, mark the contets as "HTML", give it an name appropriate name then paste the XML of the manifest into the page.
Publishing A Design Item
In the Notes Designer use the DXL Exporter to export the DXL for the desired design item to a file. Create a new Page in a Notes Database, mark the contets as "HTML", give it an name appropriate name then paste the contents of the exported DXL file into the page. Add the URL for the page to a designelement entry in the manifest.
Note: It is worthwhile updating the DTD specification in the DXL export to make it more portable. Firstly, the DXL Exporter uses a fully qualified file path to the DTD, make this reference a relative one e.g. <!DOCTYPE imageresource SYSTEM 'xmlschemas/domino_7_0.dtd'>. Also review the level of the schema specified for the DTD, reduce this to a common base level to allow users with older client versions to be able to use the virtual template.
Sample Manifest File
<?xml version="1.0" encoding="UTF-8"?>
<designmanifest name="SAgtInv" version="1.0">
<designset name="logger">
<designelement name="$$Return" type="SharedField">
http://www.hmnl.nl/HMNL/CS/DX.nsf/fld-$$Return?OpenPage
</designelement>
<designelement name="HTMLHead" type="SharedField">
http://www.hmnl.nl/HMNL/CS/DX.nsf/fld-HTMLHead?OpenPage
</designelement>
<designelement name="$ACTIONS" type="SharedAction">
http://www.hmnl.nl/HMNL/CS/DX.nsf/act-Shared?OpenPage
</designelement>
<designelement name="gears.gif" type="ImageResource">
http://www.hmnl.nl/HMNL/CS/DX.nsf/gears?OpenPage
</designelement>
<designelement name="$PlusMinus.gif" type="ImageResource">
http://www.hmnl.nl/HMNL/CS/DX.nsf/$PlusMinus?OpenPage
</designelement>
<designelement name="$FormHeader" type="subForm">
http://www.hmnl.nl/HMNL/CS/DX.nsf/sub-$FormHeader?OpenPage
</designelement>
<designelement name="Application Events" type="Form">
http://www.hmnl.nl/HMNL/CS/DX.nsf/frm-AppEvents?OpenPage
</designelement>
<designelement name="Application Events" type="View">
http://www.hmnl.nl/HMNL/CS/DX.nsf/vw-AppEvents?OpenPage
</designelement>
</designset>
<designset name="framework">
<designelement name="hmnl-about.gif" type="ImageResource">
http://www.hmnl.nl/HMNL/CS/DX.nsf/hmnl-about?OpenPage
</designelement>
<designelement name="hmnl-close.gif" type="ImageResource">
http://www.hmnl.nl/HMNL/CS/DX.nsf/hmnl-close?OpenPage
</designelement>
<designelement name="hmnl-logo-transparent.gif" type="ImageResource">
http://www.hmnl.nl/HMNL/CS/DX.nsf/hmnl-logo?OpenPage
</designelement>
<designelement name="$TemplateBuild" type="SharedField">
http://www.hmnl.nl/HMNL/CS/DX.nsf/fld-TemplateBuild?OpenPage
</designelement>
<designelement name="Entrance - Bottom" type="Page">
http://www.hmnl.nl/HMNL/CS/DX.nsf/pg-EntranceBottom?OpenPage
</designelement>
<designelement name="Entrance - Copyright" type="Page">
http://www.hmnl.nl/HMNL/CS/DX.nsf/pg-EntranceCopyright?OpenPage
</designelement>
<designelement name="Entrance - Main" type="Page">
http://www.hmnl.nl/HMNL/CS/DX.nsf/pg-EntranceMain?OpenPage
</designelement>
<designelement name="Entrance - Padding" type="Page">
http://www.hmnl.nl/HMNL/CS/DX.nsf/pg-EntrancePadding?OpenPage
</designelement>
<designelement name="Shared - Top" type="Page">
http://www.hmnl.nl/HMNL/CS/DX.nsf/pg-SharedTop?OpenPage
</designelement>
<designelement name="All Documents" type="View">
http://www.hmnl.nl/HMNL/CS/DX.nsf/vw-AllDocuments?OpenPage
</designelement>
<designelement name="Database Icon" type="DbIcon">
http://www.hmnl.nl/HMNL/CS/DX.nsf/DXDbIcon?OpenPage
</designelement>
<designelement name="Help About" type="HelpAbout">
http://www.hmnl.nl/HMNL/CS/DX.nsf/AboutDb?OpenPage
</designelement>
<designelement name="Help Using" type="HelpUsing">
http://www.hmnl.nl/HMNL/CS/DX.nsf/UsingDb?OpenPage
</designelement>
<designelement name="FormHeader" type="subForm">
http://www.hmnl.nl/HMNL/CS/DX.nsf/sub-FormHeader?OpenPage
</designelement>
<designelement name="subAbout" type="SubForm">
http://www.hmnl.nl/HMNL/CS/DX.nsf/sub-About?OpenPage
</designelement>
</designset>
<designset name="SchedAgents">
<designelement name="Scheduled Agent" type="SubForm">
http://www.hmnl.nl/HMNL/CS/DX.nsf/sub-ScheduledAgent?OpenPage
</designelement>
<designelement name="DesignElement" type="Form">
http://www.hmnl.nl/HMNL/CS/DX.nsf/frm-DesignElement?OpenPage
</designelement>
<designelement name="DX Request" type="Form">
http://www.hmnl.nl/HMNL/CS/DX.nsf/frm-DXRequest?OpenPage
</designelement>
<designelement name="Processed Requests" type="View">
http://www.hmnl.nl/HMNL/CS/DX.nsf/vw-ProcessedRequests?OpenPage
</designelement>
<designelement name="Scheduled Agents by Database" type="View">
http://www.hmnl.nl/HMNL/CS/DX.nsf/vw-SAByDatabase?OpenPage
</designelement>
<designelement name="Scheduled Agents by Designer" type="View">
http://www.hmnl.nl/HMNL/CS/DX.nsf/vw-SAByDesigner?OpenPage
</designelement>
<designelement name="Scheduled Agents by Inheritance" type="View">
http://www.hmnl.nl/HMNL/CS/DX.nsf/vw-SAByInheritance?OpenPage
</designelement>
<designelement name="Scheduled Agents by Run Time" type="View">
http://www.hmnl.nl/HMNL/CS/DX.nsf/vw-SAByRunTime?OpenPage
</designelement>
<designelement name="Scheduled Agents by Run State" type="View">
http://www.hmnl.nl/HMNL/CS/DX.nsf/vw-SAByRunState?OpenPage
</designelement>
<designelement name="Scheduled Agents by Schedule" type="View">
http://www.hmnl.nl/HMNL/CS/DX.nsf/vw-SABySchedule?OpenPage
</designelement>
<designelement name="Scheduled Agents by Signer" type="View">
http://www.hmnl.nl/HMNL/CS/DX.nsf/vw-SABySigner?OpenPage
</designelement>
<designelement name="Scheduled Agents by Template" type="View">
http://www.hmnl.nl/HMNL/CS/DX.nsf/vw-SAByTemplate?OpenPage
</designelement>
<designelement name="Scheduled Agents Not Running" type="View">
http://www.hmnl.nl/HMNL/CS/DX.nsf/vw-SANotRunning?OpenPage
</designelement>
<designelement name="Scheduled Agents in Template" type="View">
http://www.hmnl.nl/HMNL/CS/DX.nsf/vw-SAInTemplate?OpenPage
</designelement>
<designelement name="Main Menu" type="Outline">
http://www.hmnl.nl/HMNL/CS/DX.nsf/out-MainMenu?OpenPage
</designelement>
<designelement name="appLaunchContext" type="FrameSet">
http://www.hmnl.nl/HMNL/CS/DX.nsf/fs-appLaunchContext?OpenPage
</designelement>
</designset>
</designmanifest>
| Executable Downloads Source Downloads Using Database Creator
|