我大规模,高容量,面向公众的Web应用程序的工作。 应用程序的成功运行是非常重要的业务,所以有一些是对其运行MI工具。
其中一个MI工具基本上是着眼于被发送到浏览器的每个页面请求的HTML(我已经简化它了不少,但对于这个问题,那做一些分析,对HTML的一种工具的目的)
对于这个MI工具来获得它需要的数据,我们把元数据的头部元素。 目前我们做的HTML注释:
<!doctype html>
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en" class="">
<head>
<!-- details = 52:AS6[rxSdsMd4RgYXJgeabsRAVBZ:0406139009] -->
<!-- policy id = 1234567890 -->
<!-- party id = 0987654321 -->
<!-- email address = user@email.com -->
<!-- error = 49 -->
<!-- subsessionid = bffd5bc0-a03e-42e5-a531-50529dae57e3-->
...
和工具简单地查找与正则表达式给定的元数据评论
由于这个数据是元数据,我想将它更改为HTML元标签,因为它感觉语义正确。 事情是这样的:
<!doctype html>
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en" class="">
<head>
<meta name="details" content="52:AS6[rxSdsMd4RgYXJgeabsRAVBZ:0406139009]" />
<meta name="policyId" content="1234567890" />
<meta name="partyId" content="0987654321" />
<meta name="emailAddress" content="user@email.com" />
<meta name="error" content="49" />
<meta name="subsessionid" content="bffd5bc0-a03e-42e5-a531-50529dae57e3" />
...
这感觉更多的语义,而且我可以得到MI工具,它的工作没有问题 - 只是改变了正则表达式的情况。 但是现在让我与W3C验证的问题。 它不会验证,因为我使用的是元名称无法识别。 我得到的错误“错误值的详细信息对元素元属性名称:关键字细节未注册。” 它表明我对WHATWG维基注册这些名称值。
虽然我能做到这一点,感觉不对。 我的一些meta标签的是“通用”(如错误和EMAILADDRESS),所以我可能找到一个已经注册的名称值并使用它。 然而,他们大多是特定行业/组织。 感觉不对的注册名为subsessionid或partyId,因为这些是特定于我的组织和应用程序的公开名称值。
所以,问题是 - 什么被认为是最好的做法在这种情况下? 我应该让他们为HTML注释? 我应该使用元标记如上,而不是担心W3C验证失败? (尽管这是该组织越来越重要的),我应该尝试注册在WHATWG维基我META NAME值,但知道他们是不是很通用? 还是有另一种解决方案?
欣赏你的思想,欢呼
弥敦道
编辑来显示最终的解决方案:
完整的答案,我会用如下所示。 它基于丰富Bradshaws答案,所以他是一个公认的,但是这是我与完整性去:
<!doctype html>
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en" class="">
<head>
<meta name="application-name" content="Our app name"
data-details="52:AS6[rxSdsMd4RgYXJgeabsRAVBZ:0406139009]"
data-policyId="1234567890"
data-partyId="0987654321"
data-emailAddress="user@email.com"
data-error="49"
data-subsessionid="bffd5bc0-a03e-42e5-a531-50529dae57e3"
/>
...
这证实,那么所有的框打勾:)