문제

많은 XSLT 엔진이 Perl과 잘 작동하는지 알고 싶습니다.

Apache (2.0)와 Perl을 사용하고 PDFS 및 XHTML을 얻고 싶습니다.

저는 이런 종류의 프로젝트를 처음 사용하므로 모든 의견이나 제안을 환영합니다.

감사.


Google에서 간단한 검색을 수행하면 많은 것을 발견했으며 더 많은 것이 있다고 생각합니다.

귀하의 경험에 대한 모든 의견은 환영받을 것입니다.

도움이 되었습니까?

해결책

첫 번째 실수 - CPAN에서 검색하십시오, Google이 아닙니다 :)

이것은 많은 결과를 낳지 만 CPAN의 문제를 강조하고, 하나 이상의 해결책이 있으며, 어떤 해결책이 항상 작동하고, 버려 졌는지, 깨진, 느리거나, 무엇이든 항상 명확하지는 않습니다.

그리고 혼란스럽게도, 최고의 답변 (또는 적어도 최고 중 하나)이 페이지에 나옵니다. 결과 중 :( 다른 사람들이 제안한 것처럼 xml :: libxslt 강력하고 일을합니다.

  use XML::LibXSLT;
  use XML::LibXML;

  my $parser = XML::LibXML->new();
  my $xslt = XML::LibXSLT->new();

  my $source = $parser->parse_file('foo.xml');
  my $style_doc = $parser->parse_file('bar.xsl');

  my $stylesheet = $xslt->parse_stylesheet($style_doc);

  my $results = $stylesheet->transform($source);

  print $stylesheet->output_string($results);

결과를 파일로 출력하려면 이것을 추가하십시오.

#create output file
open(my $output_xml_file_name, '>', 'test.xml');
print $output_xml_file_name "$results";

그래도 멋진 일을하고 싶지 않다면 xml :: libxslt :: 쉬운, 본질적으로 위의 방법을 한 메소드 호출로 랩핑합니다 (그리고 엘크. 교육 소스를 확인하십시오!).

  use XML::LibXSLT::Easy;

  my $p = XML::LibXSLT::Easy->new;

  my $output = $p->process( xml => "foo.xml", xsl => "foo.xsl" );

다른 팁

지금까지 나는 매우 만족합니다 xml :: libxml XSLT가 아닌 작업의 경우, 문서가 지적합니다 xml :: libxslt, 꽤 멋져 보이지만 지금까지 경험이 없습니다.

내가 그들 모두를 시도 할 기회가 없었기 때문에 어느 것이 가장 좋은 솔루션인지 실제로 말할 수는 없습니다.
그러나 PERL 모듈을 사용해 보는 것이 좋습니다 libxslt.
Gnome Libxslt 라이브러리의 인터페이스입니다. 나는 최근 프로젝트 중 하나에서 그것을 만족했습니다.

당신은 어떤 OS를 말하지 않고 대부분의 *닉스 플랫폼에 대해 xml :: libxml 사용하고 설치하기가 가장 쉬울 것입니다.

다음은 XSLT를 대체하기위한 몇 가지 PERL 라이브러리입니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top