code: public Root parse( Path input, Option... options )
              throws ParserConfigurationException, SAXException, IOException
      {
          Path base = input.getParent();
          return new Resolver( options )
          {
              @Override
              Path path( String path )
              {
                  return base.resolve( path );
              }
          }.parse( input, this );
      }
docs: Parse the XML document at the given path.
  
  @param input   the path at which to find the XML document to parse.
  @param options configuration for the XML parser.
  @return the object constructed from parsing the XML document.
  @throws ParserConfigurationException if an XML (SAX) parser cannot be created.
  @throws SAXException                 if parsing the XML document failed.
  @throws IOException                  if reading the XML document failed.