[XQuery Talk Mailing List Archive Home] [By Date] [By Thread] [By Subject] [By Author] [Recent Entries] [Reply To This Message]

Fwd: xmlns ignore

Sérgio Mariano Dias sergiomariano at gmail.com
Tue Sep 15 11:44:30 PDT 2009


  Fwd: xmlns ignore
Ok now it's correct.
 thank you very much by the help.

2009/9/15 Michael Kay <http://x-query.com/mailman/listinfo/talk>

>  You clearly didn't understand David's answer.
>
> You can no more "ignore" a namespace declaration in your source document
> than you can ignore the first character of each element name. The namespace
> is an intrinsic part of the names of your elements, and when selecting
> elements by name, you need to be aware of it.
>
> If you want to use unqualified names in your XQuery expression to refer to
> names in a namespace, you can do this by means of a default namespace
> declaration in the XQuery prolog:
>
> declare default element namespace "http://www.portalfiscal.inf.br/nfe"
>
> However, you need to be aware that this affects the interpretation of all
> unprefixed names in your query, not only those in a path expression.
>
> If you don't want to change the source of the query, you can achieve the
> same effect using the Saxon API:
>
> comp.declareNamespace("", "http://www.portalfiscal.inf.br/nfe");
>
> Your example query will then work as written. Note, however, that this is a
> very different thing from "ignoring" the namespace.
>
>
> Regards,
>
> Michael Kay
> http://www.saxonica.com/
> http://twitter.com/michaelhkay
>
>  ------------------------------
> *From:* http://x-query.com/mailman/listinfo/talk [mailto:http://x-query.com/mailman/listinfo/talk] *On
> Behalf Of *Sérgio Mariano Dias
> *Sent:* 15 September 2009 14:07
> *To:* http://x-query.com/mailman/listinfo/talk
> *Subject:*  Fwd: xmlns ignore
>
>
> Hi,
>
> This is a complete code test:
>
>
> //---------------------------------------------------------------------------------------------------------------------------------
>
>           Processor proc = new Processor(false);
>
>
>           XQueryCompiler comp = proc.newXQueryCompiler();
>
>           XdmNode source = proc.newDocumentBuilder().build(new
> StreamSource(inputFile));
>
>
>
>           XQueryExecutable exp = comp.compile("/NFe/infNFe/ide/natOp");
>           XQueryEvaluator eval = exp.load();
>           eval.setContextItem(source);
>
>
>
>           XdmItem i =eval.evaluateSingle();
>           System.out.println(i.getStringValue());
>
>
>           XdmValue v = eval.evaluate();
>           System.out.println(v.size());
>
>
> //---------------------------------------------------------------------------------------------------------------------------------
>
> that is the xml file:
>
>
>
> //---------------------------------------------------------------------------------------------------------------------------------
> <?xml version="1.0" encoding="UTF-8"?>
> <NFe xmlns="http://www.portalfiscal.inf.br/nfe">
>         <infNFe Id="NFe2907" versao="1.10">
>             <ide>
>                 <cUF>29</cUF>
>                 <cNF>123658</cNF>
>                 <natOp>Venda - direta</natOp>
> ....
>
>
> //---------------------------------------------------------------------------------------------------------------------------------
>
> The ""http://www.portalfiscal.inf.br/nfe"" return page not found. If I
> remove the addres, the program return the correct value. That is way a fink
> to ignore the addres. Is that possible?
>
> Regards,
>
>
>
>
> 2009/9/11 David Carlisle <http://x-query.com/mailman/listinfo/talk>
>
>
>>
>> > I have a problem to ignore a xmls attribute in a tag and did not found
>> > information how to ignore this attribute. Somebody can help me.
>>
>> A namespace declaration is not an attribute in the XDM model used by
>> XPath and Xquery. The name of an element includes the namespace.
>>
>> Most likely the part of teh code that you don't show
>>
>> = comp.compile("/.../... ...");
>>
>> is selecting elements in no-namespace, and you should change it to
>> select elements in the namespace used in your xml source.
>>
>> either by using a prefix
>> /p:aa/p:bb
>>
>> and binding p to the namespace used in the source, or by setting the
>> default namespace in the xquery to that used in the source.
>>
>>
>> David
>>
>>
>> ________________________________________________________________________
>> The Numerical Algorithms Group Ltd is a company registered in England
>> and Wales with company number 1249803. The registered office is:
>> Wilkinson House, Jordan Hill Road, Oxford OX2 8DR, United Kingdom.
>>
>> This e-mail has been scanned for all viruses by Star. The service is
>> powered by MessageLabs.
>> ________________________________________________________________________
>>
>
>
>
> --
> Sérgio Mariano
>
>
>
>
>
> --
> Sérgio Mariano
>
>
>


-- 
Sérgio Mariano Dias
http://www.dcc.ufmg.br/~mariano
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://x-query.com/pipermail/talk/attachments/20090915/1fe901ce/attachment-0001.htm


PURCHASE STYLUS STUDIO ONLINE TODAY!

Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
Email
First Name
Last Name
Company
Subscribe in XML format
RSS 2.0
Atom 0.3
Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery ™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2011 All Rights Reserved.