---
title: "Msxml; xpath med pipe-tecken '|'"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/152054-msxml-xpath-med-pipe-tecken"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "toha"
published: "2006-10-04T10:36:49.000Z"
updated: "2006-10-05T11:20:34.000Z"
replies: 5
views: 577
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/asp/152054-msxml-xpath-med-pipe-tecken"
---

# Msxml; xpath med pipe-tecken '|'

## #1 — toha, 2006-10-04T10:36Z

Jag har följande xml document:

```
&#65279;<?xml version="1.0" encoding="UTF-8"?>
<TEMPLATE>
  <languages>
    <language lcid="1033">
      <word id="title||Titel">Titel</word>
      <word id="Introduction1||Introduktion">Introduktion</word>
    </language>
    <language lcid="1053">
      <word id="title||Titel">Titel</word>
      <word id="Introduction1||Introduktion">Introduktion</word>
    </language>
  </languages>
</TEMPLATE>
```

Vad jag vill göra är att hämta word-element där @id = ''title\|\|Titel".

```
Dim xpath, wordId
wordId = "title||Titel"
Set node = xmlDoc.selectSingleNode("//word[@id = '" & wordId & "'])[1]")
```

Problemet är att man inte får några träffar. Troligtvis beroende på att \| betyder union i xpath. Jag har testat att gjort om det till html entities: &brvbar; ¦ &zwnj; &#8204;  men inget av det fungerar. Går det att söka upp elementen?

Permalänk: https://www.webforum.nu/p/152054

## #2 — emission, 2006-10-04T22:09Z

& #124;

HTML-entities är specialdefinerade för HTML och kan inte användas i XML

Permalänk: https://www.webforum.nu/p/1877291

## #3 — nitro2k01, 2006-10-05T08:40Z

En vild gissning är att du ska escapea pipe-tecknen i sökfrågan:

```
Dim xpath, wordId
wordId = "title\|\|Titel"
Set node = xmlDoc.selectSingleNode("//word[@id = '" & wordId & "'])[1]")
```

~~Sen är jag inte helt säker på att \| är ett tillåtet tecken för xml-id'n.~~ \<- Glöm det där, feltänk!

Permalänk: https://www.webforum.nu/p/1877381

## #4 — Peter S, 2006-10-05T08:59Z

Däremot är det väl ej tillåtet att flera element har samma id?

Permalänk: https://www.webforum.nu/p/1877389

## #5 — nitro2k01, 2006-10-05T11:00Z

> **Peter S skrev:**
>
> Däremot är det väl ej tillåtet att flera element har samma id?

Slå mig i huvudet om jag har fel, men är inte id bara ett vanligt attribut i xml, tvärtemot vad det är i html?

Permalänk: https://www.webforum.nu/p/1877425

## #6 — Peter S, 2006-10-05T11:20Z

> **nitro2k01 skrev:**
>
> Slå mig i huvudet om jag har fel, men är inte id bara ett vanligt attribut i xml, tvärtemot vad det är i html?

Hm, en titt på <http://www.w3.org/TR/REC-xml/#sec-attribute-types> verkar ge att endast ett element i ett XML-dokument får ett visst id-värde.

Permalänk: https://www.webforum.nu/p/1877434

---

Tråden på webben: https://www.webforum.nu/amne/asp/152054-msxml-xpath-med-pipe-tecken
