- From: <bugzilla@jessica.w3.org>
- Date: Sat, 16 Apr 2016 05:18:42 +0000
- To: public-qt-comments@w3.org
https://www.w3.org/Bugs/Public/show_bug.cgi?id=29574 Bug ID: 29574 Summary: Default visibility of accepted components Product: XPath / XQuery / XSLT Version: Candidate Recommendation Hardware: PC OS: Windows NT Status: NEW Severity: normal Priority: P2 Component: XSLT 3.0 Assignee: mike@saxonica.com Reporter: maxtoroq@gmail.com QA Contact: public-qt-comments@w3.org Target Milestone: --- Accepted components are public by default. This is inconsistent with the default visibility of local components, which is private. It is weird that the components you write are private, but the ones you use are public and implicitly exposed. At least not what you'd expect coming from languages like C# or Java. Package A uses package B and C, and package B uses C. Package A won't compile because it accepts multiple homonymous components from B and C. Why use C if you get those components indirectly from B? Maybe version 1 of B doesn't use C, but version 2 does and breaks A. The main purpose of xsl:use-package is, as the name says, use a package. Currently, the burden is on the package developer to not over-expose accepted components by explicitly using <xsl:accept visibility="private">. And if the package depends on tens of other packages then it won't look pretty. I propose that, the same way private is changed to hidden, public is changed to private. -- You are receiving this mail because: You are the QA Contact for the bug.
Received on Saturday, 16 April 2016 05:18:45 UTC