Tuesday, November 21, 2006

Domain Models and OWL

I've been looking at semantic web concepts for some time now, in particular as a way to automate and constrain domain model generation. I'm not interested because I particularly like interacting with XML (I don't) or because I don't like to code in Java (I do), but rather that there appears to be a lot going on in the semantic web realm. I guess it's having now built the same layers of code over and over:

  • Domain
  • Persistence
  • Mapping to xml and back
After awhile it starts to seem... Tedious. Here's my fantasy:

  • Create domain models with logical relationships using the Owl dialect.
  • Inject behavior using an injection framework (such as Swing Spring [boooing]).
  • Define behavior through the use of a rule engine.

Now, keep in mind: I've never used an injection framework in a project, though I have used many IOC patterns, and particularly like certain ones, particularly the separation of services into modular components which are plugged into the domain model to provide behavior.

The developers I work with would snort at my idea, I suspect. That might just be my fantasy, or it's my fantasy telling me that my other fantasy is screwed up.

In any case, I'm going to look at it. A couple of interesting items relating to OWL and Java (hardly new):

  • Jastor: A generation framework (from Owl to java beans).

  • Automatic Mapping of OWL Ontologies to Java (PDF): A paper putting forward a bunch of ideas and issues with Java code generation based upon Owl. In particular, there are good point regarding the different notions of inheritance and typing that Java and OWL have respectively.


TheWayOfTheGun said...

Do you mean Spring and not Swing?

t said...

Goldarn! I did. Thanks. Keep those cards an letters coming.