- From: James Michael DuPont <mdupont777@yahoo.com>
 - Date: Tue, 2 Jul 2002 02:12:09 -0700 (PDT)
 - To: Sergey Melnik <melnik@db.stanford.edu>
 - Cc: Daniel.Brickley@bristol.ac.uk, www-rdf-interest@w3.org
 
Dear Sergey,
Sorry if you got two mails from me, I tried to cancel the previous one,
please ignore it, it was not finished.
I really like the UML work you have done.
I have been reviewing the uml-core-20000507.rdf yesterday and noticed
the following patterns in the RDF and have created a simple META model
around it. 
This is a rough draft to describe them,
I am working on a perl class hierarchy to read the meta model, and then
uml-core-20000507.rdf and then create a meta model in terms of itself.
I will be generating a perl hierarchy from the UML meta-model and
trying to feed this into the introspector.
The meta model is simpler than the model, and can be used to generate
processors of the UML.RDF.
mike
#########################################################
#SYNTAX :
# EACH LINE STARTS WITH A T:,C:,A: or #
# T is a Type, C a container of other elements, A an attribute
# lines starting with a # are a comment.
T:TYPE        
#this is a type of an object
C:CONTAINERTYPE CARDINALITY  
# A container represents element content or mixed content
#THE CARDINALITY CAN BE ?,+, or BLANK
#             (
#              ?       = optional
#              +       = one or more
#              [BLANK] = 1
              )
A:ATTRIBUTE
# An attribute is attached to a Type
##################################################
FOLLOWING ARE THE DEFINITIONS
##################################################
T:rdf:RDF
# THE RDF is the model object, it contains many of the following
C:Class +
C:AssociationClass +
C:Association +
C:Generalization +
C:d:Multiplicity +
T:Class
# A class is the basic element
A:rdf:ID
C:Classifier +
C:Classifier.feature+
T:Classifier
C:Attribute
T:Attribute
A:rdf:ID			
C:StructuralFeature.type
T:StructuralFeature.type
A:rdf:resource
T:Generalization
# here are the inheritance hierarchy.
C:Generalization.child
C:Generalization.parent
T:Generalization.child
A:rdf:resource
T:Generalization.parent
A:rdf:resource
T:AssociationClass
# Here are the associations
A:rdf:ID
C:Classifier.feature +
C:Association.connection
T:Association
C:Association.connection +
T:Association.connection
C:AssociationEnd 
T:AssociationEnd 
A:rdf:ID
C:AssociationEnd.type 
C:AssociationEnd.aggregation 
C:AssociationEnd.multiplicity
C:AssociationEnd.ordering
T:AssociationEnd.type 
A:rdf:resource
T:AssociationEnd.aggregation 
A:rdf:resource
T:AssociationEnd.multiplicity
A:rdf:resource
T:d:Multiplicity
# gives a name to a cardinality
A:rdf:ID
C:d:Multiplicity.range 
# d:Multiplicity.range  can be recursive, ie: it can contain itself
T:d:Multiplicity.range 
C:d:Multiplicity.range ?
C:d:MultiplicityRange.lower
C:d:MultiplicityRange.upper
T:d:MultiplicityRange.lower
# contains a int
C:#PCDATA
T:d:MultiplicityRange.upper
# the following are the alternatives
# contains a int
# OR 
# contains an resource
# BUT NOT BOTH
C:#PCDATA
A:rdf:resource
=====
James Michael DuPont
http://introspector.sourceforge.net/
__________________________________________________
Do You Yahoo!?
Yahoo! Tax Center - online filing with TurboTax
http://taxes.yahoo.com/
Received on Tuesday, 2 July 2002 05:12:10 UTC