Pages: 1
Print
Author Topic: Specializing the DITA "props" attribute  (Read 3052 times)
sfogel
Member

Posts: 2


« on: December 11, 2008, 12:06:34 AM »

Hi, all...

For XMetal Author 5.1, can anyone provide the steps for specializing the DITA "props" attribute for conditional processing? 

Thx

Steve Fogel
Oracle Corporation
Logged
XMetaLOldTimer
Global Moderator
Member

Posts: 19


« Reply #1 on: December 11, 2008, 02:41:43 AM »

Eliot Kimber's blog has a tutorial on how to do the dtd modifications: http://drmacros-xml-rants.blogspot.com/2007/03/tutorial-specializing-dita-conditional.html

XMetaL's authoring dtds are located in the 'Author\DITA\DITA_OT_DTD' folder.  XMetaL's integrated DITA OT has a separate copy of the dtds that need to be manually kept in sync under 'Common Files\XMetaL Shared\DITA_OT\dtd'.


To configure XMetaL's Condition Text dialogs to show the specialized props, editing the Author\Conditional Text\configs\ct_config.xml.  This process is described in the XMetaL help (see 'Modify conditions' topic or search for 'ct_config.xml').


Regards,
Addam
« Last Edit: December 11, 2008, 02:43:17 AM by XMetaLOldTimer » Logged

Addam Smith, XMetaL Project Lead & Architect
JustSystems Canada Inc.
ghkrause
Member

Posts: 62


« Reply #2 on: December 11, 2008, 02:58:09 AM »

In case you do specialization for topic and attributes you can store a single set of files where open toolkit is:
  C:\Program Files\Common Files\XMetaL Shared\DITA_OT\your-specialization-folder (or \dtd)
You tell XMetaL that your specialized dtd is located over there. And even the default dtds can be redirected to this folder to get rid of the "keep in sync".

Any XMetaL specialist listening that knows why we need two sets of DTDs? Of course, the toolkit needs them, but why is XMetaL not reusing them?

BTW: we found a problem with base attribute for some elements as defined in XMetaL's version of DITA 1.1. We went back to the OASIS standard and use DTDs in OT folder only.
Logged

Gunnar H. Krause, TechDoc Manager, Nuremberg Area, Germany
sfogel
Member

Posts: 2


« Reply #3 on: December 11, 2008, 10:27:31 PM »

Thank you all for your replies.

If I create my own specialized DTDs and point XMetal at them (I assume with Tools -> Select Specialized DITA DTD), and if I want to specialize just the props attribute, then is it sufficient to add the required declarations to my copy of the topic.dtd shell in my directory, or do I have to add the declarations elsewhere?

And if I make my own copies in my own directory, do I have to place copies of **ALL** the files from the directory C:\Program Files\Common Files\XMetaL Shared\DITA_OT\dtd in there so that they all resolve to each other?

Thx

Steve
Logged
ghkrause
Member

Posts: 62


« Reply #4 on: December 12, 2008, 02:50:38 AM »

I have a specialization directory in parallel to C:\Program Files\Common Files\XMetaL Shared\DITA_OT\dtd called qimonda\.
1) The minimum file set you need to do props specialization AFAIK:
my-concept.dtd and my-attributedomain.ent
2) Change all file entities in my-concept.dtd to "..\dtd\<filename>"
3) and link your ent file (to my-concept.dtd)
<!ENTITY % my-attributedomain     PUBLIC
"-//MY-OWN//ENTITIES DITA Attributes//EN"
"my-attributedomain.ent"                                                >
%my-attributedomain;
3) and make your attributes known (again in my-concept.dtd)
<!ENTITY % props-attribute-extensions
"%my-first-props-d-attribute; %my-second-props-d-attribute;" >
Note: these entities have to be defined in my-attributedomain.ent.

Other option: start all your files with a prefix like we use "q-" and store them in the dtd folder. You do not touch any OASIS file, at least I do never.

Enjoy specializing!
Logged

Gunnar H. Krause, TechDoc Manager, Nuremberg Area, Germany
Pages: 1
Print
Jump to:  

email us