head.misc实体代表什么?

时间:2019-06-18 06:14:37

标签: html

我已经获得了head元素声明,如下所示

<!ENTITY % head.misc "(script|style|meta|link|object)*">
<!ELEMENT head (%head.misc;,((title, %head.misc;, (base, %head.misc;)?) | (base, %head.misc;, (title, %head.misc;))))>

并被要求描述“ head.misc实体代表什么?”

我只能找到使用head.misc的DTD文件 还有一个简短的解释说: “并且head.misc的元素仅允许作为HEAD元素的子代。因此STYLE仅允许作为HEAD元素的子代” 但这似乎不是完整的答案。

我应该说它代表哪些元素只能在he​​ad元素标签中使用吗?

1 个答案:

答案 0 :(得分:1)

以下是一些符号解释:

  • df = df.drop_duplicates(subset=['Id']) #where 'id' is the column used to filter print (df) -只是对上面定义的实体的引用,因此,您可以将其替换为表达式%head.misc;
  • (script|style|meta|link|object)*-逗号似乎是列表分隔符
  • ,-括号是正则表达式中的分组对象
  • ()-问号是零或一的量词(即左边的东西可以出现0或1次,换句话说,它是可选的,但仅限于一个实例)
  • ?-星号是一个零个或多个量词(左边的东西可以出现0、1、2或任何其他次数-可选,但不限于一个实例)
  • *-竖线字符为|-即分组的左部分或右部分,但不是两者都可以(当然,可以有两个以上的部分,原理是相同的)

因此,or后面的表达式可以这样解释:

  • head.misc是任意组合形式的任意数量的这些元素(包括空字符,即零个元素):
    • 脚本
    • 样式
    • 链接
    • 对象
  

我应该说它代表哪些元素只能在he​​ad元素标签中使用吗?

否,因为下一条语句添加了两个可能的元素-head.misctitle。据我了解,base可以是:

  • 零个或多个head标签
  • 后跟script/style/meta/link/object
  • 后面有零个或多个title标签
  • 可选地后跟script/style/meta/link/object标签和零个或多个零个或多个base标签

或者这个:

  • 零个或多个script/style/meta/link/object标签
  • 后跟script/style/meta/link/object
  • 后面有零个或多个base标签
  • 后跟script/style/meta/link/object标签和零个或多个零个或多个title标签

因此,似乎两个规则一起在script/style/meta/link/object中表达了关于about标签的以下内容:

  • head标签可以有任意数量(包括零个)
  • 任何地方都必须只有一个script/style/meta/link/object标签
  • 任何地方都必须有零个或一个title标签