2

阅读文档我对方面链的确切位置有点困惑。

在文档中:https ://wiki.duraspace.org/display/DSDOC18/XMLUI+Configuration+and+Customization#XMLUIConfigurationandCustomization-AdditionalXMLUILearningResources

IT 不清楚方面的顺序是如何确定的,因此它们实际上是如何链接的。

我在 2005 年的 Manakin 开发人员指南的文档中表示,订单是从文件 aspect.xml 确定的。

请有人可以简要解释一下如何将uri与一系列方面相匹配?但它似乎不再在 dspace 1.8.2 中了。难道没有它就可以工作吗?还是有另一种方法可以将 uri 与链相关联?

除此之外,我还不明白 DRI 路径中的 {1} 或 {2} 等是什么意思。这里的提示将帮助我更好地理解。

4

1 回答 1

4

文档有点晦涩难懂。有一个方面链。每个动态生成的页面都经过它。

要了解它是如何工作的,您需要记住 XMLUI 是一个 Cocoon 应用程序,特别是您需要了解由许多 .xmap 文件构建的 Cocoon“站点地图”。传入的请求由称为 Matchers 的地图组件引导通过站点地图。XMLUI 在站点地图的一部分中体现了 Aspect 链。

方面链的定义位置:config/xmlui.xconf,作为<aspects>元素的内容。此处给出的顺序是将定义的方面应用于开发中的 DRI 文档的顺序。(这在 XMLUI 配置和自定义中有所说明,在步骤 3b中的https://wiki.duraspace.org/display/DSDOC18/XMLUI+Configuration+and+Customization#XMLUIConfigurationandCustomization-UnderstandingtheFlowofanXMLUIRequest 。)

我找不到“aspect.xml”的任何实例。webapps/xmlui/aspects/aspects.xmap 是一个 Cocoon 站点地图文件,它会导致应用方面链。AspectMatcher 组件是强制执行 Aspects 排序的地方。

如上所述,对动态页面的每个请求都会导致生成的文档沿着单个Aspect 链发送。

像 {1} 这样的标记表示 URI 文本,它在最近的封闭元素的 'match' 属性中由通配符('*' 或 '**')匹配。这类似于某些正则表达式包提供的子表达式匹配变量。(此功能由 Cocoon 提供;它不是 DSpace 的一部分,但由 XMLUI 使用。)

如果你能找到一个好的资源,我建议你阅读一些关于 Cocoon 的内容。我通常参考Moczar 和 Aston的 Cocoon Developer's Handbook。它现在已经过时了,但它比当前的在线 Cocoon 文档要完整得多。

于 2015-05-17T15:37:59.443 回答