main.ss
#lang scheme

(require "libxml2.ss"
         scheme/contract)

;;  using contracts as documentation:
(define sxml? pair?)

(provide/contract [xml->sxml/file ((path-string?) (#:valid validation-context?) . ->* . sxml?)]
                  [xml->sxml/bytes ((bytes?) (#:valid validation-context?) . ->* . sxml?)]
                  [bytes->validation-context (bytes? . -> . validation-context?)]
                  [validation-context? (any/c . -> . boolean?)])