Using RDFa to mark-up features in specifications for websites

If you ever wrote a specification, you've come across the following problem: Once you finally built your spec you need to cut it into feature-tickets, spec units that you can properly follow in your project management system. This basically duplicates your information, in a fluent text and a ticket version. It's a lot of extra work and worst of all it disconnects your specification from your project management system.
In most cases this means that from that point on, the written document is dead: the fluid text version will never be rewritten. A recipe for a communication disaster.
Today during an R&D meetup with the colleagues, I realized that it's possible to solve this problem with RDFa mark-up. Most specifications have a content hierarchy with hierarchically grouped features (not necessarily in this order) by:
- project
- subproject
- milestone
- component
- feature
It is possible to define an ontology that collects these properties so that you can then say something like:
xmlns:featurespec="http://pronovix.com/featurespec/">
<div property=”featurespec:project”>
<h1>Acme e-shop for interplanetary mouse rockets</h1>
<div property=”featurespec:subproject”>
<h2>Flash splash screen: mice for world domination</h2>
<div property=”featurespec:component”>
<h3>Drupal XML RPC service</h3>
The Splash screen will have a couple of different backend functions:
<ul>
<li property=”featurespec:feature”>A function that retrieves a list of mice that have conquered the world from the database that will be shown on the splash screen</li>
<li property=”featurespec:feature”>A function that retrieves the url's for the mouse launching movies that will be shown in a carousel on the page</li>
</ul>
</div>
</div>
</div>
</body>
Erno Zsemlye, my colleague, is working on an RDFa/micro-format WYSIWYG-like interface that will allow you to add RDFa markup to text in Drupal sites. Today it stroke me that you could use RDFa to solve the eternal specification to feature problem:
- You have a wiki page in which you collaboratively build a specification with your customer
- Once development starts you use the WYSIWYG editor to quickly add RDFa mark-up
- You parse the marked-up spec into feature tickets
- You would need to assign unique identifiers to the features so that when the text in the spec changes you don't loose your connection with your ticket
- This identifier could be an automatic index number that is assigned to every feature in a given revision of the spec (e.g. node/NID/VID/FID with respectively node id, revision id, feature id).









Interesting.
I'm available in #drupal-wysiwyg for any questions about Wysiwyg module's new plugin API.
Erno told me he's in contact with you and will be talking with you on IRC. Thank you very much for the offer!