-
public interface Catalog
Catalog类表示由XML Catalogs, OASIS Standard V1.1, 7 October 2005定义的实体目录。目录是一个XML文件,其中包含一个带有目录条目列表的根
catalog
条目。 条目也可以与group
条目分组。 目录和组条目可以指定设置公共或系统类型的条目的首选项的prefer
和xml:base
属性以及用于解析相对URI的基URI。目录可以在两种情况下使用:
- 使用公共或系统标识符查找外部资源;
- 使用URI查找备用URI引用。
对于案例1,标准定义了6个外部标识符条目:
public, system, rewriteSystem, systemSuffix, delegatePublic, and delegateSystem
。而对于案例2,它定义了4个URI条目:
uri, rewriteURI, uriSuffix and delegateURI
除了上述条目类型之外,目录还可以定义nextCatalog条目以添加其他目录条目文件。
- 从以下版本开始:
- 9
-
-
方法摘要
所有方法 实例方法 抽象方法 变量和类型 方法 描述 Stream<Catalog>
catalogs()
返回使用当前目录中的nextCatalog
条目指定的备用目录序列,以及CatalogManager
创建目录对象时目录文件的输入(目录文件的输入,不包括当前目录(即输入列表中的第一个))。String
matchPublic(String publicId)
尝试通过publicId在目录中查找匹配的条目。String
matchSystem(String systemId)
尝试通过systemId在目录中查找匹配的条目。String
matchURI(String uri)
尝试通过uri元素在目录中查找匹配的条目。
-
-
-
方法详细信息
-
matchSystem
String matchSystem(String systemId)
尝试通过systemId在目录中查找匹配的条目。该方法搜索当前目录中的系统类型条目,包括
system, rewriteSystem, systemSuffix, delegateSystem
和group
条目,以便查找匹配项。决议遵循以下步骤:
- 如果存在匹配的
system
条目,则立即返回。 - 如果多个
rewriteSystem
条目匹配,则返回具有最长规范化systemIdStartString
值的匹配条目。 - 如果多个
systemSuffix
条目匹配,则返回具有最长标准化值systemIdSuffix
值的匹配条目。 - 如果多个
delegateSystem
条目匹配,则返回具有最长匹配值systemIdStartString
的匹配条目。
- 参数
-
systemId
- 要匹配的实体的系统标识符 - 结果
- 如果找到映射,则为URI字符串,否则为null
- 如果存在匹配的
-
matchPublic
String matchPublic(String publicId)
尝试通过publicId在目录中查找匹配的条目。 该方法搜索当前目录中的公共类型条目,包括public, delegatePublic
和group
条目,以查找匹配项。请参阅有关描述Feature PREFER in the table Catalog Features类
CatalogFeatures
。 仅当prefer
为public
system
找到system
条目时,才会考虑公共条目。决议遵循以下步骤:
- 如果找到匹配的
public
条目,则立即返回。 - 如果多个
delegatePublic
条目匹配,则返回具有最长匹配值publicIdStartString
的匹配条目。
- 参数
-
publicId
- 要匹配的实体的公共标识符 - 结果
- 如果找到映射,则为URI字符串,否则为null
- 另请参见:
-
CatalogFeatures.Feature
- 如果找到匹配的
-
matchURI
String matchURI(String uri)
尝试通过uri元素在目录中查找匹配的条目。该方法搜索uri类型的条目,包括当前目录中的
uri, rewriteURI, uriSuffix, delegateURI
和group
条目以查找匹配项。决议遵循以下步骤:
- 如果找到匹配的
uri
条目,则立即返回。 - 如果多个
rewriteURI
条目匹配,则返回具有最长标准化值uriStartString
值的匹配条目。 - 如果多个
uriSuffix
条目匹配,则返回具有最长标准化值uriSuffix
值的匹配条目。 - 如果多个
delegatePublic
条目匹配,则返回具有最长匹配值uriStartString
的匹配条目。
- 参数
-
uri
- 要匹配的实体的URI引用 - 结果
- 如果找到映射,则为URI字符串,否则为null
- 如果找到匹配的
-
catalogs
Stream<Catalog> catalogs()
返回使用当前目录中的nextCatalog
条目指定的备用目录的顺序流,以及CatalogManager
创建目录对象时目录文件的输入(目录文件的输入),当前目录(即输入列表中的第一个) 除外 。返回流中的目录顺序与相应的
nextCatalog
条目在当前目录中的显示顺序相同。 输入文件列表中的备用目录按输入顺序附加到流的末尾。- 结果
- 顺序的目录流
-
-