我正在尝试将 schema.org 标记添加到律师事务所的网站 (itemtype=schema.org/Attorney)。该网站包含专门针对该公司每位律师的页面 (itemtype=schema.org/Person)。这些个人资料页面包括已发表作品的列表(例如 itemtype=schema.org/Book)。我想指出的是,此人是该组织的成员,也是书籍的作者。我正在努力实现这一目标。
这是我正在使用的一些代码:
<body itemscope itemtype="http://schema.org/Attorney">
<!-- this stuff just so the Yandex validator doesn't freak out -->
<meta itemprop="name" content="some law firm">
<meta itemprop="address" content="some address">
<meta itemprop="telephone" content="555-555-5555">
<h1>Book Test</h1>
<div id="profile" itemscope itemtype="http://schema.org/Person">
<h1 itemprop="name">John Smith</h1>
<h3>Published Works</h3>
<ul>
<li itemscope itemtype="http://schema.org/Book"><span itemprop="name">Some Book</span><meta itemprop="author" itemref="profile"></li>
</ul>
</div>
<meta itemprop="member" itemref="profile">
</body>
Run Code Online (Sandbox Code Playgroud)
在浏览器中查看https://dl.dropboxusercontent.com/u/292741/schema-test-book-stackoverflow.html
当使用 Google 的结构化数据工具 (google.com/webmasters/tools/richsnippets) 或 Yandex (webmaster.yandex.com/microtest.xml) 对此进行测试时,我没有得到我想要的结果。在这种情况下,成员和作者属性未注册。
我尝试了多种变体。以下是一些重要的内容:
如果我将 itemscope 和 itemtype=Person 放在成员和作者属性元标记上,则属性会注册,但工具认为我正在谈论三个不同的人(就好像 itemref 没有注册一样)。
如果我将成员和作者属性放在 #profile 上,它们就可以工作,但我会收到错误,因为组织没有作者,书籍也没有成员。 …
我有一个层将 geojson 源中的点要素渲染为圆圈。以下是其中一项功能的示例:
{
type: 'Feature',
properties: {
color: 'red',
red: true,
green: false
},
geometry: {
type: 'Point',
coordinates: [-77.038659, 38.931567]
}
};
Run Code Online (Sandbox Code Playgroud)
我希望圆形不透明度是 3 个因素的乘积(要素的一些属性、地图缩放以及要素状态中是否应隐藏该要素的布尔值)。我无法找到一种方法来编写一个表达式来解释这三个问题。缩放规则的限制似乎是问题所在。
这是我想写的逻辑:
if (feature-state.hidden) {
opacity = 0;
} else if (properties.red) {
opacity = 1;
} else if (properties.green and zoom >= 10) {
opacity = 1;
} else if (zoom >= 15) {
opacity = 1;
} else {
opacity = 0;
}
Run Code Online (Sandbox Code Playgroud)
我尝试编写这样的不透明表达式:
'circle-opacity': [
'case',
['to-boolean', ['feature-state', 'hidden']], 0,
['to-boolean', …Run Code Online (Sandbox Code Playgroud)