Я создаю Oxygen Framework для отображения данных XML в авторском режиме Oxygen XML. Это часть XML-файла с двумя узлами :
<TEI>
<text>
<body>
<div n="A">
<ab xml:id="n_d2e23" type="person">
<seg type="name">
<persName>
<surname>Aarberg</surname>,
<forename>Peter von</forename>
</persName>
<roleName>König</roleName>
(<date from="ca. 1300" to="vor 1372">ca. 1300–vor 1372</date>)
</seg>
<seg type="affiliations">
<list>
<item>
<affiliation role="CEO" hkg:orgKey="#n_123_456">Best CEO they ever had</affiliation>
</item>
</list>
</seg>
</ab>
<ab xml:id="n_123_456" source="SW_EB" type="organization">
<seg type="name">
<orgName>Altenburger Hofdruckerei</orgName>
</seg>
</ab>
</div>
</body>
</text>
</TEI>
Первый узел имеет атрибут hkg: orgKey = "# n_123_456" , которыйссылается на атрибут второго узла xml: id = "n_123_456" . Я использую следующий CSS, чтобы отобразить значение второго узла в визуальном представлении первого узла в Oxygen XML. Автор:
affiliation:after {
content: " role: " oxy_textfield(
edit, "@role")
" Organization ID: " oxy_textfield(
edit, "@hkg:orgKey")
"Organization name: " oxy_xpath(
"/TEI/text/body/div/ab[@xml:id='n_123_456']/seg[@type='name']/orgName/text()"
)
" " oxy_url("gfx/link_register.png");
link: attr("hkg:orgKey")
}
Это прекрасно работает изначение 2-го узла, фактически "Altenburger Hofdruckerei", отображается внутри первого - до тех пор, пока я использую конкретное значение hkg: orgKey = "# n_123_456" . Но теперь мне нужно создать строку
/TEI/text/body/div/ab[@xml:id='n_123_456']/seg[@type='name']/orgName/text()
динамически, что означает: вместо определенного значения xml: id = n_123_456 она должна использовать любое значение атрибута @hkg: orgKey узла 1-го элемента is. Я попробовал это:
/TEI/text/body/div/ab[@xml:id=@hkg:orgKey]/seg[@type='name']/orgName/text()
, но это не работает. Я также пробовал другие варианты, такие как ab [@xml: id = '@ hkg: orgKey'] или ab [@xml: id = attr ('hkg: orgKey')] * иеще много, но ни один из них не дал мне ожидаемого результата.
Возможно, это проблема синтаксиса. Я действительно надеюсь, что будет решение этой проблемы, и я был бы очень благодарен за помощь. Любая помощь приветствуется.
Я пытался отправить столько кода, сколько необходимо, но, конечно, сократил некоторые части, не относящиеся к этому контексту. Если чего-то не хватает (или слишком много), пожалуйста, дайте мне знать.
Заранее спасибо.