Sorry for the delay in my response Gareth. I had to extract a piece of code 
from my application in order to make a more simple example.

I have tried both Xerces 1.6 and 1.7 with identical results.

The parsing is performed in the usual way by means of the DOMParser::parse() 
method, previously setting the following attributes:
- setValidationScheme( DOMParser::Val_Always);
- setDoNamespaces( true );
- setDoSchema( true );
- setValidationSchemaFullChecking( true );

Once the DOM tree has been constructed in memory, the following lines are 
executed:
DOM_Node& node = document.getDocumentElement();
cout << "Document element getNodeName(): " << node.getNodeName().transcode() 
<< endl;
cout << "Document element getTagName(): " << 
((DOM_Element&)node).getTagName().transcode() << endl;
cout << "Document element getNamespaceURI(): " << 
node.getNamespaceURI().transcode() << endl;
cout << "Document element getPrefix(): " << node.getPrefix().transcode() << 
endl;
cout << "Document element getLocalName(): " << 
node.getLocalName().transcode() << endl;
DOM_Node& child = node.getChildNodes().item(1);
cout << "Child element getNodeName(): " << child.getNodeName().transcode() 
<< endl;
cout << "Child element getTagName(): " << 
((DOM_Element&)child).getTagName().transcode() << endl;
cout << "Child element getNamespaceURI(): " << 
child.getNamespaceURI().transcode() << endl;
cout << "Child element getPrefix(): " << child.getPrefix().transcode() << 
endl;
cout << "Child element getLocalName(): " << child.getLocalName().transcode() 
<< endl;

This is the output I get:
Document element getNodeName(): addressbook
Document element getTagName(): addressbook
Document element getNamespaceURI(): http://david.com/david-schema
Document element getPrefix():
Document element getLocalName(): addressbook
Child element getNodeName(): person
Child element getTagName(): person
Child element getNamespaceURI(): http://david.com/david-schema
Child element getPrefix():
Child element getLocalName(): person

I wonder whether the method DOM_Node::getPrefix() is the only that is 
failing in the returned value or some other methods 
(DOM_Node::getNodeName(), DOM_Element::getTagName()) are ignoring the prefix 
as well.

I am not an experienced developer in Xerces programming so it might be due 
to my inexperience. Some advice would be appreciated.

Best regards,
David Ruana


>From: Gareth Reakes <[EMAIL PROTECTED]>
>Reply-To: [EMAIL PROTECTED]
>To: <[EMAIL PROTECTED]>
>Subject: Re: DOM_Node::getPrefix() always returns NULL
>Date: Tue, 14 May 2002 09:29:19 +0100 (BST)
>
>Hi,
>       I seem to remember a bug being reported not so long ago where
>prefix's were being stripped out when validated. What version of xerces are
>you using? Have you tried the nightly build? Please feel free to post the
>code snippet so we can take a look.
>
>Gareth
>
>
>On Tue, 14 May 2002, David R. wrote:
>
> > In the following example, I am parsing the XML file and trying to get 
>the
> > prefix of the node <my:person>David</my:person>.
> >
> > The call to DOM_Node::getPrefix() always returns NULL, while I 
>understand
> > that it should return "my". However, the call to 
>DOM_Node::getNamespaceURI()
> > does return the correct value "http://david.com/david-schema";.
> >
> > Some guidance on how to get the prefix would be appreciated.
> >
> > Best regards,
> > David Ruana
> >
> > --------------- File david3.xsd
> >
> > <?xml version="1.0" encoding="UTF-8"?>
> > <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema";
> >            xmlns:my="http://david.com/david-schema";
> >            targetNamespace="http://david.com/david-schema";>
> >
> > <xs:element name="addressbook">
> >   <xs:complexType>
> >    <xs:sequence>
> >      <xs:element ref="my:person" minOccurs='1' maxOccurs='unbounded'/>
> >    </xs:sequence>
> >   </xs:complexType>
> > </xs:element>
> >
> > <xs:element name="person" type="xs:string"/>
> >
> > </xs:schema>
> >
> > --------------- File david3.xml
> >
> > <?xml version="1.0" encoding="UTF-8"?>
> > <my:addressbook xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
> >              xmlns:my="http://david.com/david-schema";
> >              xsi:schemaLocation="http://david.com/david-schema david3.xsd">
> >
> > <my:person>David</my:person>
> > </my:addressbook>
> >
> >
> >
> > _________________________________________________________________
> > Descargue GRATUITAMENTE MSN Explorer en
> > http://explorer.yupimsn.com/intl.asp.
> >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > For additional commands, e-mail: [EMAIL PROTECTED]
> >
> >
>
>--
>Gareth Reakes, Head of Product Development
>DecisionSoft Ltd.            http://www.decisionsoft.com
>Office: +44 (0) 1865 203192
>
>
>
>---------------------------------------------------------------------
>To unsubscribe, e-mail: [EMAIL PROTECTED]
>For additional commands, e-mail: [EMAIL PROTECTED]
>




_________________________________________________________________
�nase con MSN Hotmail al servicio de correo electr�nico m�s grande del 
mundo. http://www.hotmail.com


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to