Utilisation tdom, je voudrais faire défiler une liste d'objets dans le format suivant:TCL tdom: Looping par objets
<object>
<type>Hardware</type>
<name>System Name</name>
<description>Basic Description of System.</description>
<attributes>
<vendor>Dell</vendor>
<contract>MM/DD/YY</contract>
<supportExpiration>MM/DD/YY</supportExpiration>
<location>Building 123</location>
<serial>xxx-xxx-xxxx</serial>
<mac>some-mac-address</mac>
</attributes>
</object>
<object>
<type>Software</type>
<name>Second Object</name>
...
Puis-je utiliser tdom pour faire une liste d'objets:
set dom [dom parse $xml]
set doc [$dom documentElement]
set nodeList [$doc selectNodes /systems/object]
Jusqu'à présent, j'ai fait cela pour (théoriquement) sélectionner chaque nœud "Objet" de la liste. Comment puis-je les boucler? Est-ce juste:
foreach node $nodeList {
Pour chaque objet, j'ai besoin de récupérer l'association de chaque attribut. De l'exemple, je dois me rappeler que le "nom" est "Nom du système", "fournisseur" est "Dell", etc.
Je suis nouveau à TCL mais dans d'autres langues j'utiliserais un objet ou un liste associative pour stocker ceux-ci. Est-ce possible? Pouvez-vous me montrer un exemple de la syntaxe pour sélectionner un attribut de cette manière?
Merci pour votre aide, c'est exactement ce que je avais besoin. Vous avez raison, je ferai probablement mieux d'utiliser chaque attribut directement à partir de tDOM. Ma prochaine aventure consiste à construire chaque objet analysé en objet de base de données. Amusement :-) – pws5068
La chose principale est de planifier * exactement * ce que vous voulez réaliser, quelles pièces devraient aller où, etc. Je trouve que le dos d'une enveloppe est un bon endroit pour faire ces plans. :-) –