Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:100818 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 76079 invoked from network); 3 Oct 2017 20:49:37 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 3 Oct 2017 20:49:37 -0000 Authentication-Results: pb1.pair.com smtp.mail=rowan.collins@gmail.com; spf=pass; sender-id=pass Authentication-Results: pb1.pair.com header.from=rowan.collins@gmail.com; sender-id=pass Received-SPF: pass (pb1.pair.com: domain gmail.com designates 74.125.82.66 as permitted sender) X-PHP-List-Original-Sender: rowan.collins@gmail.com X-Host-Fingerprint: 74.125.82.66 mail-wm0-f66.google.com Received: from [74.125.82.66] ([74.125.82.66:37148] helo=mail-wm0-f66.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id B5/03-34435-FD7F3D95 for ; Tue, 03 Oct 2017 16:49:35 -0400 Received: by mail-wm0-f66.google.com with SMTP id k66so1687605wmd.4 for ; Tue, 03 Oct 2017 13:49:35 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=subject:to:cc:references:from:message-id:date:user-agent :mime-version:in-reply-to:content-transfer-encoding:content-language; bh=IsCNaHfGGsAiKlRtND0N+pCN+Wxt6lZDXj0CweynRpI=; b=Eujj6dqN1L0HVoCPFxxsau4q15WUg3dWQn8XTGT4e5hEfXjvGerb23nGyqWdCvlPeT 2twkgGgC4s+vgnlZP0VYk1L2ZumRB0CnEWBjkcEABUjfVAZuLhhlMvwVmHkEdi6xpzQc n8y8+O7/F07/gol6+s8dx3VkrtaDPZe6NibYnoAUpL3u/sbLX2LLTDZD2t0Y5yYsENaO 5H8/XKFiWUO4kOLm4DKtbrBvspMrgMO72s83RRTvANcGScbtvR6uYkl8Mxg0Qg+5P6vR 0yXAAKcjgbkctUuW1sEWz/WfqjqWJ7fiTQ44x9JiVOY7X1OMM24X3G4a4b6ZPPiWSpxM T2Tg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:cc:references:from:message-id:date :user-agent:mime-version:in-reply-to:content-transfer-encoding :content-language; bh=IsCNaHfGGsAiKlRtND0N+pCN+Wxt6lZDXj0CweynRpI=; b=K1J1pJzizmelIiClq7IBu3UrN3GRTbtI6Wb07wwKEVY/yiyBwCnW0Q69yNLTWWPzd5 FCTtoms0O2TtkZzQRHpsSX2MQPrzN0ZDPbRUDrWRbGVb2oWK5a6doKxPi8Zc+68mRZrq CrfvJx3xu+G5CqjBjz61xikvRltUlolb6zAzq2QOxowfS8JwN+8apeHfu21gPEAdsJGI Hvqcpe3KWd76rad0nZJZ59d66hj1DnuASJxaHkIC3VYGdiXkKeSLsPPMjxsbA5i1ulXO LM0S6R06QagSL6l340XHNMnEYH+zFdV43KFSmO57GjkDq4qdBQN2LmbjPfXNbnszlZbd 2Ikg== X-Gm-Message-State: AMCzsaXJGCrM6yC/5Furd9g2qkSm4tnx4ld1OF+7uXtPe1o1wpgvW1Oe Erf2JiStdhUNsnvJP6eqC1I= X-Google-Smtp-Source: AOwi7QB4MHShAVtXB/vB/eRsgODHdkvQk4n7pRnUUqob1T2xrrIZ0i5/nIl5KxeiTUd8FWTHsHOfuA== X-Received: by 10.80.202.68 with SMTP id e4mr5826086edi.60.1507063771982; Tue, 03 Oct 2017 13:49:31 -0700 (PDT) Received: from ?IPv6:2a00:23c4:4b81:ae00:418b:3c36:b0e6:120b? ([2a00:23c4:4b81:ae00:418b:3c36:b0e6:120b]) by smtp.googlemail.com with ESMTPSA id e6sm11674812eda.66.2017.10.03.13.49.30 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 03 Oct 2017 13:49:30 -0700 (PDT) To: PHP Internals Cc: Michael Kay , O'Neil Delpratt References: <0299732C-78F5-4A45-8491-B106E638F1FA@gmail.com> <3A677D35-5F8D-4394-8931-D954022B3350@saxonica.com> Message-ID: <464e3a16-45f8-112b-23bf-5249c916b756@gmail.com> Date: Tue, 3 Oct 2017 21:49:28 +0100 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:52.0) Gecko/20100101 Thunderbird/52.3.0 MIME-Version: 1.0 In-Reply-To: <3A677D35-5F8D-4394-8931-D954022B3350@saxonica.com> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Content-Language: en-GB Subject: Re: [PHP-DEV] RFC proposal: Provide support for XSLT 3.0, XPath 3.1, and XQuery 3.1 From: rowan.collins@gmail.com (Rowan Collins) [Forwarding this to the list, because I seem to have edited the To line wrong.] On 03/10/2017 14:58, Michael Kay wrote: > I'm not 100% sure of my facts here, but I assume there is a significant call overhead every time there's a function call from the PHP world to Saxon's Java world or vice versa, which is acceptable if you're invoking a large operation such as an XSLT transformation, but which would be prohibitive for the fine-grained calls found in the DOM API, such as getParent() and getValue(). So having Saxon provide a DOM interface to a PHP application, or having Saxon navigate a DOM created on the PHP side of the fence, both look like they could be very expensive: that's why our current API only operates at the level of unparsed lexical XML. If there's a solution to that problem, or if you think it's a non-problem, I would love to know! > > Michael Kay > Saxonica > > >> On 3 Oct 2017, at 13:57, Rowan Collins wrote: >> >> On 3 October 2017 10:04:57 BST, O'Neil Delpratt wrote: >>> The XSLT processor currently provided in the PHP core, >>> however, only supports the XSLT 1.0 standard published in 1999. >> In case anyone is not clear, the current XML functionality provided in PHP core is all built on the libxml2 library which originated in the GNOME project, and its accompanying libxslt library: http://xmlsoft.org/ >> >> Is there any possibility for Saxon to be implemented as a replacement for more of these components in the future, or is it likely to always be used with its own functions? >> >> I've personally never used or wanted to use XSLT, but have used XPath with the SimpleXML and DOM extensions, so would be interested in any way of extending that beyond XPath 1.0. >> >> Regards, >> >> -- >> Rowan Collins >> [IMSoP]