If you dont want to buy Enterprise Architect then it should be
possible to use ArgoUML or some other tool - and it would be a useful
contribution to test this out.
Regards
Rob Atkinson
John Reid <sdiowl@xxxxxxxxxxxx> wrote on 07/25/2006 09:02:18 AM:
> Guess I should start by introducing myself properly :-) My name's
> John Reid.
Welcome aboard!
> > Hmmm... a _graphical_ modeling tool, or an Ecore adapter?
> Bryce, you nailed it. From a quick initial read of docs I think
> I'll need both. My initial idea was to:
> 1. Define a UML profile for geographic features
> 2. Use a (possibly customized) heavy-weight UML 2.0 graphical
> modeling tool to do the hard work. I'm currently looking at Visual
UML
> 3. Use XMI and UML 2.0 Diagram Interchange files for native model
> persistence and publishing
> 4. Provide adapters to read/write ISO compliant XML schemas
I'm getting lost in terminology. This happens to me a lot. :)
1] My understanding is that the UML encoding of Geographic features was
handed to us from on high in 19109, Clause 8 (I think). Are you talking
about drawing out the required UML (e.g. '107, '108, '111, '112, '115...)
in a specific UML tool? Or are you talking about something else when you
say a "profile"? Perhaps drawing out a particular subset of '107, etc.
2&3 ] Bravo!
4] ? Which ISO compliant XML schemas? GML 3.2.0 / ISO 19139?
Beware of the GT/GeoAPI Feature Model. You may get some data which is
not
strictly ISO compliant (making it difficult to encode it in an ISO
compliant way.) Jody insisted on allowing for non-OGC non-ISO features
merely because customers generate all manner of garbage XML and he's
afraid
to call them wrong. :) Due to much whining on my part, they made
allowances for people who play by the rules, but I think this is
optional.
It has been a while since I looked at the Feature Model. I suggest you
examine it to ensure that you can extract an appropriate guarantee that
feature schema you receive will be encode-able...Pay particular attention
to duplicate feature attributes. Jody, can you direct this fine young
man
to the ISO subset of the feature model?
Also beware of GML. Making an XML schema seems to invite people to
disregard all else. The XML Schema for GML permits more than is
allowed by
the text of the GML standard, and also more than is allowed by the data
model GML is supposed to represent. People will argue that anything that
validates against the schema should be considered "legal" even if it
conflicts with the text of the GML standard or the model that GML
encodes.
You're going to have to defend your #4 from incorrect allegations of it
being broken and resist the temptation to break your codec for everyone
just because someone has produced or needs to receive data which is
broken
in a specific way. Down that road lies madness.
Not that I have any strong feelings on the issue. :) Nope not me.
> I had hoped that a direct mapping could be established between a UML
> profile and ISO 19109, however I'm now unsure if this is possible.
> At least not with the "natural" way to use UML profiles... It looks
> like an additional layer will be needed to map from the Eclipse UML2
> model to the GeoAPI interfaces and 4) can be handled by the
> Geotools/uDig implementation of these interfaces.
Again, I'm not sure I understand the word profile in this context.
I think Eclipse UML2 would only be necessary because you want to use
UML2.0
Diag. Int. Files. Ecore is much smaller and I'm nearly certain it
contains
everything required to be ISO compliant (including references,
inheritance,
etc.) Is there a converter between the two? The only reason I
mention it
is because Coverages are being built as Ecore models, which should
kickstart your profileing.
The next two paragraphs are intended to convince you that you need to
declare your scope before it explodes. :) Don't get discouraged! I
want to
see UML schema representations happen!!
How do you intend to handle Operations? When a geographic feature is
specified to have some sort of behavior, how do you want to match it up
with a local version of code in the current environment? Can't code
it in
UML!
More generally, say you have a shapefile containing roads which came from
some random source. Separately, you have an ISO compliant Roads schema
which you have been working with (maybe even coding against: routing
algorithms and whatnot.) Can you map the feature attributes in your
shapefile to identically-defined "standard" attributes in the Roads
schema,
thereby making all your hard "routing" work available to you?