É considerado uma boa prática usar uma tag nxml em arquivos xml conf?

0

Eu tenho procurado alguns exemplos de arquivos de serviços avahi (formato XML), e alguns deles tiveram <!--*-nxml-*--> comentário após a definição do tipo de documento.

Por exemplo:

<?xml version="1.0" standalone='no'?><!--*-nxml-*-->
<!DOCTYPE service-group SYSTEM "avahi-service.dtd">
<service-group>
    <name replace-wildcards="yes">%h</name>
    <service>
        <type>_device-info._tcp</type>
        <port>0</port>
        <txt-record>model=RackMac</txt-record>
    </service>
</service-group>

Após a pesquisa, percebi que o objetivo dessa tag era ser interpretado pelo emacs para o modo nXML. Mas como eu não sou usuário do emacs, essa tag parece completamente inútil como é.

Existe alguma convenção que diz que isso deve ser o padrão para arquivos XML (pode ser apenas arquivos de configuração), ou tem outra finalidade oculta que eu não consigo entender?

    
por dashdashzako 28.01.2017 / 11:34

1 resposta

2

O comentário em XML <!--*-nxml-*--> será ignorado por qualquer analisador XML, portanto, ele não tem nenhuma função em termos do significado ou função real do XML daquele ponto de vista.

Ele está lá apenas para permitir que emacs faça o realce correto, etc.

Em vim , isso é chamado de modeline e ficaria parecido com

<!-- vim: set filetype=nxml.xml : -->

No Emacs, isso é chamado especificando as variáveis locais do arquivo , e o formato um pouco mais longo (comparado ao que está no seu arquivo) é

<!-- -*- mode: modename; var: value; … -*- -->

Isso é útil se o editor não puder descobrir o tipo correto do arquivo de qualquer outra forma (a partir do nome do arquivo ou usando alguma correspondência heurística do conteúdo). Além disso, não serve para nada.

Não há padrões, práticas recomendadas e recomendações que digam que esse tipo de comentário específico do editor precisa ser adicionado.

    
por 28.01.2017 / 12:05