限定名合法名(英語:QNames),又譯限定名,是XML命名空间引入的概念,用来作为URI引用。[1] 其名稱來自於英語:qualified name(意为合法的名字)定义了元素和属性的合法的标识符。合法名通常在XML文档中用作特定元素或属性的引用。 合法名原称限定名,因与XML命名空间[2]中的表述有冲突,并且qualified译为合法也是合理的,因此对其进行了编辑。 动机由于URI引用可能会很长并且可能包含XML元素/属性命名中禁止的字符,因此,需要建立命名空间缩写到URI之间的映射,这样可以在XML元素/属性名中使用命名空间的缩写,这样就可以更加方便地书写XML文档。这种使用命名空间缩写的方法来给XML元素/属性命名的方式,即为“合法名”命名(参见示例)。 形式化定义 QName ::= PrefixedName | UnprefixedName
PrefixedName ::= Prefix ':' LocalPart
UnprefixedName ::= LocalPart
其中Prefix(前缀)是名字空间的一个符号,而LocalPart是限定名的本地部分。本地部分可以是属性名或元素名。 维基百科“XML名字空间”词条,将合法名具体分为如下两种[2]: XML文档中的元素名和属性名可以使用限定名或非限定名,限定名由命名空间的前缀和局部名组合而成,例如"xhtml:hr"。非限定名只有局部名,没有前缀。非限定名被认为属于缺省命名空间,如果缺省命名空间没有定义,则属于无命名空间。 限定名即对应上例中的PrefixedName。非限定名即对应上例中的UnprefixedName。 示例 <?xml version='1.0'?>
<doc xmlns:x="http://example.com/ns/foo">
<x:p/>
</doc>
在第二行中,前缀“x”被声明与URI"http://example.com/ns/foo"相关联。这个前缀后面可用作名字空间的缩写。后面的标签“x:p”是一个限定名,“x”是命名空间引用,“p”是本地部分。而标签“doc”也是一个非限定名,仅包含本地部分。它们都属于合法名。[5] 参见参考文献
|
Index:
pl ar de en es fr it arz nl ja pt ceb sv uk vi war zh ru af ast az bg zh-min-nan bn be ca cs cy da et el eo eu fa gl ko hi hr id he ka la lv lt hu mk ms min no nn ce uz kk ro simple sk sl sr sh fi ta tt th tg azb tr ur zh-yue hy my ace als am an hyw ban bjn map-bms ba be-tarask bcl bpy bar bs br cv nv eml hif fo fy ga gd gu hak ha hsb io ig ilo ia ie os is jv kn ht ku ckb ky mrj lb lij li lmo mai mg ml zh-classical mr xmf mzn cdo mn nap new ne frr oc mhr or as pa pnb ps pms nds crh qu sa sah sco sq scn si sd szl su sw tl shn te bug vec vo wa wuu yi yo diq bat-smg zu lad kbd ang smn ab roa-rup frp arc gn av ay bh bi bo bxr cbk-zam co za dag ary se pdc dv dsb myv ext fur gv gag inh ki glk gan guw xal haw rw kbp pam csb kw km kv koi kg gom ks gcr lo lbe ltg lez nia ln jbo lg mt mi tw mwl mdf mnw nqo fj nah na nds-nl nrm nov om pi pag pap pfl pcd krc kaa ksh rm rue sm sat sc trv stq nso sn cu so srn kab roa-tara tet tpi to chr tum tk tyv udm ug vep fiu-vro vls wo xh zea ty ak bm ch ny ee ff got iu ik kl mad cr pih ami pwn pnt dz rmy rn sg st tn ss ti din chy ts kcg ve