public interface Catalog
Catalog类表示由 XML目录,OASIS标准V1.1,2005年10月7日定义的实体目录。
目录是一个包含根catalog条目和目录条目列表的XML文件。条目也可以使用group条目进行分组。目录和组条目可以指定prefer和xml:base属性,以设置公共或系统类型条目的优先级和解析相对URI的基本URI。
目录可用于两种情况:
- 通过公共或系统标识符定位外部资源;
- 通过URI定位替代URI引用。
对于情况1,标准定义了6个外部标识符条目:public, system, rewriteSystem, systemSuffix, delegatePublic和delegateSystem。
而对于情况2,它定义了4个URI条目:uri, rewriteURI, uriSuffix和delegateURI。
除了上述条目类型外,目录还可以定义nextCatalog条目以添加额外的目录条目文件。
- 自:
- 9
-
Method Summary
Modifier and TypeMethodDescriptioncatalogs()返回一个顺序流,其中包含当前目录中使用nextCatalog条目指定的备用目录,以及由CatalogManager创建的Catalog对象的输入目录文件(即输入列表中的第一个目录)。matchPublic(String publicId) 通过publicId在目录中尝试查找匹配的条目。matchSystem(String systemId) 通过systemId在目录中尝试查找匹配的条目。通过uri元素在目录中尝试查找匹配的条目。
-
Method Details
-
matchSystem
通过systemId在目录中尝试查找匹配的条目。该方法通过当前目录中的系统类型条目(包括
system, rewriteSystem, systemSuffix, delegateSystem和group条目)按顺序搜索以找到匹配项。解析遵循下面列出的步骤:
- 如果存在匹配的
system条目,则立即返回。 - 如果有多个匹配的
rewriteSystem条目,则返回具有最长规范化systemIdStartString值的匹配条目。 - 如果有多个匹配的
systemSuffix条目,则返回具有最长规范化systemIdSuffix值的匹配条目。 - 如果有多个匹配的
delegateSystem条目,则返回具有最长匹配systemIdStartString值的匹配条目。
- 参数:
-
systemId- 要匹配的实体的系统标识符 - 返回:
- 如果找到映射,则返回URI字符串;否则返回null
- 如果存在匹配的
-
matchPublic
通过publicId在目录中尝试查找匹配的条目。该方法通过当前目录中的公共类型条目(包括public, delegatePublic和group条目)按顺序搜索以找到匹配项。请参阅类
CatalogFeatures中的表Catalog Features中关于prefer特性的描述。只有在prefer为public且未找到system条目时,才会考虑公共条目。解析遵循下面列出的步骤:
- 如果找到匹配的
public条目,则立即返回。 - 如果有多个匹配的
delegatePublic条目,则返回具有最长匹配publicIdStartString值的匹配条目。
- 参数:
-
publicId- 要匹配的实体的公共标识符 - 返回:
- 如果找到映射,则返回URI字符串;否则返回null
- 参见:
- 如果找到匹配的
-
matchURI
通过uri元素在目录中尝试查找匹配的条目。该方法通过当前目录中的uri类型条目(包括
uri, rewriteURI, uriSuffix, delegateURI和group条目)按顺序搜索以找到匹配项。解析遵循下面列出的步骤:
- 如果找到匹配的
uri条目,则立即返回。 - 如果有多个匹配的
rewriteURI条目,则返回具有最长规范化uriStartString值的匹配条目。 - 如果有多个匹配的
uriSuffix条目,则返回具有最长规范化uriSuffix值的匹配条目。 - 如果有多个匹配的
delegatePublic条目,则返回具有最长匹配uriStartString值的匹配条目。
- 参数:
-
uri- 要匹配的实体的URI引用 - 返回:
- 如果找到映射,则返回URI字符串;否则返回null
- 如果找到匹配的
-
catalogs
返回一个顺序流,其中包含当前目录中使用nextCatalog条目指定的备用目录,以及由CatalogManager创建的Catalog对象的输入目录文件(即输入列表中的第一个目录)。返回流中的目录顺序与当前目录中相应的
nextCatalog条目出现的顺序相同。来自输入文件列表的备用目录按它们输入的顺序附加到流的末尾。- 返回:
- 一个顺序流的目录
-