Counting children

 Hi,

I'm struggling to find a way to count all children per level in an xml source.

Source:
<SWITCH-RDM port="BSC:BEERM-RBL2:107">
    <S1464 port="BSC:BEERM-RBL2:107" />
    <S1465 port="RXI:RX1RM-ETMC41:MS1-14-30" />
    <S1469 port="BSC:BEERM-RBL2:251" />
    <S6651 port="RXI:RX4RM-ETMC41:MS1-8-05">
        <S0287 port="RXI:RX4RM-ETMC41:MS1-8-05">
            <S0542 port="RXI:RX4RM-ETMC41:MS1-8-05">
                <S1473 port="RXI:RX4RM-ETMC41:MS1-8-05" />
            </S0542>
        </S0287>
    </S6651>
    <S6651 port="RXI:RX4RM-ETMC41:MS1-8-06">
        <S0287 port="RXI:RX4RM-ETMC41:MS1-8-06">
            <S0542 port="RXI:RX4RM-ETMC41:MS1-8-06" />
        </S0287>
    </S6651>
    <S0376 port="RXI:RX2RM-ETMC41:MS1-12-43">
        <S1479 port="RXI:RX2RM-ETMC41:MS1-12-43" />
    </S0376>
    <S0376 port="RXI:RX2RM-ETMC41:MS1-12-44" />
    <S0376 port="RXI:RX2RM-ETMC41:MS1-12-45" />
    <S0376 port="RXI:RX2RM-ETMC41:MS1-12-46" />
    <S0037 port="RXI:RX3RM-ETMC41:MS1-18-01">
        <S2358 port="RXI:RX3RM-ETMC41:MS1-18-01">
            <S1532 port="RXI:RX3RM-ETMC41:MS1-18-01" />
        </S2358>
    </S0037>
</SWITCH-RDM>

So what I'm trying to do is: 
- count how many childnodes are in SWITCH-RDM,but only the ones directly in 
it, not the childnodes' childnodes.
- Count how many childnodes there are in each childnode

If I do SelectNodes("Switch-RDM").count I get the result of 1.
If I do SelectNodes("*").count I get all the nodes.

please help with this.

rg,
Eric

0
Eric1 (389)
10/18/2009 4:56:01 PM
dotnet.xml 7266 articles. 0 followers. Follow

1 Replies
962 Views

Similar Articles

[PageSpeed] 23

Eric wrote:
>  Hi,
> 
> I'm struggling to find a way to count all children per level in an xml source.
> 
> Source:
> <SWITCH-RDM port="BSC:BEERM-RBL2:107">
>     <S1464 port="BSC:BEERM-RBL2:107" />
>     <S1465 port="RXI:RX1RM-ETMC41:MS1-14-30" />
>     <S1469 port="BSC:BEERM-RBL2:251" />
>     <S6651 port="RXI:RX4RM-ETMC41:MS1-8-05">
>         <S0287 port="RXI:RX4RM-ETMC41:MS1-8-05">
>             <S0542 port="RXI:RX4RM-ETMC41:MS1-8-05">
>                 <S1473 port="RXI:RX4RM-ETMC41:MS1-8-05" />
>             </S0542>
>         </S0287>
>     </S6651>
>     <S6651 port="RXI:RX4RM-ETMC41:MS1-8-06">
>         <S0287 port="RXI:RX4RM-ETMC41:MS1-8-06">
>             <S0542 port="RXI:RX4RM-ETMC41:MS1-8-06" />
>         </S0287>
>     </S6651>
>     <S0376 port="RXI:RX2RM-ETMC41:MS1-12-43">
>         <S1479 port="RXI:RX2RM-ETMC41:MS1-12-43" />
>     </S0376>
>     <S0376 port="RXI:RX2RM-ETMC41:MS1-12-44" />
>     <S0376 port="RXI:RX2RM-ETMC41:MS1-12-45" />
>     <S0376 port="RXI:RX2RM-ETMC41:MS1-12-46" />
>     <S0037 port="RXI:RX3RM-ETMC41:MS1-18-01">
>         <S2358 port="RXI:RX3RM-ETMC41:MS1-18-01">
>             <S1532 port="RXI:RX3RM-ETMC41:MS1-18-01" />
>         </S2358>
>     </S0037>
> </SWITCH-RDM>
> 
> So what I'm trying to do is: 
> - count how many childnodes are in SWITCH-RDM,but only the ones directly in 
> it, not the childnodes' childnodes.
> - Count how many childnodes there are in each childnode
> 
> If I do SelectNodes("Switch-RDM").count I get the result of 1.
> If I do SelectNodes("*").count I get all the nodes.

If you are interested in the _element child nodes_ of the root element 
then use e.g.
XmlDocument doc = new XmlDocument();
doc.Load("file.xml");

and then

int count = doc.SelectNodes("SWITCH-RDM/*").Count;

or

int count = doc.DocumentElement.SelectNodes("*").Count;

There is also a ChildNodes collection but that will contain all kind of 
nodes (i.e. element nodes but comment and processing instruction nodes 
as well and even text nodes with white space if PreserveWhitespace on 
the document has been set).

-- 

	Martin Honnen --- MVP XML
	http://msmvps.com/blogs/martin_honnen/
0
mahotrash (1778)
10/18/2009 5:28:13 PM
Reply:

Similar Artilces:

Pivot table and counting.
I have a pivot table that gives me the number of rides done by a van. I can have the pivot table return the number of rides, but what I need is the number vans that participated for a certain day. Example, it is possible to have 27 trips done by 18 vans, how can I count the number of vans and not addup the van number? Any help appreciated. Thank you, Joe Hi Joe We need a bit more information on how your source data table is set up. What information do you have in each column? -- Regards Roger Govier sacredarms <sacredarms@discussions.microsoft.com> wrote: > I have a pi...

Cycle Counting
Hello, I am looking for ideas on how to cycle count serial number tracked items without increasing workload. Our serialized items are barcoded but the problem is the are situated on the pallet incorrectly and the pallet is placed on a third level of a racking system. If we could just cycle count based on item count and not include the serial number it would make it easy. Is this possible in Great Plains. We are running Great Plains 8.0. Any suggestions are greatly aprreciated. Thank You, Brian Morris Database Administrator ...

How do I count the # of times a value reoccurs and plot it over ti
I wish to plot a number of errors made by each users and compare it over time. I have a column of user ID's and a column of dates. I want the chart to count the number of times each user ID appears and plot against it's corresponding date. However, each time I try to do this, the chart appears wrong. Any ideas? In article <9595B2A1-8282-4AB3-8511-A6776E108164@microsoft.com>, Stephen@discussions.microsoft.com says... > I wish to plot a number of errors made by each users and compare it over > time. I have a column of user ID's and a column of dates. I want t...

Count
Hi, I would like to know how which formula I should use to count some codes & to ignore the duplicated codes, for example in column A: Code 1234 4321 4321 1234 1234 3214 Now, I want Excel to count & the result is 3 which are: 1234-4321-3214 Yes I can use PivotTable, but I would like to use a formula because I have to deal with this every day. I appreciate your support. -- MFS22 COUNTIF will do it. =COUNTIF(Rng,Rng), where the criterion is the same as the range: e.g =COUNTIF(A3:A8,A3:A8) HTH Peter "MFS" wrote: > Hi, > I wo...

count number of characters in rich edit control
How can i count number of characters in rich edit control 2 If u mean controls of type Rich TextBox control, try RichControl1 RC1; CString Mes=RC.GetText(); int n=Mes.GetLength(); "Rahul" <Rahul@discussions.microsoft.com> wrote in message news:7743023C-EA83-4ACA-AB67-F1AE7279F1EB@microsoft.com... > How can i count number of characters in rich edit control 2 EM_GETTEXTLENGTHEX, WM_GETTEXTLENGTH, WM_GETTEXT, EM_STREAM* "Rahul" <Rahul@discussions.microsoft.com> wrote in message news:7743023C-EA83-4ACA-AB67-F1AE7279F1EB@microsoft.com... > How can i co...

Line count
I am working with a program called Dictaphone. We use Word 2007 in this program. The line count on Dictaphone and the line count in Word 2007 are different even though the Dictaphone text is retrieved from Word 2007. Why would they be different? What is the difference between virutal line count and physical line count? ...

Counting sales
I have two different datasets. Each with a common identifier. I need a formula that will reference the identifiers in both datasets and count the number of sales a particular agent made. Example. look up this identifier in the other dataset and then give me the value that is 2 columns over from the identifier in the second dataset. See if this helps: http://contextures.com/xlFunctions02.html -- Biff Microsoft Excel MVP "Dave" <Dave@discussions.microsoft.com> wrote in message news:E7245B37-033F-400E-9CEE-9822BE7CB0F5@microsoft.com... >I have two...

COUNT ? need formula
Hi, I want to track the results of my teams sales performance. I record if it is a sale, no sale, cancelled etc in column M. I thought I'd be able to use the COUNT function/formula to be able to search for all the SALES in column M and place the result in a cell ( column O )but I can't work it out. Any ideas? Damian Hi! Try this: =COUNTIF(M1:M100,"sale") Biff "Diamond Jones" <kwanzaNOSPAM@optusnet.com.au> wrote in message news:43a0e897$0$17704$afc38c87@news.optusnet.com.au... > Hi, > > I want to track the results of my teams sales perf...

Counting Cells with Conditional Formatting
Is there a way to look at a row of data that is either highlighted yellow or red and to count only the data that is highlighted yellow and give me that number? None of my data is numerical....just one letter data, i.e.: "S" or "U" I just want to count how many of the cells are highlighted yellow in a specific row, if that makes more sense. Here's a UDF (Put in a Standard module) and use it in cell A1, like =CountByColor(A8:H8,6) << where 6 (at present) = Yellow = change to =CountByColor(A8:H8,3) to get the reds HTH Function CountByColor(InRa...

Counting a count
How do I count a count?? This is what im trying to do: I have a database with a table named tblMain and has incorporated everything within that table but contains info from about 8 other tables. I have not doesigned this database and it appears to have a very poor structure...anyway There are three fields involved in this process...'Request' (either 'dispensation', 'waiver' or 'dispensation and waiver'), 'Department' (which consists of 7 other drop down menu options) and 'RequestStatus' which contains the status of each request by another...

Count Function
I am creating a report for the number of pupils being collected at a certain collection time e.g. 14:00hr and 15:00hrs using the formula =Count([Child Last Name]) in the collection time footer However when i try to count the overall number of pupils in the footer using the same formula, 'Error' appears on screen? Thanks There are potentially a dozen footer sections in a report. Which one is giving you a problem? What is the name of the control? What is the exact formula? -- Duane Hookom Microsoft Access MVP "ELo" wrote: > I am creating a r...

Count Problem
Hi I have 20 cells in a single column in a sheet called "Audits" All the cells have a formula in them. The formula is a simple one that reads whatever I put into a cell on a different worksheet called "Names" ie: =Names!A1 = Names!A2 etc etc I would like to have a formula that counts up all the results I get in the sheet called "Audits" At the moment if I enter (let say) 15 names in the "Names" sheet the result is that I see the same 15 names in the "Audits" sheet, however the COUNTA formula returns a total of 20. SO obviously...

unique or distinct count from xml
How to get a unique count from a xml <Orders> <Order ID="1111" Amount="200"></Order> <Order ID= "2222" Amount="10"></Order> <Order ID="3333" Amount="5"></Order> <Order ID="1111" Amount="20"></Order> </Orders> The result should be 3 unique count and the 4 Order Id counts. How can i get using XPathNodeIterator using Compile,Execute with a XPathNavigator thanks you bhu The XPath expression for that is count(Orders/Order[not(@ID=preceding-sibling::Or...

Replace Count
I am using this routine to replace characters in a large text string. I would like to know how many replacements have been made. This is a generalized routine for experimenting. If I set lReplCount = 1, I can get a count but it takes over one minute to run. If I set lReplCount = -1, it takes about 20 mSec but I get no count (except 1). Is there any way to get speed and the replace count? I would be happy with a few seconds and an accurate count. Do If InStr(1, sText, vbCr & vbCr) > 0 Then lChangeCount = lChangeCount + 1 ...

Smart List record count in 10.0 SP2
Hello, I'm wondering if anyone else has seen a situation in the standard smart list for Purchase Line Items returns a different line count in the window than on the bottom of the window in the status bar. For instance, a client requested a search using the view "Today's Expected Receipts", so the window shows 4 rows, but the status bar at the bottom shows 8. The search criteria look to be the same as in my local view. Trying it in my local view, I get the same results for other views under this object, for instance the window shows 13 rows, but the status bar shows ...

Counting text cells #3
I have a range of cells A25:A256 that contain text entries of various types (doesn't matter). How do I get it in cell A258 to give me a total of cells that have text in them within that range 25:256 Thanks, Gurus Jessica =SUMPRODUCT(--(ISTEXT(A25:A256))) -- Regards, Peo Sjoblom "Jessica Walton" <jessica.w@zimshipping.com> wrote in message news:1E804A58-662A-47BA-B264-9EEE8A20994F@microsoft.com... > I have a range of cells A25:A256 that contain text entries of various types (doesn't matter). How do I get it in cell A258 to give me a total of cells that have ...

2 questions regarding count formula
If I have the following data A B C 1 Personnel group type p't number 2 Melinda 1 4 3 Sean 1 5 4 Melinda 1 6 5 Sean 2 30 6 Fay 3 8 7 Melinda 1 32 1. How shall I contruct my formula to count the number of data that satisfy the following criteria: 1. personnel is Melinda 2. group type is 1 3. ...

Cycle Count
Hi, Client running GP 10. I am setting up their cycle count schedules and have run into an issue that I can't get an answer for. Want to set up the count to give me the following quantity of items to count weekly: A - 15 Items B - 10 Items C - 5 Items I am unable to find a way to automate this. Any suggestions (besides buying other count software?). -- Jim Lines Sr. Microsoft Dynamics GP Applications Consultant Certified Microsoft Dynamics GP Specialist I don't think so Jim. The assumption behind cycle counting is that you'll count all your inventory at least once annual...

count
I have a report that I have been emailing help on with you guys. Everyone has been such a great help. My report is a 12 month rolling report, which is based off of a crosstab query. I need a field called count. This will count what months have data in them. So for example: Item Mth1 Mth2 Mth3 Mth4 Mth5 Mth6 Mth7 Mth8 Mth9 Mth10 Mth11 Cnt 12 2 0 0 0 0 3 3 6 2 0 6 The count being which months are > 0. Do I create this in my query or better off in my report? Thanks in advance KimP -- Message posted ...

Counting colored cells
I need to count the number of rows (or cells) that are are a particular color. ex: How many cells in column A are red? Daniel, You need a VBA function to do this. See the CountByColor function at http://www.cpearson.com/excel/colors.htm . -- Cordially, Chip Pearson Microsoft MVP - Excel www.cpearson.com chip@cpearson.com "Daniel" <dcarlileaz@hotmail.com> wrote in message news:0c9901c3886b$a55b7b20$a401280a@phx.gbl... > I need to count the number of rows (or cells) that are are > a particular color. ex: How many cells in column A are > red? ...

Count occurrances with conditions
I am trying to count in 3 columns. Column A will have entries of "B or "S" and columns B and C will have "1" or "0". A B C B 0 1 B 1 0 B 1 1 S 1 1 I want to count how many times column C has a 1 with a B or S. That i no problem, I can do that. I also want to count the number of time column B has a 1 with a B or S. That is no problem, I can do that. However, the third count I want to count is when a 1 appears in bot column B and...

not COUNTING duplicate cells
Easy one...How to count a number of cells in a column that have unique text when some are duplicated. Thanx One way, =SUMPRODUCT(1/COUNTIF(A2:A100,A2:A100)) -- Regards, Peo Sjoblom "alc" <al.contente@ripuc.state.ri.us> wrote in message news:0519AD08-0043-4D1B-9D71-7D2FE8776426@microsoft.com... > Easy one...How to count a number of cells in a column that have unique text when some are duplicated. > > Thanx ...

Counting Subfolders
Is there any simple way to get total(recursively) subfolders from any folder? I know how to do it using CFileFind. But I hope there maybe simpler method. I use ::FindFile, but it isn't any easier, it just allows for larger file sizes. It's pretty easy to write a recursive routine that counts the folders. Send me a private email and I'll email you a routine I use. I'm not at my work desk right now so I can't get to it until the morning. Tom "Joonho Ryu" <junoryu@hotmail.com> wrote in message news:uRctBkLUDHA.3188@tk2msftngp13.phx.gbl... > Is there ...

Newbie: counting repeated values ???????
Hello all, I know little about Excel that's why i am posting this message here. I have a sheet with several columns, one of those columns have always one of this 2 values: YES or NO My question is, is there a way to count how many YES or NO are in that column and display the number in other cell? I already tried =+COUNTIF(D10:D240,"Yes") but i get a msg saying my form have an error. Thanks in advance, Helder Portugal Helder Take the + sign out of your formula =COUNTIF(C3:C8,"Yes") >-----Original Message----- >Hello all, > >I know little about Excel...

Counting rows, then counting values.
I have a lot of spreadsheets with many rows and columns of numbers. I need a way to find the highest value in each row, (mark it some how, bold the number maybe), then count the number of "highest" values are in each column. Is there an easy way to do this? Thank You, Michael Hi Michael You can use this to get the value =MAX(A1:A20) and this to count =COUNTIF(A1:A20,MAX(A1:A20)) -- Regards Ron de Bruin http://www.rondebruin.nl "Michael via OfficeKB.com" <forum@nospam.OfficeKB.com> wrote in message news:152907df2ac24b6ab6ee8d51d46958d9@OfficeKB.com... >...