Что такое код xslt_set_scheme_handlers

Содержание

FPublisher

Web-����������: ���� ������

������������ PHP

xslt_set_scheme_handlers

xslt_set_scheme_handlers � Set the scheme handlers for the XSLT processor

��������

void xslt_set_scheme_handlers ( resource $xh , array $handlers )

Registers the scheme handlers (XPath handlers) for the document.

������ ����������

The XSLT processor link identifier, created with xslt_create().

An array with the following keys: «get_all», «open», «get», «put», and «close».

Every entry must be a function name or an array in the following format: array($obj, «method»).

Note that the given array does not need to contain all of the different scheme handler elements (although it can), but it only needs to conform to the «handler» => «function» format described above.

Each of the indiv >

������������ ��������

��� ������� �� ���������� �������� ����� ����������.

�������

������ #1 xslt_set_scheme_handlers() example

For example, here is an implementation of the «file_exists()» PHP function.

// Definition of the handler
function mySchemeHandler ( $processor , $scheme , $rest )
<
$rest = substr ( $rest , 1 ); // to remove the first / automatically added by the engine
if ( $scheme == ‘file_exists’ ) <
// result is embedded in a small xml string
return ‘ ‘ . ( file_exists ( $rest ) ? ‘true’ : ‘false’ ) . ‘ ‘ ;
>
>

$SchemeHandlerArray = array( ‘get_all’ => ‘mySchemeHandler’ );

// Start the engine
$params = array();
$xh = xslt_create ();

xslt_set_scheme_handlers ( $xh , $SchemeHandlerArray );

$result = xslt_process ( $xh , «myFile.xml» , «myFile.xsl» , NULL , array(), $params );
xslt_free ( $xh );

Then, inside the stylesheet, you can test whether a certain file exists with:

xslt_set_scheme_handlers

xslt_set_scheme_handlers � Set the scheme handlers for the XSLT processor

Description

Registers the scheme handlers (XPath handlers) for the document.

Parameters

The XSLT processor link identifier, created with xslt_create().

An array with the following keys: «get_all», «open», «get», «put», and «close».

Every entry must be a function name or an array in the following format: array($obj, «method»).

Note that the given array does not need to contain all of the different scheme handler elements (although it can), but it only needs to conform to the «handler» => «function» format described above.

Each of the indiv >

Return Values

No value is returned.

Examples

Example #1 xslt_set_scheme_handlers() example

For example, here is an implementation of the «file_exists()» PHP function.

// Definition of the handler
function mySchemeHandler ( $processor , $scheme , $rest )
<
$rest = substr ( $rest , 1 ); // to remove the first / automatically added by the engine
if ( $scheme == ‘file_exists’ ) <
// result is embedded in a small xml string
return ‘ ‘ . ( file_exists ( $rest ) ? ‘true’ : ‘false’ ) . ‘ ‘ ;
>
>

$SchemeHandlerArray = array( ‘get_all’ => ‘mySchemeHandler’ );

// Start the engine
$params = array();
$xh = xslt_create ();

xslt_set_scheme_handlers ( $xh , $SchemeHandlerArray );

$result = xslt_process ( $xh , «myFile.xml» , «myFile.xsl» , NULL , array(), $params );
xslt_free ( $xh );

Then, inside the stylesheet, you can test whether a certain file exists with:

XSLT ������ ���

1. ��������

�� ������ � ��� ��� � ��� ���, ��� � ���� ���������� ����� � ���, ��� ���� ������� XSLT -))). ����� ����������, � ����� ��� ����� PHP 4 � ����������� Salbotron , �������, ����� ������, �� ��������� ������� �������������������. �� � ����� ����� ������� ��� ������������ ���������� ����� ������ XSLT. �� ���� ������������ �������� ����� �������������� ����������� � ������� �� ������ �����. �� ������ ������ ����� ����� �������, ��� ��� ������� �������, ��������� ����� PHP 5 � ���������� XSLT � ������� ��������� �������, � ��� ������� �������� ��� ���� �������� ������ ��������������, ������ ������� XML. :)

������ ������ �� ����, ��������������:

  • http://w3c.org — ������� �� ���������� � ����������� ���������� ��������� ������� Internet. �� ������ ������ �� �������� ��������������� ����������� ���� ���-��������������� ���������� � ������������.
  • http://www.w3.org/TR/xml — ������������ ������������ ����� �������� XML, ������� �������� ������� ������������ ����. �� ������ ��������� ������ �������� ����� �������� ������ 1.0, � ����� ������ �������� ������ 1.1.
  • http://www.w3.org/TR/xml-names — ������������ ������������� ����������� ��� � XML.
  • http://www.w3.org/TR/xpath — ������������ �� ������������� ����� ������ ������ XML-��������� XPath.
  • http://www.w3.org/TR/xsl/ — ������������ ������������ ����� ������ XSL.
  • http://www.w3.org/TR/xslt — ������������ ����� �������������� XSLT.
  • http://validator.w3.org/ — ��������� HTML.
  • http://www.w3.org/TR/xhtml1/ — ������������ XHTML1.0.

�������� �� ������� ����:

��� ������� ��������� ����� ������������� � ���������� ������ ������������ � ��������� �������:

  1. XML (��� ������!)
  2. ������������ ��� (�������� ������������ XML-���� � ����� �����)
  3. XPath (���� ������� ��������� �� ������ ���������)
  4. XSLT (��������������)
  5. XHTML (��, � ���� ����� ����������)

����� �������� ����� ����� ������� �������� ������������ ����� ������ XSL.

2. �������� XHTML

��� ����� �������� XHTML? � ������ �������, ��� XML-��������, ������� ������ ��������������� ������������ XML. ��-������, ����� ������� HTML-��������, � ������� ��� ��������.

������ ����� ������ XHTML? ������������� �� ����������� ������������� � �����-������������. �������� � XHTML ����� � ������� ������������ ������������ ��������� � ���������� ���������, ��� ������� HTML.

��� �������� ��������� ������� �������������� XML-�������� ������ �������� ���������:

  1. �������� �������� ���������� XML-��������� � ����� ������ ��������:
  2. �������� �������� ���� �������� �������, � ������� ��������� ��� ���������.
  3. ��� �������� (����) ������ ����� ����������� ����� (
    ,

).

  • �������� ������ ����� ��������, ������� ����������� ����������� � �������� (��������� ��� �������). ��������, «radio» disabled= «disabled» /> .
  • ����������� ������� & , � > ������ ������ �������������. ��������, «?a=1&b=2» > & . ���������� ���������� ������ , ������ �������� ����������� ����� �� �����������.
  • ����� ��� XHTML ��������� ��������� ��������� �������:

    1. �������� ������ ��������� ������������ ���, � ������ �������� ����� �������������� �������� HTML.
    2. �������� ������ ��������� DOCTYPE ����� �������� ��������� � ��������� � �� ���� �� ����� XHTML � ��������������� DTD.

    ������ �������� ��������� XHTML1.0:

    � ��� ��� ��� �� �������.

    ���������� XML-���������, � ������� ����������� ��� ������ � ���������.

    ��� ������� ������������ ��������� ����� ������ ����������, ����� ����� ���������� �������� � ����������� (�� ��������� � ��������� ���������) ���������.

    ���������� ���� ��������� � ��� �����.

    ��� XHTML 1.0 ���� ��� ���� — Strict (������� ������������ ������������� W3C), Transitional (���������� ���) � Frameset (������������� �������). ��� ������� �� ��� ������������ ��������� DTD.

    ���������� ������������ ��� � ������������� �����.

    ����� ����� ��������� ������ ������ � ����� �������� � ����� �����. ��� ������� � ���, ��� � XML ����� ��������� � ���������� �� ��������� ����������������.

    ��� ������ XHTML1.0 ������������� ��� ������ �������� �������������:

    • Strict — ������������ ���������� ������������ ������������� W3C �� ������� ���������. ������ � ��� HTML-��� ������ ��������� ���� �������������.
    • Transitional — ����� ������� ������������, ������� ���������� ������� ����� ���� ���, ��� ���� �� ��� ��� ������� HTML-��������.
    • Frameset — ��������� ������������ ������.

    ������ XHTML1.0 �� ������ ������ �������� XHTML1.1:

    XHTML1.1 �� ���� �������� ��� �� XHTML1.0 Strict � ������� ��������� ������ ������ XHTML1.0. ������, �� ��������� � XHTML1.0 Strict, � ���� ���� ��� �������:

    1. ����� ������� lang , ��� ���� ��������� xml:lang . (������ [ XHTMLMOD ])
    2. ��� ��������� a � map ������ �������� name ����� ������������ ������� id . (������ [ XHTMLMOD ])
    3. �������� ����� ��������� ruby . (������ [ RUBY ])

    ����, ���� ��� ����� ���������� �����-������������ � ������������� � �������������� W3C, �� XHTML1.1 ����� ���!

    �� ���� ����������� ����������� ���� �������������� ����� ������ XHTML1.1.

    3. XSLT-��������������

    ��� ����� XSLT? ��� ���� �������������� XML-���������, ������� ��� ���������� ��� ����� ������������ ����� ������ (XSL).

    ����� ����� XSLT? �� ��������� ����������� �����, ��� ������� ������ �������� ��������, � �� ������������� ��������. �� ����, ���� XML-�������� ������������� � ������� ������� XML-��������� (XSL, � ������� ��������� XSLT-�������) � �������� ��������. ����������� ����� ���� XML, HTML ��� ��������� �������� ������ �������.

    ��� ����, ����� ��������������� XSLT-����������������, � ������ ������� ����� ������������ ���������� ����� XSL � ���������� ��� � XML-�����.

    �������� XSL-���������� �������� XML-��������, � �������� ������ ������������ ��� xsl � ������������ �������� ������� stylesheet. � ����� ������� ������ ����� ����� ���������, ��������, ���:

    ���� ����� �� �������� �����-���� ����� ����������� �������� ��� ������ ��������� XSL. ������, ��� ��� ����� ������������. ����� ���������� ���������, ���������� ������������ ������������ XML-�������� � ���������� � ���� ���� �����:

    �� ����������� ����� �������� ������:

    ���� ����� text.xml � test.xsl ������� � ��������� � ����� �����, �� � ������� ������ XSLT-������� ����� ������������� �������� test.xml � �������������� ��������. � �������� ������� ����� ��������� ��� ���������� �������� (IE5+, FF2+, Opera9+ � ������), � ����� ������ � ������ ����������������, ��������, � PHP. ���� �� ����������� �������, �� ���������� ������� test.xml, � �� ����� ��������� �������� ����� ���������:

    ��� ���� ��������� ���������� ����� UTF-8, �������� �� ��, ��� �������� �������� ��� ����������� � windows-1251. � ���������, �������� ������ �� ��������� ����������� ��� ��������������� ���������, �� ������ XSLT � PHP5 ��� ����������� �������� �������������� ��� � ����������, ������� ����� ��������� � ����. �������, ��������� PHP, � ������� �������� ��� ��������������� ���������:

    ���� ��� �� �������� �������� XML-���������� � ��� ����� XHTML1.1. ��� ����, ����� ������������ ������ ���, � ������� �������� XSL-����� � ������� ���� ����������� ������� � ��������������. ��� ���� �������� XML-�������� ��������� ��� ���������.

    � �������� ������� � ������� XSL-�����, ������� ��� ������ XSLT ����� �������� ������ ��������� ��������� XML-��������� � �� ����������, ��� ���� ����� ������������� �������� XHTML1.1. ����, �����:

    ����� ������, ��� �� ��������, � ������� ������ �������� ��������:

    �������� ����������� � ��������� windows-1251, � ��� ���������� � �������� encoding. ������ XML-��������� ���������� ������ ���������, ��� ������������ W3C.

    ����� ��� ���������� ��������� ��������, �����:

    ������������ ��������� �������� ����������� ������������ ��� xsl ����� ������� xmlns:xsl= «http://www.w3.org/1999/XSL/Transform» .

    ��������� ����� � �������� �������� stylesheet �����������, ����� ������� ����� ����������� �������������� ��������:

    • method= «xml» — ����� ������ ���������. �������������� �������� ����� � ������� XML.
    • encoding= «windows-1251» — ��������� ��������������� ���������.
    • omit-xml-declaration= «no» — ���������� ��� ��� ��������� ���������� XML-��������� ( ). ����� ����� �������� «yes» ��� «no» (��������� ������ ��� html).
    • indent= «yes» — ����������� ������� �������� ������ �����������. ����� ����� �������� «yes» ��� «no».
    • media-type= «text/xml» — MIME-��� ��������������� ��������� (������������ ������ ��� ������ ������ html).
    • doctype-public= «-//W3C//DTD XHTML 1.1//EN» — ��� ��������������� ��������� (DOCTYPE)
    • doctype-system= «http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd» — ������ �� DTD

    ���� ����� ������ �������� html, �� �������� ��������� encoding � media-type ����� ����������� � ��������� �������� ( . ) ����������� ��������.

    ���������� ��������� �������:

    ������ ���� XSLT-������ ������������� ����� ��������� ������ � ����� ������ ������ ��� ��������������. ������� match ��������� ��������, ������� ������ ��������������� ����� ������ ��������� XPath.

    ��������� �������, ���� ������� �������, ������ ������������ �� ����� ������� ��� ������ ������� XSLT.

    ������������ XHTML-��������. ��� ���������� � �������� , � �������� ������� ������������ ��� xhtml:

    ������� xmlns= «http://www.w3.org/1999/xhtml» ��������� �� ������������ ��� xhtml, ������� ����� ��������� �� ��������� � ����� �������� � ���� �������� ���������, � ������� ��� �� ������ ����.

    ������� xml:lang= «ru» ��������� �� ����, � ������� ������������ �������� (�������).

    ��� ����� ����� ���� ����� ��� ������������ ���������� ��������� XHTML1.1 ����.

    ������ ��� �������� XSLT-��������������:

    ������� �������� ������:

    ����� «��� ������:» ����� ���������� � ���

    ����������� ����� �� �������:

    ������� select ��������� ��������� XPath, �� ������ �������� ������ �������. ���� ������� ������� ������ �����, �� �������� �������� ���� �� ������� ��������.

    � ������ ������ ������� ����� ������ ��������� ��� ����� (���������) � ���� �������� ���������.

    � ������ ������ ����������� �� �������� ������� �������� � ������ �������. ���� ���� ���������� true (���������� ����� �������� ������), �� ����������� ���������� ����� ��������.

    ���������� ���������� ������������ ��������:

    � ������ ������, ���� ������� �������� ������ (������������ ����������� if), �� � ����� ��������
    ����� �������� ����� ���� ����.

    ����� �������� ��������:

    ���� ��� ��������� � ����������� ������� ������, ��������� �� ����� �������� �������� � ��� ��������. ���������� �������� select ������������� XPath.

    ����� ������ �� ������������ ������� XSLT:

    ���� ��������� ��� XSLT ��������� ������ �� ������������ ������� XSLT. �� ������ ������� ��� ����� ������ � ��������� ������ ��������.

    ����������� ��������� ����� ����� ( test.xsl ) ������ ����� ���:

    ���� ��� ������������� ��������� XHTML1.1 � ��� ����������� �� ������ ��������� XML-���������. ��� �������� ����� ��������������� ����������� �� W3C, ������� ���������� �� ������ http://validator.w3.org/.

    � �������� ���� ��� �������� �������� ���:

    IE 6 FireFox 3 Opera 9.02

    4. ����������

    ������ �� �������� ���

    ���������� ����� ������ //anton-pribora.ru/articles/xml/xslt-first-step/. /�����: ������� ����� ����������, 2009 ���/

    ������������� PHP5 ��� ��������� XSLT

    ��� ��������� ��������������� ��������� ��� ������ PHP5 � ����������� ����� ���:

    �������������� ���������� �� ������������� XSLT � PHP5 ����� ����� �� ������ http://ru2.php.net/manual/ru/book.xslt.php.

    ����� �����

    ���������, �� ����� �� ���� �������� ��������! � � ��������� ������� �������, ����������� ��� �����!�

    � 2020 ����� �������. ��� ����������� ���������� � �����, ����������, ���������� ������ �� ��������.

    xslt_set_scheme_handlers

    xslt_set_scheme_handlers � Set the scheme handlers for the XSLT processor

    Description

    Registers the scheme handlers (XPath handlers) for the document.

    Parameters

    An array with the following keys: «get_all», «open», «get», «put», and «close».

    Every entry must be a function name or an array in the following format: array($obj, «method»).

    Note that the given array does not need to contain all of the different scheme handler elements (although it can), but it only needs to conform to the «handler» => «fonction» format described above.

    Each of the indiv >

    Return Values

    No value is returned.

    Examples

    Example #1 xslt_set_scheme_handlers() example

    For example, here is an implementation of the «file_exists()» PHP function.

    // Definition of the handler
    function mySchemeHandler ( $processor , $scheme , $rest )
    <
    $rest = substr ( $rest , 1 ); // to remove the first / automatically added by the engine
    if ( $scheme == ‘file_exists’ ) <
    // result is embedded in a small xml string
    return ‘ ‘ . ( file_exists ( $rest ) ? ‘true’ : ‘false’ ) . ‘ ‘ ;
    >
    >

    $SchemeHandlerArray = array( ‘get_all’ => ‘mySchemeHandler’ );

    // Start the engine
    $params = array();
    $xh = xslt_create ();

    xslt_set_scheme_handlers ( $xh , $SchemeHandlerArray );

    $result = xslt_process ( $xh , «myFile.xml» , «myFile.xsl» , NULL , array(), $params );
    xslt_free ( $xh );

    Then, inside the stylesheet, you can test whether a certain file exists with:

    ��� ����� ��� xslt_set_scheme_handlers

    xslt_set_scheme_handlers — Set the scheme handlers for the XSLT processor

    Description vo >xslt_set_scheme_handlers ( resource processor, array handlers)

    This function is currently not documented; only the argument list is available.

    xslt_set_scheme_handlers is a powerful feature, derived from the Sablotron engine, which can help in various situations.

    Briefly, it allows you to call any kind of PHP instruction, during the treatment of a stylesheet, through the XSLT document() function.

    For example, here is an implementation of the «file_exists()» PHP function :

    // Definition of the handler :
    function mySchemeHandler($processor, $scheme, $rest) <
    $rest=substr($rest,1); // to remove the first / automatically added by the engine
    if($scheme == ‘file_exists’)
    return ‘ = «1.0» encoding = «UTF-8» ?> ‘.(file_exists($rest) ? «true» : «false»).» «;
    // result is embedded in a small xml string
    >

    // Initialisation of the handler (the «get_all» should be work in most cases) :
    $SchemeHandlerArray = array();
    $SchemeHandlerArray[«get_all»] = «mySchemeHandler»;

    // Start the engine :
    $params = array();
    $xh = xslt_create();
    xslt_set_scheme_handlers($xh,$SchemeHandlerArray);
    $result = xslt_process($xh,»myFile.xml»,»myFile.xsl»,NULL,array(),$params);
    xslt_free($xh);
    echo $result;

    Then, inside the stylesheet, you can test whether a certain file exists with :

    So finally, the principle is simple :
    — you define a scheme (here, I called it «file_exists»)
    — you write the action associated to that scheme (in the mySchemeHandler function)
    — you embed the (probable) results in an XML string, that you return.
    — and in the stylesheet, you check : document(‘myPersonalURIscheme:myXPath’)

    You can imagine many other uses for the mySchemeHandler() function.

    My framework is : PHP 4.2.3, Sablotron version 0.96, and Expat 1.95.5
    Please note that some older version of PHP might require an additionnal parameter :
    mySchemeHandler($processor,$scheme,$rest,&$buffer)
    and you place your XML in $buffer, instead of returning it with return().

    ��� ����� ��� xslt_set_scheme_handlers

    xslt_set_scheme_handlers — ������������� scheme-����������� ��� XSLT-����������.

    ��������

    void xslt_set_scheme_handlers (resource processor, array handlers)

    Warning

    ��� ������� � ��������� ����� ��� �� �����������������; ������� ������ ������ ����������.

    ��������������!

    ����� ���������� �����
    xslt_set_scheme_handler ����� ������� YAZ

    ���� �� �� ����� ��� ������, �� ���������� ��������������� ������� �� �����:

    xslt_set_scheme_handlers

    xslt_set_scheme_handlers � Set the scheme handlers for the XSLT processor

    Registers the scheme handlers (XPath handlers) for the document.

    An array with the following keys: «get_all», «open», «get», «put», and «close».

    Every entry must be a function name or an array in the following format: array($obj, «method»).

    Note that the given array does not need to contain all of the different scheme handler elements (although it can), but it only needs to conform to the «handler» => «function» format described above.

    Each of the indiv >

    Example #1 xslt_set_scheme_handlers() example

    For example, here is an implementation of the «file_exists()» PHP function.

    // Definition of the handler
    function mySchemeHandler ( $processor , $scheme , $rest )
    <
    $rest = substr ( $rest , 1 ); // to remove the first / automatically added by the engine
    if ( $scheme == ‘file_exists’ ) <
    // result is embedded in a small xml string
    return ‘ ‘ . ( file_exists ( $rest ) ? ‘true’ : ‘false’ ) . ‘ ‘ ;
    >
    >

    $SchemeHandlerArray = array( ‘get_all’ => ‘mySchemeHandler’ );

    // Start the engine
    $params = array();
    $xh = xslt_create ();

    xslt_set_scheme_handlers ( $xh , $SchemeHandlerArray );

    $result = xslt_process ( $xh , «myFile.xml» , «myFile.xsl» , NULL , array(), $params );
    xslt_free ( $xh );

    Then, inside the stylesheet, you can test whether a certain file exists with:

    ��� ����� ��� xslt_set_scheme_handlers

    xslt_set_scheme_handlers — Set the scheme handlers for the XSLT processor

    Description vo >xslt_set_scheme_handlers ( resource processor, array handlers)

    This function is currently not documented; only the argument list is available.

    xslt_set_scheme_handlers is a powerful feature, derived from the Sablotron engine, which can help in various situations.

    Briefly, it allows you to call any kind of PHP instruction, during the treatment of a stylesheet, through the XSLT document() function.

    For example, here is an implementation of the «file_exists()» PHP function :

    // Definition of the handler :
    function mySchemeHandler($processor, $scheme, $rest) <
    $rest=substr($rest,1); // to remove the first / automatically added by the engine
    if($scheme == ‘file_exists’)
    return ‘ = «1.0» encoding = «UTF-8» ?> ‘.(file_exists($rest) ? «true» : «false»).» «;
    // result is embedded in a small xml string
    >

    // Initialisation of the handler (the «get_all» should be work in most cases) :
    $SchemeHandlerArray = array();
    $SchemeHandlerArray[«get_all»] = «mySchemeHandler»;

    // Start the engine :
    $params = array();
    $xh = xslt_create();
    xslt_set_scheme_handlers($xh,$SchemeHandlerArray);
    $result = xslt_process($xh,»myFile.xml»,»myFile.xsl»,NULL,array(),$params);
    xslt_free($xh);
    echo $result;

    Then, inside the stylesheet, you can test whether a certain file exists with :

    So finally, the principle is simple :
    — you define a scheme (here, I called it «file_exists»)
    — you write the action associated to that scheme (in the mySchemeHandler function)
    — you embed the (probable) results in an XML string, that you return.
    — and in the stylesheet, you check : document(‘myPersonalURIscheme:myXPath’)

    You can imagine many other uses for the mySchemeHandler() function.

    My framework is : PHP 4.2.3, Sablotron version 0.96, and Expat 1.95.5
    Please note that some older version of PHP might require an additionnal parameter :
    mySchemeHandler($processor,$scheme,$rest,&$buffer)
    and you place your XML in $buffer, instead of returning it with return().

    XSLT ������ ���

    1. ��������

    �� ������ � ��� ��� � ��� ���, ��� � ���� ���������� ����� � ���, ��� ���� ������� XSLT -))). ����� ����������, � ����� ��� ����� PHP 4 � ����������� Salbotron , �������, ����� ������, �� ��������� ������� �������������������. �� � ����� ����� ������� ��� ������������ ���������� ����� ������ XSLT. �� ���� ������������ �������� ����� �������������� ����������� � ������� �� ������ �����. �� ������ ������ ����� ����� �������, ��� ��� ������� �������, ��������� ����� PHP 5 � ���������� XSLT � ������� ��������� �������, � ��� ������� �������� ��� ���� �������� ������ ��������������, ������ ������� XML. :)

    ������ ������ �� ����, ��������������:

    • http://w3c.org — ������� �� ���������� � ����������� ���������� ��������� ������� Internet. �� ������ ������ �� �������� ��������������� ����������� ���� ���-��������������� ���������� � ������������.
    • http://www.w3.org/TR/xml — ������������ ������������ ����� �������� XML, ������� �������� ������� ������������ ����. �� ������ ��������� ������ �������� ����� �������� ������ 1.0, � ����� ������ �������� ������ 1.1.
    • http://www.w3.org/TR/xml-names — ������������ ������������� ����������� ��� � XML.
    • http://www.w3.org/TR/xpath — ������������ �� ������������� ����� ������ ������ XML-��������� XPath.
    • http://www.w3.org/TR/xsl/ — ������������ ������������ ����� ������ XSL.
    • http://www.w3.org/TR/xslt — ������������ ����� �������������� XSLT.
    • http://validator.w3.org/ — ��������� HTML.
    • http://www.w3.org/TR/xhtml1/ — ������������ XHTML1.0.

    �������� �� ������� ����:

    ��� ������� ��������� ����� ������������� � ���������� ������ ������������ � ��������� �������:

    1. XML (��� ������!)
    2. ������������ ��� (�������� ������������ XML-���� � ����� �����)
    3. XPath (���� ������� ��������� �� ������ ���������)
    4. XSLT (��������������)
    5. XHTML (��, � ���� ����� ����������)

    ����� �������� ����� ����� ������� �������� ������������ ����� ������ XSL.

    2. �������� XHTML

    ��� ����� �������� XHTML? � ������ �������, ��� XML-��������, ������� ������ ��������������� ������������ XML. ��-������, ����� ������� HTML-��������, � ������� ��� ��������.

    ������ ����� ������ XHTML? ������������� �� ����������� ������������� � �����-������������. �������� � XHTML ����� � ������� ������������ ������������ ��������� � ���������� ���������, ��� ������� HTML.

    ��� �������� ��������� ������� �������������� XML-�������� ������ �������� ���������:

    1. �������� �������� ���������� XML-��������� � ����� ������ ��������:
    2. �������� �������� ���� �������� �������, � ������� ��������� ��� ���������.
    3. ��� �������� (����) ������ ����� ����������� ����� (
      ,

    ).

  • �������� ������ ����� ��������, ������� ����������� ����������� � �������� (��������� ��� �������). ��������, «radio» disabled= «disabled» /> .
  • ����������� ������� & , � > ������ ������ �������������. ��������, «?a=1&b=2» > & . ���������� ���������� ������ , ������ �������� ����������� ����� �� �����������.
  • ����� ��� XHTML ��������� ��������� ��������� �������:

    1. �������� ������ ��������� ������������ ���, � ������ �������� ����� �������������� �������� HTML.
    2. �������� ������ ��������� DOCTYPE ����� �������� ��������� � ��������� � �� ���� �� ����� XHTML � ��������������� DTD.

    ������ �������� ��������� XHTML1.0:

    � ��� ��� ��� �� �������.

    ���������� XML-���������, � ������� ����������� ��� ������ � ���������.

    ��� ������� ������������ ��������� ����� ������ ����������, ����� ����� ���������� �������� � ����������� (�� ��������� � ��������� ���������) ���������.

    ���������� ���� ��������� � ��� �����.

    ��� XHTML 1.0 ���� ��� ���� — Strict (������� ������������ ������������� W3C), Transitional (���������� ���) � Frameset (������������� �������). ��� ������� �� ��� ������������ ��������� DTD.

    ���������� ������������ ��� � ������������� �����.

    ����� ����� ��������� ������ ������ � ����� �������� � ����� �����. ��� ������� � ���, ��� � XML ����� ��������� � ���������� �� ��������� ����������������.

    ��� ������ XHTML1.0 ������������� ��� ������ �������� �������������:

    • Strict — ������������ ���������� ������������ ������������� W3C �� ������� ���������. ������ � ��� HTML-��� ������ ��������� ���� �������������.
    • Transitional — ����� ������� ������������, ������� ���������� ������� ����� ���� ���, ��� ���� �� ��� ��� ������� HTML-��������.
    • Frameset — ��������� ������������ ������.

    ������ XHTML1.0 �� ������ ������ �������� XHTML1.1:

    XHTML1.1 �� ���� �������� ��� �� XHTML1.0 Strict � ������� ��������� ������ ������ XHTML1.0. ������, �� ��������� � XHTML1.0 Strict, � ���� ���� ��� �������:

    1. ����� ������� lang , ��� ���� ��������� xml:lang . (������ [ XHTMLMOD ])
    2. ��� ��������� a � map ������ �������� name ����� ������������ ������� id . (������ [ XHTMLMOD ])
    3. �������� ����� ��������� ruby . (������ [ RUBY ])

    ����, ���� ��� ����� ���������� �����-������������ � ������������� � �������������� W3C, �� XHTML1.1 ����� ���!

    �� ���� ����������� ����������� ���� �������������� ����� ������ XHTML1.1.

    3. XSLT-��������������

    ��� ����� XSLT? ��� ���� �������������� XML-���������, ������� ��� ���������� ��� ����� ������������ ����� ������ (XSL).

    ����� ����� XSLT? �� ��������� ����������� �����, ��� ������� ������ �������� ��������, � �� ������������� ��������. �� ����, ���� XML-�������� ������������� � ������� ������� XML-��������� (XSL, � ������� ��������� XSLT-�������) � �������� ��������. ����������� ����� ���� XML, HTML ��� ��������� �������� ������ �������.

    ��� ����, ����� ��������������� XSLT-����������������, � ������ ������� ����� ������������ ���������� ����� XSL � ���������� ��� � XML-�����.

    �������� XSL-���������� �������� XML-��������, � �������� ������ ������������ ��� xsl � ������������ �������� ������� stylesheet. � ����� ������� ������ ����� ����� ���������, ��������, ���:

    ���� ����� �� �������� �����-���� ����� ����������� �������� ��� ������ ��������� XSL. ������, ��� ��� ����� ������������. ����� ���������� ���������, ���������� ������������ ������������ XML-�������� � ���������� � ���� ���� �����:

    �� ����������� ����� �������� ������:

    ���� ����� text.xml � test.xsl ������� � ��������� � ����� �����, �� � ������� ������ XSLT-������� ����� ������������� �������� test.xml � �������������� ��������. � �������� ������� ����� ��������� ��� ���������� �������� (IE5+, FF2+, Opera9+ � ������), � ����� ������ � ������ ����������������, ��������, � PHP. ���� �� ����������� �������, �� ���������� ������� test.xml, � �� ����� ��������� �������� ����� ���������:

    ��� ���� ��������� ���������� ����� UTF-8, �������� �� ��, ��� �������� �������� ��� ����������� � windows-1251. � ���������, �������� ������ �� ��������� ����������� ��� ��������������� ���������, �� ������ XSLT � PHP5 ��� ����������� �������� �������������� ��� � ����������, ������� ����� ��������� � ����. �������, ��������� PHP, � ������� �������� ��� ��������������� ���������:

    ���� ��� �� �������� �������� XML-���������� � ��� ����� XHTML1.1. ��� ����, ����� ������������ ������ ���, � ������� �������� XSL-����� � ������� ���� ����������� ������� � ��������������. ��� ���� �������� XML-�������� ��������� ��� ���������.

    � �������� ������� � ������� XSL-�����, ������� ��� ������ XSLT ����� �������� ������ ��������� ��������� XML-��������� � �� ����������, ��� ���� ����� ������������� �������� XHTML1.1. ����, �����:

    ����� ������, ��� �� ��������, � ������� ������ �������� ��������:

    �������� ����������� � ��������� windows-1251, � ��� ���������� � �������� encoding. ������ XML-��������� ���������� ������ ���������, ��� ������������ W3C.

    ����� ��� ���������� ��������� ��������, �����:

    ������������ ��������� �������� ����������� ������������ ��� xsl ����� ������� xmlns:xsl= «http://www.w3.org/1999/XSL/Transform» .

    ��������� ����� � �������� �������� stylesheet �����������, ����� ������� ����� ����������� �������������� ��������:

    • method= «xml» — ����� ������ ���������. �������������� �������� ����� � ������� XML.
    • encoding= «windows-1251» — ��������� ��������������� ���������.
    • omit-xml-declaration= «no» — ���������� ��� ��� ��������� ���������� XML-��������� ( ). ����� ����� �������� «yes» ��� «no» (��������� ������ ��� html).
    • indent= «yes» — ����������� ������� �������� ������ �����������. ����� ����� �������� «yes» ��� «no».
    • media-type= «text/xml» — MIME-��� ��������������� ��������� (������������ ������ ��� ������ ������ html).
    • doctype-public= «-//W3C//DTD XHTML 1.1//EN» — ��� ��������������� ��������� (DOCTYPE)
    • doctype-system= «http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd» — ������ �� DTD

    ���� ����� ������ �������� html, �� �������� ��������� encoding � media-type ����� ����������� � ��������� �������� ( . ) ����������� ��������.

    ���������� ��������� �������:

    ������ ���� XSLT-������ ������������� ����� ��������� ������ � ����� ������ ������ ��� ��������������. ������� match ��������� ��������, ������� ������ ��������������� ����� ������ ��������� XPath.

    ��������� �������, ���� ������� �������, ������ ������������ �� ����� ������� ��� ������ ������� XSLT.

    ������������ XHTML-��������. ��� ���������� � �������� , � �������� ������� ������������ ��� xhtml:

    ������� xmlns= «http://www.w3.org/1999/xhtml» ��������� �� ������������ ��� xhtml, ������� ����� ��������� �� ��������� � ����� �������� � ���� �������� ���������, � ������� ��� �� ������ ����.

    ������� xml:lang= «ru» ��������� �� ����, � ������� ������������ �������� (�������).

    ��� ����� ����� ���� ����� ��� ������������ ���������� ��������� XHTML1.1 ����.

    ������ ��� �������� XSLT-��������������:

    ������� �������� ������:

    ����� «��� ������:» ����� ���������� � ���

    ����������� ����� �� �������:

    ������� select ��������� ��������� XPath, �� ������ �������� ������ �������. ���� ������� ������� ������ �����, �� �������� �������� ���� �� ������� ��������.

    � ������ ������ ������� ����� ������ ��������� ��� ����� (���������) � ���� �������� ���������.

    � ������ ������ ����������� �� �������� ������� �������� � ������ �������. ���� ���� ���������� true (���������� ����� �������� ������), �� ����������� ���������� ����� ��������.

    ���������� ���������� ������������ ��������:

    � ������ ������, ���� ������� �������� ������ (������������ ����������� if), �� � ����� ��������
    ����� �������� ����� ���� ����.

    ����� �������� ��������:

    ���� ��� ��������� � ����������� ������� ������, ��������� �� ����� �������� �������� � ��� ��������. ���������� �������� select ������������� XPath.

    ����� ������ �� ������������ ������� XSLT:

    ���� ��������� ��� XSLT ��������� ������ �� ������������ ������� XSLT. �� ������ ������� ��� ����� ������ � ��������� ������ ��������.

    ����������� ��������� ����� ����� ( test.xsl ) ������ ����� ���:

    ���� ��� ������������� ��������� XHTML1.1 � ��� ����������� �� ������ ��������� XML-���������. ��� �������� ����� ��������������� ����������� �� W3C, ������� ���������� �� ������ http://validator.w3.org/.

    � �������� ���� ��� �������� �������� ���:

    Warning
    IE 6 FireFox 3 Opera 9.02

    4. ����������

    ������ �� �������� ���

    ���������� ����� ������ //anton-pribora.ru/articles/xml/xslt-first-step/. /�����: ������� ����� ����������, 2009 ���/

    ������������� PHP5 ��� ��������� XSLT

    ��� ��������� ��������������� ��������� ��� ������ PHP5 � ����������� ����� ���:

    �������������� ���������� �� ������������� XSLT � PHP5 ����� ����� �� ������ http://ru2.php.net/manual/ru/book.xslt.php.

    ����� �����

    ���������, �� ����� �� ���� �������� ��������! � � ��������� ������� �������, ����������� ��� �����!�

    � 2020 ����� �������. ��� ����������� ���������� � �����, ����������, ���������� ������ �� ��������.

    xslt_set_scheme_handler

    xslt_set_scheme_handler — Set Scheme handlers for a XSLT processor

    Описание

    Set Scheme handlers on the resource handle given by xh .

    Список параметров

    The XSLT processor link identifier, created with xslt_create().

    Scheme handlers should be an array with the format (all elements are optional):

    Возвращаемые значения

    Эта функция не возвращает значения после выполнения.

    Илон Маск рекомендует:  Разработка запросов
    Понравилась статья? Поделиться с друзьями:
    Кодинг, CSS и SQL