diff --git a/it_IT.ISO8859-1/share/sgml/catalog b/it_IT.ISO8859-1/share/sgml/catalog
new file mode 100644
index 0000000000..7ab7a7cbc8
--- /dev/null
+++ b/it_IT.ISO8859-1/share/sgml/catalog
@@ -0,0 +1,8 @@
+ -- ...................................................................... --
+ -- FreeBSD SGML Public Identifiers ...................................... --
+
+ -- $FreeBSD$
+ --
+
+PUBLIC "-//FreeBSD//DOCUMENT DocBook Stylesheet//IT"
+ "freebsd.dsl"
diff --git a/it_IT.ISO8859-1/share/sgml/freebsd.dsl b/it_IT.ISO8859-1/share/sgml/freebsd.dsl
new file mode 100644
index 0000000000..d28732ab26
--- /dev/null
+++ b/it_IT.ISO8859-1/share/sgml/freebsd.dsl
@@ -0,0 +1,259 @@
+
+
+
+
+
+
+]>
+
+
+
+
+
+
+ .")
+ (make empty-element gi: "br")
+ (literal "Per domande su questa documentazione, e-mail <")
+ (create-link (list (list "HREF" "mailto:doc@FreeBSD.org"))
+ (literal "doc@FreeBSD.org"))
+ (literal ">.")))))
+
+
+
+ (element quote
+ (make sequence
+ (literal "``")
+ (process-children)
+ (literal "''")))
+
+
+ (define %refentry-xref-link% #t)
+
+
+ (define ($create-refentry-xref-link$ refentrytitle manvolnum)
+ (string-append "http://www.FreeBSD.org/cgi/man.cgi?query="
+ refentrytitle "&" "sektion=" manvolnum))
+ ]]>
+
+
+
+
+
+
+
+ number ;; then get the apparent level
+ (substring renderas 4 5)) ;; from "renderas",
+ (SECTLEVEL))) ;; else use the real level
+ (hs (HSIZE (- 4 hlevel))))
+
+ (make sequence
+ (make paragraph
+ font-family-name: %title-font-family%
+ font-weight: (if (< hlevel 5) 'bold 'medium)
+ font-posture: (if (< hlevel 5) 'upright 'italic)
+ font-size: hs
+ line-spacing: (* hs %line-spacing-factor%)
+ space-before: (* hs %head-before-factor%)
+ space-after: (if (node-list-empty? subtitles)
+ (* hs %head-after-factor%)
+ 0pt)
+ start-indent: (if (or (>= hlevel 3)
+ (member (gi) (list (normalize "refsynopsisdiv")
+ (normalize "refsect1")
+ (normalize "refsect2")
+ (normalize "refsect3"))))
+ %body-start-indent%
+ 0pt)
+ first-line-start-indent: 0pt
+ quadding: %section-title-quadding%
+ keep-with-next?: #t
+ heading-level: (if %generate-heading-level% (+ hlevel 1) 0)
+ ;; SimpleSects are never AUTO numbered...they aren't hierarchical
+ (if (> hlevel (- max-section-level-labels 1))
+ (empty-sosofo)
+ (if (string=? (element-label (current-node)) "")
+ (empty-sosofo)
+ (literal (element-label (current-node))
+ (gentext-label-title-sep (gi sect)))))
+ (element-title-sosofo (current-node)))
+ (with-mode section-title-mode
+ (process-node-list subtitles))
+ ($section-info$ info))))
+
+ ]]>
+
+
+
+ (define (local-en-label-title-sep)
+ (list
+ (list (normalize "warning") ": ")
+ (list (normalize "caution") ": ")
+ (list (normalize "chapter") " ")
+ (list (normalize "sect1") " ")
+ (list (normalize "sect2") " ")
+ (list (normalize "sect3") " ")
+ (list (normalize "sect4") " ")
+ (list (normalize "sect5") " ")
+ ))
+
+
+
+
+
+
diff --git a/it_IT.ISO8859-15/share/sgml/catalog b/it_IT.ISO8859-15/share/sgml/catalog
new file mode 100644
index 0000000000..7ab7a7cbc8
--- /dev/null
+++ b/it_IT.ISO8859-15/share/sgml/catalog
@@ -0,0 +1,8 @@
+ -- ...................................................................... --
+ -- FreeBSD SGML Public Identifiers ...................................... --
+
+ -- $FreeBSD$
+ --
+
+PUBLIC "-//FreeBSD//DOCUMENT DocBook Stylesheet//IT"
+ "freebsd.dsl"
diff --git a/it_IT.ISO8859-15/share/sgml/freebsd.dsl b/it_IT.ISO8859-15/share/sgml/freebsd.dsl
new file mode 100644
index 0000000000..d28732ab26
--- /dev/null
+++ b/it_IT.ISO8859-15/share/sgml/freebsd.dsl
@@ -0,0 +1,259 @@
+
+
+
+
+
+
+]>
+
+
+
+
+
+
+ .")
+ (make empty-element gi: "br")
+ (literal "Per domande su questa documentazione, e-mail <")
+ (create-link (list (list "HREF" "mailto:doc@FreeBSD.org"))
+ (literal "doc@FreeBSD.org"))
+ (literal ">.")))))
+
+
+
+ (element quote
+ (make sequence
+ (literal "``")
+ (process-children)
+ (literal "''")))
+
+
+ (define %refentry-xref-link% #t)
+
+
+ (define ($create-refentry-xref-link$ refentrytitle manvolnum)
+ (string-append "http://www.FreeBSD.org/cgi/man.cgi?query="
+ refentrytitle "&" "sektion=" manvolnum))
+ ]]>
+
+
+
+
+
+
+
+ number ;; then get the apparent level
+ (substring renderas 4 5)) ;; from "renderas",
+ (SECTLEVEL))) ;; else use the real level
+ (hs (HSIZE (- 4 hlevel))))
+
+ (make sequence
+ (make paragraph
+ font-family-name: %title-font-family%
+ font-weight: (if (< hlevel 5) 'bold 'medium)
+ font-posture: (if (< hlevel 5) 'upright 'italic)
+ font-size: hs
+ line-spacing: (* hs %line-spacing-factor%)
+ space-before: (* hs %head-before-factor%)
+ space-after: (if (node-list-empty? subtitles)
+ (* hs %head-after-factor%)
+ 0pt)
+ start-indent: (if (or (>= hlevel 3)
+ (member (gi) (list (normalize "refsynopsisdiv")
+ (normalize "refsect1")
+ (normalize "refsect2")
+ (normalize "refsect3"))))
+ %body-start-indent%
+ 0pt)
+ first-line-start-indent: 0pt
+ quadding: %section-title-quadding%
+ keep-with-next?: #t
+ heading-level: (if %generate-heading-level% (+ hlevel 1) 0)
+ ;; SimpleSects are never AUTO numbered...they aren't hierarchical
+ (if (> hlevel (- max-section-level-labels 1))
+ (empty-sosofo)
+ (if (string=? (element-label (current-node)) "")
+ (empty-sosofo)
+ (literal (element-label (current-node))
+ (gentext-label-title-sep (gi sect)))))
+ (element-title-sosofo (current-node)))
+ (with-mode section-title-mode
+ (process-node-list subtitles))
+ ($section-info$ info))))
+
+ ]]>
+
+
+
+ (define (local-en-label-title-sep)
+ (list
+ (list (normalize "warning") ": ")
+ (list (normalize "caution") ": ")
+ (list (normalize "chapter") " ")
+ (list (normalize "sect1") " ")
+ (list (normalize "sect2") " ")
+ (list (normalize "sect3") " ")
+ (list (normalize "sect4") " ")
+ (list (normalize "sect5") " ")
+ ))
+
+
+
+
+
+