---
title: XML 网格迎来全面升级
date: 2021-03-24
categories:
  - development
  - xml
tags:
  - new-features
  - xml-editor
  - xmlspy
  - xpath
  - xquery
description: XMLSpy 中 XML 网格视图已从头开始重新构建，以增加用于编辑 XML 的全新独特功能。请观看演示视频。
---
Status: #blog

Tags:  #new-features #xml-editor #xmlspy #xpath #xquery

Categories: [development](/blog/zh/category/development.md) | [xml](/blog/zh/category/xml.md)
# XML 网格迎来全面升级

如果您在使用 XMLSpy 处理 XML 文件时，可能已经使用过 XML 网格视图，以便以图形化的方式查看 XML 文档的结构。这种对文档分层结构的视觉呈现，能够让您更直观地理解和编辑内容。

在最新版本的 XML 编辑器中，[XML 网格](https://www.altova.com/zh/xmlspy-xml-editor/xml-viewer#xml-viewer-grid) 的外观略有不同——实际上，它已经从头开始完全重构，旨在提供更多独特的 XML 数据编辑、查询、计算和共享功能。

![了解如何在 XMLSpy 中使用 XML Grid ](/blog/images/XMLSpy-XML-Grid.jpg)

<!--more-->

## 全新的 XML 网格视图

从2021r2版本开始，重新构建的XML网格更加易于使用，并提供了强大的新选项和功能。例如，XML网格现在包含[智能修复XML验证](https://www.altova.com/zh/xmlspy-xml-editor#SmartFix)功能，它可以检测错误，_并_提供修复这些错误的解决方案。

编辑仍然保留了常用的表格视图，它会将重复的元素以表格形式重新排列，方便用户查看和排序。该视图使用属性和子元素作为列，并将重复的XML元素显示为行。

新功能在于，表格中的行和列现在可以进行翻转，从而重新排列文档的显示方式，使其更易于阅读。例如，下表对比了各种手机，它有很多列，但只有很少的行。

![](/blog/images/xml-grid-table-1030x391.png)

调整行和列的显示方式，可以使内容立即变得易于访问。

![在网格 XML 编辑器中，可以交换行和列的位置](/blog/images/xml-editor-grid-view.png)

**将 Base-64 编码的图像视为图形**

XML 网格视图现在支持自动显示图像（例如，如上所示的手机拍摄照片），包括 PNG、JPG、BMP、SVG 以及动态 GIF 格式。这在文本视图中是无法实现的。

您可以直接从图像编辑软件复制图像，然后将其粘贴到 XML 网格视图中。图像以 base-64 格式存储，您可以通过切换到文本视图来查看其内容。

**直接从外部应用程序添加内容**

除了复制粘贴图片之外，您还可以轻松地将内容从其他应用程序复制到 XML Grid，或者从 XML Grid 复制到其他应用程序，并且 XML Grid 会自动检测内容的结构。例如，您可以从 Excel 或文本编辑器中选择内容，然后直接将其拖动到 XML Grid 中。

**过滤器**

这款新的 XML 网格视图最吸引人的特点之一是，它允许您利用 [XPath](https://www.altova.com/zh/training/xpath3) 和 [XQuery](https://www.altova.com/zh/training/xquery3) 技术，直接在视图中筛选和处理数据。

右键菜单的上下文选项可以帮助您快速开始创建过滤器。当您选择“聚焦过滤器”选项时，会自动创建一个过滤器，用于显示选定的节点。然后，您可以扩展该过滤器，以包含所需的精确条件。 这种方法比从头开始创建过滤器更快，并且可以帮助您了解如何构建过滤器。

![在 XML Grid 中创建 XPath 过滤器](/blog/images/create-xpath-filter.png)

我们在这里设置了一个筛选器，可以根据价格范围缩小显示范围，结果显示了两款手机。您可以根据需要启用或禁用此筛选器。

![](/blog/images/xpath-filter-xml.png)

**公式**

虽然过滤器只是改变 XML 网格视图中内容的显示方式，而不会修改底层的 XML 文档，但可以使用 XQuery 组成的公式来计算结果，或者生成一个节点集，并将该节点集存储在文档中。

要定义一个公式，请添加一个新的节点，然后使用单元格中的“类型”按钮将其类型更改为“公式”，并输入一个 XQuery 表达式。以下是一个公式，用于计算我们文档中手机的平均价格。

![使用 XQuery 计算数值](/blog/images/calculate-xquery-1.png)

点击磁盘图标会将公式保存为一种处理函数，并将结果作为新的元素添加到 XML 文件本身中。

**图表**

XML Grid 还可以让您定义图表和图形，以便直接在编辑视图中使用 Altovaext:chart XQuery 扩展来可视化数值数据。以下是一个 XML 文档中电话价格的图表。

![从 XML 数据创建图表 ](/blog/images/xml-chart.png)

生成图表后，您可以将其保存到文件中，复制图表图像，或者将图表以XML数据格式复制。

请观看下方演示视频，了解这些新功能的实际应用。

![](https://www.youtube.com/watch?v=sUYihyQPF4g)
