过滤器
XML网格视图中的过滤器可应用于元素节点,使您能够过滤该节点的后代。凡是可以应用过滤器的地方,都会显示一个灰色的过滤器图标。定义过滤器后,该图标将带有颜色(参见下方截图)。过滤器是用XQuery 3.1表达式定义的。例如,在下方截图中,已在Temperatures节点上设置了一个过滤器,以仅显示那些具有Min子元素且值大于10的Month元素。(请注意,截图中已列出相应元素实例的索引号。)
要设置过滤器,请右键单击想要过滤的元素,从出现的上下文菜单中选择过滤器,输入XQuery表达式,然后按Enter键。过滤器由图标表示(参见上方截图)。您可以通过单击过滤器图标来激活/停用过滤器。
<?xml version="1.0" encoding="UTF-8"?> <Temperatures> <Month name="January"> <Min>-5</Min> <Max>3</Max> </Month> <Month name="February"> <Min>-16</Min> <Max>1</Max> </Month> <Month name="March"> <Min>-9</Min> <Max>7</Max> </Month> <Month name="April"> <Min>2</Min> <Max>16</Max> </Month> <Month name="May"> <Min>8</Min> <Max>21</Max> </Month> <Month name="June"> <Min>12</Min> <Max>26</Max> </Month> <Month name="July"> <Min>14</Min> <Max>34</Max> </Month> <Month name="August"> <Min>16</Min> <Max>36</Max> </Month> <Month name="September"> <Min>11</Min> <Max>28</Max> </Month> <Month name="October"> <Min>10</Min> <Max>26</Max> </Month> <Month name="November"> <Min>-1</Min> <Max>14</Max> </Month> <Month name="December"> <Min>-3</Min> <Max>9</Max> </Month> </Temperatures>
|
请注意以下几点:
•过滤器仅能应用于元素节点。
•过滤器的XQuery表达式的上下文节点是当前节点。例如,在上方截图中,上下文节点是Temperatures节点。
•过滤器可以嵌套。嵌套的过滤器将被应用于父过滤器的过滤内容。
•要在一个表达式中添加新行,请按Ctrl+Enter。如果您想在多行中显示一个表达式以获得更好的可读性,这很有用。
•过滤后的内容仅是一种视觉显示。实际内容保持不变。
•每个过滤器都单独执行,不会受其他过滤器或公式的影响。
•过滤器不存储在XML文档中,但可以保存在特殊的元数据文件中以便后续使用。如果存储了过滤器,则在网格视图中重新打开文档时将自动应用它们。转至工具 | 选项 | 视图 | 网格视图设置 以指定是总是自动存储过滤器、仅在请求时存储过滤器,还是不存储过滤器。