搜索查询项

使用基本关键字来搜索资产。还可输入下表中列示的搜索查询项和运算符来优化搜索。

搜索项参考

还可在任何搜索项中使用下表中列示的通配符。

表 1. 搜索项参考
搜索项 描述 示例
输入没有特殊装饰的单个搜索项 返回元数据中列示了单个单词的所有资产。 输入 Claims
"term1 term2" 将两个相关搜索项括在引号中。返回元数据中具有精确短语的所有资产。 输入 "process model" 以将这些相似搜索项组合在一起。
" ? " 表示单个通配符。返回具有替换拼写的所有资产。
注: 您不能使用问号作为搜索中的第一个字符。
输入 B?lls 以返回类似于 bells 或 balls 的搜索项。
" * " 表示多字符通配符。使用星号来检索搜索项的替换变体。
注: 您可以使用星号代替搜索项中的第一个或最后一个字母。不能使用“*.*”作为搜索查询。
输入 long* 以返回类似于 long、longer 或 longest 的搜索项。
" ~" 在单个单词的末尾使用代字号以搜索具有相近拼写变体的资产。
注: 要使此搜索的功能更强大,请包含一个 0 至 1 之间的数字指示符。数字越大,那么返回值与原始搜索项越匹配。例如:boat~0.9 返回 coat
输入 throat~ 以返回类似于 boat、float 或 coat 的搜索项。
AND 在搜索查询中使用此全大写的布尔运算符。缺省布尔运算符始终为 AND。 输入 "processing model" AND claims 以返回同时具有相关搜索项“process model”和 claims 的搜索项。

高级搜索项参考

您可以在任何组合中使用一个或多个搜索字段,也可以选择最近一次修改日期来缩小搜索范围。

下表提供了每个高级搜索字段的示例,并使用样本搜索数据演示了搜索查询是如何演变的。
表 2. 高级搜索参考表
字段标签 描述 示例 查询语法
所有字 以任何顺序输入要搜索的一组搜索项。 service credit implementation "service credit implementation"
精确短语 按确切顺序输入要搜索的相关搜索项字符串。 service implementation "service implementation"
至少其中一个字 输入一组搜索项,其中仅有一项需要与资产元数据中的任何一个单词匹配。 service design model service OR design OR model
不包括任何字 输入您知道未包括在资产元数据中任何位置的搜索项。 claims -claims
注: 如果您使用 NOT 或“-”进行搜索而没有任何其他搜索项,那么将不会返回任何结果。
标识 输入资产的唯一标识中的字母和数字字符串。 {0000-1111-2222-3333} (\{0000\-1111\-2222\-3333\})
名称 输入资产名称中包含的搜索项。 Claims name:(Claims)
描述 输入资产描述中包含的搜索项或短语。 audit records human resource description:(audit records human resource)
所有者 输入资产所有者的姓名。
注: 资产可以有多个所有者。
John Smith owner:(John Smith)
最近一次修改者 输入最近一次修改资产的用户的姓名。 Anna Baker lastModifiedBy:(Anna Baker)
最近一次修改日期 在日期选择器中选择一个日期范围。 2007 年 6 月 13 日至 2007 年 6 月 15 日 lastModified:([20070613 TO 20070615])

使用通配符来进行搜索

Rational® Asset Manager 中的搜索索引依靠标点来将文档内容分为有意义的信息块以便进行搜索。换言之,它通过不对空白字符进行识别并排除字符串常量或定界标识中的字符来使信息记号化。文档存储在 Rational Asset Manager 索引中时,句点之类的标点和需要标点的其他项(如“http://”)未存储在索引中。

通过使用通配符来搜索资产时,请使用下列规则和示例来帮助您成功找到资产。

规则
  1. 如果搜索短语中存在标点字符,那么必须除去标点,例如,"type=impl" 变为 type=impl
    注: 不会标记其后未跟空格的通配符。例如:type="impl:AssetDiscussion* 要求您除去引号并在冒号后加上空格以变为 type=impl: AssetDiscussion*
  2. 存在连字符时,必须分割单词,例如:element name="request-Asset-Access-Response"
    注: 除非标记中存在数字,否则此规则成立。如果存在数字,那么整个标记被解释为数字并且不会分割,例如:layoutConstraint xmi:type="notation:Location" xmi:id="_4WXt79N1EdycYOkFXjXeHg" yes="-186"
  3. 将电子邮件地址和因特网主机名作为一个标记来进行搜索。

但是,在搜索项中使用通配符“*”时,不会再标记文本。出现这种情况时,您将无法找到要查找的资产。必须在搜索字段中为搜索项手动添加标记。使用下列示例作为使用通配符创建有效搜索项的参考。

示例 1:使用搜索来查找 WSDL 文档

场景:该文档包含以下行:type="impl:AssetDiscussionForum"

使用以下任意搜索项来查找该文档:
  • type="impl:AssetDiscussionForum"
  • "impl:AssetDiscussionForum"
  • impl:AssetDiscussionForum
  • impl AssetDiscussionForum

使用以下带有“*”通配符的搜索项:

  • type impl AssetDiscussion*
注: 不能使用此示例进行搜索:type="impl:AssetDiscussion*"。因为此示例被视为单个搜索项,并且与文档在索引中的存储方式不匹配,所以此示例不起作用。
示例 2:查找 URL

场景:主机名存储为单个标记,但不会与名称的“http://”部分一起存储。使用常规搜索项会轻松找到主机名。但是,如果搜索中包含“*”通配符,那么可能找不到正确的文件。此示例中的文档包含以下行:wsdl:definitions targetNamespace="http://core.ws.web.repository.ram.ibm.com"

使用以下任意搜索项来查找该文档。
  • wsdl:definitions targetNamespace="http://core.ws.web.repository.ram.ibm.com"
  • targetNamespace="http://core.ws.web.repository.ram.ibm.com"
  • http://core.ws.web.repository.ram.ibm.com

使用以下带有“*”通配符的搜索项:

  • targetNamespace core.ws.web.repository.ram.ibm.*
  • targetNamespace core.ws.web.reposito*
注: 如果使用此搜索项和通配符 targetNamespace="http://core.ws.web.repository.ram.ibm.*” 进行搜索,那么将找不到该文档。因为未除去主机名中的标点或主机名的“http://”部分,所以此搜索不会返回任何结果。

在 XML 工件内进行搜索

如果资产包含诸如 WSDL 文件之类的 XML 工件并且已对该资产类型设置 XML 索引规则,那么可以查找基于 XML 工件的元素、属性和值的资产。

当在 XML 工件内进行搜索时,请确保在搜索文本字段旁边的下拉列表中已选择“在工件内进行搜索”。在搜索文本字段中,输入 XML 查询。XML 查询的基本结构如下:
attribute:(element[attribute='value' attribute='value'])
其中 elementattributevalue 是 XML 文件中元素、属性和属性值的特定名称。允许使用通配符。
例如,如果要查找 <schema targetNamespace="http://core.ws.web.repository.ram.ibm.com">,那么可使用以下任意搜索查询:
attribute:(schema[targetNamespace='http://core.ws.web.repository.ram.ibm.com'])
attribute:(targetNamespace='http://core.ws.web.repository.ram.ibm.com')
attribute:(schema[targetNamespace='*ws.web*'])
attribute:(targetNamespace='*'])
要查找元素中的特定属性和值,请使用以下搜索查询:
attribute:(element[name='value'])
要查找路径中的特定属性和值,请使用以下搜索查询:
attribute:(path[name='value'])
要在任何元素中查找 attribute=value 或搜索定制属性,请使用以下搜索查询:
attribute:(name='value')
为了要求两个属性和值对在同一元素中,请使用以下搜索查询:
attribute:(name='value' name2='value2') attribute:(element[name='value' name=value2'])
要在元素中搜索文本(例如,要查找 <status>Operational</status>),可以使用下列任一搜索查询:
attribute:(text()='Operational')
attribute:(status[text()='Operational'])
适用相同的路径和元素规则。