Hi Christian,

I replied to you on the StackOverflow post:

https://stackoverflow.com/questions/58581679/xpath-and-css-in-oxygen-xml-author-how-to-create-a-dynamic-parameter-in-oxy-xpa/58586584#58586584

Regards,
Radu

Radu Coravu
<oXygen/> XML Editor
http://www.oxygenxml.com

On 10/25/2019 4:25 PM, Christian Achter wrote:
Dear mailinglist members.

I am creating an Oxygen framework to display XML data in Oxygen XML Author's Author mode. This is part of the XML I have with two nodes <ab> in it:

<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>

The upper <ab> node has an atribute hkg:orgKey="#n_123_456" pointing to second element's xml:id="n_123_456". I use the following CSS to display the value of <orgName> of the second element in the visual representation of the first element:

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")
}

This works fine. But now I need to create the line

"/TEI/text/body/div/ab[@xml:id='n_123_456']/seg[@type='name']/orgName/text()"

dynamically which means: Instead of the specific value xml:id n_123_456 it should use whatever the value of the attribute @hkg:orgKey of the node <affiliation> is. I tried this:

"/TEI/text/body/div/ab[@xml:id=@hkg:orgKey]/seg[@type='name']/orgName/text()"

but it doesn't work. I also tried other variations like ab[@xml:id='@hkg:orgKey'] or ab[@xml:id=attr('hkg:orgKey')] and many more but none of them gave me the expected result.

Maybe it is a syntax problem. I really hope there will be a solution to this and I would be very thankful for assistance. Any help is appreciated.

I tried to send as much code as needed but of course shortened some parts not relevant in this case. If something is missing (or too much) please let me know.

Thanks in advance and kind regards
Christian Achter
University of Bern


_______________________________________________
oXygen-user mailing list
oXygen-user@oxygenxml.com
https://www.oxygenxml.com/mailman/listinfo/oxygen-user

_______________________________________________
oXygen-user mailing list
oXygen-user@oxygenxml.com
https://www.oxygenxml.com/mailman/listinfo/oxygen-user

Reply via email to