As of 2016-01-20 Project: Merge is officially a discontinued product
and we are therefore no longer selling new licences.
Existing licences and installations of Project: Merge will continue to work,
and most of this website will continue to exist.
We do, however, have a new website at
osocorporation.com where you can find information
about the successor to Project: Merge,
Oso XML Merge.
All accounts for this website have been migrated over to the new site, and you should be able to
view and edit your existing licences as before - as well as upgrade them to Oso XML Merge licences.
This page is only relevant to versions 1.0.1094 and newer.
Project: Merge uses format specifications to control how it processes XML files. Unlike XML Schemas, the format
specifications Project: Merge uses do not define the contents of an XML file. They mostly define how Project: Merge identifies
XML elements for matching different components of the input files.
Each format specification is stored in its own XML file, located in the local application data folder. The exact location of this folder
depends on the version of Windows you are using. The default locations for this folder are:
- Windows 2000/XP: C:\Documents and Settings\All Users\Application Data\Oso\ProjectMerge\Formats
- Windows Vista/7: C:\ProgramData\Oso\ProjectMerge\Formats
The following code shows all possible elements and attributes supported. A detailed description of each follows below.
<file name="" filenames="" root="">
<element name="" attributes="">
<element name=""/>
<attribute name=""/>
<content/>
</element>
</file>
Each file element corresponds to a single XML format specification. The file element supports the following attributes:
- name - A friendly name for these XML files.
- root - The root element for these XML files.
- filenames - A comma separated list of filename wildcards used for matching input files to format specifications when multiple
file specifications have the same root elements. This attribute is optional.
Each file element should contain a list of known elements. This list of elements is displayed in the Element Specification Preferences when an
element is identified by child elements. Project: Merge updates this list as it encounters new elements when it processes XML files.
Elements hold information about the elements in the corresponding XML file. They support the following attributes:
- name - The name for this element.
- attributes - A comma separated list of known attributes for this element. These attributes are displayed in the Element Specification
Preferences when an element is identified by one or more attribute values. Project: Merge will update the attributes list for all elements
as it processes XML files.
In addition to the known elements for an XML file, there is a special element with the name * which is used as a catch all for all unknown
elements, and also for identification settings for all elements which haven't been individually configured.
Elements may contain multiple child elements, attributes, or a single content element. The children of an element define how Project: Merge
identifies elements of that type when processing XML files.
An attribute element instructs Project: Merge to identify the corresponding parent element through the value of the named
attribute. It requires a name attribute itself which specifies the name of the attribute whose value is to be used for identification purposes.
Defines that Project: Merge should use the character data content to identify the elements that this content is a child of.
Content data is stripped of whitespace preceeding and following any real character data, so the following will be considered equal when matching
elements:
<MyElement>
Some Text
</MyElement>
<MyElement>Some Text</MyElement>