jackrabbit支持XPATH与SQL查询:
对于XPATH查询它添加了一些新的函数,主要用到的我看就是这两个:
element(nodeName,nodeType)用于选取某类型的节点,其中nodeName可以用*代替,表示选取所有此类型的节点
jcr:contains(propertyName,'value')用于选取具有某属性且值为什么的节点,propertyName可以用.代替表示任意属性
如://element(*,nt:file)或//*[jcr:contains(.,'test')]其中jcr;contains中的值必须用''括起来
还有一个jcr:like(propertyName,'pattern')等同于sql中的like,如jcr:like(array,'%ar%)用于选取array属性值中有ar的节点
经过测试发现jcr:like与jcr:contains中的属性名前面有无@都一样(jcr:contains(@array,'array1')
JSR172规范中是加了@的
/**
* nt:base是所有节点类型的基类型
*
* //*应该等价于select * from nt:base才对啊
* 但实际结果却不能直接用//*,必须用//element(*,nt:base)才能拿到结果
* 同时select * from nt:base也得不到任何结果
* 唯一可以确定的就是:Query.SQL中from后面跟的是结点类型,
* Query.XPATH中//*这里的*表示的也是结点的类型
*
* and与or:
* [@属性 or/and @属性] 属性后不加值表示拥有此属性,加值的话表示拥有此属性且属性值为该值
* [jcr:contains(.,'值') and/or jcr:contains(.'值')]
*
* 对于一个属性拥有多个值的情况,没有发现在查询时与只有一个值的情况有任何区别,如下:
* session.getRootNode().getNode("test").setProperty("array", new String[]{"array1","array2"});
* qm.createQuery("//element(*,nt:base)[@array='array1' and @array='array2']", Query.XPATH);
* qm.createQuery("//element(*,nt:base)[jcr:contains(.,'array1') and jcr:contains(.,'array2')]", Query.XPATH);
* test的array属性有两个值,在查询只跟查一个值的情况一样,直接@array='array1'或@array='array2或@array='array1' and/or @array='array2'都能将其查出
* */
分享到:
相关推荐
7. **Cited reference search**:这是一种研究方法,通过查找引用某一特定文献的其他论文,可以发现新的研究方向和思路。 8. **论文发表的考虑因素**:包括了解期刊的偏好,寻找合适的审稿人,提升作者和论文的知名...
此文件可以手动下载,(1)煽动日志引文报告(https://jcr.clarivate.com/jcrlandingpageaction.action)(1-a)“浏览期刊”(1-B)“定制指标”(1-c)检查“ISSN”并保存(1-D)下载CSV你需要,(2)将其设置为...
您需要在 Digital Factory 7.1 服务器中导入站点 searchsite_demo.zip。 您需要模板集 sample-bootstrap-template。 该站点自带3个用户:jcr1、jcr2和jcr3,都带有密码:password 站点结构如下: Home |- ...
在"flexible-search-oak-master"这个仓库中,可能包含了以下内容: 1. 演示代码:展示了如何设置和使用Oak的查询功能,可能包括如何创建和管理索引,以及如何执行复杂的查询。 2. 示例数据:可能包含了一些用于测试...
ACS出版的期刊在化学领域被广泛引用,据ISI的Journal Citation Report (JCR)数据显示,它们是化学领域中被引用次数最多的期刊。 ACS数据库涵盖了广泛的化学和相关科学领域,包括但不限于农业化学、生物化学、生物...
### Jackrabbit核心包详解 ...通过对Node Type、Item State、版本控制、Search Manager和事件机制的深入分析,我们可以更好地理解Jackrabbit的工作原理,并在实际项目中更高效地利用它的强大功能。
您需要在 Digital Factory 7.0 或 7.1 服务器中导入站点 searchsite_demo.zip(在资源文件夹中)。 您需要模板集 sample-bootstrap-template。 该站点自带3个用户:jcr1、jcr2和jcr3,都带有密码:password 站点...
Oak提供了多种存储后端,包括内存、MongoDB和RDBMS,支持JCR(Java Content Repository)API,广泛应用于内容管理系统如Adobe CQ5/AEM。 2. **Solr嵌入式使用**:Oak-solr-embedded使Solr可以在Oak内容存储库内部...
在 [1] 中,与其他五种众所周知的方法,即 DSA、BSA、FFA、PSO 和 HSA 进行了广泛的比较研究,以验证和比较 LSA 解决问题的成功与 DSA、BSA、FFA 的成功相比、PSO 和 HSA。 参考[1]。 Hussain Shareef、Ahmad Asrul...
在项目目录中,运行mvn clean install content-package:install生成捆绑包和内容包并安装到CQ实例。 与VLT一起使用 要将vlt与此项目一起使用,请先如上所述将程序包构建并安装到本地CQ实例。 然后cd到src/main/...
Jackrabbit是Apache的一个开源项目,它是一个完全实现了JCR(Java Content Repository)规范的内容管理系统。虽然主要与Lucene不直接关联,但Jackrabbit可能使用Lucene作为其内部的搜索引擎。UML(统一建模语言)则...
Web of Science作为核心数据库,与其他数据库及工具如EndNote、ScholarOne-Manuscript Central等紧密集成,提供期刊引证报告(JCR)、基本科学指标(ESI)以及ResearcherID等服务,帮助科研工作者评估论文质量、追踪研究...
Alfresco主要由四个关键组件构成:内容存储(Repository)、Web应用服务器(Web Application)、工作流引擎(Workflow Engine)和搜索服务(Search Service)。内容存储是系统的基础,负责存储各种类型的内容,如...
包括参考数据库(如SCI、SSCI、AHCI、Ei、INSPEC、CSA、OCLC FirstSearch、WOSP、BIOSIS、PQDD等)、全文数据库(如ARL、PQDD全文、ABI、ASE、ASP、BSE、BSP、IEL等)、事实数据库(如Genome Database、China ...
1. 使用Advanced Search:高级搜索界面允许你组合多个搜索条件,比如同时搜索作者名和关键词,或者限制在特定的期刊、年份范围内。 2. 使用Field Tag:WoS使用Field Tag来指定搜索的特定字段,如TI(标题)、AU...
"openframe-services-jcr-2.0.0.jar"则是内容管理系统的一部分,支持内容的存储和检索。"openFrame-services-reporting-2.0.0.jar"提供了报告生成功能,便于数据分析和决策支持。"openFrame-services-jmx-2.0.0.jar...
3. jspirit-search:提供模型搜索功能,使得在大型数据集中快速检索成为可能。 4. jspirit-business:业务层模块,处理业务逻辑和规则。 5. jspirit-client:客户端层模块,负责与用户的交互界面和体验。 6. jspirit...