coldfusion + xml получить узлы для указанного атрибута - PullRequest
0 голосов
/ 17 февраля 2011

С учетом следующего XML:

<LiveScores>
    <Competition id="4915" name="Comp1" type="Union" group="">
        <Match id="1678" round="No Round" period="2" periodMinutes="40" matchTime="H2 40:06" previewArticleID="102948" matchReportArticleID="" status="Complete" alternateId="40790106">
            <MatchDate startDateLocal="2010-11-27 20:45:00" startDateUTC="2010-11-27 19:45:00" dayName="Sat" shortDate="27-Nov">2010-11-27 20:45:00</MatchDate>
        </Match>
        ...more matches
    </Competition>
    <Competition id="4916" name="Comp2" type="Union" group="">
        <Match id="1678" round="No Round" period="2" periodMinutes="40" matchTime="H2 40:06" previewArticleID="102948" matchReportArticleID="" status="Complete" alternateId="40790106">
            <MatchDate startDateLocal="2010-11-27 20:45:00" startDateUTC="2010-11-27 19:45:00" dayName="Sat" shortDate="27-Nov">2010-11-27 20:45:00</MatchDate>
        </Match>
        ...more matches
    </Competition>
    ...more competitions
</LiveScores>

С учетом указанного идентификатора соревнования (например, 4915), как я могу вернуть только тот узел соревнования, у которого есть этот идентификатор, и никаких других узлов соревнования?

1 Ответ

2 голосов
/ 17 февраля 2011

Разбор xml, а затем выполнение запроса xpath с использованием функции XmlSearch .

<!--- parse the xml --->
<cfset variables.livescoresXML = xmlParse(xml) />
<!--- run the query for the competition node wit id of 4915 --->
<cfset variables.myElements = XmlSearch(
    variables.livescoresXML,
    "/LiveScores/Competition[@id=4915]"
 ) />
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...