{"id":4505,"date":"2021-08-04T09:00:25","date_gmt":"2021-08-04T09:00:25","guid":{"rendered":"https:\/\/www.bearloga.space\/?page_id=4505"},"modified":"2021-08-04T09:00:26","modified_gmt":"2021-08-04T09:00:26","slug":"ruby-uchebnik-po-xml-xslt-i-xpath","status":"publish","type":"page","link":"https:\/\/www.bearloga.space\/uk\/ruby-uchebnik-po-xml-xslt-i-xpath\/","title":{"rendered":"Ruby \u2014 \u0443\u0447\u0435\u0431\u043d\u0438\u043a \u043f\u043e XML, XSLT \u0438 XPath"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">\u0420\u0430\u0441\u0448\u0438\u0440\u044f\u0435\u043c\u044b\u0439 \u044f\u0437\u044b\u043a \u0440\u0430\u0437\u043c\u0435\u0442\u043a\u0438 (XML) \u2014 \u044d\u0442\u043e \u044f\u0437\u044b\u043a \u0440\u0430\u0437\u043c\u0435\u0442\u043a\u0438, \u043e\u0447\u0435\u043d\u044c \u043f\u043e\u0445\u043e\u0436\u0438\u0439 \u043d\u0430 HTML \u0438\u043b\u0438 SGML.&nbsp;\u042d\u0442\u043e \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u0435\u0442\u0441\u044f \u041a\u043e\u043d\u0441\u043e\u0440\u0446\u0438\u0443\u043c\u043e\u043c World Wide Web \u0438 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u043e\u0442\u043a\u0440\u044b\u0442\u043e\u0433\u043e \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u0430.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">XML \u2014 \u044d\u0442\u043e \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0438\u043c\u044b\u0439 \u044f\u0437\u044b\u043a \u0441 \u043e\u0442\u043a\u0440\u044b\u0442\u044b\u043c \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u043c \u043a\u043e\u0434\u043e\u043c, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0441\u0442\u0430\u043c \u0440\u0430\u0437\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0442\u044c \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043c\u043e\u0433\u0443\u0442 \u0431\u044b\u0442\u044c \u043f\u0440\u043e\u0447\u0438\u0442\u0430\u043d\u044b \u0434\u0440\u0443\u0433\u0438\u043c\u0438 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u043c\u0438, \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e \u043e\u0442 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0438 \/ \u0438\u043b\u0438 \u044f\u0437\u044b\u043a\u0430 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">XML \u0447\u0440\u0435\u0437\u0432\u044b\u0447\u0430\u0439\u043d\u043e \u043f\u043e\u043b\u0435\u0437\u0435\u043d \u0434\u043b\u044f \u043e\u0442\u0441\u043b\u0435\u0436\u0438\u0432\u0430\u043d\u0438\u044f \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u0438\u0445 \u0438 \u0441\u0440\u0435\u0434\u043d\u0438\u0445 \u043e\u0431\u044a\u0435\u043c\u043e\u0432 \u0434\u0430\u043d\u043d\u044b\u0445, \u043d\u0435 \u0442\u0440\u0435\u0431\u0443\u044f \u043c\u0430\u0433\u0438\u0441\u0442\u0440\u0430\u043b\u0438 \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 SQL.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">XML Parser \u0410\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u044b \u0438 API<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0414\u043b\u044f \u0441\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0430\u043d\u0430\u043b\u0438\u0437\u0430\u0442\u043e\u0440\u043e\u0432 XML \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b \u0434\u0432\u0430 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u0430:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li><strong>SAX-like (\u043f\u043e\u0442\u043e\u043a\u043e\u0432\u044b\u0435 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u044b)<\/strong>&nbsp;\u2014 \u0437\u0434\u0435\u0441\u044c \u0432\u044b \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0438\u0440\u0443\u0435\u0442\u0435 \u043e\u0431\u0440\u0430\u0442\u043d\u044b\u0435 \u0432\u044b\u0437\u043e\u0432\u044b \u0434\u043b\u044f \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u0443\u044e\u0449\u0438\u0445 \u0441\u043e\u0431\u044b\u0442\u0438\u0439, \u0430 \u0437\u0430\u0442\u0435\u043c \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442\u0435 \u0430\u043d\u0430\u043b\u0438\u0437\u0430\u0442\u043e\u0440\u0443 \u043f\u0440\u043e\u0445\u043e\u0434\u0438\u0442\u044c \u0447\u0435\u0440\u0435\u0437 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442.&nbsp;\u042d\u0442\u043e \u043f\u043e\u043b\u0435\u0437\u043d\u043e, \u043a\u043e\u0433\u0434\u0430 \u0432\u0430\u0448\u0438 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u044b \u0431\u043e\u043b\u044c\u0448\u0438\u0435 \u0438\u043b\u0438 \u0443 \u0432\u0430\u0441 \u0435\u0441\u0442\u044c \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u044f \u043f\u0430\u043c\u044f\u0442\u0438, \u043e\u043d \u0430\u043d\u0430\u043b\u0438\u0437\u0438\u0440\u0443\u0435\u0442 \u0444\u0430\u0439\u043b, \u043a\u043e\u0433\u0434\u0430 \u0447\u0438\u0442\u0430\u0435\u0442 \u0435\u0433\u043e \u0441 \u0434\u0438\u0441\u043a\u0430, \u0438 \u0432\u0435\u0441\u044c \u0444\u0430\u0439\u043b \u043d\u0438\u043a\u043e\u0433\u0434\u0430 \u043d\u0435 \u0441\u043e\u0445\u0440\u0430\u043d\u044f\u0435\u0442\u0441\u044f \u0432 \u043f\u0430\u043c\u044f\u0442\u0438.<\/li><li><strong>DOM-like (\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u044b \u0434\u0435\u0440\u0435\u0432\u0430 \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432)<\/strong>&nbsp;\u2014 \u044d\u0442\u043e \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0430\u0446\u0438\u044f \u041a\u043e\u043d\u0441\u043e\u0440\u0446\u0438\u0443\u043c\u0430 World Wide Web, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u0432\u0435\u0441\u044c \u0444\u0430\u0439\u043b \u0441\u0447\u0438\u0442\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u0432 \u043f\u0430\u043c\u044f\u0442\u044c \u0438 \u0445\u0440\u0430\u043d\u0438\u0442\u0441\u044f \u0432 \u0438\u0435\u0440\u0430\u0440\u0445\u0438\u0447\u0435\u0441\u043a\u043e\u0439 (\u043e\u0441\u043d\u043e\u0432\u0430\u043d\u043d\u043e\u0439 \u043d\u0430 \u0434\u0435\u0440\u0435\u0432\u0435) \u0444\u043e\u0440\u043c\u0435 \u0434\u043b\u044f \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0432\u0441\u0435\u0445 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0435\u0439 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430 XML.<\/li><\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>SAX-like (\u043f\u043e\u0442\u043e\u043a\u043e\u0432\u044b\u0435 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u044b)<\/strong>&nbsp;\u2014 \u0437\u0434\u0435\u0441\u044c \u0432\u044b \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0438\u0440\u0443\u0435\u0442\u0435 \u043e\u0431\u0440\u0430\u0442\u043d\u044b\u0435 \u0432\u044b\u0437\u043e\u0432\u044b \u0434\u043b\u044f \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u0443\u044e\u0449\u0438\u0445 \u0441\u043e\u0431\u044b\u0442\u0438\u0439, \u0430 \u0437\u0430\u0442\u0435\u043c \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442\u0435 \u0430\u043d\u0430\u043b\u0438\u0437\u0430\u0442\u043e\u0440\u0443 \u043f\u0440\u043e\u0445\u043e\u0434\u0438\u0442\u044c \u0447\u0435\u0440\u0435\u0437 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442.&nbsp;\u042d\u0442\u043e \u043f\u043e\u043b\u0435\u0437\u043d\u043e, \u043a\u043e\u0433\u0434\u0430 \u0432\u0430\u0448\u0438 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u044b \u0431\u043e\u043b\u044c\u0448\u0438\u0435 \u0438\u043b\u0438 \u0443 \u0432\u0430\u0441 \u0435\u0441\u0442\u044c \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u044f \u043f\u0430\u043c\u044f\u0442\u0438, \u043e\u043d \u0430\u043d\u0430\u043b\u0438\u0437\u0438\u0440\u0443\u0435\u0442 \u0444\u0430\u0439\u043b, \u043a\u043e\u0433\u0434\u0430 \u0447\u0438\u0442\u0430\u0435\u0442 \u0435\u0433\u043e \u0441 \u0434\u0438\u0441\u043a\u0430, \u0438 \u0432\u0435\u0441\u044c \u0444\u0430\u0439\u043b \u043d\u0438\u043a\u043e\u0433\u0434\u0430 \u043d\u0435 \u0441\u043e\u0445\u0440\u0430\u043d\u044f\u0435\u0442\u0441\u044f \u0432 \u043f\u0430\u043c\u044f\u0442\u0438.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>DOM-like (\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u044b \u0434\u0435\u0440\u0435\u0432\u0430 \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432)<\/strong>&nbsp;\u2014 \u044d\u0442\u043e \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0430\u0446\u0438\u044f \u041a\u043e\u043d\u0441\u043e\u0440\u0446\u0438\u0443\u043c\u0430 World Wide Web, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u0432\u0435\u0441\u044c \u0444\u0430\u0439\u043b \u0441\u0447\u0438\u0442\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u0432 \u043f\u0430\u043c\u044f\u0442\u044c \u0438 \u0445\u0440\u0430\u043d\u0438\u0442\u0441\u044f \u0432 \u0438\u0435\u0440\u0430\u0440\u0445\u0438\u0447\u0435\u0441\u043a\u043e\u0439 (\u043e\u0441\u043d\u043e\u0432\u0430\u043d\u043d\u043e\u0439 \u043d\u0430 \u0434\u0435\u0440\u0435\u0432\u0435) \u0444\u043e\u0440\u043c\u0435 \u0434\u043b\u044f \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0432\u0441\u0435\u0445 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0435\u0439 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430 XML.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u041e\u0447\u0435\u0432\u0438\u0434\u043d\u043e, \u0447\u0442\u043e SAX \u043d\u0435 \u043c\u043e\u0436\u0435\u0442 \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0442\u044c \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u0442\u0430\u043a \u0436\u0435 \u0431\u044b\u0441\u0442\u0440\u043e, \u043a\u0430\u043a DOM \u043f\u0440\u0438 \u0440\u0430\u0431\u043e\u0442\u0435 \u0441 \u0431\u043e\u043b\u044c\u0448\u0438\u043c\u0438 \u0444\u0430\u0439\u043b\u0430\u043c\u0438.&nbsp;\u0421 \u0434\u0440\u0443\u0433\u043e\u0439 \u0441\u0442\u043e\u0440\u043e\u043d\u044b, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u0438\u0441\u043a\u043b\u044e\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e DOM \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u043c\u043e\u0436\u0435\u0442 \u0443\u0431\u0438\u0442\u044c \u0432\u0430\u0448\u0438 \u0440\u0435\u0441\u0443\u0440\u0441\u044b, \u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e \u0435\u0441\u043b\u0438 \u043e\u043d\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442\u0441\u044f \u0434\u043b\u044f \u0431\u043e\u043b\u044c\u0448\u043e\u0433\u043e \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u0430 \u043c\u0430\u043b\u0435\u043d\u044c\u043a\u0438\u0445 \u0444\u0430\u0439\u043b\u043e\u0432.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">SAX \u0434\u043e\u0441\u0442\u0443\u043f\u0435\u043d \u0442\u043e\u043b\u044c\u043a\u043e \u0434\u043b\u044f \u0447\u0442\u0435\u043d\u0438\u044f, \u0430 DOM \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0432\u043d\u043e\u0441\u0438\u0442\u044c \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0432 \u0444\u0430\u0439\u043b XML.&nbsp;\u041f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u044d\u0442\u0438 \u0434\u0432\u0430 \u0440\u0430\u0437\u043d\u044b\u0445 API \u0431\u0443\u043a\u0432\u0430\u043b\u044c\u043d\u043e \u0434\u043e\u043f\u043e\u043b\u043d\u044f\u044e\u0442 \u0434\u0440\u0443\u0433 \u0434\u0440\u0443\u0433\u0430, \u043d\u0435\u0442 \u043d\u0438\u043a\u0430\u043a\u0438\u0445 \u043f\u0440\u0438\u0447\u0438\u043d, \u043f\u043e \u043a\u043e\u0442\u043e\u0440\u044b\u043c \u0432\u044b \u043d\u0435 \u043c\u043e\u0436\u0435\u0442\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0438\u0445 \u043e\u0431\u0430 \u0434\u043b\u044f \u0431\u043e\u043b\u044c\u0448\u0438\u0445 \u043f\u0440\u043e\u0435\u043a\u0442\u043e\u0432.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u0420\u0430\u0437\u0431\u043e\u0440 \u0438 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435 XML \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c Ruby<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u041d\u0430\u0438\u0431\u043e\u043b\u0435\u0435 \u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0435\u043d\u043d\u044b\u0439 \u0441\u043f\u043e\u0441\u043e\u0431 \u043c\u0430\u043d\u0438\u043f\u0443\u043b\u0438\u0440\u043e\u0432\u0430\u0442\u044c XML \u2014 \u044d\u0442\u043e \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0430 REXML \u0428\u043e\u043d\u0430 \u0420\u0430\u0441\u0441\u0435\u043b\u0430.&nbsp;\u0421 2002 \u0433\u043e\u0434\u0430 REXML \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0447\u0430\u0441\u0442\u044c\u044e \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u043e\u0433\u043e \u0434\u0438\u0441\u0442\u0440\u0438\u0431\u0443\u0442\u0438\u0432\u0430 Ruby.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">REXML \u2014 \u044d\u0442\u043e \u0447\u0438\u0441\u0442\u044b\u0439 XML-\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440 Ruby, \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0439 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u0443 XML 1.0.&nbsp;\u042d\u0442\u043e&nbsp;<em>\u043d\u0435 \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u044e\u0449\u0438\u0439<\/em>&nbsp;\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u0440\u043e\u0445\u043e\u0434\u0438\u0442 \u0432\u0441\u0435 \u043d\u0435 \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0430\u044e\u0449\u0438\u0435 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u044f OASIS.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u041f\u0430\u0440\u0441\u0435\u0440 REXML \u0438\u043c\u0435\u0435\u0442 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u043f\u0440\u0435\u0438\u043c\u0443\u0449\u0435\u0441\u0442\u0432\u0430 \u043f\u0435\u0440\u0435\u0434 \u0434\u0440\u0443\u0433\u0438\u043c\u0438 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u043c\u0438 \u043f\u0430\u0440\u0441\u0435\u0440\u0430\u043c\u0438:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>\u041d\u0430 Ruby \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043e 100 \u043f\u0440\u043e\u0446\u0435\u043d\u0442\u043e\u0432.<\/li><li>\u041c\u043e\u0436\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u043a\u0430\u043a \u0434\u043b\u044f SAX, \u0442\u0430\u043a \u0438 \u0434\u043b\u044f DOM-\u0430\u043d\u0430\u043b\u0438\u0437\u0430.<\/li><li>\u042d\u0442\u043e \u043b\u0435\u0433\u043a\u0438\u0439, \u043c\u0435\u043d\u0435\u0435 2000 \u0441\u0442\u0440\u043e\u043a \u043a\u043e\u0434\u0430.<\/li><li>\u041c\u0435\u0442\u043e\u0434\u044b \u0438 \u043a\u043b\u0430\u0441\u0441\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u043f\u0440\u043e\u0441\u0442\u044b \u0434\u043b\u044f \u043f\u043e\u043d\u0438\u043c\u0430\u043d\u0438\u044f.<\/li><li>API \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 SAX2 \u0438 \u043f\u043e\u043b\u043d\u0430\u044f \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 XPath.<\/li><li>\u041f\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0441 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u043e\u0439 Ruby \u0438 \u043d\u0435 \u0442\u0440\u0435\u0431\u0443\u0435\u0442 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e\u0439 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438.<\/li><\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u0414\u043b\u044f \u0432\u0441\u0435\u0445 \u043d\u0430\u0448\u0438\u0445 \u043f\u0440\u0438\u043c\u0435\u0440\u043e\u0432 XML-\u043a\u043e\u0434\u0430 \u0434\u0430\u0432\u0430\u0439\u0442\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043f\u0440\u043e\u0441\u0442\u043e\u0439 XML-\u0444\u0430\u0439\u043b \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0432\u0445\u043e\u0434\u043d\u044b\u0445 \u0434\u0430\u043d\u043d\u044b\u0445 \u2014<\/p>\n\n\n\n<pre id=\"movies_xml\" class=\"wp-block-preformatted\">&lt;collection shelf = \"New Arrivals\"&gt;\n   &lt;movie title = \"Enemy Behind\"&gt;\n      &lt;type&gt;War, Thriller&lt;\/type&gt;\n      &lt;format&gt;DVD&lt;\/format&gt;\n      &lt;year&gt;2003&lt;\/year&gt;\n      &lt;rating&gt;PG&lt;\/rating&gt;\n      &lt;stars&gt;10&lt;\/stars&gt;\n      &lt;description&gt;Talk about a US-Japan war&lt;\/description&gt;\n   &lt;\/movie&gt;\n   &lt;movie title = \"Transformers\"&gt;\n      &lt;type&gt;Anime, Science Fiction&lt;\/type&gt;\n      &lt;format&gt;DVD&lt;\/format&gt;\n      &lt;year&gt;1989&lt;\/year&gt;\n      &lt;rating&gt;R&lt;\/rating&gt;\n      &lt;stars&gt;8&lt;\/stars&gt;\n      &lt;description&gt;A schientific fiction&lt;\/description&gt;\n   &lt;\/movie&gt;\n   &lt;movie title = \"Trigun\"&gt;\n      &lt;type&gt;Anime, Action&lt;\/type&gt;\n      &lt;format&gt;DVD&lt;\/format&gt;\n      &lt;episodes&gt;4&lt;\/episodes&gt;\n      &lt;rating&gt;PG&lt;\/rating&gt;\n      &lt;stars&gt;10&lt;\/stars&gt;\n      &lt;description&gt;Vash the Stampede!&lt;\/description&gt;\n   &lt;\/movie&gt;\n   &lt;movie title = \"Ishtar\"&gt;\n      &lt;type&gt;Comedy&lt;\/type&gt;\n      &lt;format&gt;VHS&lt;\/format&gt;\n      &lt;rating&gt;PG&lt;\/rating&gt;\n      &lt;stars&gt;2&lt;\/stars&gt;\n      &lt;description&gt;Viewable boredom&lt;\/description&gt;\n   &lt;\/movie&gt;\n&lt;\/collection&gt;<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">DOM-\u043f\u043e\u0434\u043e\u0431\u043d\u044b\u0439 \u0430\u043d\u0430\u043b\u0438\u0437<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u0441\u043d\u0430\u0447\u0430\u043b\u0430 \u043f\u0440\u043e\u0430\u043d\u0430\u043b\u0438\u0437\u0438\u0440\u0443\u0435\u043c \u043d\u0430\u0448\u0438 XML-\u0434\u0430\u043d\u043d\u044b\u0435 \u0432 \u0432\u0438\u0434\u0435&nbsp;<em>\u0434\u0435\u0440\u0435\u0432\u0430<\/em>&nbsp;.&nbsp;\u041c\u044b \u043d\u0430\u0447\u0438\u043d\u0430\u0435\u043c \u0441 \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438&nbsp;<strong>rexml \/ document<\/strong>&nbsp;;&nbsp;\u0447\u0430\u0441\u0442\u043e \u0434\u043b\u044f \u0443\u0434\u043e\u0431\u0441\u0442\u0432\u0430 \u043c\u044b \u0434\u0435\u043b\u0430\u0435\u043c include REXML \u0434\u043b\u044f \u0438\u043c\u043f\u043e\u0440\u0442\u0430 \u0432 \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u043e \u0438\u043c\u0435\u043d \u0432\u0435\u0440\u0445\u043d\u0435\u0433\u043e \u0443\u0440\u043e\u0432\u043d\u044f.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">#!\/usr\/bin\/ruby -w\n\nrequire 'rexml\/document'\ninclude REXML\n\nxmlfile = File.new(\"movies.xml\")\nxmldoc = Document.new(xmlfile)\n\n# Now get the root element\nroot = xmldoc.root\nputs \"Root element : \" + root.attributes[\"shelf\"]\n\n# This will output all the movie titles.\nxmldoc.elements.each(\"collection\/movie\"){ \n   |e| puts \"Movie Title : \" + e.attributes[\"title\"] \n}\n\n# This will output all the movie types.\nxmldoc.elements.each(\"collection\/movie\/type\") {\n   |e| puts \"Movie Type : \" + e.text \n}\n\n# This will output all the movie description.\nxmldoc.elements.each(\"collection\/movie\/description\") {\n   |e| puts \"Movie Description : \" + e.text \n}\n<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\u042d\u0442\u043e \u0434\u0430\u0441\u0442 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u2014<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Root element : New Arrivals\nMovie Title : Enemy Behind\nMovie Title : Transformers\nMovie Title : Trigun\nMovie Title : Ishtar\nMovie Type : War, Thriller\nMovie Type : Anime, Science Fiction\nMovie Type : Anime, Action\nMovie Type : Comedy\nMovie Description : Talk about a US-Japan war\nMovie Description : A schientific fiction\nMovie Description : Vash the Stampede!\nMovie Description : Viewable boredom\n<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">SAX-\u043f\u043e\u0434\u043e\u0431\u043d\u044b\u0439 \u0430\u043d\u0430\u043b\u0438\u0437<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0427\u0442\u043e\u0431\u044b \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0442\u0435 \u0436\u0435 \u0434\u0430\u043d\u043d\u044b\u0435,&nbsp;<em>\u0444\u0438\u043b\u044c\u043c\u044b.xml<\/em>&nbsp;, \u0444\u0430\u0439\u043b&nbsp;<em>\u043e\u0440\u0438\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u043c<\/em>&nbsp;\u043d\u0430&nbsp;<em>\u043f\u043e\u0442\u043e\u043a<\/em>&nbsp;\u0441\u043f\u043e\u0441\u043e\u0431\u043e\u043c, \u043c\u044b \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u043c \u043a\u043b\u0430\u0441\u0441&nbsp;<em>\u0441\u043b\u0443\u0448\u0430\u0442\u0435\u043b\u044f,<\/em>&nbsp;\u0447\u044c\u0438 \u043c\u0435\u0442\u043e\u0434\u044b \u0431\u0443\u0434\u0443\u0442 \u044f\u0432\u043b\u044f\u0442\u044c\u0441\u044f \u0446\u0435\u043b\u044c\u044e \u0434\u043b\u044f&nbsp;<em>\u043e\u0431\u0440\u0430\u0442\u043d\u044b\u0445 \u0432\u044b\u0437\u043e\u0432\u043e\u0432<\/em>&nbsp;\u043e\u0442 \u0430\u043d\u0430\u043b\u0438\u0437\u0430\u0442\u043e\u0440\u0430.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>\u041f\u0420\u0418\u041c\u0415\u0427\u0410\u041d\u0418\u0415.<\/strong>&nbsp;\u2014 \u041d\u0435 \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u0435\u0442\u0441\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c SAX-\u043f\u043e\u0434\u043e\u0431\u043d\u044b\u0439 \u0441\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u0430\u043d\u0430\u043b\u0438\u0437 \u0434\u043b\u044f \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u043e\u0433\u043e \u0444\u0430\u0439\u043b\u0430, \u044d\u0442\u043e \u0442\u043e\u043b\u044c\u043a\u043e \u0434\u043b\u044f \u0434\u0435\u043c\u043e\u043d\u0441\u0442\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0433\u043e \u043f\u0440\u0438\u043c\u0435\u0440\u0430.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">#!\/usr\/bin\/ruby -w\n\nrequire 'rexml\/document'\nrequire 'rexml\/streamlistener'\ninclude REXML\n\nclass MyListener\n   include REXML::StreamListener\n   def tag_start(*args)\n      puts \"tag_start: #{args.map {|x| x.inspect}.join(', ')}\"\n   end\n\n   def text(data)\n      return if data =~ \/^\\w*$\/     # whitespace only\n      abbrev = data[0..40] + (data.length &gt; 40 ? \"...\" : \"\")\n      puts \"  text   :   #{abbrev.inspect}\"\n   end\nend\n\nlist = MyListener.new\nxmlfile = File.new(\"movies.xml\")\nDocument.parse_stream(xmlfile, list)\n<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\u042d\u0442\u043e \u0434\u0430\u0441\u0442 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u2014<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">tag_start: \"collection\", {\"shelf\"=&gt;\"New Arrivals\"}\ntag_start: \"movie\", {\"title\"=&gt;\"Enemy Behind\"}\ntag_start: \"type\", {}\n   text   :   \"War, Thriller\"\ntag_start: \"format\", {}\ntag_start: \"year\", {}\ntag_start: \"rating\", {}\ntag_start: \"stars\", {}\ntag_start: \"description\", {}\n   text   :   \"Talk about a US-Japan war\"\ntag_start: \"movie\", {\"title\"=&gt;\"Transformers\"}\ntag_start: \"type\", {}\n   text   :   \"Anime, Science Fiction\"\ntag_start: \"format\", {}\ntag_start: \"year\", {}\ntag_start: \"rating\", {}\ntag_start: \"stars\", {}\ntag_start: \"description\", {}\n   text   :   \"A schientific fiction\"\ntag_start: \"movie\", {\"title\"=&gt;\"Trigun\"}\ntag_start: \"type\", {}\n   text   :   \"Anime, Action\"\ntag_start: \"format\", {}\ntag_start: \"episodes\", {}\ntag_start: \"rating\", {}\ntag_start: \"stars\", {}\ntag_start: \"description\", {}\n   text   :   \"Vash the Stampede!\"\ntag_start: \"movie\", {\"title\"=&gt;\"Ishtar\"}\ntag_start: \"type\", {}\ntag_start: \"format\", {}\ntag_start: \"rating\", {}\ntag_start: \"stars\", {}\ntag_start: \"description\", {}\n   text   :   \"Viewable boredom\"\n<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">XPath \u0438 Ruby<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0410\u043b\u044c\u0442\u0435\u0440\u043d\u0430\u0442\u0438\u0432\u043d\u044b\u0439 \u0441\u043f\u043e\u0441\u043e\u0431 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 XML \u2014 \u044d\u0442\u043e XPath.&nbsp;\u042d\u0442\u043e \u0441\u0432\u043e\u0435\u0433\u043e \u0440\u043e\u0434\u0430 \u043f\u0441\u0435\u0432\u0434\u043e-\u044f\u0437\u044b\u043a, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043e\u043f\u0438\u0441\u044b\u0432\u0430\u0435\u0442, \u043a\u0430\u043a \u043d\u0430\u0439\u0442\u0438 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u044b\u0435 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u044b \u0438 \u0430\u0442\u0440\u0438\u0431\u0443\u0442\u044b \u0432 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0435 XML, \u0442\u0440\u0430\u043a\u0442\u0443\u044f \u044d\u0442\u043e\u0442 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442 \u043a\u0430\u043a \u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u0443\u043f\u043e\u0440\u044f\u0434\u043e\u0447\u0435\u043d\u043d\u043e\u0435 \u0434\u0435\u0440\u0435\u0432\u043e.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">REXML \u0438\u043c\u0435\u0435\u0442 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0443 XPath \u0447\u0435\u0440\u0435\u0437 \u043a\u043b\u0430\u0441\u0441&nbsp;<em>XPath<\/em>&nbsp;.&nbsp;\u041e\u043d \u043f\u0440\u0435\u0434\u043f\u043e\u043b\u0430\u0433\u0430\u0435\u0442 \u0441\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u0430\u043d\u0430\u043b\u0438\u0437 \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u0434\u0435\u0440\u0435\u0432\u0430 (\u043e\u0431\u044a\u0435\u043a\u0442\u043d\u0430\u044f \u043c\u043e\u0434\u0435\u043b\u044c \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430), \u043a\u0430\u043a \u043c\u044b \u0432\u0438\u0434\u0435\u043b\u0438 \u0432\u044b\u0448\u0435.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">#!\/usr\/bin\/ruby -w\n\nrequire 'rexml\/document'\ninclude REXML\n\nxmlfile = File.new(\"movies.xml\")\nxmldoc = Document.new(xmlfile)\n\n# Info for the first movie found\nmovie = XPath.first(xmldoc, \"\/\/movie\")\np movie\n\n# Print out all the movie types\nXPath.each(xmldoc, \"\/\/type\") { |e| puts e.text }\n\n# Get an array of all of the movie formats.\nnames = XPath.match(xmldoc, \"\/\/format\").map {|x| x.text }\np names\n<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\u042d\u0442\u043e \u0434\u0430\u0441\u0442 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u2014<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&lt;movie title = 'Enemy Behind'&gt; ... &lt;\/&gt;\nWar, Thriller\nAnime, Science Fiction\nAnime, Action\nComedy\n[\"DVD\", \"DVD\", \"DVD\", \"VHS\"]\n<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">XSLT \u0438 Ruby<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0421\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442 \u0434\u0432\u0430 \u043f\u0430\u0440\u0441\u0435\u0440\u0430 XSLT, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043c\u043e\u0436\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c Ruby.&nbsp;\u041a\u0440\u0430\u0442\u043a\u043e\u0435 \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043d\u043e \u0437\u0434\u0435\u0441\u044c.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\u0420\u0443\u0431\u0438\u043d-Sablotron<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">\u042d\u0442\u043e\u0442 \u043f\u0430\u0440\u0441\u0435\u0440 \u043d\u0430\u043f\u0438\u0441\u0430\u043d \u0438 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u041c\u0430\u0441\u0430\u0451\u0441\u0438 \u0422\u0430\u043a\u0430\u0445\u0430\u0448\u0438.&nbsp;\u042d\u0442\u043e \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043e \u0432 \u043f\u0435\u0440\u0432\u0443\u044e \u043e\u0447\u0435\u0440\u0435\u0434\u044c \u0434\u043b\u044f \u041e\u0421 Linux \u0438 \u0442\u0440\u0435\u0431\u0443\u0435\u0442 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0445 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a \u2014<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>Sablot<\/li><li>Iconv<\/li><li>\u044d\u043c\u0438\u0433\u0440\u0430\u043d\u0442<\/li><\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u0412\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u043d\u0430\u0439\u0442\u0438 \u044d\u0442\u043e\u0442 \u043c\u043e\u0434\u0443\u043b\u044c \u043d\u0430&nbsp;<strong>Ruby-Sablotron<\/strong>&nbsp;.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">XSLT4R<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">XSLT4R \u043d\u0430\u043f\u0438\u0441\u0430\u043d \u041c\u0430\u0439\u043a\u043b\u043e\u043c \u041d\u0435\u0439\u043c\u0430\u043d\u043e\u043c \u0438 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u043d\u0430\u0439\u0434\u0435\u043d \u0432 RAA \u0432 \u0440\u0430\u0437\u0434\u0435\u043b\u0435 \u0411\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 \u0432 XML.&nbsp;XSLT4R \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442 \u043f\u0440\u043e\u0441\u0442\u043e\u0439 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u0438, \u0445\u043e\u0442\u044f \u0435\u0433\u043e \u043c\u043e\u0436\u043d\u043e \u0430\u043b\u044c\u0442\u0435\u0440\u043d\u0430\u0442\u0438\u0432\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0432 \u0441\u0442\u043e\u0440\u043e\u043d\u043d\u0435\u043c \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0438 \u0434\u043b\u044f \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f XML-\u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0414\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b XSLT4R \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f XMLScan, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0432\u043a\u043b\u044e\u0447\u0435\u043d \u0432 \u0430\u0440\u0445\u0438\u0432 XSLT4R \u0438 \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0442\u0430\u043a\u0436\u0435 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f 100-\u043f\u0440\u043e\u0446\u0435\u043d\u0442\u043d\u044b\u043c \u043c\u043e\u0434\u0443\u043b\u0435\u043c Ruby.&nbsp;\u042d\u0442\u0438 \u043c\u043e\u0434\u0443\u043b\u0438 \u043c\u043e\u0433\u0443\u0442 \u0431\u044b\u0442\u044c \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u044b \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u043e\u0433\u043e \u043c\u0435\u0442\u043e\u0434\u0430 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 Ruby (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, ruby \u200b\u200binstall.rb).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">XSLT4R \u0438\u043c\u0435\u0435\u0442 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 \u0441\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0441 \u2014<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">ruby xslt.rb stylesheet.xsl document.xml [arguments]\n<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\u0415\u0441\u043b\u0438 \u0432\u044b \u0445\u043e\u0442\u0438\u0442\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c XSLT4R \u0438\u0437 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f, \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0432\u043a\u043b\u044e\u0447\u0438\u0442\u044c XSLT \u0438 \u0432\u0432\u0435\u0441\u0442\u0438 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b.&nbsp;\u0412\u043e\u0442 \u043f\u0440\u0438\u043c\u0435\u0440 \u2014<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0414\u043b\u044f \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u043f\u043e\u043b\u043d\u043e\u0439 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438 \u043e REXML Parser, \u043f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u043e\u0431\u0440\u0430\u0442\u0438\u0442\u0435\u0441\u044c \u043a \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u043e\u0439 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u0438 \u0434\u043b\u044f&nbsp;<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"https:\/\/translate.googleusercontent.com\/translate_c?depth=1&amp;rurl=translate.google.ru&amp;sl=en&amp;sp=nmt4&amp;tl=ru&amp;u=https:\/\/www.germane-software.com\/software\/rexml\/&amp;xid=17259,15700022,15700186,15700190,15700256,15700259,15700262&amp;usg=ALkJrhhUW2YfU0IVVNJd-ryehM6NZk_Oug\">REXML Parser Documentation<\/a>&nbsp;.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0412\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0441\u043a\u0430\u0447\u0430\u0442\u044c XSLT4R \u0438\u0437&nbsp;<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"https:\/\/translate.googleusercontent.com\/translate_c?depth=1&amp;rurl=translate.google.ru&amp;sl=en&amp;sp=nmt4&amp;tl=ru&amp;u=http:\/\/raa.ruby-lang.org\/project\/xslt4r\/&amp;xid=17259,15700022,15700186,15700190,15700256,15700259,15700262&amp;usg=ALkJrhigATWY3YTXqhPlMMgpaqiOL1dNcg\">\u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u044f RAA<\/a>&nbsp;.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u0420\u0430\u0441\u0448\u0438\u0440\u044f\u0435\u043c\u044b\u0439 \u044f\u0437\u044b\u043a \u0440\u0430\u0437\u043c\u0435\u0442\u043a\u0438 (XML) \u2014 \u044d\u0442\u043e \u044f\u0437\u044b\u043a \u0440\u0430\u0437\u043c\u0435\u0442\u043a\u0438, \u043e\u0447\u0435\u043d\u044c \u043f\u043e\u0445\u043e\u0436\u0438\u0439 \u043d\u0430 HTML \u0438\u043b\u0438 SGML.&nbsp;\u042d\u0442\u043e \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u0435\u0442\u0441\u044f \u041a\u043e\u043d\u0441\u043e\u0440\u0446\u0438\u0443\u043c\u043e\u043c World Wide Web \u0438 [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"categories":[142],"tags":[],"class_list":["post-4505","page","type-page","status-publish","hentry","category-ruby"],"jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/www.bearloga.space\/uk\/wp-json\/wp\/v2\/pages\/4505","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.bearloga.space\/uk\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.bearloga.space\/uk\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.bearloga.space\/uk\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.bearloga.space\/uk\/wp-json\/wp\/v2\/comments?post=4505"}],"version-history":[{"count":0,"href":"https:\/\/www.bearloga.space\/uk\/wp-json\/wp\/v2\/pages\/4505\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.bearloga.space\/uk\/wp-json\/wp\/v2\/media?parent=4505"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.bearloga.space\/uk\/wp-json\/wp\/v2\/categories?post=4505"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.bearloga.space\/uk\/wp-json\/wp\/v2\/tags?post=4505"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}