xsl-list
[Top] [All Lists]

RE: document() function - unknown protocol

2003-10-14 17:44:24
Thanks for your suggestion.  As I understand it, the "arg:" is
a sort of custom uri.  Still, it is not clear what it should
be resolving to.

Any advice on how to do the custom uri resolver, or how to
remove these "arg:" custom uris?

-Jim

P.S. so far, it's like this:

  TransformerFactory tFactory =
       TransformerFactory.newInstance();
  Source stylesheet = new StreamSource(xsl_file);

  tFactory.setURIResolver(new MyResolver("")); //confusing bit
  Transformer transformer = tFactory.newTransformer(stylesheet);
  StreamSource strs= new StreamSource(xml_file);
  StreamResult strr=new StreamResult(new FileOutputStream(out_file));
  transformer.transform(strs, strr);


On Tue, 14 Oct 2003, Robert Koberg wrote:

Hi,

You need to set up a custom javax.xml.transform.URIResolver (assuming you
are using java). You will be passed two arguments when the resolve method is
automatically called when you use document(href [, base]). The first one is
the string you can use to resolve your custom URI.

Best,
-Rob


-----Original Message-----
From: owner-xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com 
[mailto:owner-xsl-
list(_at_)lists(_dot_)mulberrytech(_dot_)com] On Behalf Of Jim Nachlin
Sent: Tuesday, October 14, 2003 10:22 AM
To: XSL-List(_at_)lists(_dot_)mulberrytech(_dot_)com

Hi List,

I hope that this is an appropriate question for this list.

In trying to process an RDF foaf document [1] using the
stylesheet [2], the processor, which is members of the
javax.xml.transform package, gives an error which tells me that
the protocol "arg" is unknown in this statement:

<xsl:when test="document('arg:/ifp')/*/*/*">
  <xsl:variable name="ifp">
    <xsl:copy-of select="document('arg:/ifp')/*[1]/*[1]/*[1]"/>
  </xsl:variable>
  <xsl:apply-templates mode="output"  ...   />
</xsl:when>

or

<xsl:variable name="def"

select="document('arg:/schema')/ns/schema[(_at_)ns=$ns]/rdf:RDF/*[(_at_)rdf:about=$t
his or @rdf:ID=$name or @ID=$name]"/>

and in several other places.

In looking over the documentation on document(), there is no
mention of a protocol "arg" or what this could possibly be.  It
seems that the stylesheet is trying to refer to one of the
namespace URIs.

Refs:
[1] http://www.nachlin.com/foaf.rdf
[2] http://xml.mfd-consult.dk/foaf/explorer/explorer.xsl

Thanks in advance for helping an XSL noob.

Jim



 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list



 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list



<Prev in Thread] Current Thread [Next in Thread>