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
条目出现的顺序相同。来自输入文件列表的备用目录按它们输入的顺序附加到流的末尾。- 返回:
- 一个顺序流的目录
-