Skip to content

Commit 3d0f606

Browse files
committed
Updated README.md
1 parent b36cc20 commit 3d0f606

File tree

1 file changed

+21
-2
lines changed

1 file changed

+21
-2
lines changed

README.md

Lines changed: 21 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,16 @@
11
# XML Diff/Merge Utilities
22

33
## Overview
4+
The utilities find the difference between two XML files and support merging a baseline with a difference file.
45

5-
The utilities work on any XML files; they are not XML-schema aware.
6+
The motivation is that ordinary line difference programs are not suitable for XML. In XML, order of attributes is always insignificant while an ordinary diff program would show changed order as a difference. In XML, element order is significant for a sequence but not for other uses.
7+
The utilities work on any XML files; they are not XML-schema aware. Element order is handled by a switch; it can either be considered significant or insignificant.
68

79
### XML Patch Operations
810
These utilities make use of a difference format conformant to standard "An Extensible Markup Language (XML) Patch Operations Framework Utilizing XML Path Language (XPath) Selectors", [IETF RFC 5261](https://tools.ietf.org/html/rfc5261). Another benefit of these utilities, aside from editing Orchestra files, is that they can be used for HTTP PATCH operations with XML payloads.
911

12+
The path format has no way to show moves. If element order is considered, then a move will be displayed as an add and remove.
13+
1014
## Difference
1115

1216
The XmlDiff utility compares two XML files and generates a third file that represents their differences in RFC 5261 format. Differences are encoded as additions, replacements, or removals of XML elements and attributes.
@@ -26,4 +30,19 @@ To run the merge utility, run this command line:
2630

2731
```
2832
java io.fixprotocol.xml.XmlMerge <base-xml-file> <diff-file> <output-xml-file>
29-
```
33+
```
34+
35+
## License
36+
© Copyright 2017-2019 FIX Protocol Limited
37+
38+
Licensed under the Apache License, Version 2.0 (the "License");
39+
you may not use this file except in compliance with the License.
40+
You may obtain a copy of the License at
41+
42+
http://www.apache.org/licenses/LICENSE-2.0
43+
44+
Unless required by applicable law or agreed to in writing, software
45+
distributed under the License is distributed on an "AS IS" BASIS,
46+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
47+
See the License for the specific language governing permissions and
48+
limitations under the License.

0 commit comments

Comments
 (0)