Specialize props attribute and add to OxygenXML Profiling attributes
Posted: Thu Dec 17, 2015 11:32 am
Hi all,
so just before Christmas I've decided to do something a little complicated and have come to a block. I want to specialize the props attribute and have it available in my OxygenXML profiling attributes.
The story so far:
* I've read the oxygenxml help on specialization https://www.oxygenxml.com/doc/versions/ ... pport.html
* I've read the moon phase examples and instructions http://dita4practitioners.github.io/dit ... ocess.html
* I've created an attribute specialization using the generator https://dita-generator-hrd.appspot.com/attribute/#p1
I want to create the following attribute specialization:
generation
- classic
- new generation
and I want this to appear in the profiling attributes menu when I select an item in DITA (e.g. a topicref in a map, a table row in a reference, etc etc)
I've added the attribute specialization files from the generator to a new plugin: com.example.specialization.generation and I've run the Dita OT integrator.
Just for info: I already have a subject scheme ditamap which I've included in my current ditamap. The attributes which are defined in my subject scheme are available for use in the profiling attributes menu as described in your tutorial videos https://www.oxygenxml.com/demo/DITA_Subject_Scheme.html
I've also tried copying the basemap.dtd into my plugin and modifying it and then running the integrator again. But this didn't make any difference.
Unfortunetely my new attribute isn't appearing in my profiling attributes. What do I have to do to make it appear there?
Thanks
Rich
p.s. Here is the boring part, the contents of my attribute specialization files:
com.example.specialization.generation / generationAttDomain.ent
com.example.specialization.generation / basemap.dtd
com.example.specialization.generation / catalog-dita.xml
com.example.specialization.generation / integrator.xml
com.example.specialization.generation / plugin.xml
com.example.specialization.generation / subject_scheme.ditamap
so just before Christmas I've decided to do something a little complicated and have come to a block. I want to specialize the props attribute and have it available in my OxygenXML profiling attributes.
The story so far:
* I've read the oxygenxml help on specialization https://www.oxygenxml.com/doc/versions/ ... pport.html
* I've read the moon phase examples and instructions http://dita4practitioners.github.io/dit ... ocess.html
* I've created an attribute specialization using the generator https://dita-generator-hrd.appspot.com/attribute/#p1
I want to create the following attribute specialization:
generation
- classic
- new generation
and I want this to appear in the profiling attributes menu when I select an item in DITA (e.g. a topicref in a map, a table row in a reference, etc etc)
I've added the attribute specialization files from the generator to a new plugin: com.example.specialization.generation and I've run the Dita OT integrator.
Just for info: I already have a subject scheme ditamap which I've included in my current ditamap. The attributes which are defined in my subject scheme are available for use in the profiling attributes menu as described in your tutorial videos https://www.oxygenxml.com/demo/DITA_Subject_Scheme.html
I've also tried copying the basemap.dtd into my plugin and modifying it and then running the integrator again. But this didn't make any difference.
Unfortunetely my new attribute isn't appearing in my profiling attributes. What do I have to do to make it appear there?
Thanks
Rich
p.s. Here is the boring part, the contents of my attribute specialization files:
com.example.specialization.generation / generationAttDomain.ent
Code: Select all
<!-- ================================================================================ -->
<!-- ATTRIBUTE EXTENSION ENTITY DECLARATIONS -->
<!-- ================================================================================ -->
<!ENTITY % generationAtt-d-attribute
"generation CDATA #IMPLIED">
<!-- ================================================================================ -->
<!-- DOMAIN ENTITY DECLARATION -->
<!-- ================================================================================ -->
<!ENTITY generationAtt-d-att
"a(props generation)">
<!-- ================================= End of file ================================== -->
Code: Select all
....
<!-- ============================================================= -->
<!-- DOMAIN ATTRIBUTE DECLARATIONS -->
<!-- ============================================================= -->
<!ENTITY % generationAtt-d-dec
SYSTEM "generationAttDomain.ent"
>
%generationAtt-d-dec;
....
<!-- ============================================================= -->
<!-- DOMAIN ATTRIBUTE EXTENSIONS -->
<!-- ============================================================= -->
<!ENTITY % props-attribute-extensions
"%generationAtt-d-attribute;"
>
.....
<!-- ============================================================= -->
<!-- DOMAINS ATTRIBUTE OVERRIDE -->
<!-- ============================================================= -->
<!-- Must be declared ahead of the DTDs, which
puts @domains first in order -->
<!ENTITY included-domains
"&delay-d-att;
&mapgroup-d-att;
&indexing-d-att;
&hi-d-att;
&ut-d-att;
&hazard-d-att;
&generationAtt-d-att;">
Code: Select all
<?xml version='1.0' encoding='UTF-8'?>
<catalog prefer="public" xmlns="urn:oasis:names:tc:entity:xmlns:xml:catalog">
<public publicId="-//Example GmbH//ENTITIES DITA Generation Attribute Domain//EN" uri="dtd/generationAttDomain.ent" />
</catalog>
Code: Select all
<?xml version='1.0' encoding='UTF-8'?>
<project basedir="../.." default="all" name="com.example.specialization.generation">
<import file="${basedir}/integrator.xml" />
<target depends="integrate" name="all" />
</project>
Code: Select all
<?xml version='1.0' encoding='UTF-8'?>
<plugin id="org.dita.specialization.com.example.specialization.generation">
<feature extension="dita.specialization.catalog.relative" type="file" value="catalog-dita.xml" />
</plugin>
Code: Select all
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE subjectScheme PUBLIC "-//OASIS//DTD DITA Subject Scheme Map//EN" "subjectScheme.dtd">
<subjectScheme>
<subjectdef keys="generation.values">
<subjectdef keys="classic" />
<subjectdef keys="newgen" />
</subjectdef>
<enumerationdef>
<attributedef name="generation" />
<subjectdef keyref="generation.values" />
</enumerationdef>
</subjectScheme>