On 01.09.21 10:23, Sergey Ilinykh wrote:
I mean to use both *anchor* and *xml:lang* attributes to not write a complicated element query parser if one is not provided by the used libs.

What would you then put in the "anchor" attribute?

If you say just the name of the referenced element (e.g. "body" or "subject"), well then there is still a problem with for example XEP-0316 MUC PEP messages where you can have multiple <text/> elements that you'd like to have mentions for. In such a case, the element name and "xml:lang" attribute aren't sufficient to know which <text/> element is being referred to.

If you say an id selector (e.g. #abc123), then we're back to my original proposal, which works for all the use-cases brought up so far, but which requires an "id" attribute on the referenced element.

- JC

ср, 1 сент. 2021 г. в 11:10, JC Brand <li...@opkode.com <mailto:li...@opkode.com>>:



    On 01.09.21 10:06, Sergey Ilinykh wrote:
    why not just

    ```
    <reference xml:lang="en" .../>
    ```
    ?

    Because that doesn't distinguish between elements with different
    names.
    Is that reference based on the <body/> or <subject/> tag? Or
    perhaps a <text/> tag?

    - JC

    ср, 1 сент. 2021 г. в 10:59, JC Brand <li...@opkode.com
    <mailto:li...@opkode.com>>:

        Hi Jonas

        On 31.08.21 17:23, Jonas Schäfer wrote:
        Hi JC,

        This has somehow slipped past me.

        Thanks for taking the time to respond.

        On Freitag, 13. August 2021 14:00:06 CEST JC Brand wrote:
        So, if you have a stanza with for example, both "subject" and "body"
        tags, we can have references for both, and use the "anchor" attribute as
        follows (I hope this comes out formatted properly once sent):

        <message type="headline" from="sch...@springfield.city"  
<mailto:sch...@springfield.city>>
              <subject id="subject">Attention Bart Simpson</subject>
              <body id="body">Please hand in your homework before the end of the
        day</body>
              <reference anchor="#subject" begin="9" end="21" type="mention"/>
        </message>
        What about messages with multiple <body/> elements disambiguated by 
xml:lang?
        Could some conceivably contain a mention while others don't? Does this 
require
        replicating the mention element all over? Same question for <subject/>.
        This is another currently ambiguous and undefined use-case
        that I think can be solved with my proposal.
        As the XEP currently stands, there's no documented way to
        distinguish between multiple <body/> (or <subject/>) elements.

        Going with my proposal, the solution would be to have a
        separate <reference/> element for each <body/>.
        The mention parameters ("begin", "end") will be different for
        each <body/> since the mentioned text usually won't be in the
        exact same place for the different translations.

        The "id" attribute can have any value, it doesn't have to be
        "body" or "subject", those were just examples.

        Besides that, I don't think that adding an attribute to an element in 
this way
        is really acceptable.

        I would prefer an approach which identifies the XML element without 
having to
        modify the XML being referenced.
        The only mechanism that doesn't require modifying the
        referenced elements that I can think of is XPath.

        My example then becomes:

        <message type="headline" from="sch...@springfield.city"  
<mailto:sch...@springfield.city>>
              <subject xml:lang="en">Attention Bart Simpson</subject>
              <subject xml:lang="af">Aandag Bart Simpson</subject>
              <body xml:lang="en">Please hand in your homework before the end of the 
day</body>
              <body xml:lang="af">Handig asseblief jou huiswerk in voor die einde van 
die dag</body>
              <reference anchor="/message/subject[@xml:lang='en']" begin="9" end="21" 
type="mention"/>
              <reference anchor="/message/subject[@xml:lang='af']" begin="6" end="18" 
type="mention"/>
          </message>

        Regards
        JC


        Libraries which currently represent body as a
        (mappnig of language tags to) string(s) would now need extra magic in 
order to
        be able to set ID attributes on those. This feels like a quite major 
change,
        and not just to References, but to literally everything else.

        kind regards,
        Jonas

            [1]:https://www.w3.org/TR/REC-xml/#id  
<https://www.w3.org/TR/REC-xml/#id>

        _______________________________________________
        Standards mailing list
        Info: https://mail.jabber.org/mailman/listinfo/standards
        <https://mail.jabber.org/mailman/listinfo/standards>
        Unsubscribe: standards-unsubscr...@xmpp.org
        <mailto:standards-unsubscr...@xmpp.org>
        _______________________________________________


    _______________________________________________
    Standards mailing list
    Info:https://mail.jabber.org/mailman/listinfo/standards  
<https://mail.jabber.org/mailman/listinfo/standards>
    Unsubscribe:standards-unsubscr...@xmpp.org  
<mailto:standards-unsubscr...@xmpp.org>
    _______________________________________________

    _______________________________________________
    Standards mailing list
    Info: https://mail.jabber.org/mailman/listinfo/standards
    <https://mail.jabber.org/mailman/listinfo/standards>
    Unsubscribe: standards-unsubscr...@xmpp.org
    <mailto:standards-unsubscr...@xmpp.org>
    _______________________________________________


_______________________________________________
Standards mailing list
Info: https://mail.jabber.org/mailman/listinfo/standards
Unsubscribe: standards-unsubscr...@xmpp.org
_______________________________________________

_______________________________________________
Standards mailing list
Info: https://mail.jabber.org/mailman/listinfo/standards
Unsubscribe: standards-unsubscr...@xmpp.org
_______________________________________________

Reply via email to