1 package SQL::Translator::XMI::Parser::V10;
3 # -------------------------------------------------------------------
5 # -------------------------------------------------------------------
6 # Copyright (C) 2003 Mark Addison <mark.addison@itn.co.uk>,
8 # This program is free software; you can redistribute it and/or
9 # modify it under the terms of the GNU General Public License as
10 # published by the Free Software Foundation; version 2.
12 # This program is distributed in the hope that it will be useful, but
13 # WITHOUT ANY WARRANTY; without even the implied warranty of
14 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15 # General Public License for more details.
17 # You should have received a copy of the GNU General Public License
18 # along with this program; if not, write to the Free Software
19 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
21 # -------------------------------------------------------------------
27 SQL::Translator::XMI::Parser::V10 - Version 1.0 parser.
34 use base qw(SQL::Translator::XMI::Parser);
42 default_path => '//Foundation.Core.Class[@xmi.id]',
47 path => 'Foundation.Core.ModelElement.name/text()',
51 path => 'Foundation.Core.ModelElement.visibility/@xmi.value',
54 name => "isSpecification",
55 path => 'Foundation.Core.ModelElement.isSpecification/@xmi.value',
59 path => 'Foundation.Core.GeneralizableElement.isRoot/@xmi.value',
63 path => 'Foundation.Core.GeneralizableElement.isLeaf/@xmi.value',
67 path => 'Foundation.Core.GeneralizableElement.isAbstract/@xmi.value',
71 path => 'Foundation.Core.Class.isActive/@xmi.value',
78 'Foundation.Core.Classifier.feature/Foundation.Core.Attribute',
83 # name => "operations",
84 # path => "UML:Classifier.feature/UML:Operation",
85 # class => "operation",
86 # multiplicity => "*",
91 $spec10->{attribute} = {
93 plural => "attributes",
94 default_path => '//Foundation.Core.Attribute[@xmi.id]',
98 path => 'Foundation.Core.ModelElement.name/text()',
101 name => "visibility",
102 path => 'Foundation.Core.ModelElement.visibility/@xmi.value',
105 name => "isSpecification",
106 path => 'Foundation.Core.ModelElement.isSpecification/@xmi.value',
109 name => "ownerScope",
110 path => 'Foundation.Core.Feature.ownerScope/@xmi.value',
113 name => "initialValue",
114 path => 'Foundation.Core.Attribute.initialValue/Foundation.Data_Types.Expression/Foundation.Data_Types.Expression.body/text()',
117 # name => "datatype",
118 # path => 'xmiDeref(Foundation.Core.StructuralFeature.type/Foundation.Core.Classifier)/Foundation.Core.DataType/Foundation.Core.ModelElement.name/text()',
123 __PACKAGE__->XmiSpec($spec10);
125 #-----------------------------------------------------------------------------
128 print "******************* HELLO 1.0 ********************\n";
129 shift->_get_classes(@_);
132 1; #===========================================================================
148 =head1 VERSION HISTORY
152 grommit <mark.addison@itn.co.uk>
156 This package is free software and is provided "as is" without express or
157 implied warranty. It may be used, redistributed and/or modified under the
160 a) the Perl Artistic License.
162 See F<http://www.perl.com/perl/misc/Artistic.html>
164 b) the terms of the GNU General Public License as published by the Free Software
165 Foundation; either version 1, or (at your option) any later version.