XSL-FO(XSL Formatting Objects)는 PDF 파일을 생성하는 데 가장 자주 사용되는 XML 문서 형식을 위한 마크업 언어이다. XSL-FO는 XML 데이터의 변환 및 형식화를 위해 설계된 W3C 기술 세트인 XSL(Extensible Stylesheet Language)의 일부이다. XSL의 다른 부분은 XSLT와 XPath이다. XSL-FO 버전 1.1은 2006년에 출시되었다.
XSL-FO는 W3C에 의해 완전한 기능으로 간주된다.[1] 작업 초안의 마지막 업데이트는 2012년 1월이었고 해당 작업 그룹은 2013년 11월에 종료되었다.[2]
CSS2(페이지 미디어 모듈)가 인쇄 미디어에 기본 기능을 제공하기 시작했기 때문에 CSS 표준과 함께 XML 및 HTML 표준이 적용되었다. CSS Paged Media Module Level 3을 통해 W3C는 문서 형식화 및 PDF 생성을 위한 통합 표준의 공식화를 완료하고 있다. 따라서 2013년부터 CSS3-paged는 XSL-FO 대체를 위한 W3C 제안이다.
XSL 서식 개체 버전 2.0에 대한 디자인 노트는 2009년에 처음 게시되었으며 2012년에 마지막으로 업데이트되었다.