读一读路径#

X4使用限制选择语言而不是所有XPath. 检查你的游戏 libraries/diff.xsd; XPath 编辑器的接受不证明X4兼容性.

形式 含义
/items/item 项目子 项目根
[@id='a'] 属性过器
/@enabled 属性本身
//item[@id='a'] 任何深度;检查独特性

学习输入#

这些数据是发明的,而不是X4文件:

XML
<items>
  <item id="a" enabled="false" />
  <item id="b" />
</items>

独立补丁:

XML
<diff>
  <replace sel="/items/item[@id='a']/@enabled">true</replace>
  <add sel="/items/item[@id='a']" type="@label">demo</add>
  <remove sel="/items/item[@id='b']" />
  <add sel="/items">
    <item id="c" />
  </add>
</diff>

预期结果#

XML
<items>
  <item id="a" enabled="true" label="demo" />
  <item id="c" />
</items>

replace 改变现有属性, add type="@label" 增加一个, remove 删除b. 决赛 add 插入c 插进物品内 这是一个预期的转变,而不是日志输出或执行的游戏测试.

常见的错误#

每次操作都需要一匹匹匹配. 取代一个整体元素也会消除它的老子女. 为了添加属性,选择通过 sel 给属性命名 type.

不要依赖 contains(), 工会 | 或任意的全 XPath 表达式. 首先要调查缺失的匹配: silent 通过不修复路径,将报告压制. 继续 一个真正的船 和 互动性.