- 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