https://forum.world.st/How-to-access-XML-tag-name-tp4884065p4884292.html
But I will keep in mind XPath. It would be grtea to have tutorial on all
>
>
> visitRole
>
> <FILM annee="1958">
> <TITRE>Vertigo</TITRE>
> <GENRE>Drame</GENRE>
> <PAYS>USA</PAYS>
> <MES idref="3"/>
> <ROLES>
> <ROLE>
> <PRENOM>James</PRENOM>
> <NOM>Stewart</NOM>
> <INTITULE>John Ferguson</INTITULE>
> </ROLE>
> <ROLE>
> <PRENOM>Kim</PRENOM>
> <NOM>Novak</NOM>
> <INTITULE>Madeleine Elster</INTITULE>
> </ROLE>
>
>
>
> Stef
>
>
> Le 13/3/16 11:26, Alexandre Bergel a écrit :
>> Hi Stef,
>>
>> I have the impression that a visitor is not the ideal solution to
>> query XML tree. It works well in some case, and it is disastrous in
>> some other.
>> XPath is the way to query XML data. As far as I know, there is no
>> complete support. Pastell was a nice try however...
>>
>> Alexandre
>>
>>
>>> On Mar 12, 2016, at 8:11 AM, stepharo <
[hidden email]> wrote:
>>>
>>> Thanks
>>>
>>> Ok it was characters: I will try it
>>> What a bad name!
>>>
>>> I will probably have to build a stack or dictionary of dictionary of
>>> the part that I will not want to visit but this is another story :)
>>>
>>> Stef
>>>
>>>
>>> Le 11/3/16 14:17, Blondeau Vincent a écrit :
>>>> Hi,
>>>>
>>>> The qualified name in function startElement: aQualifiedName
>>>> attributes: aDictionary, will be FILMS and after FILM and after
>>>> TITRE,...etc...
>>>> So, you have to tell to your shouldVisit: method to accept TITRE
>>>> too and get in and after you should implement characters: to get
>>>> the content on the tag.
>>>>
>>>> Vincent
>>>>
>>>>> -----Message d'origine-----
>>>>> De : Pharo-users [mailto:
[hidden email]] De
>>>>> la part de
>>>>> stepharo
>>>>> Envoyé : vendredi 11 mars 2016 14:04
>>>>> À : Any question about pharo is welcome
>>>>> Objet : [Pharo-users] How to access XML tag name?
>>>>>
>>>>> Hi
>>>>>
>>>>> Yesterday I started to hack a smart SAX handler. The idea is that
>>>>> I want to just
>>>>> specify the tags I want to visit and the SAX handler should invoke
>>>>> (generated)
>>>>> visit methods. Like that I can easily get visitors on XML domain.
>>>>>
>>>>> Here is an example of what I did.
>>>>>
>>>>> | h |
>>>>> h := SmartSAXHandler new
>>>>> visitor: (MyFilmVisitor new visitTags: #(FILM
>>>>> ROLE));
>>>>> on: FileSystem workingDirectory / 'FILMS.XML'.
>>>>> h parseDocument.
>>>>> ^ h
>>>>>
>>>>>
>>>>>
>>>>> SmartSAXHAndler >> startElement: aQualifiedName attributes:
>>>>> aDictionary
>>>>>
>>>>> (visitor shouldVisit: aQualifiedName)
>>>>> ifTrue: [
>>>>> visitor
>>>>> perform: (visitor createdVisitSelector:
>>>>> aQualifiedName)
>>>>> with: aQualifiedName
>>>>> with: aDictionary
>>>>> ]
>>>>>
>>>>>
>>>>> Object subclass: #GenericTagSAXVisitor
>>>>> instanceVariableNames: 'visitTag visitTags'
>>>>> classVariableNames: ''
>>>>> category: 'SmartXMLHandler'
>>>>>
>>>>>
>>>>> GenericTagSAXVisitor>>visitTags: aCollection
>>>>> "set the tags that will lead to a call to a visitTag:with:
>>>>> method in the visitor"
>>>>>
>>>>> visitTags := aCollection collect: [ :each | each asLowercase ].
>>>>> self createVisitMethods.
>>>>>
>>>>> and in a subclass the visit* methods automatically generated
>>>>>
>>>>>
>>>>> Now I could not get when I have a <TITRE>Vertigo</TITRE> where I
>>>>> can get the
>>>>> Vertigo information.
>>>>> I redefined several methods of SAXhandler but without success.
>>>>>
>>>>>
>>>>> <?xml version="1.0" encoding="iso-8859-1"?>
>>>>> <FILMS>
>>>>> <FILM annee="1958">
>>>>> <TITRE>Vertigo</TITRE>
>>>>> <GENRE>Drame</GENRE>
>>>>> <PAYS>USA</PAYS>
>>>>> <MES idref="3"/>
>>>>> <ROLES>
>>>>> <ROLE>
>>>>> <PRENOM>James</PRENOM>
>>>>> <NOM>Stewart</NOM>
>>>>> <INTITULE>John Ferguson</INTITULE>
>>>>> </ROLE>
>>>>> <ROLE>
>>>>> <PRENOM>Kim</PRENOM>
>>>>> <NOM>Novak</NOM>
>>>>> <INTITULE>Madeleine Elster</INTITULE>
>>>>> </ROLE>
>>>>> </ROLES>
>>>>> <RESUME>Scottie Ferguson, ancien inspecteur de police, est
>>>>> sujet
>>>>> au vertige depuis qu'il a vu mourir son
>>>>> collegue. Elster, son ami, le charge de surveiller sa femme,
>>>>> Madeleine, ayant des tendances
>>>>> suicidaires. Amoureux de la jeune femme Scottie ne remarque pas le
>>>>> piege qui se trame autour
>>>>> de lui et dont il va etre la victime... </RESUME>
>>>>> </FILM>
>>>> !!!*************************************************************************************
>>>>
>>>> "Ce message et les pièces jointes sont confidentiels et réservés à
>>>> l'usage exclusif de ses destinataires. Il peut également être
>>>> protégé par le secret professionnel. Si vous recevez ce message par
>>>> erreur, merci d'en avertir immédiatement l'expéditeur et de le
>>>> détruire. L'intégrité du message ne pouvant être assurée sur
>>>> Internet, la responsabilité de Worldline ne pourra être recherchée
>>>> quant au contenu de ce message. Bien que les meilleurs efforts
>>>> soient faits pour maintenir cette transmission exempte de tout
>>>> virus, l'expéditeur ne donne aucune garantie à cet égard et sa
>>>> responsabilité ne saurait être recherchée pour tout dommage
>>>> résultant d'un virus transmis.
>>>>
>>>> This e-mail and the documents attached are confidential and
>>>> intended solely for the addressee; it may also be privileged. If
>>>> you receive this e-mail in error, please notify the sender
>>>> immediately and destroy it. As its integrity cannot be secured on
>>>> the Internet, the Worldline liability cannot be triggered for the
>>>> message content. Although the sender endeavours to maintain a
>>>> computer virus-free network, the sender does not warrant that this
>>>> transmission is virus-free and will not be liable for any damages
>>>> resulting from any virus transmitted.!!!"
>>>
>
>
>