通过从基本模板继承来扩展模板

Extending a template by inherit from a base one

提问人:sphakka 提问时间:9/8/2023 更新时间:9/8/2023 访问量:14

问:

我有一个 LDAP 模式 objectClass,它仅通过一个额外的属性 (mailAlternate) 扩展了“inetOrgPerson”,这在 openldap 中工作正常。现在想对相应的phpLDAPadmin的XML模板做同样的事情,但看起来必须明确保留所有父属性加上额外的属性......真是浪费了一点点;-)

更一般地说,给定以下基本模板:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE template SYSTEM "template.dtd">

<template>
  <askcontainer>1</askcontainer>
  <description>New Base Object</description>
  <icon>address-book.png</icon>
  <invalid>0</invalid>
  <rdn>cn</rdn>
  <title>Base template</title>
  <visible>1</visible>

  <objectClasses>
    <objectClass id="baseTemplate"></objectClass>
  </objectClasses>

  <attributes>
    <attribute id="fooAttr">
      <display>Foo</display>
      <order>1</order>
      <page>1</page>
    </attribute>
  </attributes>

</template>

我想扩展它,有点像,只声明一个额外的属性:barAttr

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE template SYSTEM "template.dtd">

<template>
  <askcontainer>1</askcontainer>
  <description>New Extended Object (from Base)</description>
  <icon>address-book.png</icon>
  <invalid>0</invalid>
  <rdn>cn</rdn>
  <title>Base template</title>
  <visible>1</visible>

  <objectClasses>
    <!-- the first declaration is intended as "inherit from" -->
    <objectClass id="baseTemplate"></objectClass>
    <objectClass id="extendedBaseTemplate"></objectClass>
  </objectClasses>

  <attributes>
    <attribute id="barAttr">
      <display>Bar</display>
      <order>2</order>
      <page>1</page>
    </attribute>
  </attributes>

</template>

上面的内容,除非我遗漏了什么,否则是行不通的:PLA 只是在创建新对象时提出额外的(缺失)。barAttrfooAttr

那么,PLA真的支持模板继承吗?

XML 模板 继承 phpldapadmin

评论


答: 暂无答案