隐式与未命名包
Implicit vs. unnamed packages
关于 XSLT 3.0 中的 packages,隐式包和未命名包是一回事吗?假设一个都不能被其他包使用,为什么会说:
For compatibility reasons, all the named templates and modes declared
in the package are made public.
隐式包是以 xsl:stylesheet
而不是 xsl:package
元素为根的包;隐式包将始终未命名。但是你也可以在没有 @name
属性的 xsl:package
元素上创建一个包;这是未命名的,但不是隐含的。
制作组件 public 意味着它们对调用 API 可见,例如任何命名模板都可以用作指定 call-template
和命名模板的入口点。如果它们是私有的,否则将是默认值,则不能以这种方式在外部引用它们。
关于 XSLT 3.0 中的 packages,隐式包和未命名包是一回事吗?假设一个都不能被其他包使用,为什么会说:
For compatibility reasons, all the named templates and modes declared in the package are made public.
隐式包是以 xsl:stylesheet
而不是 xsl:package
元素为根的包;隐式包将始终未命名。但是你也可以在没有 @name
属性的 xsl:package
元素上创建一个包;这是未命名的,但不是隐含的。
制作组件 public 意味着它们对调用 API 可见,例如任何命名模板都可以用作指定 call-template
和命名模板的入口点。如果它们是私有的,否则将是默认值,则不能以这种方式在外部引用它们。