diff --git a/model_examples/saxony.transportation_network b/model_examples/saxony.transportation_network index 015f0794d433287eb67d7e8f590d2044e8970134..4c947779a5878a4061cd087788050f624d5f5979 100644 --- a/model_examples/saxony.transportation_network +++ b/model_examples/saxony.transportation_network @@ -38,4 +38,9 @@ <fueltypes>DIESEL</fueltypes> </pois> </locations> + <routes identifier="R1" networkList="//@roadnetworks.1 //@roadnetworks.3" start="//@locations.0" end="//@locations.1"> + <vehicle identifier="V03" location="//@locations.0" model="eTruck" fuelCapacity="150.0"/> + </routes> + <carPark identifier="V01" location="//@locations.0" model="eTruck" fuelCapacity="150.0"/> + <carPark identifier="V02" location="//@locations.2" model="eTruck" fuelCapacity="150.0"/> </transportation_network:TransportationNetwork> diff --git a/stgroup.mdsd.transportation_network.metamodel.edit/icons/full/obj16/Route.gif b/stgroup.mdsd.transportation_network.metamodel.edit/icons/full/obj16/Route.gif new file mode 100644 index 0000000000000000000000000000000000000000..83afb9b3c9a3c3e261dd043d2232d39254ac8e4a Binary files /dev/null and b/stgroup.mdsd.transportation_network.metamodel.edit/icons/full/obj16/Route.gif differ diff --git a/stgroup.mdsd.transportation_network.metamodel.edit/icons/full/obj16/Vehicle.gif b/stgroup.mdsd.transportation_network.metamodel.edit/icons/full/obj16/Vehicle.gif new file mode 100644 index 0000000000000000000000000000000000000000..c4fb30e96873d2484faec9d508dcbdd69e73d82e Binary files /dev/null and b/stgroup.mdsd.transportation_network.metamodel.edit/icons/full/obj16/Vehicle.gif differ diff --git a/stgroup.mdsd.transportation_network.metamodel.edit/plugin.properties b/stgroup.mdsd.transportation_network.metamodel.edit/plugin.properties index 21ea0c3824ce0783a1ae3f66f00b6773dc2d9a42..3aa327f265517a66b3b5c924ee54970162c47d69 100644 --- a/stgroup.mdsd.transportation_network.metamodel.edit/plugin.properties +++ b/stgroup.mdsd.transportation_network.metamodel.edit/plugin.properties @@ -48,3 +48,15 @@ _UI_Unknown_feature = Unspecified _UI_FuelType_PETROL_literal = PETROL _UI_FuelType_DIESEL_literal = DIESEL _UI_FuelType_ELECTRICITY_literal = ELECTRICITY +_UI_Route_type = Route +_UI_Vehicle_type = Vehicle +_UI_TransportationNetwork_routes_feature = Routes +_UI_TransportationNetwork_carPark_feature = Car Park +_UI_Route_networkList_feature = Network List +_UI_Route_start_feature = Start +_UI_Route_end_feature = End +_UI_Route_vehicle_feature = Vehicle +_UI_Vehicle_location_feature = Location +_UI_Vehicle_model_feature = Model +_UI_Vehicle_fuelCapacity_feature = Fuel Capacity +_UI_Vehicle_fuelType_feature = Fuel Type diff --git a/stgroup.mdsd.transportation_network.metamodel.edit/src-gen/stgroup/mdsd/transportation_network/metamodel/transportation_network/provider/RouteItemProvider.java b/stgroup.mdsd.transportation_network.metamodel.edit/src-gen/stgroup/mdsd/transportation_network/metamodel/transportation_network/provider/RouteItemProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..880c516824ee2d49307165c2aae9d0ca755ffe6e --- /dev/null +++ b/stgroup.mdsd.transportation_network.metamodel.edit/src-gen/stgroup/mdsd/transportation_network/metamodel/transportation_network/provider/RouteItemProvider.java @@ -0,0 +1,198 @@ +/** + */ +package stgroup.mdsd.transportation_network.metamodel.transportation_network.provider; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EStructuralFeature; + +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ViewerNotification; + +import stgroup.mdsd.transportation_network.metamodel.transportation_network.Route; +import stgroup.mdsd.transportation_network.metamodel.transportation_network.Transportation_networkFactory; +import stgroup.mdsd.transportation_network.metamodel.transportation_network.Transportation_networkPackage; + +/** + * This is the item provider adapter for a {@link stgroup.mdsd.transportation_network.metamodel.transportation_network.Route} object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class RouteItemProvider extends IdentifiableElementItemProvider { + /** + * This constructs an instance from a factory and a notifier. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public RouteItemProvider(AdapterFactory adapterFactory) { + super(adapterFactory); + } + + /** + * This returns the property descriptors for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) { + if (itemPropertyDescriptors == null) { + super.getPropertyDescriptors(object); + + addNetworkListPropertyDescriptor(object); + addStartPropertyDescriptor(object); + addEndPropertyDescriptor(object); + } + return itemPropertyDescriptors; + } + + /** + * This adds a property descriptor for the Network List feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addNetworkListPropertyDescriptor(Object object) { + itemPropertyDescriptors + .add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), + getResourceLocator(), getString("_UI_Route_networkList_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_Route_networkList_feature", + "_UI_Route_type"), + Transportation_networkPackage.Literals.ROUTE__NETWORK_LIST, true, false, true, null, null, + null)); + } + + /** + * This adds a property descriptor for the Start feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addStartPropertyDescriptor(Object object) { + itemPropertyDescriptors + .add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), + getResourceLocator(), getString("_UI_Route_start_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_Route_start_feature", "_UI_Route_type"), + Transportation_networkPackage.Literals.ROUTE__START, true, false, true, null, null, null)); + } + + /** + * This adds a property descriptor for the End feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addEndPropertyDescriptor(Object object) { + itemPropertyDescriptors + .add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), + getResourceLocator(), getString("_UI_Route_end_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_Route_end_feature", "_UI_Route_type"), + Transportation_networkPackage.Literals.ROUTE__END, true, false, true, null, null, null)); + } + + /** + * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an + * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or + * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) { + if (childrenFeatures == null) { + super.getChildrenFeatures(object); + childrenFeatures.add(Transportation_networkPackage.Literals.ROUTE__VEHICLE); + } + return childrenFeatures; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EStructuralFeature getChildFeature(Object object, Object child) { + // Check the type of the specified child object and return the proper feature to use for + // adding (see {@link AddCommand}) it as a child. + + return super.getChildFeature(object, child); + } + + /** + * This returns Route.gif. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object getImage(Object object) { + return overlayImage(object, getResourceLocator().getImage("full/obj16/Route")); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected boolean shouldComposeCreationImage() { + return true; + } + + /** + * This returns the label text for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getText(Object object) { + String label = ((Route) object).getIdentifier(); + return label == null || label.length() == 0 ? getString("_UI_Route_type") + : getString("_UI_Route_type") + " " + label; + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void notifyChanged(Notification notification) { + updateChildren(notification); + + switch (notification.getFeatureID(Route.class)) { + case Transportation_networkPackage.ROUTE__VEHICLE: + fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false)); + return; + } + super.notifyChanged(notification); + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children + * that can be created under this object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) { + super.collectNewChildDescriptors(newChildDescriptors, object); + + newChildDescriptors.add(createChildParameter(Transportation_networkPackage.Literals.ROUTE__VEHICLE, + Transportation_networkFactory.eINSTANCE.createVehicle())); + } + +} diff --git a/stgroup.mdsd.transportation_network.metamodel.edit/src-gen/stgroup/mdsd/transportation_network/metamodel/transportation_network/provider/TransportationNetworkItemProvider.java b/stgroup.mdsd.transportation_network.metamodel.edit/src-gen/stgroup/mdsd/transportation_network/metamodel/transportation_network/provider/TransportationNetworkItemProvider.java index 2178967b49bdb11ac231af1dd9c77b530fcf1874..c51c997217a770b1427db041a168153b2278e839 100644 --- a/stgroup.mdsd.transportation_network.metamodel.edit/src-gen/stgroup/mdsd/transportation_network/metamodel/transportation_network/provider/TransportationNetworkItemProvider.java +++ b/stgroup.mdsd.transportation_network.metamodel.edit/src-gen/stgroup/mdsd/transportation_network/metamodel/transportation_network/provider/TransportationNetworkItemProvider.java @@ -63,6 +63,8 @@ public class TransportationNetworkItemProvider extends IdentifiableElementItemPr super.getChildrenFeatures(object); childrenFeatures.add(Transportation_networkPackage.Literals.TRANSPORTATION_NETWORK__ROADNETWORKS); childrenFeatures.add(Transportation_networkPackage.Literals.TRANSPORTATION_NETWORK__LOCATIONS); + childrenFeatures.add(Transportation_networkPackage.Literals.TRANSPORTATION_NETWORK__ROUTES); + childrenFeatures.add(Transportation_networkPackage.Literals.TRANSPORTATION_NETWORK__CAR_PARK); } return childrenFeatures; } @@ -128,6 +130,8 @@ public class TransportationNetworkItemProvider extends IdentifiableElementItemPr switch (notification.getFeatureID(TransportationNetwork.class)) { case Transportation_networkPackage.TRANSPORTATION_NETWORK__ROADNETWORKS: case Transportation_networkPackage.TRANSPORTATION_NETWORK__LOCATIONS: + case Transportation_networkPackage.TRANSPORTATION_NETWORK__ROUTES: + case Transportation_networkPackage.TRANSPORTATION_NETWORK__CAR_PARK: fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false)); return; } @@ -152,6 +156,14 @@ public class TransportationNetworkItemProvider extends IdentifiableElementItemPr newChildDescriptors .add(createChildParameter(Transportation_networkPackage.Literals.TRANSPORTATION_NETWORK__LOCATIONS, Transportation_networkFactory.eINSTANCE.createLocation())); + + newChildDescriptors + .add(createChildParameter(Transportation_networkPackage.Literals.TRANSPORTATION_NETWORK__ROUTES, + Transportation_networkFactory.eINSTANCE.createRoute())); + + newChildDescriptors + .add(createChildParameter(Transportation_networkPackage.Literals.TRANSPORTATION_NETWORK__CAR_PARK, + Transportation_networkFactory.eINSTANCE.createVehicle())); } } diff --git a/stgroup.mdsd.transportation_network.metamodel.edit/src-gen/stgroup/mdsd/transportation_network/metamodel/transportation_network/provider/Transportation_networkItemProviderAdapterFactory.java b/stgroup.mdsd.transportation_network.metamodel.edit/src-gen/stgroup/mdsd/transportation_network/metamodel/transportation_network/provider/Transportation_networkItemProviderAdapterFactory.java index 6524640c9b400cd52bb147ad7e0a953cd417d8a1..e473082d436c989cab4a4b7c1774a83319c48d62 100644 --- a/stgroup.mdsd.transportation_network.metamodel.edit/src-gen/stgroup/mdsd/transportation_network/metamodel/transportation_network/provider/Transportation_networkItemProviderAdapterFactory.java +++ b/stgroup.mdsd.transportation_network.metamodel.edit/src-gen/stgroup/mdsd/transportation_network/metamodel/transportation_network/provider/Transportation_networkItemProviderAdapterFactory.java @@ -279,6 +279,52 @@ public class Transportation_networkItemProviderAdapterFactory extends Transporta return customerWarehouseItemProvider; } + /** + * This keeps track of the one adapter used for all {@link stgroup.mdsd.transportation_network.metamodel.transportation_network.Route} instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected RouteItemProvider routeItemProvider; + + /** + * This creates an adapter for a {@link stgroup.mdsd.transportation_network.metamodel.transportation_network.Route}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Adapter createRouteAdapter() { + if (routeItemProvider == null) { + routeItemProvider = new RouteItemProvider(this); + } + + return routeItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link stgroup.mdsd.transportation_network.metamodel.transportation_network.Vehicle} instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected VehicleItemProvider vehicleItemProvider; + + /** + * This creates an adapter for a {@link stgroup.mdsd.transportation_network.metamodel.transportation_network.Vehicle}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Adapter createVehicleAdapter() { + if (vehicleItemProvider == null) { + vehicleItemProvider = new VehicleItemProvider(this); + } + + return vehicleItemProvider; + } + /** * This returns the root adapter factory that contains this factory. * <!-- begin-user-doc --> @@ -402,6 +448,10 @@ public class Transportation_networkItemProviderAdapterFactory extends Transporta companyWarehouseItemProvider.dispose(); if (customerWarehouseItemProvider != null) customerWarehouseItemProvider.dispose(); + if (routeItemProvider != null) + routeItemProvider.dispose(); + if (vehicleItemProvider != null) + vehicleItemProvider.dispose(); } } diff --git a/stgroup.mdsd.transportation_network.metamodel.edit/src-gen/stgroup/mdsd/transportation_network/metamodel/transportation_network/provider/VehicleItemProvider.java b/stgroup.mdsd.transportation_network.metamodel.edit/src-gen/stgroup/mdsd/transportation_network/metamodel/transportation_network/provider/VehicleItemProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..55dad3c9c95f3fbbc9864fdf2ec1054e763ddf1e --- /dev/null +++ b/stgroup.mdsd.transportation_network.metamodel.edit/src-gen/stgroup/mdsd/transportation_network/metamodel/transportation_network/provider/VehicleItemProvider.java @@ -0,0 +1,185 @@ +/** + */ +package stgroup.mdsd.transportation_network.metamodel.transportation_network.provider; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ViewerNotification; + +import stgroup.mdsd.transportation_network.metamodel.transportation_network.Transportation_networkPackage; +import stgroup.mdsd.transportation_network.metamodel.transportation_network.Vehicle; + +/** + * This is the item provider adapter for a {@link stgroup.mdsd.transportation_network.metamodel.transportation_network.Vehicle} object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class VehicleItemProvider extends IdentifiableElementItemProvider { + /** + * This constructs an instance from a factory and a notifier. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public VehicleItemProvider(AdapterFactory adapterFactory) { + super(adapterFactory); + } + + /** + * This returns the property descriptors for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) { + if (itemPropertyDescriptors == null) { + super.getPropertyDescriptors(object); + + addLocationPropertyDescriptor(object); + addModelPropertyDescriptor(object); + addFuelCapacityPropertyDescriptor(object); + addFuelTypePropertyDescriptor(object); + } + return itemPropertyDescriptors; + } + + /** + * This adds a property descriptor for the Location feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addLocationPropertyDescriptor(Object object) { + itemPropertyDescriptors + .add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), + getResourceLocator(), getString("_UI_Vehicle_location_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_Vehicle_location_feature", + "_UI_Vehicle_type"), + Transportation_networkPackage.Literals.VEHICLE__LOCATION, true, false, true, null, null, null)); + } + + /** + * This adds a property descriptor for the Model feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addModelPropertyDescriptor(Object object) { + itemPropertyDescriptors + .add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), + getResourceLocator(), getString("_UI_Vehicle_model_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_Vehicle_model_feature", + "_UI_Vehicle_type"), + Transportation_networkPackage.Literals.VEHICLE__MODEL, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null)); + } + + /** + * This adds a property descriptor for the Fuel Capacity feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addFuelCapacityPropertyDescriptor(Object object) { + itemPropertyDescriptors + .add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), + getResourceLocator(), getString("_UI_Vehicle_fuelCapacity_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_Vehicle_fuelCapacity_feature", + "_UI_Vehicle_type"), + Transportation_networkPackage.Literals.VEHICLE__FUEL_CAPACITY, true, false, false, + ItemPropertyDescriptor.REAL_VALUE_IMAGE, null, null)); + } + + /** + * This adds a property descriptor for the Fuel Type feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addFuelTypePropertyDescriptor(Object object) { + itemPropertyDescriptors + .add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), + getResourceLocator(), getString("_UI_Vehicle_fuelType_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_Vehicle_fuelType_feature", + "_UI_Vehicle_type"), + Transportation_networkPackage.Literals.VEHICLE__FUEL_TYPE, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null)); + } + + /** + * This returns Vehicle.gif. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object getImage(Object object) { + return overlayImage(object, getResourceLocator().getImage("full/obj16/Vehicle")); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected boolean shouldComposeCreationImage() { + return true; + } + + /** + * This returns the label text for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getText(Object object) { + String label = ((Vehicle) object).getIdentifier(); + return label == null || label.length() == 0 ? getString("_UI_Vehicle_type") + : getString("_UI_Vehicle_type") + " " + label; + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void notifyChanged(Notification notification) { + updateChildren(notification); + + switch (notification.getFeatureID(Vehicle.class)) { + case Transportation_networkPackage.VEHICLE__MODEL: + case Transportation_networkPackage.VEHICLE__FUEL_CAPACITY: + case Transportation_networkPackage.VEHICLE__FUEL_TYPE: + fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true)); + return; + } + super.notifyChanged(notification); + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children + * that can be created under this object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) { + super.collectNewChildDescriptors(newChildDescriptors, object); + } + +} diff --git a/stgroup.mdsd.transportation_network.metamodel/model/transportation_network.aird b/stgroup.mdsd.transportation_network.metamodel/model/transportation_network.aird index e11d0536938aaed0f0605e4e7fee7636bfb396d9..189bd3ef93b1d1075d714f9d077cc51482d097b9 100644 --- a/stgroup.mdsd.transportation_network.metamodel/model/transportation_network.aird +++ b/stgroup.mdsd.transportation_network.metamodel/model/transportation_network.aird @@ -5,7 +5,7 @@ <semanticResources>transportation_network.genmodel</semanticResources> <ownedViews xmi:type="viewpoint:DView" uid="_78oHcJXsEe-z-aqlqN3Fjw"> <viewpoint xmi:type="description:Viewpoint" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']"/> - <ownedRepresentationDescriptors xmi:type="viewpoint:DRepresentationDescriptor" uid="_7_UPEJXsEe-z-aqlqN3Fjw" name="transportation_network" repPath="#_7-P4EJXsEe-z-aqlqN3Fjw" changeId="1730208026401"> + <ownedRepresentationDescriptors xmi:type="viewpoint:DRepresentationDescriptor" uid="_7_UPEJXsEe-z-aqlqN3Fjw" name="transportation_network" repPath="#_7-P4EJXsEe-z-aqlqN3Fjw" changeId="1730459728875"> <description xmi:type="description_1:DiagramDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']"/> <target xmi:type="ecore:EPackage" href="transportation_network.ecore#/"/> </ownedRepresentationDescriptors> @@ -184,6 +184,36 @@ <styles xmi:type="notation:ShapeStyle" xmi:id="_HNNKMZX1Ee-z-aqlqN3Fjw" fontName="Segoe UI" fontHeight="8"/> <layoutConstraint xmi:type="notation:Bounds" xmi:id="_HNNKMpX1Ee-z-aqlqN3Fjw" x="690" y="680" width="203" height="63"/> </children> + <children xmi:type="notation:Node" xmi:id="_zEzRUJhAEe-x89cKX3LhwA" type="2003" element="_zENbcJhAEe-x89cKX3LhwA"> + <children xmi:type="notation:Node" xmi:id="_zE5X8JhAEe-x89cKX3LhwA" type="5007"/> + <children xmi:type="notation:Node" xmi:id="_zE5_AJhAEe-x89cKX3LhwA" type="7004"> + <styles xmi:type="notation:SortingStyle" xmi:id="_zE5_AZhAEe-x89cKX3LhwA"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_zE5_AphAEe-x89cKX3LhwA"/> + </children> + <styles xmi:type="notation:ShapeStyle" xmi:id="_zEzRUZhAEe-x89cKX3LhwA" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_zEzRUphAEe-x89cKX3LhwA" x="1410" y="325" width="120" height="100"/> + </children> + <children xmi:type="notation:Node" xmi:id="_T4fw4JhBEe-x89cKX3LhwA" type="2003" element="_T4VY0JhBEe-x89cKX3LhwA"> + <children xmi:type="notation:Node" xmi:id="_T4gX8JhBEe-x89cKX3LhwA" type="5007"/> + <children xmi:type="notation:Node" xmi:id="_T4gX8ZhBEe-x89cKX3LhwA" type="7004"> + <children xmi:type="notation:Node" xmi:id="_N_FRAJhCEe-x89cKX3LhwA" type="3010" element="_N-ursJhCEe-x89cKX3LhwA"> + <styles xmi:type="notation:FontStyle" xmi:id="_N_FRAZhCEe-x89cKX3LhwA" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_N_FRAphCEe-x89cKX3LhwA"/> + </children> + <children xmi:type="notation:Node" xmi:id="_R6QGEJhCEe-x89cKX3LhwA" type="3010" element="_R6D40JhCEe-x89cKX3LhwA"> + <styles xmi:type="notation:FontStyle" xmi:id="_R6QGEZhCEe-x89cKX3LhwA" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_R6QGEphCEe-x89cKX3LhwA"/> + </children> + <children xmi:type="notation:Node" xmi:id="_bnyiYJhCEe-x89cKX3LhwA" type="3010" element="_bnpYcJhCEe-x89cKX3LhwA"> + <styles xmi:type="notation:FontStyle" xmi:id="_bnyiYZhCEe-x89cKX3LhwA" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_bnyiYphCEe-x89cKX3LhwA"/> + </children> + <styles xmi:type="notation:SortingStyle" xmi:id="_T4gX8phBEe-x89cKX3LhwA"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_T4gX85hBEe-x89cKX3LhwA"/> + </children> + <styles xmi:type="notation:ShapeStyle" xmi:id="_T4fw4ZhBEe-x89cKX3LhwA" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_T4fw4phBEe-x89cKX3LhwA" x="1470" y="510" width="278" height="92"/> + </children> <styles xmi:type="notation:DiagramStyle" xmi:id="_7_420pXsEe-z-aqlqN3Fjw"/> <edges xmi:type="notation:Edge" xmi:id="_6pnyAJXtEe-z-aqlqN3Fjw" type="4001" element="_6pZIgJXtEe-z-aqlqN3Fjw" source="_kAUp4JXtEe-z-aqlqN3Fjw" target="_gD0YEJXtEe-z-aqlqN3Fjw"> <children xmi:type="notation:Node" xmi:id="_6ppAIJXtEe-z-aqlqN3Fjw" type="6001"> @@ -457,6 +487,150 @@ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_RzWCepX1Ee-z-aqlqN3Fjw" id="(0.28061224489795916,0.0)"/> <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_RzWCe5X1Ee-z-aqlqN3Fjw" id="(0.5,0.5)"/> </edges> + <edges xmi:type="notation:Edge" xmi:id="_6PeIQJhAEe-x89cKX3LhwA" type="4001" element="_6O_nIJhAEe-x89cKX3LhwA" source="_FFo6YJXtEe-z-aqlqN3Fjw" target="_zEzRUJhAEe-x89cKX3LhwA"> + <children xmi:type="notation:Node" xmi:id="_6PfWYJhAEe-x89cKX3LhwA" type="6001"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_6PfWYZhAEe-x89cKX3LhwA" x="63" y="19"/> + </children> + <children xmi:type="notation:Node" xmi:id="_6Pf9cJhAEe-x89cKX3LhwA" type="6002"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_6Pf9cZhAEe-x89cKX3LhwA" y="10"/> + </children> + <children xmi:type="notation:Node" xmi:id="_6PgkgJhAEe-x89cKX3LhwA" type="6003"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_6PgkgZhAEe-x89cKX3LhwA" x="5" y="10"/> + </children> + <styles xmi:type="notation:ConnectorStyle" xmi:id="_6PeIQZhAEe-x89cKX3LhwA" routing="Rectilinear"/> + <styles xmi:type="notation:FontStyle" xmi:id="_6PeIQphAEe-x89cKX3LhwA" fontColor="7490599" fontName="Segoe UI" fontHeight="8"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_6PeIQ5hAEe-x89cKX3LhwA" points="[0, 34, -529, -111]$[488, 34, -41, -111]$[488, 145, -41, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_6PhyoJhAEe-x89cKX3LhwA" id="(1.0,0.2459016393442623)"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_6PhyoZhAEe-x89cKX3LhwA" id="(0.5508474576271186,0.0)"/> + </edges> + <edges xmi:type="notation:Edge" xmi:id="__WFcwJhAEe-x89cKX3LhwA" type="4001" element="__Vyh1phAEe-x89cKX3LhwA" source="_zEzRUJhAEe-x89cKX3LhwA" target="_UGWRwJXzEe-z-aqlqN3Fjw"> + <children xmi:type="notation:Node" xmi:id="__WFcxJhAEe-x89cKX3LhwA" type="6001"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__WFcxZhAEe-x89cKX3LhwA" y="-10"/> + </children> + <children xmi:type="notation:Node" xmi:id="__WGD0JhAEe-x89cKX3LhwA" type="6002"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__WGD0ZhAEe-x89cKX3LhwA" y="10"/> + </children> + <children xmi:type="notation:Node" xmi:id="__WGD0phAEe-x89cKX3LhwA" type="6003"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__WGD05hAEe-x89cKX3LhwA" y="10"/> + </children> + <styles xmi:type="notation:ConnectorStyle" xmi:id="__WFcwZhAEe-x89cKX3LhwA" routing="Tree"/> + <styles xmi:type="notation:FontStyle" xmi:id="__WFcwphAEe-x89cKX3LhwA" fontName="Segoe UI" fontHeight="8"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__WFcw5hAEe-x89cKX3LhwA" points="[-1, 0, 255, 245]$[-1, -195, 255, 50]$[-255, -195, 1, 50]$[-255, -214, 1, 31]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__WGD1JhAEe-x89cKX3LhwA" id="(0.5,0.0)"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__WGD1ZhAEe-x89cKX3LhwA" id="(0.5,0.5)"/> + </edges> + <edges xmi:type="notation:Edge" xmi:id="_EMtNcJhBEe-x89cKX3LhwA" type="4001" element="_EMfLAJhBEe-x89cKX3LhwA" source="_zEzRUJhAEe-x89cKX3LhwA" target="_kAUp4JXtEe-z-aqlqN3Fjw"> + <children xmi:type="notation:Node" xmi:id="_EMt0gJhBEe-x89cKX3LhwA" type="6001"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_EMt0gZhBEe-x89cKX3LhwA" x="-29" y="-16"/> + </children> + <children xmi:type="notation:Node" xmi:id="_EMt0gphBEe-x89cKX3LhwA" type="6002"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_EMt0g5hBEe-x89cKX3LhwA" x="68" y="10"/> + </children> + <children xmi:type="notation:Node" xmi:id="_EMt0hJhBEe-x89cKX3LhwA" type="6003"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_EMt0hZhBEe-x89cKX3LhwA" x="12" y="10"/> + </children> + <styles xmi:type="notation:ConnectorStyle" xmi:id="_EMtNcZhBEe-x89cKX3LhwA" routing="Rectilinear"/> + <styles xmi:type="notation:FontStyle" xmi:id="_EMtNcphBEe-x89cKX3LhwA" fontColor="7490599" fontName="Segoe UI" fontHeight="8"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_EMtNc5hBEe-x89cKX3LhwA" points="[0, 32, 204, 27]$[-204, 32, 0, 27]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_EMt0hphBEe-x89cKX3LhwA" id="(0.0,0.15306122448979592)"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_EMt0h5hBEe-x89cKX3LhwA" id="(1.0,0.18518518518518517)"/> + </edges> + <edges xmi:type="notation:Edge" xmi:id="_NkWSQJhBEe-x89cKX3LhwA" type="4001" element="_NkKsIphBEe-x89cKX3LhwA" source="_zEzRUJhAEe-x89cKX3LhwA" target="_gD0YEJXtEe-z-aqlqN3Fjw"> + <children xmi:type="notation:Node" xmi:id="_NkW5UJhBEe-x89cKX3LhwA" type="6001"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_NkW5UZhBEe-x89cKX3LhwA" x="-726" y="11"/> + </children> + <children xmi:type="notation:Node" xmi:id="_NkW5UphBEe-x89cKX3LhwA" type="6002"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_NkW5U5hBEe-x89cKX3LhwA" x="134" y="10"/> + </children> + <children xmi:type="notation:Node" xmi:id="_NkW5VJhBEe-x89cKX3LhwA" type="6003"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_NkW5VZhBEe-x89cKX3LhwA" x="-345" y="565"/> + </children> + <styles xmi:type="notation:ConnectorStyle" xmi:id="_NkWSQZhBEe-x89cKX3LhwA" routing="Rectilinear"/> + <styles xmi:type="notation:FontStyle" xmi:id="_NkWSQphBEe-x89cKX3LhwA" fontColor="7490599" fontName="Segoe UI" fontHeight="8"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_NkWSQ5hBEe-x89cKX3LhwA" points="[30, 83, 749, 78]$[30, 414, 749, 409]$[-1176, 414, -457, 409]$[-1176, 40, -457, 35]$[-860, 40, -141, 35]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_NkW5VphBEe-x89cKX3LhwA" id="(0.0,0.15306122448979592)"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_NkW5V5hBEe-x89cKX3LhwA" id="(1.0,0.16393442622950818)"/> + </edges> + <edges xmi:type="notation:Edge" xmi:id="_YfysIJhBEe-x89cKX3LhwA" type="4001" element="_YfoUIphBEe-x89cKX3LhwA" source="_zEzRUJhAEe-x89cKX3LhwA" target="_gD0YEJXtEe-z-aqlqN3Fjw"> + <children xmi:type="notation:Node" xmi:id="_YfysJJhBEe-x89cKX3LhwA" type="6001"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_YfysJZhBEe-x89cKX3LhwA" x="-769" y="12"/> + </children> + <children xmi:type="notation:Node" xmi:id="_YfysJphBEe-x89cKX3LhwA" type="6002"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_YfysJ5hBEe-x89cKX3LhwA" x="-95"/> + </children> + <children xmi:type="notation:Node" xmi:id="_YfzTMJhBEe-x89cKX3LhwA" type="6003"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_YfzTMZhBEe-x89cKX3LhwA" x="-262"/> + </children> + <styles xmi:type="notation:ConnectorStyle" xmi:id="_YfysIZhBEe-x89cKX3LhwA" routing="Rectilinear"/> + <styles xmi:type="notation:FontStyle" xmi:id="_YfysIphBEe-x89cKX3LhwA" fontColor="7490599" fontName="Segoe UI" fontHeight="8"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_YfysI5hBEe-x89cKX3LhwA" points="[44, 58, 763, 58]$[44, 415, 763, 415]$[-1190, 415, -471, 415]$[-1190, 4, -471, 4]$[-860, 4, -141, 4]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_YfzTMphBEe-x89cKX3LhwA" id="(0.0,0.40816326530612246)"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_YfzTM5hBEe-x89cKX3LhwA" id="(1.0,0.4918032786885246)"/> + </edges> + <edges xmi:type="notation:Edge" xmi:id="_oAqZAJhBEe-x89cKX3LhwA" type="4001" element="_oAgoDJhBEe-x89cKX3LhwA" source="_FFo6YJXtEe-z-aqlqN3Fjw" target="_T4fw4JhBEe-x89cKX3LhwA"> + <children xmi:type="notation:Node" xmi:id="_oAqZBJhBEe-x89cKX3LhwA" type="6001"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_oAqZBZhBEe-x89cKX3LhwA" x="176" y="-12"/> + </children> + <children xmi:type="notation:Node" xmi:id="_oAqZBphBEe-x89cKX3LhwA" type="6002"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_oAqZB5hBEe-x89cKX3LhwA" x="-13" y="10"/> + </children> + <children xmi:type="notation:Node" xmi:id="_oAqZCJhBEe-x89cKX3LhwA" type="6003"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_oAqZCZhBEe-x89cKX3LhwA" x="13" y="10"/> + </children> + <styles xmi:type="notation:ConnectorStyle" xmi:id="_oAqZAZhBEe-x89cKX3LhwA" routing="Rectilinear"/> + <styles xmi:type="notation:FontStyle" xmi:id="_oAqZAphBEe-x89cKX3LhwA" fontColor="7490599" fontName="Segoe UI" fontHeight="8"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_oAqZA5hBEe-x89cKX3LhwA" points="[0, 0, -627, -335]$[714, 0, 87, -335]$[714, 335, 87, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_oAqZCphBEe-x89cKX3LhwA" id="(1.0,0.16393442622950818)"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_oAqZC5hBEe-x89cKX3LhwA" id="(0.3751804040193516,0.0)"/> + </edges> + <edges xmi:type="notation:Edge" xmi:id="_u1RgYJhBEe-x89cKX3LhwA" type="4001" element="_u1BBtphBEe-x89cKX3LhwA" source="_zEzRUJhAEe-x89cKX3LhwA" target="_T4fw4JhBEe-x89cKX3LhwA"> + <children xmi:type="notation:Node" xmi:id="_u1RgZJhBEe-x89cKX3LhwA" type="6001"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_u1RgZZhBEe-x89cKX3LhwA" x="29" y="-43"/> + </children> + <children xmi:type="notation:Node" xmi:id="_u1RgZphBEe-x89cKX3LhwA" type="6002"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_u1RgZ5hBEe-x89cKX3LhwA" x="10" y="10"/> + </children> + <children xmi:type="notation:Node" xmi:id="_u1RgaJhBEe-x89cKX3LhwA" type="6003"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_u1RgaZhBEe-x89cKX3LhwA" x="-10" y="10"/> + </children> + <styles xmi:type="notation:ConnectorStyle" xmi:id="_u1RgYZhBEe-x89cKX3LhwA" routing="Rectilinear"/> + <styles xmi:type="notation:FontStyle" xmi:id="_u1RgYphBEe-x89cKX3LhwA" fontColor="7490599" fontName="Segoe UI" fontHeight="8"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_u1RgY5hBEe-x89cKX3LhwA" points="[-1, 0, -37, -87]$[-1, 87, -37, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_u1RgaphBEe-x89cKX3LhwA" id="(0.6779661016949152,1.0)"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_u1Rga5hBEe-x89cKX3LhwA" id="(0.20312314867289738,0.0)"/> + </edges> + <edges xmi:type="notation:Edge" xmi:id="_1hKwoJhBEe-x89cKX3LhwA" type="4001" element="_1hC03JhBEe-x89cKX3LhwA" source="_T4fw4JhBEe-x89cKX3LhwA" target="_UGWRwJXzEe-z-aqlqN3Fjw"> + <children xmi:type="notation:Node" xmi:id="_1hKwpJhBEe-x89cKX3LhwA" type="6001"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_1hKwpZhBEe-x89cKX3LhwA" y="-10"/> + </children> + <children xmi:type="notation:Node" xmi:id="_1hKwpphBEe-x89cKX3LhwA" type="6002"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_1hKwp5hBEe-x89cKX3LhwA" y="10"/> + </children> + <children xmi:type="notation:Node" xmi:id="_1hKwqJhBEe-x89cKX3LhwA" type="6003"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_1hKwqZhBEe-x89cKX3LhwA" y="10"/> + </children> + <styles xmi:type="notation:ConnectorStyle" xmi:id="_1hKwoZhBEe-x89cKX3LhwA" routing="Tree"/> + <styles xmi:type="notation:FontStyle" xmi:id="_1hKwophBEe-x89cKX3LhwA" fontName="Segoe UI" fontHeight="8"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_1hKwo5hBEe-x89cKX3LhwA" points="[0, 0, 420, 394]$[-420, -394, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_1hLXsJhBEe-x89cKX3LhwA" id="(0.4110256655498629,0.0)"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_1hLXsZhBEe-x89cKX3LhwA" id="(0.5,0.5)"/> + </edges> + <edges xmi:type="notation:Edge" xmi:id="_DiFGoJhCEe-x89cKX3LhwA" type="4001" element="_Dh8j0phCEe-x89cKX3LhwA" source="_T4fw4JhBEe-x89cKX3LhwA" target="_gD0YEJXtEe-z-aqlqN3Fjw"> + <children xmi:type="notation:Node" xmi:id="_DiFGpJhCEe-x89cKX3LhwA" type="6001"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_DiFGpZhCEe-x89cKX3LhwA" x="-933" y="11"/> + </children> + <children xmi:type="notation:Node" xmi:id="_DiFGpphCEe-x89cKX3LhwA" type="6002"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_DiFGp5hCEe-x89cKX3LhwA" x="112" y="10"/> + </children> + <children xmi:type="notation:Node" xmi:id="_DiFGqJhCEe-x89cKX3LhwA" type="6003"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_DiFGqZhCEe-x89cKX3LhwA" x="18" y="216"/> + </children> + <styles xmi:type="notation:ConnectorStyle" xmi:id="_DiFGoZhCEe-x89cKX3LhwA" routing="Rectilinear"/> + <styles xmi:type="notation:FontStyle" xmi:id="_DiFGophCEe-x89cKX3LhwA" fontColor="7490599" fontName="Segoe UI" fontHeight="8"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_DiFGo5hCEe-x89cKX3LhwA" points="[136, 20, 915, 226]$[136, 214, 915, 420]$[-1270, 214, -491, 420]$[-1270, -226, -491, -20]$[-920, -226, -141, -20]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_DiFGqphCEe-x89cKX3LhwA" id="(0.0,0.7777777777777778)"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_DiFGq5hCEe-x89cKX3LhwA" id="(1.0,0.639344262295082)"/> + </edges> </data> </ownedAnnotationEntries> <ownedAnnotationEntries xmi:type="description:AnnotationEntry" uid="_8B5pAJXsEe-z-aqlqN3Fjw" source="DANNOTATION_CUSTOMIZATION_KEY"> @@ -486,9 +660,19 @@ <labelColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='dark_blue']"/> </endLabelStyleDescription> </computedStyleDescriptions> + <computedStyleDescriptions xmi:type="style:EdgeStyleDescription" xmi:id="_-IzU-phBEe-x89cKX3LhwA" sourceArrow="FillDiamond" routingStyle="manhattan"> + <strokeColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/> + <centerLabelStyleDescription xmi:type="style:CenterLabelStyleDescription" xmi:id="_-IzU-5hBEe-x89cKX3LhwA" showIcon="false" labelExpression="service:render"> + <labelFormat>bold</labelFormat> + <labelColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/> + </centerLabelStyleDescription> + <endLabelStyleDescription xmi:type="style:EndLabelStyleDescription" xmi:id="_-IzU_JhBEe-x89cKX3LhwA" labelSize="6" showIcon="false" labelExpression="service:eKeysLabel"> + <labelColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='dark_blue']"/> + </endLabelStyleDescription> + </computedStyleDescriptions> </data> </ownedAnnotationEntries> - <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_FFNckJXtEe-z-aqlqN3Fjw" name="TransportationNetwork" tooltipText="" outgoingEdges="_77l98JXyEe-z-aqlqN3Fjw __zXgwJXyEe-z-aqlqN3Fjw _fNY3oJXzEe-z-aqlqN3Fjw" width="12" height="10"> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_FFNckJXtEe-z-aqlqN3Fjw" name="TransportationNetwork" tooltipText="" outgoingEdges="_77l98JXyEe-z-aqlqN3Fjw __zXgwJXyEe-z-aqlqN3Fjw _fNY3oJXzEe-z-aqlqN3Fjw _6O_nIJhAEe-x89cKX3LhwA _oAgoDJhBEe-x89cKX3LhwA" width="12" height="10"> <target xmi:type="ecore:EClass" href="transportation_network.ecore#//TransportationNetwork"/> <semanticElements xmi:type="ecore:EClass" href="transportation_network.ecore#//TransportationNetwork"/> <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_aNe20JXtEe-z-aqlqN3Fjw" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> @@ -496,7 +680,7 @@ </ownedStyle> <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> </ownedDiagramElements> - <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_gDscQJXtEe-z-aqlqN3Fjw" name="Location" tooltipText="" outgoingEdges="_18dQkJXzEe-z-aqlqN3Fjw _ErG2U5X0Ee-z-aqlqN3Fjw" incomingEdges="_6pZIgJXtEe-z-aqlqN3Fjw _FHiQdpXwEe-z-aqlqN3Fjw __zXgwJXyEe-z-aqlqN3Fjw" width="12" height="10"> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_gDscQJXtEe-z-aqlqN3Fjw" name="Location" tooltipText="" outgoingEdges="_18dQkJXzEe-z-aqlqN3Fjw _ErG2U5X0Ee-z-aqlqN3Fjw" incomingEdges="_6pZIgJXtEe-z-aqlqN3Fjw _FHiQdpXwEe-z-aqlqN3Fjw __zXgwJXyEe-z-aqlqN3Fjw _NkKsIphBEe-x89cKX3LhwA _YfoUIphBEe-x89cKX3LhwA _Dh8j0phCEe-x89cKX3LhwA" width="12" height="10"> <target xmi:type="ecore:EClass" href="transportation_network.ecore#//Location"/> <semanticElements xmi:type="ecore:EClass" href="transportation_network.ecore#//Location"/> <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_gDtqYJXtEe-z-aqlqN3Fjw" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> @@ -504,7 +688,7 @@ </ownedStyle> <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> </ownedDiagramElements> - <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_kAMHAJXtEe-z-aqlqN3Fjw" name="RoadNetwork" tooltipText="" outgoingEdges="_6pZIgJXtEe-z-aqlqN3Fjw _FHiQdpXwEe-z-aqlqN3Fjw _Qg08nJXzEe-z-aqlqN3Fjw _fyYbEJXzEe-z-aqlqN3Fjw" incomingEdges="_77l98JXyEe-z-aqlqN3Fjw" width="12" height="10"> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_kAMHAJXtEe-z-aqlqN3Fjw" name="RoadNetwork" tooltipText="" outgoingEdges="_6pZIgJXtEe-z-aqlqN3Fjw _FHiQdpXwEe-z-aqlqN3Fjw _Qg08nJXzEe-z-aqlqN3Fjw _fyYbEJXzEe-z-aqlqN3Fjw" incomingEdges="_77l98JXyEe-z-aqlqN3Fjw _EMfLAJhBEe-x89cKX3LhwA" width="12" height="10"> <target xmi:type="ecore:EClass" href="transportation_network.ecore#//RoadNetwork"/> <semanticElements xmi:type="ecore:EClass" href="transportation_network.ecore#//RoadNetwork"/> <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_z3u1MpXyEe-z-aqlqN3Fjw" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> @@ -593,7 +777,7 @@ </ownedStyle> <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/> </ownedDiagramElements> - <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_UGMgwJXzEe-z-aqlqN3Fjw" name="IdentifiableElement" tooltipText="" incomingEdges="_fNY3oJXzEe-z-aqlqN3Fjw _fyYbEJXzEe-z-aqlqN3Fjw _gtLPZpXzEe-z-aqlqN3Fjw" width="12" height="10"> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_UGMgwJXzEe-z-aqlqN3Fjw" name="IdentifiableElement" tooltipText="" incomingEdges="_fNY3oJXzEe-z-aqlqN3Fjw _fyYbEJXzEe-z-aqlqN3Fjw _gtLPZpXzEe-z-aqlqN3Fjw __Vyh1phAEe-x89cKX3LhwA _1hC03JhBEe-x89cKX3LhwA" width="12" height="10"> <target xmi:type="ecore:EClass" href="transportation_network.ecore#//IdentifiableElement"/> <semanticElements xmi:type="ecore:EClass" href="transportation_network.ecore#//IdentifiableElement"/> <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_eLNB45XzEe-z-aqlqN3Fjw" iconPath="/org.eclipse.emf.ecoretools.design/icons/full/obj16/EClass_abstract.gif" borderSize="1" borderSizeComputationExpression="1" borderColor="125,125,125" backgroundStyle="Liquid" foregroundColor="228,228,228"> @@ -882,6 +1066,139 @@ </ownedStyle> <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']"/> </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_zENbcJhAEe-x89cKX3LhwA" name="Route" tooltipText="" outgoingEdges="__Vyh1phAEe-x89cKX3LhwA _EMfLAJhBEe-x89cKX3LhwA _NkKsIphBEe-x89cKX3LhwA _YfoUIphBEe-x89cKX3LhwA _u1BBtphBEe-x89cKX3LhwA" incomingEdges="_6O_nIJhAEe-x89cKX3LhwA" width="12" height="10"> + <target xmi:type="ecore:EClass" href="transportation_network.ecore#//Route"/> + <semanticElements xmi:type="ecore:EClass" href="transportation_network.ecore#//Route"/> + <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_zEOpkJhAEe-x89cKX3LhwA" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> + <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DEdge" uid="_6O_nIJhAEe-x89cKX3LhwA" name="[0..*] routes" sourceNode="_FFNckJXtEe-z-aqlqN3Fjw" targetNode="_zENbcJhAEe-x89cKX3LhwA"> + <target xmi:type="ecore:EReference" href="transportation_network.ecore#//TransportationNetwork/routes"/> + <semanticElements xmi:type="ecore:EReference" href="transportation_network.ecore#//TransportationNetwork/routes"/> + <ownedStyle xmi:type="diagram:EdgeStyle" uid="_6PA1QJhAEe-x89cKX3LhwA" description="_77l98ZXyEe-z-aqlqN3Fjw" sourceArrow="FillDiamond" routingStyle="manhattan" strokeColor="0,0,0"> + <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_6PA1QphAEe-x89cKX3LhwA" showIcon="false"/> + <endLabelStyle xmi:type="diagram:EndLabelStyle" uid="_6PA1QZhAEe-x89cKX3LhwA" labelSize="6" showIcon="false" labelColor="39,76,114"/> + </ownedStyle> + <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DEdge" uid="__Vyh1phAEe-x89cKX3LhwA" sourceNode="_zENbcJhAEe-x89cKX3LhwA" targetNode="_UGMgwJXzEe-z-aqlqN3Fjw"> + <target xmi:type="ecore:EClass" href="transportation_network.ecore#//Route"/> + <semanticElements xmi:type="ecore:EClass" href="transportation_network.ecore#//Route"/> + <ownedStyle xmi:type="diagram:EdgeStyle" uid="__VzI4JhAEe-x89cKX3LhwA" targetArrow="InputClosedArrow" routingStyle="tree"> + <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']/@style"/> + <beginLabelStyle xmi:type="diagram:BeginLabelStyle" uid="__VzI4ZhAEe-x89cKX3LhwA" showIcon="false"> + <labelFormat>italic</labelFormat> + </beginLabelStyle> + <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="__VzI4phAEe-x89cKX3LhwA" showIcon="false"/> + </ownedStyle> + <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']"/> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DEdge" uid="_EMfLAJhBEe-x89cKX3LhwA" name="[0..*] networkList" sourceNode="_zENbcJhAEe-x89cKX3LhwA" targetNode="_kAMHAJXtEe-z-aqlqN3Fjw"> + <target xmi:type="ecore:EReference" href="transportation_network.ecore#//Route/networkList"/> + <semanticElements xmi:type="ecore:EReference" href="transportation_network.ecore#//Route/networkList"/> + <ownedStyle xmi:type="diagram:EdgeStyle" uid="_EMfLAZhBEe-x89cKX3LhwA" routingStyle="manhattan" strokeColor="0,0,0"> + <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']/@style"/> + <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_EMfLA5hBEe-x89cKX3LhwA" showIcon="false"/> + <endLabelStyle xmi:type="diagram:EndLabelStyle" uid="_EMfLAphBEe-x89cKX3LhwA" labelSize="6" showIcon="false" labelColor="39,76,114"/> + </ownedStyle> + <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DEdge" uid="_NkKsIphBEe-x89cKX3LhwA" name="[0..1] start" sourceNode="_zENbcJhAEe-x89cKX3LhwA" targetNode="_gDscQJXtEe-z-aqlqN3Fjw"> + <target xmi:type="ecore:EReference" href="transportation_network.ecore#//Route/start"/> + <semanticElements xmi:type="ecore:EReference" href="transportation_network.ecore#//Route/start"/> + <ownedStyle xmi:type="diagram:EdgeStyle" uid="_NkLTIJhBEe-x89cKX3LhwA" routingStyle="manhattan" strokeColor="0,0,0"> + <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']/@style"/> + <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_NkLTIphBEe-x89cKX3LhwA" showIcon="false"/> + <endLabelStyle xmi:type="diagram:EndLabelStyle" uid="_NkLTIZhBEe-x89cKX3LhwA" labelSize="6" showIcon="false" labelColor="39,76,114"/> + </ownedStyle> + <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_T4VY0JhBEe-x89cKX3LhwA" name="Vehicle" tooltipText="" outgoingEdges="_1hC03JhBEe-x89cKX3LhwA _Dh8j0phCEe-x89cKX3LhwA" incomingEdges="_oAgoDJhBEe-x89cKX3LhwA _u1BBtphBEe-x89cKX3LhwA" width="12" height="10"> + <target xmi:type="ecore:EClass" href="transportation_network.ecore#//Vehicle"/> + <semanticElements xmi:type="ecore:EClass" href="transportation_network.ecore#//Vehicle"/> + <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_eaHgGZhCEe-x89cKX3LhwA" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> + <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_N-ursJhCEe-x89cKX3LhwA" name="model : EString" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="transportation_network.ecore#//Vehicle/model"/> + <semanticElements xmi:type="ecore:EAttribute" href="transportation_network.ecore#//Vehicle/model"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_RbzPgZhCEe-x89cKX3LhwA" labelAlignment="LEFT" description="_UNfDQJXtEe-z-aqlqN3Fjw"> + <labelFormat>bold</labelFormat> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_R6D40JhCEe-x89cKX3LhwA" name="fuelCapacity : EDouble = 0.0" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="transportation_network.ecore#//Vehicle/fuelCapacity"/> + <semanticElements xmi:type="ecore:EAttribute" href="transportation_network.ecore#//Vehicle/fuelCapacity"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_WL6IgphCEe-x89cKX3LhwA" labelAlignment="LEFT" description="_UNfDQJXtEe-z-aqlqN3Fjw"> + <labelFormat>bold</labelFormat> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_bnpYcJhCEe-x89cKX3LhwA" name="fuelType : FuelType = ELECTRICITY" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="transportation_network.ecore#//Vehicle/fuelType"/> + <semanticElements xmi:type="ecore:EAttribute" href="transportation_network.ecore#//Vehicle/fuelType"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_fJqGo5hCEe-x89cKX3LhwA" labelAlignment="LEFT" description="_UNfDQJXtEe-z-aqlqN3Fjw"> + <labelFormat>bold</labelFormat> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DEdge" uid="_YfoUIphBEe-x89cKX3LhwA" name="[0..1] end" sourceNode="_zENbcJhAEe-x89cKX3LhwA" targetNode="_gDscQJXtEe-z-aqlqN3Fjw"> + <target xmi:type="ecore:EReference" href="transportation_network.ecore#//Route/end"/> + <semanticElements xmi:type="ecore:EReference" href="transportation_network.ecore#//Route/end"/> + <ownedStyle xmi:type="diagram:EdgeStyle" uid="_Yfo7IJhBEe-x89cKX3LhwA" routingStyle="manhattan" strokeColor="0,0,0"> + <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']/@style"/> + <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_Yfo7IphBEe-x89cKX3LhwA" showIcon="false"/> + <endLabelStyle xmi:type="diagram:EndLabelStyle" uid="_Yfo7IZhBEe-x89cKX3LhwA" labelSize="6" showIcon="false" labelColor="39,76,114"/> + </ownedStyle> + <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DEdge" uid="_oAgoDJhBEe-x89cKX3LhwA" name="[0..*] carPark" sourceNode="_FFNckJXtEe-z-aqlqN3Fjw" targetNode="_T4VY0JhBEe-x89cKX3LhwA"> + <target xmi:type="ecore:EReference" href="transportation_network.ecore#//TransportationNetwork/carPark"/> + <semanticElements xmi:type="ecore:EReference" href="transportation_network.ecore#//TransportationNetwork/carPark"/> + <ownedStyle xmi:type="diagram:EdgeStyle" uid="_oAhPEJhBEe-x89cKX3LhwA" description="_77l98ZXyEe-z-aqlqN3Fjw" sourceArrow="FillDiamond" routingStyle="manhattan" strokeColor="0,0,0"> + <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_oAhPEphBEe-x89cKX3LhwA" showIcon="false"/> + <endLabelStyle xmi:type="diagram:EndLabelStyle" uid="_oAhPEZhBEe-x89cKX3LhwA" labelSize="6" showIcon="false" labelColor="39,76,114"/> + </ownedStyle> + <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DEdge" uid="_u1BBtphBEe-x89cKX3LhwA" name="[1..1] vehicle" sourceNode="_zENbcJhAEe-x89cKX3LhwA" targetNode="_T4VY0JhBEe-x89cKX3LhwA"> + <target xmi:type="ecore:EReference" href="transportation_network.ecore#//Route/vehicle"/> + <semanticElements xmi:type="ecore:EReference" href="transportation_network.ecore#//Route/vehicle"/> + <ownedStyle xmi:type="diagram:EdgeStyle" uid="_-IzU_ZhBEe-x89cKX3LhwA" description="_-IzU-phBEe-x89cKX3LhwA" sourceArrow="FillDiamond" routingStyle="manhattan" strokeColor="0,0,0"> + <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_-IzU_5hBEe-x89cKX3LhwA" showIcon="false"> + <labelFormat>bold</labelFormat> + </centerLabelStyle> + <endLabelStyle xmi:type="diagram:EndLabelStyle" uid="_-IzU_phBEe-x89cKX3LhwA" labelSize="6" showIcon="false" labelColor="39,76,114"/> + </ownedStyle> + <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DEdge" uid="_1hC03JhBEe-x89cKX3LhwA" sourceNode="_T4VY0JhBEe-x89cKX3LhwA" targetNode="_UGMgwJXzEe-z-aqlqN3Fjw"> + <target xmi:type="ecore:EClass" href="transportation_network.ecore#//Vehicle"/> + <semanticElements xmi:type="ecore:EClass" href="transportation_network.ecore#//Vehicle"/> + <ownedStyle xmi:type="diagram:EdgeStyle" uid="_eaO01phCEe-x89cKX3LhwA" targetArrow="InputClosedArrow" routingStyle="tree"> + <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']/@style"/> + <beginLabelStyle xmi:type="diagram:BeginLabelStyle" uid="_eaO015hCEe-x89cKX3LhwA" showIcon="false"> + <labelFormat>italic</labelFormat> + </beginLabelStyle> + <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_eaO02JhCEe-x89cKX3LhwA" showIcon="false"/> + </ownedStyle> + <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']"/> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DEdge" uid="_Dh8j0phCEe-x89cKX3LhwA" name="[0..1] location" sourceNode="_T4VY0JhBEe-x89cKX3LhwA" targetNode="_gDscQJXtEe-z-aqlqN3Fjw"> + <target xmi:type="ecore:EReference" href="transportation_network.ecore#//Vehicle/location"/> + <semanticElements xmi:type="ecore:EReference" href="transportation_network.ecore#//Vehicle/location"/> + <ownedStyle xmi:type="diagram:EdgeStyle" uid="_Dh9K0JhCEe-x89cKX3LhwA" routingStyle="manhattan" strokeColor="0,0,0"> + <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']/@style"/> + <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_Dh9K0phCEe-x89cKX3LhwA" showIcon="false"/> + <endLabelStyle xmi:type="diagram:EndLabelStyle" uid="_Dh9K0ZhCEe-x89cKX3LhwA" labelSize="6" showIcon="false" labelColor="39,76,114"/> + </ownedStyle> + <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/> + </ownedDiagramElements> <description xmi:type="description_1:DiagramDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']"/> <filterVariableHistory xmi:type="diagram:FilterVariableHistory" uid="_7-70kJXsEe-z-aqlqN3Fjw"/> <activatedLayers xmi:type="description_1:Layer" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer"/> diff --git a/stgroup.mdsd.transportation_network.metamodel/model/transportation_network.ecore b/stgroup.mdsd.transportation_network.metamodel/model/transportation_network.ecore index b77cbbbb565c6efcc765572350f38adb31a2a03a..43d35f6146ee13f200cef98075e254b9f8ee5fe8 100644 --- a/stgroup.mdsd.transportation_network.metamodel/model/transportation_network.ecore +++ b/stgroup.mdsd.transportation_network.metamodel/model/transportation_network.ecore @@ -7,6 +7,10 @@ eType="#//RoadNetwork" containment="true"/> <eStructuralFeatures xsi:type="ecore:EReference" name="locations" upperBound="-1" eType="#//Location" containment="true"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="routes" upperBound="-1" + eType="#//Route" containment="true"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="carPark" upperBound="-1" + eType="#//Vehicle" containment="true"/> </eClassifiers> <eClassifiers xsi:type="ecore:EClass" name="Location" eSuperTypes="#//NamedElement"> <eStructuralFeatures xsi:type="ecore:EReference" name="pois" upperBound="-1" eType="#//PointOfInterest" @@ -54,4 +58,20 @@ <eClassifiers xsi:type="ecore:EClass" name="CustomerWarehouse" eSuperTypes="#//Warehouse"> <eStructuralFeatures xsi:type="ecore:EAttribute" name="customerName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="Route" eSuperTypes="#//IdentifiableElement"> + <eStructuralFeatures xsi:type="ecore:EReference" name="networkList" upperBound="-1" + eType="#//RoadNetwork"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="start" eType="#//Location"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="end" eType="#//Location"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="vehicle" lowerBound="1" + eType="#//Vehicle" containment="true"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="Vehicle" eSuperTypes="#//IdentifiableElement"> + <eStructuralFeatures xsi:type="ecore:EReference" name="location" eType="#//Location"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="model" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="fuelCapacity" lowerBound="1" + eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDouble"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="fuelType" lowerBound="1" + eType="#//FuelType" defaultValueLiteral="ELECTRICITY"/> + </eClassifiers> </ecore:EPackage> diff --git a/stgroup.mdsd.transportation_network.metamodel/model/transportation_network.genmodel b/stgroup.mdsd.transportation_network.metamodel/model/transportation_network.genmodel index fccade68b2424cde153a9f4874378ef87eed547b..4cbc1600c21c2ccbd4d4450d5af5d6cb1cdb40b3 100644 --- a/stgroup.mdsd.transportation_network.metamodel/model/transportation_network.genmodel +++ b/stgroup.mdsd.transportation_network.metamodel/model/transportation_network.genmodel @@ -20,6 +20,8 @@ <genClasses ecoreClass="transportation_network.ecore#//TransportationNetwork"> <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference transportation_network.ecore#//TransportationNetwork/roadnetworks"/> <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference transportation_network.ecore#//TransportationNetwork/locations"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference transportation_network.ecore#//TransportationNetwork/routes"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference transportation_network.ecore#//TransportationNetwork/carPark"/> </genClasses> <genClasses ecoreClass="transportation_network.ecore#//Location"> <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference transportation_network.ecore#//Location/pois"/> @@ -53,5 +55,17 @@ <genClasses ecoreClass="transportation_network.ecore#//CustomerWarehouse"> <genFeatures createChild="false" ecoreFeature="ecore:EAttribute transportation_network.ecore#//CustomerWarehouse/customerName"/> </genClasses> + <genClasses ecoreClass="transportation_network.ecore#//Route"> + <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference transportation_network.ecore#//Route/networkList"/> + <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference transportation_network.ecore#//Route/start"/> + <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference transportation_network.ecore#//Route/end"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference transportation_network.ecore#//Route/vehicle"/> + </genClasses> + <genClasses ecoreClass="transportation_network.ecore#//Vehicle"> + <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference transportation_network.ecore#//Vehicle/location"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute transportation_network.ecore#//Vehicle/model"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute transportation_network.ecore#//Vehicle/fuelCapacity"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute transportation_network.ecore#//Vehicle/fuelType"/> + </genClasses> </genPackages> </genmodel:GenModel> diff --git a/stgroup.mdsd.transportation_network.metamodel/model/transportation_network.svg b/stgroup.mdsd.transportation_network.metamodel/model/transportation_network.svg index 41ef394186974570b0b6e4e1d82fbb05b57921ff..bb6c3bda57ce64165efe1014e1f6a4bf7df4e0da 100644 --- a/stgroup.mdsd.transportation_network.metamodel/model/transportation_network.svg +++ b/stgroup.mdsd.transportation_network.metamodel/model/transportation_network.svg @@ -1,618 +1,800 @@ -<?xml version="1.0" encoding="UTF-8"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" stroke-dasharray="none" shape-rendering="auto" font-family="'Dialog'" width="1008" text-rendering="auto" fill-opacity="1" contentScriptType="text/ecmascript" color-interpolation="auto" color-rendering="auto" preserveAspectRatio="xMidYMid meet" font-size="12px" xmlns:diagram="http://www.eclipse.org/sirius/diagram/1.1.0" diagram:semanticRoot="platform:/resource/stgroup.mdsd.transportation_network.metamodel/model/transportation_network.ecore#/" viewBox="0 0 1008 708" fill="black" stroke="black" image-rendering="auto" stroke-miterlimit="10" zoomAndPan="magnify" version="1.0" stroke-linecap="square" stroke-linejoin="miter" contentStyleType="text/css" font-style="normal" height="708" stroke-width="1" stroke-dashoffset="0" font-weight="normal" stroke-opacity="1"> +<?xml version="1.0" encoding="UTF-8"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" stroke-dasharray="none" shape-rendering="auto" font-family="'Dialog'" width="1581" text-rendering="auto" fill-opacity="1" contentScriptType="text/ecmascript" color-interpolation="auto" color-rendering="auto" preserveAspectRatio="xMidYMid meet" font-size="12px" xmlns:diagram="http://www.eclipse.org/sirius/diagram/1.1.0" diagram:semanticRoot="platform:/resource/stgroup.mdsd.transportation_network.metamodel/model/transportation_network.ecore#/" viewBox="0 0 1581 773" fill="black" stroke="black" image-rendering="auto" stroke-miterlimit="10" zoomAndPan="magnify" version="1.0" stroke-linecap="square" stroke-linejoin="miter" contentStyleType="text/css" font-style="normal" height="773" stroke-width="1" stroke-dashoffset="0" font-weight="normal" stroke-opacity="1"> <!--Generated by the Batik Graphics2D SVG Generator--> <defs id="genericDefs"/> <g> <defs id="defs1"> - <linearGradient x1="450" x2="691" y1="75" gradientUnits="userSpaceOnUse" y2="226" xlink:type="simple" xlink:actuate="onLoad" id="linearGradient1" xlink:show="other" spreadMethod="pad"> + <linearGradient x1="528" x2="769" y1="75" gradientUnits="userSpaceOnUse" y2="226" xlink:type="simple" xlink:actuate="onLoad" id="linearGradient1" xlink:show="other" spreadMethod="pad"> <stop stop-opacity="1" stop-color="white" offset="0%"/> <stop stop-opacity="1" stop-color="rgb(255,252,216)" offset="100%"/> </linearGradient> - <linearGradient x1="295" x2="436" y1="270" gradientUnits="userSpaceOnUse" y2="371" xlink:type="simple" xlink:actuate="onLoad" id="linearGradient2" xlink:show="other" spreadMethod="pad"> + <linearGradient x1="373" x2="514" y1="270" gradientUnits="userSpaceOnUse" y2="371" xlink:type="simple" xlink:actuate="onLoad" id="linearGradient2" xlink:show="other" spreadMethod="pad"> <stop stop-opacity="1" stop-color="white" offset="0%"/> <stop stop-opacity="1" stop-color="rgb(255,252,216)" offset="100%"/> </linearGradient> - <linearGradient x1="690" x2="951" y1="240" gradientUnits="userSpaceOnUse" y2="411" xlink:type="simple" xlink:actuate="onLoad" id="linearGradient3" xlink:show="other" spreadMethod="pad"> + <linearGradient x1="768" x2="1029" y1="240" gradientUnits="userSpaceOnUse" y2="411" xlink:type="simple" xlink:actuate="onLoad" id="linearGradient3" xlink:show="other" spreadMethod="pad"> <stop stop-opacity="1" stop-color="white" offset="0%"/> <stop stop-opacity="1" stop-color="rgb(255,252,216)" offset="100%"/> </linearGradient> - <linearGradient x1="690" x2="996" y1="359" gradientUnits="userSpaceOnUse" y2="542" xlink:type="simple" xlink:actuate="onLoad" id="linearGradient4" xlink:show="other" spreadMethod="pad"> + <linearGradient x1="768" x2="1074" y1="359" gradientUnits="userSpaceOnUse" y2="542" xlink:type="simple" xlink:actuate="onLoad" id="linearGradient4" xlink:show="other" spreadMethod="pad"> <stop stop-opacity="1" stop-color="white" offset="0%"/> <stop stop-opacity="1" stop-color="rgb(255,252,216)" offset="100%"/> </linearGradient> - <linearGradient x1="760" x2="996" y1="-33" gradientUnits="userSpaceOnUse" y2="115" xlink:type="simple" xlink:actuate="onLoad" id="linearGradient5" xlink:show="other" spreadMethod="pad"> + <linearGradient x1="838" x2="1074" y1="-33" gradientUnits="userSpaceOnUse" y2="115" xlink:type="simple" xlink:actuate="onLoad" id="linearGradient5" xlink:show="other" spreadMethod="pad"> <stop stop-opacity="1" stop-color="white" offset="0%"/> <stop stop-opacity="1" stop-color="rgb(228,228,228)" offset="100%"/> </linearGradient> - <linearGradient x1="250" x2="436" y1="378" gradientUnits="userSpaceOnUse" y2="499" xlink:type="simple" xlink:actuate="onLoad" id="linearGradient6" xlink:show="other" spreadMethod="pad"> + <linearGradient x1="328" x2="514" y1="378" gradientUnits="userSpaceOnUse" y2="499" xlink:type="simple" xlink:actuate="onLoad" id="linearGradient6" xlink:show="other" spreadMethod="pad"> <stop stop-opacity="1" stop-color="white" offset="0%"/> <stop stop-opacity="1" stop-color="rgb(228,228,228)" offset="100%"/> </linearGradient> - <linearGradient x1="215" x2="411" y1="-23" gradientUnits="userSpaceOnUse" y2="105" xlink:type="simple" xlink:actuate="onLoad" id="linearGradient7" xlink:show="other" spreadMethod="pad"> + <linearGradient x1="293" x2="489" y1="-23" gradientUnits="userSpaceOnUse" y2="105" xlink:type="simple" xlink:actuate="onLoad" id="linearGradient7" xlink:show="other" spreadMethod="pad"> <stop stop-opacity="1" stop-color="white" offset="0%"/> <stop stop-opacity="1" stop-color="rgb(228,228,228)" offset="100%"/> </linearGradient> - <linearGradient x1="10" x2="128" y1="521" gradientUnits="userSpaceOnUse" y2="610" xlink:type="simple" xlink:actuate="onLoad" id="linearGradient8" xlink:show="other" spreadMethod="pad"> + <linearGradient x1="88" x2="206" y1="521" gradientUnits="userSpaceOnUse" y2="610" xlink:type="simple" xlink:actuate="onLoad" id="linearGradient8" xlink:show="other" spreadMethod="pad"> <stop stop-opacity="1" stop-color="white" offset="0%"/> <stop stop-opacity="1" stop-color="rgb(255,252,216)" offset="100%"/> </linearGradient> - <linearGradient x1="150" x2="336" y1="504" gradientUnits="userSpaceOnUse" y2="627" xlink:type="simple" xlink:actuate="onLoad" id="linearGradient9" xlink:show="other" spreadMethod="pad"> + <linearGradient x1="228" x2="414" y1="504" gradientUnits="userSpaceOnUse" y2="627" xlink:type="simple" xlink:actuate="onLoad" id="linearGradient9" xlink:show="other" spreadMethod="pad"> <stop stop-opacity="1" stop-color="white" offset="0%"/> <stop stop-opacity="1" stop-color="rgb(255,252,216)" offset="100%"/> </linearGradient> - <linearGradient x1="750" x2="876" y1="515" gradientUnits="userSpaceOnUse" y2="631" xlink:type="simple" xlink:actuate="onLoad" id="linearGradient10" xlink:show="other" spreadMethod="pad"> + <linearGradient x1="828" x2="954" y1="515" gradientUnits="userSpaceOnUse" y2="631" xlink:type="simple" xlink:actuate="onLoad" id="linearGradient10" xlink:show="other" spreadMethod="pad"> <stop stop-opacity="1" stop-color="white" offset="0%"/> <stop stop-opacity="1" stop-color="rgb(221,236,202)" offset="100%"/> </linearGradient> - <linearGradient x1="360" x2="478" y1="521" gradientUnits="userSpaceOnUse" y2="610" xlink:type="simple" xlink:actuate="onLoad" id="linearGradient11" xlink:show="other" spreadMethod="pad"> + <linearGradient x1="438" x2="556" y1="521" gradientUnits="userSpaceOnUse" y2="610" xlink:type="simple" xlink:actuate="onLoad" id="linearGradient11" xlink:show="other" spreadMethod="pad"> <stop stop-opacity="1" stop-color="white" offset="0%"/> <stop stop-opacity="1" stop-color="rgb(228,228,228)" offset="100%"/> </linearGradient> - <linearGradient x1="500" x2="641" y1="515" gradientUnits="userSpaceOnUse" y2="616" xlink:type="simple" xlink:actuate="onLoad" id="linearGradient12" xlink:show="other" spreadMethod="pad"> + <linearGradient x1="578" x2="719" y1="515" gradientUnits="userSpaceOnUse" y2="616" xlink:type="simple" xlink:actuate="onLoad" id="linearGradient12" xlink:show="other" spreadMethod="pad"> <stop stop-opacity="1" stop-color="white" offset="0%"/> <stop stop-opacity="1" stop-color="rgb(255,252,216)" offset="100%"/> </linearGradient> - <linearGradient x1="220" x2="416" y1="602" gradientUnits="userSpaceOnUse" y2="730" xlink:type="simple" xlink:actuate="onLoad" id="linearGradient13" xlink:show="other" spreadMethod="pad"> + <linearGradient x1="298" x2="494" y1="602" gradientUnits="userSpaceOnUse" y2="730" xlink:type="simple" xlink:actuate="onLoad" id="linearGradient13" xlink:show="other" spreadMethod="pad"> <stop stop-opacity="1" stop-color="white" offset="0%"/> <stop stop-opacity="1" stop-color="rgb(255,252,216)" offset="100%"/> </linearGradient> - <linearGradient x1="435" x2="636" y1="600" gradientUnits="userSpaceOnUse" y2="731" xlink:type="simple" xlink:actuate="onLoad" id="linearGradient14" xlink:show="other" spreadMethod="pad"> + <linearGradient x1="513" x2="714" y1="600" gradientUnits="userSpaceOnUse" y2="731" xlink:type="simple" xlink:actuate="onLoad" id="linearGradient14" xlink:show="other" spreadMethod="pad"> + <stop stop-opacity="1" stop-color="white" offset="0%"/> + <stop stop-opacity="1" stop-color="rgb(255,252,216)" offset="100%"/> + </linearGradient> + <linearGradient x1="1233" x2="1351" y1="275" gradientUnits="userSpaceOnUse" y2="383" xlink:type="simple" xlink:actuate="onLoad" id="linearGradient15" xlink:show="other" spreadMethod="pad"> + <stop stop-opacity="1" stop-color="white" offset="0%"/> + <stop stop-opacity="1" stop-color="rgb(255,252,216)" offset="100%"/> + </linearGradient> + <linearGradient x1="1293" x2="1569" y1="419" gradientUnits="userSpaceOnUse" y2="602" xlink:type="simple" xlink:actuate="onLoad" id="linearGradient16" xlink:show="other" spreadMethod="pad"> <stop stop-opacity="1" stop-color="white" offset="0%"/> <stop stop-opacity="1" stop-color="rgb(255,252,216)" offset="100%"/> </linearGradient> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath1"> - <path d="M449 119 L694 119 L694 184 L449 184 L449 119 Z"/> + <path d="M527 119 L772 119 L772 184 L527 184 L527 119 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath2"> - <path d="M449 119 L692 119 L692 182 L449 182 L449 119 Z"/> + <path d="M527 119 L770 119 L770 182 L527 182 L527 119 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath3"> - <path d="M479 124 L661 124 L661 147 L479 147 L479 124 Z"/> + <path d="M571 124 L726 124 L726 143 L571 143 L571 124 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath4"> - <path d="M479 124 L664 124 L664 147 L479 147 L479 124 Z"/> + <path d="M571 124 L729 124 L729 143 L571 143 L571 124 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath5"> - <path d="M450 150 L691 150 L691 181 L450 181 L450 150 Z"/> + <path d="M528 146 L769 146 L769 181 L528 181 L528 146 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath6"> - <path d="M294 289 L439 289 L439 354 L294 354 L294 289 Z"/> + <path d="M372 289 L517 289 L517 354 L372 354 L372 289 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath7"> - <path d="M294 289 L437 289 L437 352 L294 352 L294 289 Z"/> + <path d="M372 289 L515 289 L515 352 L372 352 L372 289 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath8"> - <path d="M325 294 L405 294 L405 317 L325 317 L325 294 Z"/> + <path d="M408 294 L478 294 L478 313 L408 313 L408 294 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath9"> - <path d="M325 294 L408 294 L408 317 L325 317 L325 294 Z"/> + <path d="M408 294 L481 294 L481 313 L408 313 L408 294 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath10"> - <path d="M295 320 L436 320 L436 351 L295 351 L295 320 Z"/> + <path d="M373 316 L514 316 L514 351 L373 351 L373 316 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath11"> - <path d="M689 284 L954 284 L954 369 L689 369 L689 284 Z"/> + <path d="M767 284 L1032 284 L1032 369 L767 369 L767 284 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath12"> - <path d="M689 284 L952 284 L952 367 L689 367 L689 284 Z"/> + <path d="M767 284 L1030 284 L1030 367 L767 367 L767 284 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath13"> - <path d="M762 289 L879 289 L879 312 L762 312 L762 289 Z"/> + <path d="M848 289 L949 289 L949 308 L848 308 L848 289 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath14"> - <path d="M762 289 L883 289 L883 312 L762 312 L762 289 Z"/> + <path d="M848 289 L952 289 L952 308 L848 308 L848 289 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath15"> - <path d="M694 317 L931 317 L931 340 L694 340 L694 317 Z"/> + <path d="M772 313 L970 313 L970 332 L772 332 L772 313 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath16"> - <path d="M694 317 L934 317 L934 340 L694 340 L694 317 Z"/> + <path d="M772 313 L973 313 L973 332 L772 332 L772 313 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath17"> - <path d="M694 338 L874 338 L874 361 L694 361 L694 338 Z"/> + <path d="M772 330 L928 330 L928 349 L772 349 L772 330 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath18"> - <path d="M694 338 L877 338 L877 361 L694 361 L694 338 Z"/> + <path d="M772 330 L930 330 L930 349 L772 349 L772 330 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath19"> - <path d="M690 315 L951 315 L951 366 L690 366 L690 315 Z"/> + <path d="M768 311 L1029 311 L1029 366 L768 366 L768 311 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath20"> - <path d="M689 419 L999 419 L999 484 L689 484 L689 419 Z"/> + <path d="M767 419 L1077 419 L1077 484 L767 484 L767 419 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath21"> - <path d="M689 419 L997 419 L997 482 L689 482 L689 419 Z"/> + <path d="M767 419 L1075 419 L1075 482 L767 482 L767 419 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath22"> - <path d="M814 424 L871 424 L871 447 L814 447 L814 424 Z"/> + <path d="M895 424 L947 424 L947 443 L895 443 L895 424 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath23"> - <path d="M814 424 L875 424 L875 447 L814 447 L814 424 Z"/> + <path d="M895 424 L950 424 L950 443 L895 443 L895 424 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath24"> - <path d="M694 452 L868 452 L868 475 L694 475 L694 452 Z"/> + <path d="M772 448 L923 448 L923 467 L772 467 L772 448 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath25"> - <path d="M694 452 L871 452 L871 475 L694 475 L694 452 Z"/> + <path d="M772 448 L925 448 L925 467 L772 467 L772 448 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath26"> - <path d="M690 450 L996 450 L996 481 L690 481 L690 450 Z"/> + <path d="M768 446 L1074 446 L1074 481 L768 481 L768 446 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath27"> - <path d="M759 9 L999 9 L999 74 L759 74 L759 9 Z"/> + <path d="M837 9 L1077 9 L1077 74 L837 74 L837 9 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath28"> - <path d="M759 9 L997 9 L997 72 L759 72 L759 9 Z"/> + <path d="M837 9 L1075 9 L1075 72 L837 72 L837 9 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath29"> - <path d="M800 14 L955 14 L955 37 L800 37 L800 14 Z"/> + <path d="M894 14 L1018 14 L1018 33 L894 33 L894 14 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath30"> - <path d="M800 14 L958 14 L958 37 L800 37 L800 14 Z"/> + <path d="M894 14 L1020 14 L1020 33 L894 33 L894 14 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath31"> - <path d="M764 42 L923 42 L923 65 L764 65 L764 42 Z"/> + <path d="M842 38 L976 38 L976 57 L842 57 L842 38 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath32"> - <path d="M764 42 L926 42 L926 65 L764 65 L764 42 Z"/> + <path d="M842 38 L978 38 L978 57 L842 57 L842 38 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath33"> - <path d="M760 40 L996 40 L996 71 L760 71 L760 40 Z"/> + <path d="M838 36 L1074 36 L1074 71 L838 71 L838 36 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath34"> - <path d="M249 409 L439 409 L439 469 L249 469 L249 409 Z"/> + <path d="M327 409 L517 409 L517 469 L327 469 L327 409 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath35"> - <path d="M249 409 L437 409 L437 467 L249 467 L249 409 Z"/> + <path d="M327 409 L515 409 L515 467 L327 467 L327 409 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath36"> - <path d="M280 414 L405 414 L405 437 L280 437 L280 414 Z"/> + <path d="M369 414 L472 414 L472 433 L369 433 L369 414 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath37"> - <path d="M280 414 L408 414 L408 437 L280 437 L280 414 Z"/> + <path d="M369 414 L474 414 L474 433 L369 433 L369 414 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath38"> - <path d="M250 440 L436 440 L436 466 L250 466 L250 440 Z"/> + <path d="M328 436 L514 436 L514 466 L328 466 L328 436 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath39"> - <path d="M214 9 L414 9 L414 74 L214 74 L214 9 Z"/> + <path d="M292 9 L492 9 L492 74 L292 74 L292 9 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath40"> - <path d="M214 9 L412 9 L412 72 L214 72 L214 9 Z"/> + <path d="M292 9 L490 9 L490 72 L292 72 L292 9 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath41"> - <path d="M248 14 L377 14 L377 37 L248 37 L248 14 Z"/> + <path d="M338 14 L443 14 L443 33 L338 33 L338 14 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath42"> - <path d="M248 14 L381 14 L381 37 L248 37 L248 14 Z"/> + <path d="M338 14 L446 14 L446 33 L338 33 L338 14 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath43"> - <path d="M219 42 L339 42 L339 65 L219 65 L219 42 Z"/> + <path d="M297 38 L402 38 L402 57 L297 57 L297 38 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath44"> - <path d="M219 42 L342 42 L342 65 L219 65 L219 42 Z"/> + <path d="M297 38 L405 38 L405 57 L297 57 L297 38 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath45"> - <path d="M215 40 L411 40 L411 71 L215 71 L215 40 Z"/> + <path d="M293 36 L489 36 L489 71 L293 71 L293 36 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath46"> - <path d="M9 534 L131 534 L131 599 L9 599 L9 534 Z"/> + <path d="M87 534 L209 534 L209 599 L87 599 L87 534 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath47"> - <path d="M9 534 L129 534 L129 597 L9 597 L9 534 Z"/> + <path d="M87 534 L207 534 L207 597 L87 597 L87 534 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath48"> - <path d="M28 539 L110 539 L110 562 L28 562 L28 539 Z"/> + <path d="M110 539 L183 539 L183 558 L110 558 L110 539 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath49"> - <path d="M28 539 L113 539 L113 562 L28 562 L28 539 Z"/> + <path d="M110 539 L186 539 L186 558 L110 558 L110 539 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath50"> - <path d="M10 565 L128 565 L128 596 L10 596 L10 565 Z"/> + <path d="M88 561 L206 561 L206 596 L88 596 L88 561 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath51"> - <path d="M149 534 L339 534 L339 599 L149 599 L149 534 Z"/> + <path d="M227 534 L417 534 L417 599 L227 599 L227 534 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath52"> - <path d="M149 534 L337 534 L337 597 L149 597 L149 534 Z"/> + <path d="M227 534 L415 534 L415 597 L227 597 L227 534 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath53"> - <path d="M195 539 L290 539 L290 562 L195 562 L195 539 Z"/> + <path d="M279 539 L362 539 L362 558 L279 558 L279 539 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath54"> - <path d="M195 539 L293 539 L293 562 L195 562 L195 539 Z"/> + <path d="M279 539 L365 539 L365 558 L279 558 L279 539 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath55"> - <path d="M154 567 L326 567 L326 590 L154 590 L154 567 Z"/> + <path d="M232 563 L377 563 L377 582 L232 582 L232 563 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath56"> - <path d="M154 567 L329 567 L329 590 L154 590 L154 567 Z"/> + <path d="M232 563 L380 563 L380 582 L232 582 L232 563 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath57"> - <path d="M150 565 L336 565 L336 596 L150 596 L150 565 Z"/> + <path d="M228 561 L414 561 L414 596 L228 596 L228 561 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath58"> - <path d="M749 519 L879 519 L879 629 L749 629 L749 519 Z"/> + <path d="M827 519 L957 519 L957 629 L827 629 L827 519 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath59"> - <path d="M749 519 L877 519 L877 627 L749 627 L749 519 Z"/> + <path d="M827 519 L955 519 L955 627 L827 627 L827 519 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath60"> - <path d="M772 524 L854 524 L854 547 L772 547 L772 524 Z"/> + <path d="M855 524 L926 524 L926 543 L855 543 L855 524 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath61"> - <path d="M772 524 L857 524 L857 547 L772 547 L772 524 Z"/> + <path d="M855 524 L929 524 L929 543 L855 543 L855 524 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath62"> - <path d="M754 552 L830 552 L830 575 L754 575 L754 552 Z"/> + <path d="M832 548 L898 548 L898 567 L832 567 L832 548 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath63"> - <path d="M754 552 L834 552 L834 575 L754 575 L754 552 Z"/> + <path d="M832 548 L901 548 L901 567 L832 567 L832 548 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath64"> - <path d="M754 573 L823 573 L823 596 L754 596 L754 573 Z"/> + <path d="M832 565 L892 565 L892 584 L832 584 L832 565 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath65"> - <path d="M754 573 L827 573 L827 596 L754 596 L754 573 Z"/> + <path d="M832 565 L895 565 L895 584 L832 584 L832 565 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath66"> - <path d="M754 594 L862 594 L862 617 L754 617 L754 594 Z"/> + <path d="M832 582 L924 582 L924 601 L832 601 L832 582 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath67"> - <path d="M754 594 L865 594 L865 617 L754 617 L754 594 Z"/> + <path d="M832 582 L927 582 L927 601 L832 601 L832 582 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath68"> - <path d="M750 550 L876 550 L876 626 L750 626 L750 550 Z"/> + <path d="M828 546 L954 546 L954 626 L828 626 L828 546 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath69"> - <path d="M359 534 L481 534 L481 599 L359 599 L359 534 Z"/> + <path d="M437 534 L559 534 L559 599 L437 599 L437 534 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath70"> - <path d="M359 534 L479 534 L479 597 L359 597 L359 534 Z"/> + <path d="M437 534 L557 534 L557 597 L437 597 L437 534 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath71"> - <path d="M369 539 L469 539 L469 562 L369 562 L369 539 Z"/> + <path d="M455 539 L538 539 L538 558 L455 558 L455 539 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath72"> - <path d="M369 539 L473 539 L473 562 L369 562 L369 539 Z"/> + <path d="M455 539 L541 539 L541 558 L455 558 L455 539 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath73"> - <path d="M360 565 L478 565 L478 596 L360 596 L360 565 Z"/> + <path d="M438 561 L556 561 L556 596 L438 596 L438 561 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath74"> - <path d="M499 534 L644 534 L644 599 L499 599 L499 534 Z"/> + <path d="M577 534 L722 534 L722 599 L577 599 L577 534 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath75"> - <path d="M499 534 L642 534 L642 597 L499 597 L499 534 Z"/> + <path d="M577 534 L720 534 L720 597 L577 597 L577 534 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath76"> - <path d="M540 539 L601 539 L601 562 L540 562 L540 539 Z"/> + <path d="M621 539 L675 539 L675 558 L621 558 L621 539 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath77"> - <path d="M540 539 L605 539 L605 562 L540 562 L540 539 Z"/> + <path d="M621 539 L678 539 L678 558 L621 558 L621 539 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath78"> - <path d="M504 567 L615 567 L615 590 L504 590 L504 567 Z"/> + <path d="M582 563 L680 563 L680 582 L582 582 L582 563 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath79"> - <path d="M504 567 L618 567 L618 590 L504 590 L504 567 Z"/> + <path d="M582 563 L682 563 L682 582 L582 582 L582 563 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath80"> - <path d="M500 565 L641 565 L641 596 L500 596 L500 565 Z"/> + <path d="M578 561 L719 561 L719 596 L578 596 L578 561 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath81"> - <path d="M219 634 L419 634 L419 699 L219 699 L219 634 Z"/> + <path d="M297 634 L497 634 L497 699 L297 699 L297 634 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath82"> - <path d="M219 634 L417 634 L417 697 L219 697 L219 634 Z"/> + <path d="M297 634 L495 634 L495 697 L297 697 L297 634 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath83"> - <path d="M235 639 L401 639 L401 662 L235 662 L235 639 Z"/> + <path d="M325 639 L466 639 L466 658 L325 658 L325 639 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath84"> - <path d="M235 639 L405 639 L405 662 L235 662 L235 639 Z"/> + <path d="M325 639 L469 639 L469 658 L325 658 L325 639 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath85"> - <path d="M220 665 L416 665 L416 696 L220 696 L220 665 Z"/> + <path d="M298 661 L494 661 L494 696 L298 696 L298 661 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath86"> - <path d="M434 634 L639 634 L639 699 L434 699 L434 634 Z"/> + <path d="M512 634 L717 634 L717 699 L512 699 L512 634 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath87"> - <path d="M434 634 L637 634 L637 697 L434 697 L434 634 Z"/> + <path d="M512 634 L715 634 L715 697 L512 697 L512 634 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath88"> - <path d="M452 639 L619 639 L619 662 L452 662 L452 639 Z"/> + <path d="M542 639 L684 639 L684 658 L542 658 L542 639 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath89"> - <path d="M452 639 L623 639 L623 662 L452 662 L452 639 Z"/> + <path d="M542 639 L687 639 L687 658 L542 658 L542 639 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath90"> - <path d="M439 667 L627 667 L627 690 L439 690 L439 667 Z"/> + <path d="M517 663 L679 663 L679 682 L517 682 L517 663 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath91"> - <path d="M439 667 L630 667 L630 690 L439 690 L439 667 Z"/> + <path d="M517 663 L682 663 L682 682 L517 682 L517 663 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath92"> - <path d="M435 665 L636 665 L636 696 L435 696 L435 665 Z"/> + <path d="M513 661 L714 661 L714 696 L513 696 L513 661 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath93"> - <path d="M-1 -1 L1009 -1 L1009 709 L-1 709 L-1 -1 Z"/> + <path d="M1232 279 L1354 279 L1354 381 L1232 381 L1232 279 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath94"> - <path d="M514 279 L611 279 L611 302 L514 302 L514 279 Z"/> + <path d="M1232 279 L1352 279 L1352 379 L1232 379 L1232 279 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath95"> - <path d="M435 301 L445 301 L445 310 L435 310 L435 301 Z"/> + <path d="M1264 284 L1319 284 L1319 303 L1264 303 L1264 284 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath96"> - <path d="M514 339 L607 339 L607 362 L514 362 L514 339 Z"/> + <path d="M1264 284 L1322 284 L1322 303 L1264 303 L1264 284 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath97"> - <path d="M435 329 L445 329 L445 338 L435 338 L435 329 Z"/> + <path d="M1233 306 L1351 306 L1351 378 L1233 378 L1233 306 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath98"> - <path d="M685 209 L822 209 L822 232 L685 232 L685 209 Z"/> + <path d="M1292 464 L1572 464 L1572 558 L1292 558 L1292 464 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath99"> - <path d="M626 180 L635 180 L635 195 L626 195 L626 180 Z"/> + <path d="M1292 464 L1570 464 L1570 556 L1292 556 L1292 464 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath100"> - <path d="M791 277 L800 277 L800 287 L791 287 L791 277 Z"/> + <path d="M1400 469 L1461 469 L1461 488 L1400 488 L1400 469 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath101"> - <path d="M385 209 L488 209 L488 232 L385 232 L385 209 Z"/> + <path d="M1400 469 L1463 469 L1463 488 L1400 488 L1400 469 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath102"> - <path d="M516 180 L525 180 L525 195 L516 195 L516 180 Z"/> + <path d="M1297 493 L1413 493 L1413 512 L1297 512 L1297 493 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath103"> - <path d="M371 282 L380 282 L380 292 L371 292 L371 282 Z"/> + <path d="M1297 493 L1416 493 L1416 512 L1297 512 L1297 493 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath104"> - <path d="M826 389 L906 389 L906 412 L826 412 L826 389 Z"/> + <path d="M1297 510 L1493 510 L1493 529 L1297 529 L1297 510 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath105"> - <path d="M817 365 L826 365 L826 380 L817 380 L817 365 Z"/> + <path d="M1297 510 L1496 510 L1496 529 L1297 529 L1297 510 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath106"> - <path d="M817 412 L826 412 L826 422 L817 422 L817 412 Z"/> + <path d="M1297 527 L1532 527 L1532 546 L1297 546 L1297 527 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath107"> - <path d="M874 70 L885 70 L885 81 L874 81 L874 70 Z"/> + <path d="M1297 527 L1535 527 L1535 546 L1297 546 L1297 527 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath108"> - <path d="M385 369 L454 369 L454 392 L385 392 L385 369 Z"/> + <path d="M1293 491 L1569 491 L1569 555 L1293 555 L1293 491 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath109"> - <path d="M371 350 L380 350 L380 365 L371 365 L371 350 Z"/> + <path d="M-1 -1 L1582 -1 L1582 774 L-1 774 L-1 -1 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath110"> - <path d="M371 402 L380 402 L380 412 L371 412 L371 402 Z"/> + <path d="M600 281 L680 281 L680 300 L600 300 L600 281 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath111"> - <path d="M309 70 L320 70 L320 81 L309 81 L309 70 Z"/> + <path d="M513 301 L523 301 L523 310 L513 310 L513 301 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath112"> - <path d="M339 465 L350 465 L350 476 L339 476 L339 465 Z"/> + <path d="M600 341 L677 341 L677 360 L600 360 L600 341 Z"/> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="clipPath113"> - <path d="M415 595 L426 595 L426 606 L415 606 L415 595 Z"/> + <path d="M513 329 L523 329 L523 338 L513 338 L513 329 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath114"> + <path d="M774 211 L888 211 L888 230 L774 230 L774 211 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath115"> + <path d="M704 180 L713 180 L713 195 L704 195 L704 180 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath116"> + <path d="M869 277 L878 277 L878 287 L869 287 L869 277 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath117"> + <path d="M471 211 L557 211 L557 230 L471 230 L471 211 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath118"> + <path d="M594 180 L603 180 L603 195 L594 195 L594 180 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath119"> + <path d="M449 282 L458 282 L458 292 L449 292 L449 282 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath120"> + <path d="M909 391 L977 391 L977 410 L909 410 L909 391 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath121"> + <path d="M895 365 L904 365 L904 380 L895 380 L895 365 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath122"> + <path d="M895 412 L904 412 L904 422 L895 422 L895 412 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath123"> + <path d="M952 70 L963 70 L963 81 L952 81 L952 70 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath124"> + <path d="M468 371 L527 371 L527 390 L468 390 L468 371 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath125"> + <path d="M449 350 L458 350 L458 365 L449 365 L449 350 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath126"> + <path d="M449 402 L458 402 L458 412 L449 412 L449 402 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath127"> + <path d="M387 70 L398 70 L398 81 L387 81 L387 70 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath128"> + <path d="M417 465 L428 465 L428 476 L417 476 L417 465 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath129"> + <path d="M493 595 L504 595 L504 606 L493 606 L493 595 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath130"> + <path d="M1097 179 L1168 179 L1168 198 L1097 198 L1097 179 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath131"> + <path d="M768 165 L783 165 L783 174 L768 174 L768 165 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath132"> + <path d="M1253 272 L1262 272 L1262 282 L1253 282 L1253 272 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath133"> + <path d="M1112 334 L1211 334 L1211 353 L1112 353 L1112 334 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath134"> + <path d="M1028 323 L1038 323 L1038 332 L1028 332 L1028 323 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath135"> + <path d="M1177 689 L1239 689 L1239 708 L1177 708 L1177 689 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath136"> + <path d="M365 331 L375 331 L375 340 L365 340 L365 331 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath137"> + <path d="M1209 714 L1267 714 L1267 733 L1209 733 L1209 714 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath138"> + <path d="M365 320 L375 320 L375 329 L365 329 L365 320 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath139"> + <path d="M1432 109 L1509 109 L1509 128 L1432 128 L1432 109 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath140"> + <path d="M768 126 L783 126 L783 135 L768 135 L768 126 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath141"> + <path d="M1479 457 L1488 457 L1488 467 L1479 467 L1479 457 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath142"> + <path d="M1315 441 L1398 441 L1398 460 L1315 460 L1315 441 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath143"> + <path d="M1308 377 L1317 377 L1317 392 L1308 392 L1308 377 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath144"> + <path d="M1308 457 L1317 457 L1317 467 L1308 467 L1308 457 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath145"> + <path d="M1321 729 L1403 729 L1403 748 L1321 748 L1321 729 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath146"> + <path d="M365 305 L375 305 L375 314 L365 314 L365 305 Z"/> </clipPath> </defs> <g font-size="10px" fill="rgb(131,122,133)" font-family="'Segoe UI'" stroke-linejoin="round" stroke="rgb(131,122,133)" stroke-width="0" stroke-miterlimit="1"> - <rect x="451" y="121" clip-path="url(#clipPath1)" width="241" rx="4" opacity="0.255" ry="4" height="61" stroke="none"/> - <rect x="452" y="122" clip-path="url(#clipPath1)" width="241" rx="4" opacity="0.255" ry="4" height="61" stroke="none"/> - <rect x="450" y="120" clip-path="url(#clipPath2)" fill="url(#linearGradient1)" width="241" rx="4" ry="4" height="61" stroke="none"/> + <rect x="529" y="121" clip-path="url(#clipPath1)" width="241" rx="4" opacity="0.255" ry="4" height="61" stroke="none"/> + <rect x="530" y="122" clip-path="url(#clipPath1)" width="241" rx="4" opacity="0.255" ry="4" height="61" stroke="none"/> + <rect x="528" y="120" clip-path="url(#clipPath2)" fill="url(#linearGradient1)" width="241" rx="4" ry="4" height="61" stroke="none"/> </g> <g font-size="10px" stroke-width="1.1" font-family="'Segoe UI'" stroke-linecap="butt"> - <rect x="450" y="120" clip-path="url(#clipPath2)" fill="none" width="240" rx="4" ry="4" height="60"/> - <image x="480" y="127" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAsklEQVR4XqWQ0QoB QRSG941sEhJ5F1HaViRCpKwoN25cUFI8khuvYvbq8IuaOuaftr34mmm+ztdpAhEJ 8qAesqIeLouC+PAGTHp34g2c56EasoGngeM0lKd5fDDpl9/9fcLTwGFSlNsplqsD eBrYj0tqbRt4GtgNy2rIBp4G1v0K/QN4GljGVUm2K0k2/4GngVlUU2vbwNPAqFtX QzbwNDDoNOgfwNNAr92UqOUGngay8gIKdwdeFkAbDAAAAABJRU5ErkJggg==" xlink:type="simple" xlink:actuate="onLoad" height="16" preserveAspectRatio="none" xlink:show="embed"/> - <text x="499" xml:space="preserve" y="136" clip-path="url(#clipPath4)" stroke="none">TransportationNetwork</text> - <line y2="151" fill="none" x1="451" clip-path="url(#clipPath5)" x2="690" y1="151"/> - <rect x="296" y="291" clip-path="url(#clipPath6)" fill="rgb(131,122,133)" width="141" rx="4" opacity="0.255" ry="4" height="61" stroke="none"/> - <rect x="297" y="292" clip-path="url(#clipPath6)" fill="rgb(131,122,133)" width="141" rx="4" opacity="0.255" ry="4" height="61" stroke="none"/> - <rect x="295" y="290" clip-path="url(#clipPath7)" fill="url(#linearGradient2)" width="141" rx="4" ry="4" height="61" stroke="none"/> - <rect x="295" y="290" clip-path="url(#clipPath7)" fill="none" width="140" rx="4" ry="4" height="60"/> - <image x="326" y="297" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAsklEQVR4XqWQ0QoB QRSG941sEhJ5F1HaViRCpKwoN25cUFI8khuvYvbq8IuaOuaftr34mmm+ztdpAhEJ 8qAesqIeLouC+PAGTHp34g2c56EasoGngeM0lKd5fDDpl9/9fcLTwGFSlNsplqsD eBrYj0tqbRt4GtgNy2rIBp4G1v0K/QN4GljGVUm2K0k2/4GngVlUU2vbwNPAqFtX QzbwNDDoNOgfwNNAr92UqOUGngay8gIKdwdeFkAbDAAAAABJRU5ErkJggg==" xlink:type="simple" xlink:actuate="onLoad" height="16" preserveAspectRatio="none" xlink:show="embed"/> - <text x="345" xml:space="preserve" y="306" clip-path="url(#clipPath9)" stroke="none">Location</text> - <line y2="321" fill="none" x1="296" clip-path="url(#clipPath10)" x2="435" y1="321"/> - <rect x="691" y="286" clip-path="url(#clipPath11)" fill="rgb(131,122,133)" width="261" rx="4" opacity="0.255" ry="4" height="81" stroke="none"/> - <rect x="692" y="287" clip-path="url(#clipPath11)" fill="rgb(131,122,133)" width="261" rx="4" opacity="0.255" ry="4" height="81" stroke="none"/> - <rect x="690" y="285" clip-path="url(#clipPath12)" fill="url(#linearGradient3)" width="261" rx="4" ry="4" height="81" stroke="none"/> - <rect x="690" y="285" clip-path="url(#clipPath12)" fill="none" width="260" rx="4" ry="4" height="80"/> - <image x="763" y="292" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAsklEQVR4XqWQ0QoB QRSG941sEhJ5F1HaViRCpKwoN25cUFI8khuvYvbq8IuaOuaftr34mmm+ztdpAhEJ 8qAesqIeLouC+PAGTHp34g2c56EasoGngeM0lKd5fDDpl9/9fcLTwGFSlNsplqsD eBrYj0tqbRt4GtgNy2rIBp4G1v0K/QN4GljGVUm2K0k2/4GngVlUU2vbwNPAqFtX QzbwNDDoNOgfwNNAr92UqOUGngay8gIKdwdeFkAbDAAAAABJRU5ErkJggg==" xlink:type="simple" xlink:actuate="onLoad" height="16" preserveAspectRatio="none" xlink:show="embed"/> - <text x="782" xml:space="preserve" y="301" clip-path="url(#clipPath14)" stroke="none">RoadNetwork</text> - <image x="695" y="320" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAa0lEQVR4XmNgGAUY YG6N/n9CGF0PCphaYfj/x8+LODFIHl0PCugqMsXQhIxB8uh6UEBtjuX/7z+ugfGP n1AMYwNpkDy6HhRQlGb7PyvJHicGyaProS2QtC8j30aQZooMAIGBNQDmBYoMIQQA VHKRZGFCvOoAAAAASUVORK5CYII=" xlink:type="simple" xlink:actuate="onLoad" height="16" preserveAspectRatio="none" xlink:show="embed" font-weight="bold"/> - <text x="714" xml:space="preserve" y="329" clip-path="url(#clipPath16)" font-weight="bold" stroke="none">isDirected : EBoolean = false</text> - <image x="695" y="341" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAWUlEQVR4XmNgGAWD EMyt0f9PCKPrQQFTKwz///h5EScGyaPrQQFdRaYYmpAxSB5dDwqozbH8//3HNTD+ 8ROKYWwgDZJH14MCitJs/2cl2ePEIHl0PaOAQgAAf2WC/D0GsQEAAAAASUVORK5C YII=" xlink:type="simple" xlink:actuate="onLoad" height="16" preserveAspectRatio="none" xlink:show="embed"/> - <text x="714" xml:space="preserve" y="350" clip-path="url(#clipPath18)" stroke="none">length : EDouble = -1.0</text> - <line y2="316" fill="none" x1="691" clip-path="url(#clipPath19)" x2="950" y1="316"/> - <rect x="691" y="421" clip-path="url(#clipPath20)" fill="rgb(131,122,133)" width="306" rx="4" opacity="0.255" ry="4" height="61" stroke="none"/> - <rect x="692" y="422" clip-path="url(#clipPath20)" fill="rgb(131,122,133)" width="306" rx="4" opacity="0.255" ry="4" height="61" stroke="none"/> - <rect x="690" y="420" clip-path="url(#clipPath21)" fill="url(#linearGradient4)" width="306" rx="4" ry="4" height="61" stroke="none"/> - <rect x="690" y="420" clip-path="url(#clipPath21)" fill="none" width="305" rx="4" ry="4" height="60"/> - <image x="815" y="427" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAsklEQVR4XqWQ0QoB QRSG941sEhJ5F1HaViRCpKwoN25cUFI8khuvYvbq8IuaOuaftr34mmm+ztdpAhEJ 8qAesqIeLouC+PAGTHp34g2c56EasoGngeM0lKd5fDDpl9/9fcLTwGFSlNsplqsD eBrYj0tqbRt4GtgNy2rIBp4G1v0K/QN4GljGVUm2K0k2/4GngVlUU2vbwNPAqFtX QzbwNDDoNOgfwNNAr92UqOUGngay8gIKdwdeFkAbDAAAAABJRU5ErkJggg==" xlink:type="simple" xlink:actuate="onLoad" height="16" preserveAspectRatio="none" xlink:show="embed"/> - <text x="834" xml:space="preserve" y="436" clip-path="url(#clipPath23)" stroke="none">Road</text> - <image x="695" y="455" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAWUlEQVR4XmNgGAWD EMyt0f9PCKPrQQFTKwz///h5EScGyaPrQQFdRaYYmpAxSB5dDwqozbH8//3HNTD+ 8ROKYWwgDZJH14MCitJs/2cl2ePEIHl0PaOAQgAAf2WC/D0GsQEAAAAASUVORK5C YII=" xlink:type="simple" xlink:actuate="onLoad" height="16" preserveAspectRatio="none" xlink:show="embed"/> - <text x="714" xml:space="preserve" y="464" clip-path="url(#clipPath25)" stroke="none">length : EDouble = 0.0</text> - <line y2="451" fill="none" x1="691" clip-path="url(#clipPath26)" x2="995" y1="451"/> - <rect x="761" y="11" clip-path="url(#clipPath27)" fill="rgb(131,122,133)" width="236" rx="4" opacity="0.255" ry="4" height="61" stroke="none"/> - <rect x="762" y="12" clip-path="url(#clipPath27)" fill="rgb(131,122,133)" width="236" rx="4" opacity="0.255" ry="4" height="61" stroke="none"/> - <rect x="760" y="10" clip-path="url(#clipPath28)" fill="url(#linearGradient5)" width="236" rx="4" ry="4" height="61" stroke="none"/> - <rect x="760" y="10" clip-path="url(#clipPath28)" fill="none" width="235" rx="4" ry="4" height="60" stroke="rgb(125,125,125)"/> - <image stroke="rgb(125,125,125)" width="16" xlink:show="embed" xlink:type="simple" fill="rgb(125,125,125)" preserveAspectRatio="none" height="16" font-style="italic" x="801" y="17" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAw0lEQVR4XmP4//8/ AyUYQgApZIyuCB8Ga0YHILG5Nfo4MUgJDMMNQLIdTP/4eRErxmkAMsBnwOxqA7AS GMbpgu8/rgE1QDGMDaSnV2AxAKoRJgDmL5iRgxVPLjdCNQCZA8J9pSYYzkbGIHm8 BnQWmWFoQsYgebwGNOebg/2PKwxA8ngNqMux+N/U1vi/qRU7BsnjNaAyywrD2cgY JI/XgJIMGwxNyBgkj9eAglRbvGEAksdrQG6K/f+sJNwYJI/XAFIxAHIn7dCPjVWK AAAAAElFTkSuQmCC" xlink:actuate="onLoad"/> - <text font-style="italic" x="820" xml:space="preserve" y="26" clip-path="url(#clipPath30)" stroke="none">IdentifiableElement</text> - <image x="765" y="45" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAa0lEQVR4XmNgGAUY YG6N/n9CGF0PCphaYfj/x8+LODFIHl0PCugqMsXQhIxB8uh6UEBtjuX/7z+ugfGP n1AMYwNpkDy6HhRQlGb7PyvJHicGyaProS2QtC8j30aQZooMAIGBNQDmBYoMIQQA VHKRZGFCvOoAAAAASUVORK5CYII=" xlink:type="simple" xlink:actuate="onLoad" height="16" preserveAspectRatio="none" xlink:show="embed" font-weight="bold"/> - <text x="784" xml:space="preserve" y="54" clip-path="url(#clipPath32)" font-weight="bold" stroke="none">identifier : EString</text> - <line clip-path="url(#clipPath33)" fill="none" x1="761" x2="995" y1="41" y2="41" stroke="rgb(125,125,125)"/> - <rect x="251" y="411" clip-path="url(#clipPath34)" fill="rgb(131,122,133)" width="186" rx="4" opacity="0.255" ry="4" height="56" stroke="none"/> - <rect x="252" y="412" clip-path="url(#clipPath34)" fill="rgb(131,122,133)" width="186" rx="4" opacity="0.255" ry="4" height="56" stroke="none"/> - <rect x="250" y="410" clip-path="url(#clipPath35)" fill="url(#linearGradient6)" width="186" rx="4" ry="4" height="56" stroke="none"/> - <rect x="250" y="410" clip-path="url(#clipPath35)" fill="none" width="185" rx="4" ry="4" height="55" stroke="rgb(125,125,125)"/> - <image stroke="rgb(125,125,125)" width="16" xlink:show="embed" xlink:type="simple" fill="rgb(125,125,125)" preserveAspectRatio="none" height="16" font-style="italic" x="281" y="417" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAw0lEQVR4XmP4//8/ AyUYQgApZIyuCB8Ga0YHILG5Nfo4MUgJDMMNQLIdTP/4eRErxmkAMsBnwOxqA7AS GMbpgu8/rgE1QDGMDaSnV2AxAKoRJgDmL5iRgxVPLjdCNQCZA8J9pSYYzkbGIHm8 BnQWmWFoQsYgebwGNOebg/2PKwxA8ngNqMux+N/U1vi/qRU7BsnjNaAyywrD2cgY JI/XgJIMGwxNyBgkj9eAglRbvGEAksdrQG6K/f+sJNwYJI/XAFIxAHIn7dCPjVWK AAAAAElFTkSuQmCC" xlink:actuate="onLoad"/> - <text font-style="italic" x="300" xml:space="preserve" y="426" clip-path="url(#clipPath37)" stroke="none">PointOfInterest</text> - <line clip-path="url(#clipPath38)" fill="none" x1="251" x2="435" y1="441" y2="441" stroke="rgb(125,125,125)"/> - <rect x="216" y="11" clip-path="url(#clipPath39)" fill="rgb(131,122,133)" width="196" rx="4" opacity="0.255" ry="4" height="61" stroke="none"/> - <rect x="217" y="12" clip-path="url(#clipPath39)" fill="rgb(131,122,133)" width="196" rx="4" opacity="0.255" ry="4" height="61" stroke="none"/> - <rect x="215" y="10" clip-path="url(#clipPath40)" fill="url(#linearGradient7)" width="196" rx="4" ry="4" height="61" stroke="none"/> - <rect x="215" y="10" clip-path="url(#clipPath40)" fill="none" width="195" rx="4" ry="4" height="60" stroke="rgb(125,125,125)"/> - <image stroke="rgb(125,125,125)" width="16" xlink:show="embed" xlink:type="simple" fill="rgb(125,125,125)" preserveAspectRatio="none" height="16" font-style="italic" x="249" y="17" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAw0lEQVR4XmP4//8/ AyUYQgApZIyuCB8Ga0YHILG5Nfo4MUgJDMMNQLIdTP/4eRErxmkAMsBnwOxqA7AS GMbpgu8/rgE1QDGMDaSnV2AxAKoRJgDmL5iRgxVPLjdCNQCZA8J9pSYYzkbGIHm8 BnQWmWFoQsYgebwGNOebg/2PKwxA8ngNqMux+N/U1vi/qRU7BsnjNaAyywrD2cgY JI/XgJIMGwxNyBgkj9eAglRbvGEAksdrQG6K/f+sJNwYJI/XAFIxAHIn7dCPjVWK AAAAAElFTkSuQmCC" xlink:actuate="onLoad"/> - <text font-style="italic" x="268" xml:space="preserve" y="26" clip-path="url(#clipPath42)" stroke="none">NamedElement</text> - <image x="220" y="45" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAWUlEQVR4XmNgGAWD EMyt0f9PCKPrQQFTKwz///h5EScGyaPrQQFdRaYYmpAxSB5dDwqozbH8//3HNTD+ 8ROKYWwgDZJH14MCitJs/2cl2ePEIHl0PaOAQgAAf2WC/D0GsQEAAAAASUVORK5C YII=" xlink:type="simple" xlink:actuate="onLoad" height="16" preserveAspectRatio="none" xlink:show="embed"/> - <text x="239" xml:space="preserve" y="54" clip-path="url(#clipPath44)" stroke="none">name : EString</text> - <line clip-path="url(#clipPath45)" fill="none" x1="216" x2="410" y1="41" y2="41" stroke="rgb(125,125,125)"/> - <rect x="11" y="536" clip-path="url(#clipPath46)" fill="rgb(131,122,133)" width="118" rx="4" opacity="0.255" ry="4" height="61" stroke="none"/> - <rect x="12" y="537" clip-path="url(#clipPath46)" fill="rgb(131,122,133)" width="118" rx="4" opacity="0.255" ry="4" height="61" stroke="none"/> - <rect x="10" y="535" clip-path="url(#clipPath47)" fill="url(#linearGradient8)" width="118" rx="4" ry="4" height="61" stroke="none"/> - <rect x="10" y="535" clip-path="url(#clipPath47)" fill="none" width="117" rx="4" ry="4" height="60"/> - <image x="29" y="542" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAsklEQVR4XqWQ0QoB QRSG941sEhJ5F1HaViRCpKwoN25cUFI8khuvYvbq8IuaOuaftr34mmm+ztdpAhEJ 8qAesqIeLouC+PAGTHp34g2c56EasoGngeM0lKd5fDDpl9/9fcLTwGFSlNsplqsD eBrYj0tqbRt4GtgNy2rIBp4G1v0K/QN4GljGVUm2K0k2/4GngVlUU2vbwNPAqFtX QzbwNDDoNOgfwNNAr92UqOUGngay8gIKdwdeFkAbDAAAAABJRU5ErkJggg==" xlink:type="simple" xlink:actuate="onLoad" height="16" preserveAspectRatio="none" xlink:show="embed"/> - <text x="48" xml:space="preserve" y="551" clip-path="url(#clipPath49)" stroke="none">RestStop</text> - <line y2="566" fill="none" x1="11" clip-path="url(#clipPath50)" x2="127" y1="566"/> - <rect x="151" y="536" clip-path="url(#clipPath51)" fill="rgb(131,122,133)" width="186" rx="4" opacity="0.255" ry="4" height="61" stroke="none"/> - <rect x="152" y="537" clip-path="url(#clipPath51)" fill="rgb(131,122,133)" width="186" rx="4" opacity="0.255" ry="4" height="61" stroke="none"/> - <rect x="150" y="535" clip-path="url(#clipPath52)" fill="url(#linearGradient9)" width="186" rx="4" ry="4" height="61" stroke="none"/> - <rect x="150" y="535" clip-path="url(#clipPath52)" fill="none" width="185" rx="4" ry="4" height="60"/> - <image x="196" y="542" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAsklEQVR4XqWQ0QoB QRSG941sEhJ5F1HaViRCpKwoN25cUFI8khuvYvbq8IuaOuaftr34mmm+ztdpAhEJ 8qAesqIeLouC+PAGTHp34g2c56EasoGngeM0lKd5fDDpl9/9fcLTwGFSlNsplqsD eBrYj0tqbRt4GtgNy2rIBp4G1v0K/QN4GljGVUm2K0k2/4GngVlUU2vbwNPAqFtX QzbwNDDoNOgfwNNAr92UqOUGngay8gIKdwdeFkAbDAAAAABJRU5ErkJggg==" xlink:type="simple" xlink:actuate="onLoad" height="16" preserveAspectRatio="none" xlink:show="embed"/> - <text x="215" xml:space="preserve" y="551" clip-path="url(#clipPath54)" stroke="none">GasStation</text> - <image x="155" y="570" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAiUlEQVR4XmNgGAUY YG6N/n9CGF0PCphaYfj/x8+LODFIHl0PCugqMsXQhIxB8uh6UEBtjuX/7z+ugfGP n1AMYwNpkDy6HhRQlGb7PyvJHicGyaProQ6QtC/DazJI/uiNz2CMoRYkgCGIBmAa YQahy+N1AUwjOsZQhCKABvC6AN1UdBrGxhkGlAAAZIvKrFQ33O0AAAAASUVORK5C YII=" xlink:type="simple" xlink:actuate="onLoad" height="16" preserveAspectRatio="none" xlink:show="embed" font-weight="bold"/> - <text x="174" xml:space="preserve" y="579" clip-path="url(#clipPath56)" font-weight="bold" stroke="none">fueltypes : FuelType</text> - <line y2="566" fill="none" x1="151" clip-path="url(#clipPath57)" x2="335" y1="566"/> - <rect x="751" y="521" clip-path="url(#clipPath58)" fill="rgb(131,122,133)" width="126" rx="0" opacity="0.255" ry="0" height="106" stroke="none"/> - <rect x="752" y="522" clip-path="url(#clipPath58)" fill="rgb(131,122,133)" width="126" rx="0" opacity="0.255" ry="0" height="106" stroke="none"/> - <rect x="750" y="520" clip-path="url(#clipPath59)" fill="url(#linearGradient10)" width="126" rx="0" ry="0" height="106" stroke="none"/> - <rect x="750" y="520" clip-path="url(#clipPath59)" fill="none" width="125" rx="0" ry="0" height="105" stroke="rgb(125,125,125)"/> - <image stroke="rgb(125,125,125)" width="16" xlink:show="embed" xlink:type="simple" fill="rgb(125,125,125)" preserveAspectRatio="none" height="16" x="773" y="527" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAe0lEQVR4XmP4//8/ AyUYQ4BUjCFAKsYQAOHSthP/tczT/yOLgfggcXS1eDXD2DCN2AzBqRmmAYaRxZAN oa4LYHjTngdYwwAkjq4WQzOpGEMAhLOS7P+DcGGa7f/aHMv/XUWm/6dWGP6fW6P/ H10thmZSMYYACI+6gDQMAIBP1wRewdGqAAAAAElFTkSuQmCC" xlink:actuate="onLoad"/> - <text x="792" xml:space="preserve" y="536" clip-path="url(#clipPath61)" stroke="none">FuelType</text> - <image x="755" y="555" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAYklEQVR4XqXMIQ6A MBBE0d6IICpIINylAgEYUAh6ATySsw6phK8GxDM/uxMkhT8QXAguBBeCC8GF4EIo xtSrWIZWeWp0rFHnVuvaK71v8fwc6JTnDwMOBBeCC8GF4EJwIbhulQfxP3tA33YAAAAASUVORK5CYII=" xlink:type="simple" xlink:actuate="onLoad" height="16" preserveAspectRatio="none" xlink:show="embed"/> - <text x="774" xml:space="preserve" y="564" clip-path="url(#clipPath63)" stroke="none">PETROL</text> - <image x="755" y="576" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAYklEQVR4XqXMIQ6A MBBE0d6IICpIINylAgEYUAh6ATySsw6phK8GxDM/uxMkhT8QXAguBBeCC8GF4EIo xtSrWIZWeWp0rFHnVuvaK71v8fwc6JTnDwMOBBeCC8GF4EJwIbhulQfxP3tA33YAAAAASUVORK5CYII=" xlink:type="simple" xlink:actuate="onLoad" height="16" preserveAspectRatio="none" xlink:show="embed"/> - <text x="774" xml:space="preserve" y="585" clip-path="url(#clipPath65)" stroke="none">DIESEL</text> - <image x="755" y="597" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAYklEQVR4XqXMIQ6A MBBE0d6IICpIINylAgEYUAh6ATySsw6phK8GxDM/uxMkhT8QXAguBBeCC8GF4EIo xtSrWIZWeWp0rFHnVuvaK71v8fwc6JTnDwMOBBeCC8GF4EJwIbhulQfxP3tA33YAAAAASUVORK5CYII=" xlink:type="simple" xlink:actuate="onLoad" height="16" preserveAspectRatio="none" xlink:show="embed"/> - <text x="774" xml:space="preserve" y="606" clip-path="url(#clipPath67)" stroke="none">ELECTRICITY</text> - <line clip-path="url(#clipPath68)" fill="none" x1="751" x2="875" y1="551" y2="551" stroke="rgb(125,125,125)"/> - <rect x="361" y="536" clip-path="url(#clipPath69)" fill="rgb(131,122,133)" width="118" rx="4" opacity="0.255" ry="4" height="61" stroke="none"/> - <rect x="362" y="537" clip-path="url(#clipPath69)" fill="rgb(131,122,133)" width="118" rx="4" opacity="0.255" ry="4" height="61" stroke="none"/> - <rect x="360" y="535" clip-path="url(#clipPath70)" fill="url(#linearGradient11)" width="118" rx="4" ry="4" height="61" stroke="none"/> - <rect x="360" y="535" clip-path="url(#clipPath70)" fill="none" width="117" rx="4" ry="4" height="60" stroke="rgb(125,125,125)"/> - <image stroke="rgb(125,125,125)" width="16" xlink:show="embed" xlink:type="simple" fill="rgb(125,125,125)" preserveAspectRatio="none" height="16" font-style="italic" x="370" y="542" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAw0lEQVR4XmP4//8/ AyUYQgApZIyuCB8Ga0YHILG5Nfo4MUgJDMMNQLIdTP/4eRErxmkAMsBnwOxqA7AS GMbpgu8/rgE1QDGMDaSnV2AxAKoRJgDmL5iRgxVPLjdCNQCZA8J9pSYYzkbGIHm8 BnQWmWFoQsYgebwGNOebg/2PKwxA8ngNqMux+N/U1vi/qRU7BsnjNaAyywrD2cgY JI/XgJIMGwxNyBgkj9eAglRbvGEAksdrQG6K/f+sJNwYJI/XAFIxAHIn7dCPjVWK AAAAAElFTkSuQmCC" xlink:actuate="onLoad"/> - <text font-style="italic" x="389" xml:space="preserve" y="551" clip-path="url(#clipPath72)" stroke="none">Warehouse</text> - <line clip-path="url(#clipPath73)" fill="none" x1="361" x2="477" y1="566" y2="566" stroke="rgb(125,125,125)"/> - <rect x="501" y="536" clip-path="url(#clipPath74)" fill="rgb(131,122,133)" width="141" rx="4" opacity="0.255" ry="4" height="61" stroke="none"/> - <rect x="502" y="537" clip-path="url(#clipPath74)" fill="rgb(131,122,133)" width="141" rx="4" opacity="0.255" ry="4" height="61" stroke="none"/> - <rect x="500" y="535" clip-path="url(#clipPath75)" fill="url(#linearGradient12)" width="141" rx="4" ry="4" height="61" stroke="none"/> - <rect x="500" y="535" clip-path="url(#clipPath75)" fill="none" width="140" rx="4" ry="4" height="60"/> - <image x="541" y="542" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAsklEQVR4XqWQ0QoB QRSG941sEhJ5F1HaViRCpKwoN25cUFI8khuvYvbq8IuaOuaftr34mmm+ztdpAhEJ 8qAesqIeLouC+PAGTHp34g2c56EasoGngeM0lKd5fDDpl9/9fcLTwGFSlNsplqsD eBrYj0tqbRt4GtgNy2rIBp4G1v0K/QN4GljGVUm2K0k2/4GngVlUU2vbwNPAqFtX QzbwNDDoNOgfwNNAr92UqOUGngay8gIKdwdeFkAbDAAAAABJRU5ErkJggg==" xlink:type="simple" xlink:actuate="onLoad" height="16" preserveAspectRatio="none" xlink:show="embed"/> - <text x="560" xml:space="preserve" y="551" clip-path="url(#clipPath77)" stroke="none">Other</text> - <image x="505" y="570" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAWUlEQVR4XmNgGAWD EMyt0f9PCKPrQQFTKwz///h5EScGyaPrQQFdRaYYmpAxSB5dDwqozbH8//3HNTD+ 8ROKYWwgDZJH14MCitJs/2cl2ePEIHl0PaOAQgAAf2WC/D0GsQEAAAAASUVORK5C YII=" xlink:type="simple" xlink:actuate="onLoad" height="16" preserveAspectRatio="none" xlink:show="embed"/> - <text x="524" xml:space="preserve" y="579" clip-path="url(#clipPath79)" stroke="none">type : EString</text> - <line y2="566" fill="none" x1="501" clip-path="url(#clipPath80)" x2="640" y1="566"/> - <rect x="221" y="636" clip-path="url(#clipPath81)" fill="rgb(131,122,133)" width="196" rx="4" opacity="0.255" ry="4" height="61" stroke="none"/> - <rect x="222" y="637" clip-path="url(#clipPath81)" fill="rgb(131,122,133)" width="196" rx="4" opacity="0.255" ry="4" height="61" stroke="none"/> - <rect x="220" y="635" clip-path="url(#clipPath82)" fill="url(#linearGradient13)" width="196" rx="4" ry="4" height="61" stroke="none"/> - <rect x="220" y="635" clip-path="url(#clipPath82)" fill="none" width="195" rx="4" ry="4" height="60"/> - <image x="236" y="642" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAsklEQVR4XqWQ0QoB QRSG941sEhJ5F1HaViRCpKwoN25cUFI8khuvYvbq8IuaOuaftr34mmm+ztdpAhEJ 8qAesqIeLouC+PAGTHp34g2c56EasoGngeM0lKd5fDDpl9/9fcLTwGFSlNsplqsD eBrYj0tqbRt4GtgNy2rIBp4G1v0K/QN4GljGVUm2K0k2/4GngVlUU2vbwNPAqFtX QzbwNDDoNOgfwNNAr92UqOUGngay8gIKdwdeFkAbDAAAAABJRU5ErkJggg==" xlink:type="simple" xlink:actuate="onLoad" height="16" preserveAspectRatio="none" xlink:show="embed"/> - <text x="255" xml:space="preserve" y="651" clip-path="url(#clipPath84)" stroke="none">CompanyWarehouse</text> - <line y2="666" fill="none" x1="221" clip-path="url(#clipPath85)" x2="415" y1="666"/> - <rect x="436" y="636" clip-path="url(#clipPath86)" fill="rgb(131,122,133)" width="201" rx="4" opacity="0.255" ry="4" height="61" stroke="none"/> - <rect x="437" y="637" clip-path="url(#clipPath86)" fill="rgb(131,122,133)" width="201" rx="4" opacity="0.255" ry="4" height="61" stroke="none"/> - <rect x="435" y="635" clip-path="url(#clipPath87)" fill="url(#linearGradient14)" width="201" rx="4" ry="4" height="61" stroke="none"/> - <rect x="435" y="635" clip-path="url(#clipPath87)" fill="none" width="200" rx="4" ry="4" height="60"/> - <image x="453" y="642" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAsklEQVR4XqWQ0QoB QRSG941sEhJ5F1HaViRCpKwoN25cUFI8khuvYvbq8IuaOuaftr34mmm+ztdpAhEJ 8qAesqIeLouC+PAGTHp34g2c56EasoGngeM0lKd5fDDpl9/9fcLTwGFSlNsplqsD eBrYj0tqbRt4GtgNy2rIBp4G1v0K/QN4GljGVUm2K0k2/4GngVlUU2vbwNPAqFtX QzbwNDDoNOgfwNNAr92UqOUGngay8gIKdwdeFkAbDAAAAABJRU5ErkJggg==" xlink:type="simple" xlink:actuate="onLoad" height="16" preserveAspectRatio="none" xlink:show="embed"/> - <text x="472" xml:space="preserve" y="651" clip-path="url(#clipPath89)" stroke="none">CustomerWarehouse</text> - <image x="440" y="670" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAWUlEQVR4XmNgGAWD EMyt0f9PCKPrQQFTKwz///h5EScGyaPrQQFdRaYYmpAxSB5dDwqozbH8//3HNTD+ 8ROKYWwgDZJH14MCitJs/2cl2ePEIHl0PaOAQgAAf2WC/D0GsQEAAAAASUVORK5C YII=" xlink:type="simple" xlink:actuate="onLoad" height="16" preserveAspectRatio="none" xlink:show="embed"/> - <text x="459" xml:space="preserve" y="679" clip-path="url(#clipPath91)" stroke="none">customerName : EString</text> - <line y2="666" fill="none" x1="436" clip-path="url(#clipPath92)" x2="635" y1="666"/> - <line y2="305" fill="none" x1="690" clip-path="url(#clipPath93)" x2="436" y1="305"/> - <text x="515" xml:space="preserve" y="291" clip-path="url(#clipPath94)" font-weight="bold" stroke="none">[1..1] source</text> - <line y2="305" fill="none" x1="443" clip-path="url(#clipPath95)" x2="436" y1="302"/> - <line y2="308" fill="none" x1="436" clip-path="url(#clipPath95)" x2="443" y1="305"/> - <line y2="333" fill="none" x1="690" clip-path="url(#clipPath93)" x2="436" y1="333"/> - <text x="515" xml:space="preserve" y="351" clip-path="url(#clipPath96)" font-weight="bold" stroke="none">[1..1] target</text> - <line y2="333" fill="none" x1="443" clip-path="url(#clipPath97)" x2="436" y1="330"/> - <line y2="336" fill="none" x1="436" clip-path="url(#clipPath97)" x2="443" y1="333"/> - <line y2="235" fill="none" x1="630" clip-path="url(#clipPath93)" x2="630" y1="181"/> - <line y2="235" fill="none" x1="630" clip-path="url(#clipPath93)" x2="795" y1="235"/> - <line y2="285" fill="none" x1="795" clip-path="url(#clipPath93)" x2="795" y1="235"/> - <text x="686" xml:space="preserve" y="221" clip-path="url(#clipPath98)" stroke="none">[0..*] roadnetworks</text> - <polygon points=" 630 181 633 187 630 193 627 187" clip-path="url(#clipPath99)" stroke="none"/> - <polygon fill="none" points=" 630 181 633 187 630 193 627 187" clip-path="url(#clipPath99)"/> - <line y2="285" fill="none" x1="792" clip-path="url(#clipPath100)" x2="795" y1="278"/> - <line y2="278" fill="none" x1="795" clip-path="url(#clipPath100)" x2="798" y1="285"/> - <line y2="235" fill="none" x1="520" clip-path="url(#clipPath93)" x2="520" y1="181"/> - <line y2="235" fill="none" x1="520" clip-path="url(#clipPath93)" x2="375" y1="235"/> - <line y2="290" fill="none" x1="375" clip-path="url(#clipPath93)" x2="375" y1="235"/> - <text x="386" xml:space="preserve" y="221" clip-path="url(#clipPath101)" stroke="none">[0..*] locations</text> - <polygon points=" 520 181 523 187 520 193 517 187" clip-path="url(#clipPath102)" stroke="none"/> - <polygon fill="none" points=" 520 181 523 187 520 193 517 187" clip-path="url(#clipPath102)"/> - <line y2="290" fill="none" x1="372" clip-path="url(#clipPath103)" x2="375" y1="283"/> - <line y2="283" fill="none" x1="375" clip-path="url(#clipPath103)" x2="378" y1="290"/> - <line y2="420" fill="none" x1="821" clip-path="url(#clipPath93)" x2="821" y1="366"/> - <text x="827" xml:space="preserve" y="401" clip-path="url(#clipPath104)" stroke="none">[0..*] roads</text> - <polygon points=" 821 366 824 372 821 378 818 372" clip-path="url(#clipPath105)" stroke="none"/> - <polygon fill="none" points=" 821 366 824 372 821 378 818 372" clip-path="url(#clipPath105)"/> - <line y2="420" fill="none" x1="818" clip-path="url(#clipPath106)" x2="821" y1="413"/> - <line y2="413" fill="none" x1="821" clip-path="url(#clipPath106)" x2="824" y1="420"/> - <line clip-path="url(#clipPath93)" fill="none" x1="577" x2="577" y1="120" y2="89" stroke="rgb(136,136,136)"/> - <line clip-path="url(#clipPath93)" fill="none" x1="577" x2="879" y1="89" y2="89" stroke="rgb(136,136,136)"/> - <line clip-path="url(#clipPath93)" fill="none" x1="879" x2="879" y1="89" y2="71" stroke="rgb(136,136,136)"/> - <polygon fill="white" clip-path="url(#clipPath107)" points=" 879 71 883 79 875 79" stroke="none"/> - <polygon fill="none" clip-path="url(#clipPath107)" points=" 879 71 883 79 875 79" stroke="rgb(136,136,136)"/> - <line clip-path="url(#clipPath93)" fill="none" x1="890" x2="890" y1="285" y2="89" stroke="rgb(136,136,136)"/> - <line clip-path="url(#clipPath93)" fill="none" x1="890" x2="879" y1="89" y2="89" stroke="rgb(136,136,136)"/> - <line clip-path="url(#clipPath93)" fill="none" x1="879" x2="879" y1="89" y2="71" stroke="rgb(136,136,136)"/> - <polygon fill="white" clip-path="url(#clipPath107)" points=" 879 71 883 79 875 79" stroke="none"/> - <polygon fill="none" clip-path="url(#clipPath107)" points=" 879 71 883 79 875 79" stroke="rgb(136,136,136)"/> - <line clip-path="url(#clipPath93)" fill="none" x1="978" x2="978" y1="420" y2="89" stroke="rgb(136,136,136)"/> - <line clip-path="url(#clipPath93)" fill="none" x1="978" x2="879" y1="89" y2="89" stroke="rgb(136,136,136)"/> - <line clip-path="url(#clipPath93)" fill="none" x1="879" x2="879" y1="89" y2="71" stroke="rgb(136,136,136)"/> - <polygon fill="white" clip-path="url(#clipPath107)" points=" 879 71 883 79 875 79" stroke="none"/> - <polygon fill="none" clip-path="url(#clipPath107)" points=" 879 71 883 79 875 79" stroke="rgb(136,136,136)"/> - <line y2="410" fill="none" x1="375" clip-path="url(#clipPath93)" x2="375" y1="351"/> - <text x="386" xml:space="preserve" y="381" clip-path="url(#clipPath108)" stroke="none">[0..*] pois</text> - <polygon points=" 375 351 378 357 375 363 372 357" clip-path="url(#clipPath109)" stroke="none"/> - <polygon fill="none" points=" 375 351 378 357 375 363 372 357" clip-path="url(#clipPath109)"/> - <line y2="410" fill="none" x1="372" clip-path="url(#clipPath110)" x2="375" y1="403"/> - <line y2="403" fill="none" x1="375" clip-path="url(#clipPath110)" x2="378" y1="410"/> - <line clip-path="url(#clipPath93)" fill="none" x1="315" x2="315" y1="290" y2="89" stroke="rgb(136,136,136)"/> - <line clip-path="url(#clipPath93)" fill="none" x1="315" x2="314" y1="89" y2="89" stroke="rgb(136,136,136)"/> - <line clip-path="url(#clipPath93)" fill="none" x1="314" x2="314" y1="89" y2="71" stroke="rgb(136,136,136)"/> - <polygon fill="white" clip-path="url(#clipPath111)" points=" 314 71 318 79 310 79" stroke="none"/> - <polygon fill="none" clip-path="url(#clipPath111)" points=" 314 71 318 79 310 79" stroke="rgb(136,136,136)"/> - <line clip-path="url(#clipPath93)" fill="none" x1="280" x2="280" y1="410" y2="89" stroke="rgb(136,136,136)"/> - <line clip-path="url(#clipPath93)" fill="none" x1="280" x2="314" y1="89" y2="89" stroke="rgb(136,136,136)"/> - <line clip-path="url(#clipPath93)" fill="none" x1="314" x2="314" y1="89" y2="71" stroke="rgb(136,136,136)"/> - <polygon fill="white" clip-path="url(#clipPath111)" points=" 314 71 318 79 310 79" stroke="none"/> - <polygon fill="none" clip-path="url(#clipPath111)" points=" 314 71 318 79 310 79" stroke="rgb(136,136,136)"/> - <line clip-path="url(#clipPath93)" fill="none" x1="565" x2="565" y1="535" y2="484" stroke="rgb(136,136,136)"/> - <line clip-path="url(#clipPath93)" fill="none" x1="565" x2="344" y1="484" y2="484" stroke="rgb(136,136,136)"/> - <line clip-path="url(#clipPath93)" fill="none" x1="344" x2="344" y1="484" y2="466" stroke="rgb(136,136,136)"/> - <polygon fill="white" clip-path="url(#clipPath112)" points=" 344 466 348 474 340 474" stroke="none"/> - <polygon fill="none" clip-path="url(#clipPath112)" points=" 344 466 348 474 340 474" stroke="rgb(136,136,136)"/> - <line clip-path="url(#clipPath93)" fill="none" x1="422" x2="422" y1="535" y2="484" stroke="rgb(136,136,136)"/> - <line clip-path="url(#clipPath93)" fill="none" x1="422" x2="344" y1="484" y2="484" stroke="rgb(136,136,136)"/> - <line clip-path="url(#clipPath93)" fill="none" x1="344" x2="344" y1="484" y2="466" stroke="rgb(136,136,136)"/> - <polygon fill="white" clip-path="url(#clipPath112)" points=" 344 466 348 474 340 474" stroke="none"/> - <polygon fill="none" clip-path="url(#clipPath112)" points=" 344 466 348 474 340 474" stroke="rgb(136,136,136)"/> - <line clip-path="url(#clipPath93)" fill="none" x1="246" x2="246" y1="535" y2="484" stroke="rgb(136,136,136)"/> - <line clip-path="url(#clipPath93)" fill="none" x1="246" x2="344" y1="484" y2="484" stroke="rgb(136,136,136)"/> - <line clip-path="url(#clipPath93)" fill="none" x1="344" x2="344" y1="484" y2="466" stroke="rgb(136,136,136)"/> - <polygon fill="white" clip-path="url(#clipPath112)" points=" 344 466 348 474 340 474" stroke="none"/> - <polygon fill="none" clip-path="url(#clipPath112)" points=" 344 466 348 474 340 474" stroke="rgb(136,136,136)"/> - <line clip-path="url(#clipPath93)" fill="none" x1="69" x2="69" y1="535" y2="484" stroke="rgb(136,136,136)"/> - <line clip-path="url(#clipPath93)" fill="none" x1="69" x2="344" y1="484" y2="484" stroke="rgb(136,136,136)"/> - <line clip-path="url(#clipPath93)" fill="none" x1="344" x2="344" y1="484" y2="466" stroke="rgb(136,136,136)"/> - <polygon fill="white" clip-path="url(#clipPath112)" points=" 344 466 348 474 340 474" stroke="none"/> - <polygon fill="none" clip-path="url(#clipPath112)" points=" 344 466 348 474 340 474" stroke="rgb(136,136,136)"/> - <line clip-path="url(#clipPath93)" fill="none" x1="515" x2="515" y1="635" y2="614" stroke="rgb(136,136,136)"/> - <line clip-path="url(#clipPath93)" fill="none" x1="515" x2="420" y1="614" y2="614" stroke="rgb(136,136,136)"/> - <line clip-path="url(#clipPath93)" fill="none" x1="420" x2="420" y1="614" y2="596" stroke="rgb(136,136,136)"/> - <polygon fill="white" clip-path="url(#clipPath113)" points=" 420 596 424 604 416 604" stroke="none"/> - <polygon fill="none" clip-path="url(#clipPath113)" points=" 420 596 424 604 416 604" stroke="rgb(136,136,136)"/> - <line clip-path="url(#clipPath93)" fill="none" x1="275" x2="275" y1="635" y2="614" stroke="rgb(136,136,136)"/> - <line clip-path="url(#clipPath93)" fill="none" x1="275" x2="420" y1="614" y2="614" stroke="rgb(136,136,136)"/> - <line clip-path="url(#clipPath93)" fill="none" x1="420" x2="420" y1="614" y2="596" stroke="rgb(136,136,136)"/> - <polygon fill="white" clip-path="url(#clipPath113)" points=" 420 596 424 604 416 604" stroke="none"/> - <polygon fill="none" clip-path="url(#clipPath113)" points=" 420 596 424 604 416 604" stroke="rgb(136,136,136)"/> + <rect x="528" y="120" clip-path="url(#clipPath2)" fill="none" width="240" rx="4" ry="4" height="60"/> + <image x="572" y="125" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAsklEQVR4XqWQ0QoB QRSG941sEhJ5F1HaViRCpKwoN25cUFI8khuvYvbq8IuaOuaftr34mmm+ztdpAhEJ 8qAesqIeLouC+PAGTHp34g2c56EasoGngeM0lKd5fDDpl9/9fcLTwGFSlNsplqsD eBrYj0tqbRt4GtgNy2rIBp4G1v0K/QN4GljGVUm2K0k2/4GngVlUU2vbwNPAqFtX QzbwNDDoNOgfwNNAr92UqOUGngay8gIKdwdeFkAbDAAAAABJRU5ErkJggg==" xlink:type="simple" xlink:actuate="onLoad" height="16" preserveAspectRatio="none" xlink:show="embed"/> + <text x="591" xml:space="preserve" y="136" clip-path="url(#clipPath4)" stroke="none">TransportationNetwork</text> + <line y2="147" fill="none" x1="529" clip-path="url(#clipPath5)" x2="768" y1="147"/> + <rect x="374" y="291" clip-path="url(#clipPath6)" fill="rgb(131,122,133)" width="141" rx="4" opacity="0.255" ry="4" height="61" stroke="none"/> + <rect x="375" y="292" clip-path="url(#clipPath6)" fill="rgb(131,122,133)" width="141" rx="4" opacity="0.255" ry="4" height="61" stroke="none"/> + <rect x="373" y="290" clip-path="url(#clipPath7)" fill="url(#linearGradient2)" width="141" rx="4" ry="4" height="61" stroke="none"/> + <rect x="373" y="290" clip-path="url(#clipPath7)" fill="none" width="140" rx="4" ry="4" height="60"/> + <image x="409" y="295" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAsklEQVR4XqWQ0QoB QRSG941sEhJ5F1HaViRCpKwoN25cUFI8khuvYvbq8IuaOuaftr34mmm+ztdpAhEJ 8qAesqIeLouC+PAGTHp34g2c56EasoGngeM0lKd5fDDpl9/9fcLTwGFSlNsplqsD eBrYj0tqbRt4GtgNy2rIBp4G1v0K/QN4GljGVUm2K0k2/4GngVlUU2vbwNPAqFtX QzbwNDDoNOgfwNNAr92UqOUGngay8gIKdwdeFkAbDAAAAABJRU5ErkJggg==" xlink:type="simple" xlink:actuate="onLoad" height="16" preserveAspectRatio="none" xlink:show="embed"/> + <text x="428" xml:space="preserve" y="306" clip-path="url(#clipPath9)" stroke="none">Location</text> + <line y2="317" fill="none" x1="374" clip-path="url(#clipPath10)" x2="513" y1="317"/> + <rect x="769" y="286" clip-path="url(#clipPath11)" fill="rgb(131,122,133)" width="261" rx="4" opacity="0.255" ry="4" height="81" stroke="none"/> + <rect x="770" y="287" clip-path="url(#clipPath11)" fill="rgb(131,122,133)" width="261" rx="4" opacity="0.255" ry="4" height="81" stroke="none"/> + <rect x="768" y="285" clip-path="url(#clipPath12)" fill="url(#linearGradient3)" width="261" rx="4" ry="4" height="81" stroke="none"/> + <rect x="768" y="285" clip-path="url(#clipPath12)" fill="none" width="260" rx="4" ry="4" height="80"/> + <image x="849" y="290" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAsklEQVR4XqWQ0QoB QRSG941sEhJ5F1HaViRCpKwoN25cUFI8khuvYvbq8IuaOuaftr34mmm+ztdpAhEJ 8qAesqIeLouC+PAGTHp34g2c56EasoGngeM0lKd5fDDpl9/9fcLTwGFSlNsplqsD eBrYj0tqbRt4GtgNy2rIBp4G1v0K/QN4GljGVUm2K0k2/4GngVlUU2vbwNPAqFtX QzbwNDDoNOgfwNNAr92UqOUGngay8gIKdwdeFkAbDAAAAABJRU5ErkJggg==" xlink:type="simple" xlink:actuate="onLoad" height="16" preserveAspectRatio="none" xlink:show="embed"/> + <text x="868" xml:space="preserve" y="301" clip-path="url(#clipPath14)" stroke="none">RoadNetwork</text> + <image x="773" y="314" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAa0lEQVR4XmNgGAUY YG6N/n9CGF0PCphaYfj/x8+LODFIHl0PCugqMsXQhIxB8uh6UEBtjuX/7z+ugfGP n1AMYwNpkDy6HhRQlGb7PyvJHicGyaProS2QtC8j30aQZooMAIGBNQDmBYoMIQQA VHKRZGFCvOoAAAAASUVORK5CYII=" xlink:type="simple" xlink:actuate="onLoad" height="16" preserveAspectRatio="none" xlink:show="embed" font-weight="bold"/> + <text x="792" xml:space="preserve" y="325" clip-path="url(#clipPath16)" font-weight="bold" stroke="none">isDirected : EBoolean = false</text> + <image x="773" y="331" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAWUlEQVR4XmNgGAWD EMyt0f9PCKPrQQFTKwz///h5EScGyaPrQQFdRaYYmpAxSB5dDwqozbH8//3HNTD+ 8ROKYWwgDZJH14MCitJs/2cl2ePEIHl0PaOAQgAAf2WC/D0GsQEAAAAASUVORK5C YII=" xlink:type="simple" xlink:actuate="onLoad" height="16" preserveAspectRatio="none" xlink:show="embed"/> + <text x="792" xml:space="preserve" y="342" clip-path="url(#clipPath18)" stroke="none">length : EDouble = -1.0</text> + <line y2="312" fill="none" x1="769" clip-path="url(#clipPath19)" x2="1028" y1="312"/> + <rect x="769" y="421" clip-path="url(#clipPath20)" fill="rgb(131,122,133)" width="306" rx="4" opacity="0.255" ry="4" height="61" stroke="none"/> + <rect x="770" y="422" clip-path="url(#clipPath20)" fill="rgb(131,122,133)" width="306" rx="4" opacity="0.255" ry="4" height="61" stroke="none"/> + <rect x="768" y="420" clip-path="url(#clipPath21)" fill="url(#linearGradient4)" width="306" rx="4" ry="4" height="61" stroke="none"/> + <rect x="768" y="420" clip-path="url(#clipPath21)" fill="none" width="305" rx="4" ry="4" height="60"/> + <image x="896" y="425" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAsklEQVR4XqWQ0QoB QRSG941sEhJ5F1HaViRCpKwoN25cUFI8khuvYvbq8IuaOuaftr34mmm+ztdpAhEJ 8qAesqIeLouC+PAGTHp34g2c56EasoGngeM0lKd5fDDpl9/9fcLTwGFSlNsplqsD eBrYj0tqbRt4GtgNy2rIBp4G1v0K/QN4GljGVUm2K0k2/4GngVlUU2vbwNPAqFtX QzbwNDDoNOgfwNNAr92UqOUGngay8gIKdwdeFkAbDAAAAABJRU5ErkJggg==" xlink:type="simple" xlink:actuate="onLoad" height="16" preserveAspectRatio="none" xlink:show="embed"/> + <text x="915" xml:space="preserve" y="436" clip-path="url(#clipPath23)" stroke="none">Road</text> + <image x="773" y="449" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAWUlEQVR4XmNgGAWD EMyt0f9PCKPrQQFTKwz///h5EScGyaPrQQFdRaYYmpAxSB5dDwqozbH8//3HNTD+ 8ROKYWwgDZJH14MCitJs/2cl2ePEIHl0PaOAQgAAf2WC/D0GsQEAAAAASUVORK5C YII=" xlink:type="simple" xlink:actuate="onLoad" height="16" preserveAspectRatio="none" xlink:show="embed"/> + <text x="792" xml:space="preserve" y="460" clip-path="url(#clipPath25)" stroke="none">length : EDouble = 0.0</text> + <line y2="447" fill="none" x1="769" clip-path="url(#clipPath26)" x2="1073" y1="447"/> + <rect x="839" y="11" clip-path="url(#clipPath27)" fill="rgb(131,122,133)" width="236" rx="4" opacity="0.255" ry="4" height="61" stroke="none"/> + <rect x="840" y="12" clip-path="url(#clipPath27)" fill="rgb(131,122,133)" width="236" rx="4" opacity="0.255" ry="4" height="61" stroke="none"/> + <rect x="838" y="10" clip-path="url(#clipPath28)" fill="url(#linearGradient5)" width="236" rx="4" ry="4" height="61" stroke="none"/> + <rect x="838" y="10" clip-path="url(#clipPath28)" fill="none" width="235" rx="4" ry="4" height="60" stroke="rgb(125,125,125)"/> + <image stroke="rgb(125,125,125)" width="16" xlink:show="embed" xlink:type="simple" fill="rgb(125,125,125)" preserveAspectRatio="none" height="16" font-style="italic" x="895" y="15" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAw0lEQVR4XmP4//8/ AyUYQgApZIyuCB8Ga0YHILG5Nfo4MUgJDMMNQLIdTP/4eRErxmkAMsBnwOxqA7AS GMbpgu8/rgE1QDGMDaSnV2AxAKoRJgDmL5iRgxVPLjdCNQCZA8J9pSYYzkbGIHm8 BnQWmWFoQsYgebwGNOebg/2PKwxA8ngNqMux+N/U1vi/qRU7BsnjNaAyywrD2cgY JI/XgJIMGwxNyBgkj9eAglRbvGEAksdrQG6K/f+sJNwYJI/XAFIxAHIn7dCPjVWK AAAAAElFTkSuQmCC" xlink:actuate="onLoad"/> + <text font-style="italic" x="914" xml:space="preserve" y="26" clip-path="url(#clipPath30)" stroke="none">IdentifiableElement</text> + <image x="843" y="39" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAa0lEQVR4XmNgGAUY YG6N/n9CGF0PCphaYfj/x8+LODFIHl0PCugqMsXQhIxB8uh6UEBtjuX/7z+ugfGP n1AMYwNpkDy6HhRQlGb7PyvJHicGyaProS2QtC8j30aQZooMAIGBNQDmBYoMIQQA VHKRZGFCvOoAAAAASUVORK5CYII=" xlink:type="simple" xlink:actuate="onLoad" height="16" preserveAspectRatio="none" xlink:show="embed" font-weight="bold"/> + <text x="862" xml:space="preserve" y="50" clip-path="url(#clipPath32)" font-weight="bold" stroke="none">identifier : EString</text> + <line clip-path="url(#clipPath33)" fill="none" x1="839" x2="1073" y1="37" y2="37" stroke="rgb(125,125,125)"/> + <rect x="329" y="411" clip-path="url(#clipPath34)" fill="rgb(131,122,133)" width="186" rx="4" opacity="0.255" ry="4" height="56" stroke="none"/> + <rect x="330" y="412" clip-path="url(#clipPath34)" fill="rgb(131,122,133)" width="186" rx="4" opacity="0.255" ry="4" height="56" stroke="none"/> + <rect x="328" y="410" clip-path="url(#clipPath35)" fill="url(#linearGradient6)" width="186" rx="4" ry="4" height="56" stroke="none"/> + <rect x="328" y="410" clip-path="url(#clipPath35)" fill="none" width="185" rx="4" ry="4" height="55" stroke="rgb(125,125,125)"/> + <image stroke="rgb(125,125,125)" width="16" xlink:show="embed" xlink:type="simple" fill="rgb(125,125,125)" preserveAspectRatio="none" height="16" font-style="italic" x="370" y="415" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAw0lEQVR4XmP4//8/ AyUYQgApZIyuCB8Ga0YHILG5Nfo4MUgJDMMNQLIdTP/4eRErxmkAMsBnwOxqA7AS GMbpgu8/rgE1QDGMDaSnV2AxAKoRJgDmL5iRgxVPLjdCNQCZA8J9pSYYzkbGIHm8 BnQWmWFoQsYgebwGNOebg/2PKwxA8ngNqMux+N/U1vi/qRU7BsnjNaAyywrD2cgY JI/XgJIMGwxNyBgkj9eAglRbvGEAksdrQG6K/f+sJNwYJI/XAFIxAHIn7dCPjVWK AAAAAElFTkSuQmCC" xlink:actuate="onLoad"/> + <text font-style="italic" x="389" xml:space="preserve" y="426" clip-path="url(#clipPath37)" stroke="none">PointOfInterest</text> + <line clip-path="url(#clipPath38)" fill="none" x1="329" x2="513" y1="437" y2="437" stroke="rgb(125,125,125)"/> + <rect x="294" y="11" clip-path="url(#clipPath39)" fill="rgb(131,122,133)" width="196" rx="4" opacity="0.255" ry="4" height="61" stroke="none"/> + <rect x="295" y="12" clip-path="url(#clipPath39)" fill="rgb(131,122,133)" width="196" rx="4" opacity="0.255" ry="4" height="61" stroke="none"/> + <rect x="293" y="10" clip-path="url(#clipPath40)" fill="url(#linearGradient7)" width="196" rx="4" ry="4" height="61" stroke="none"/> + <rect x="293" y="10" clip-path="url(#clipPath40)" fill="none" width="195" rx="4" ry="4" height="60" stroke="rgb(125,125,125)"/> + <image stroke="rgb(125,125,125)" width="16" xlink:show="embed" xlink:type="simple" fill="rgb(125,125,125)" preserveAspectRatio="none" height="16" font-style="italic" x="339" y="15" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAw0lEQVR4XmP4//8/ AyUYQgApZIyuCB8Ga0YHILG5Nfo4MUgJDMMNQLIdTP/4eRErxmkAMsBnwOxqA7AS GMbpgu8/rgE1QDGMDaSnV2AxAKoRJgDmL5iRgxVPLjdCNQCZA8J9pSYYzkbGIHm8 BnQWmWFoQsYgebwGNOebg/2PKwxA8ngNqMux+N/U1vi/qRU7BsnjNaAyywrD2cgY JI/XgJIMGwxNyBgkj9eAglRbvGEAksdrQG6K/f+sJNwYJI/XAFIxAHIn7dCPjVWK AAAAAElFTkSuQmCC" xlink:actuate="onLoad"/> + <text font-style="italic" x="358" xml:space="preserve" y="26" clip-path="url(#clipPath42)" stroke="none">NamedElement</text> + <image x="298" y="39" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAWUlEQVR4XmNgGAWD EMyt0f9PCKPrQQFTKwz///h5EScGyaPrQQFdRaYYmpAxSB5dDwqozbH8//3HNTD+ 8ROKYWwgDZJH14MCitJs/2cl2ePEIHl0PaOAQgAAf2WC/D0GsQEAAAAASUVORK5C YII=" xlink:type="simple" xlink:actuate="onLoad" height="16" preserveAspectRatio="none" xlink:show="embed"/> + <text x="317" xml:space="preserve" y="50" clip-path="url(#clipPath44)" stroke="none">name : EString</text> + <line clip-path="url(#clipPath45)" fill="none" x1="294" x2="488" y1="37" y2="37" stroke="rgb(125,125,125)"/> + <rect x="89" y="536" clip-path="url(#clipPath46)" fill="rgb(131,122,133)" width="118" rx="4" opacity="0.255" ry="4" height="61" stroke="none"/> + <rect x="90" y="537" clip-path="url(#clipPath46)" fill="rgb(131,122,133)" width="118" rx="4" opacity="0.255" ry="4" height="61" stroke="none"/> + <rect x="88" y="535" clip-path="url(#clipPath47)" fill="url(#linearGradient8)" width="118" rx="4" ry="4" height="61" stroke="none"/> + <rect x="88" y="535" clip-path="url(#clipPath47)" fill="none" width="117" rx="4" ry="4" height="60"/> + <image x="111" y="540" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAsklEQVR4XqWQ0QoB QRSG941sEhJ5F1HaViRCpKwoN25cUFI8khuvYvbq8IuaOuaftr34mmm+ztdpAhEJ 8qAesqIeLouC+PAGTHp34g2c56EasoGngeM0lKd5fDDpl9/9fcLTwGFSlNsplqsD eBrYj0tqbRt4GtgNy2rIBp4G1v0K/QN4GljGVUm2K0k2/4GngVlUU2vbwNPAqFtX QzbwNDDoNOgfwNNAr92UqOUGngay8gIKdwdeFkAbDAAAAABJRU5ErkJggg==" xlink:type="simple" xlink:actuate="onLoad" height="16" preserveAspectRatio="none" xlink:show="embed"/> + <text x="130" xml:space="preserve" y="551" clip-path="url(#clipPath49)" stroke="none">RestStop</text> + <line y2="562" fill="none" x1="89" clip-path="url(#clipPath50)" x2="205" y1="562"/> + <rect x="229" y="536" clip-path="url(#clipPath51)" fill="rgb(131,122,133)" width="186" rx="4" opacity="0.255" ry="4" height="61" stroke="none"/> + <rect x="230" y="537" clip-path="url(#clipPath51)" fill="rgb(131,122,133)" width="186" rx="4" opacity="0.255" ry="4" height="61" stroke="none"/> + <rect x="228" y="535" clip-path="url(#clipPath52)" fill="url(#linearGradient9)" width="186" rx="4" ry="4" height="61" stroke="none"/> + <rect x="228" y="535" clip-path="url(#clipPath52)" fill="none" width="185" rx="4" ry="4" height="60"/> + <image x="280" y="540" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAsklEQVR4XqWQ0QoB QRSG941sEhJ5F1HaViRCpKwoN25cUFI8khuvYvbq8IuaOuaftr34mmm+ztdpAhEJ 8qAesqIeLouC+PAGTHp34g2c56EasoGngeM0lKd5fDDpl9/9fcLTwGFSlNsplqsD eBrYj0tqbRt4GtgNy2rIBp4G1v0K/QN4GljGVUm2K0k2/4GngVlUU2vbwNPAqFtX QzbwNDDoNOgfwNNAr92UqOUGngay8gIKdwdeFkAbDAAAAABJRU5ErkJggg==" xlink:type="simple" xlink:actuate="onLoad" height="16" preserveAspectRatio="none" xlink:show="embed"/> + <text x="299" xml:space="preserve" y="551" clip-path="url(#clipPath54)" stroke="none">GasStation</text> + <image x="233" y="564" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAiUlEQVR4XmNgGAUY YG6N/n9CGF0PCphaYfj/x8+LODFIHl0PCugqMsXQhIxB8uh6UEBtjuX/7z+ugfGP n1AMYwNpkDy6HhRQlGb7PyvJHicGyaProQ6QtC/DazJI/uiNz2CMoRYkgCGIBmAa YQahy+N1AUwjOsZQhCKABvC6AN1UdBrGxhkGlAAAZIvKrFQ33O0AAAAASUVORK5C YII=" xlink:type="simple" xlink:actuate="onLoad" height="16" preserveAspectRatio="none" xlink:show="embed" font-weight="bold"/> + <text x="252" xml:space="preserve" y="575" clip-path="url(#clipPath56)" font-weight="bold" stroke="none">fueltypes : FuelType</text> + <line y2="562" fill="none" x1="229" clip-path="url(#clipPath57)" x2="413" y1="562"/> + <rect x="829" y="521" clip-path="url(#clipPath58)" fill="rgb(131,122,133)" width="126" rx="0" opacity="0.255" ry="0" height="106" stroke="none"/> + <rect x="830" y="522" clip-path="url(#clipPath58)" fill="rgb(131,122,133)" width="126" rx="0" opacity="0.255" ry="0" height="106" stroke="none"/> + <rect x="828" y="520" clip-path="url(#clipPath59)" fill="url(#linearGradient10)" width="126" rx="0" ry="0" height="106" stroke="none"/> + <rect x="828" y="520" clip-path="url(#clipPath59)" fill="none" width="125" rx="0" ry="0" height="105" stroke="rgb(125,125,125)"/> + <image stroke="rgb(125,125,125)" width="16" xlink:show="embed" xlink:type="simple" fill="rgb(125,125,125)" preserveAspectRatio="none" height="16" x="856" y="525" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAe0lEQVR4XmP4//8/ AyUYQ4BUjCFAKsYQAOHSthP/tczT/yOLgfggcXS1eDXD2DCN2AzBqRmmAYaRxZAN oa4LYHjTngdYwwAkjq4WQzOpGEMAhLOS7P+DcGGa7f/aHMv/XUWm/6dWGP6fW6P/ H10thmZSMYYACI+6gDQMAIBP1wRewdGqAAAAAElFTkSuQmCC" xlink:actuate="onLoad"/> + <text x="875" xml:space="preserve" y="536" clip-path="url(#clipPath61)" stroke="none">FuelType</text> + <image x="833" y="549" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAYklEQVR4XqXMIQ6A MBBE0d6IICpIINylAgEYUAh6ATySsw6phK8GxDM/uxMkhT8QXAguBBeCC8GF4EIo xtSrWIZWeWp0rFHnVuvaK71v8fwc6JTnDwMOBBeCC8GF4EJwIbhulQfxP3tA33YAAAAASUVORK5CYII=" xlink:type="simple" xlink:actuate="onLoad" height="16" preserveAspectRatio="none" xlink:show="embed"/> + <text x="852" xml:space="preserve" y="560" clip-path="url(#clipPath63)" stroke="none">PETROL</text> + <image x="833" y="566" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAYklEQVR4XqXMIQ6A MBBE0d6IICpIINylAgEYUAh6ATySsw6phK8GxDM/uxMkhT8QXAguBBeCC8GF4EIo xtSrWIZWeWp0rFHnVuvaK71v8fwc6JTnDwMOBBeCC8GF4EJwIbhulQfxP3tA33YAAAAASUVORK5CYII=" xlink:type="simple" xlink:actuate="onLoad" height="16" preserveAspectRatio="none" xlink:show="embed"/> + <text x="852" xml:space="preserve" y="577" clip-path="url(#clipPath65)" stroke="none">DIESEL</text> + <image x="833" y="583" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAYklEQVR4XqXMIQ6A MBBE0d6IICpIINylAgEYUAh6ATySsw6phK8GxDM/uxMkhT8QXAguBBeCC8GF4EIo xtSrWIZWeWp0rFHnVuvaK71v8fwc6JTnDwMOBBeCC8GF4EJwIbhulQfxP3tA33YAAAAASUVORK5CYII=" xlink:type="simple" xlink:actuate="onLoad" height="16" preserveAspectRatio="none" xlink:show="embed"/> + <text x="852" xml:space="preserve" y="594" clip-path="url(#clipPath67)" stroke="none">ELECTRICITY</text> + <line clip-path="url(#clipPath68)" fill="none" x1="829" x2="953" y1="547" y2="547" stroke="rgb(125,125,125)"/> + <rect x="439" y="536" clip-path="url(#clipPath69)" fill="rgb(131,122,133)" width="118" rx="4" opacity="0.255" ry="4" height="61" stroke="none"/> + <rect x="440" y="537" clip-path="url(#clipPath69)" fill="rgb(131,122,133)" width="118" rx="4" opacity="0.255" ry="4" height="61" stroke="none"/> + <rect x="438" y="535" clip-path="url(#clipPath70)" fill="url(#linearGradient11)" width="118" rx="4" ry="4" height="61" stroke="none"/> + <rect x="438" y="535" clip-path="url(#clipPath70)" fill="none" width="117" rx="4" ry="4" height="60" stroke="rgb(125,125,125)"/> + <image stroke="rgb(125,125,125)" width="16" xlink:show="embed" xlink:type="simple" fill="rgb(125,125,125)" preserveAspectRatio="none" height="16" font-style="italic" x="456" y="540" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAw0lEQVR4XmP4//8/ AyUYQgApZIyuCB8Ga0YHILG5Nfo4MUgJDMMNQLIdTP/4eRErxmkAMsBnwOxqA7AS GMbpgu8/rgE1QDGMDaSnV2AxAKoRJgDmL5iRgxVPLjdCNQCZA8J9pSYYzkbGIHm8 BnQWmWFoQsYgebwGNOebg/2PKwxA8ngNqMux+N/U1vi/qRU7BsnjNaAyywrD2cgY JI/XgJIMGwxNyBgkj9eAglRbvGEAksdrQG6K/f+sJNwYJI/XAFIxAHIn7dCPjVWK AAAAAElFTkSuQmCC" xlink:actuate="onLoad"/> + <text font-style="italic" x="475" xml:space="preserve" y="551" clip-path="url(#clipPath72)" stroke="none">Warehouse</text> + <line clip-path="url(#clipPath73)" fill="none" x1="439" x2="555" y1="562" y2="562" stroke="rgb(125,125,125)"/> + <rect x="579" y="536" clip-path="url(#clipPath74)" fill="rgb(131,122,133)" width="141" rx="4" opacity="0.255" ry="4" height="61" stroke="none"/> + <rect x="580" y="537" clip-path="url(#clipPath74)" fill="rgb(131,122,133)" width="141" rx="4" opacity="0.255" ry="4" height="61" stroke="none"/> + <rect x="578" y="535" clip-path="url(#clipPath75)" fill="url(#linearGradient12)" width="141" rx="4" ry="4" height="61" stroke="none"/> + <rect x="578" y="535" clip-path="url(#clipPath75)" fill="none" width="140" rx="4" ry="4" height="60"/> + <image x="622" y="540" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAsklEQVR4XqWQ0QoB QRSG941sEhJ5F1HaViRCpKwoN25cUFI8khuvYvbq8IuaOuaftr34mmm+ztdpAhEJ 8qAesqIeLouC+PAGTHp34g2c56EasoGngeM0lKd5fDDpl9/9fcLTwGFSlNsplqsD eBrYj0tqbRt4GtgNy2rIBp4G1v0K/QN4GljGVUm2K0k2/4GngVlUU2vbwNPAqFtX QzbwNDDoNOgfwNNAr92UqOUGngay8gIKdwdeFkAbDAAAAABJRU5ErkJggg==" xlink:type="simple" xlink:actuate="onLoad" height="16" preserveAspectRatio="none" xlink:show="embed"/> + <text x="641" xml:space="preserve" y="551" clip-path="url(#clipPath77)" stroke="none">Other</text> + <image x="583" y="564" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAWUlEQVR4XmNgGAWD EMyt0f9PCKPrQQFTKwz///h5EScGyaPrQQFdRaYYmpAxSB5dDwqozbH8//3HNTD+ 8ROKYWwgDZJH14MCitJs/2cl2ePEIHl0PaOAQgAAf2WC/D0GsQEAAAAASUVORK5C YII=" xlink:type="simple" xlink:actuate="onLoad" height="16" preserveAspectRatio="none" xlink:show="embed"/> + <text x="602" xml:space="preserve" y="575" clip-path="url(#clipPath79)" stroke="none">type : EString</text> + <line y2="562" fill="none" x1="579" clip-path="url(#clipPath80)" x2="718" y1="562"/> + <rect x="299" y="636" clip-path="url(#clipPath81)" fill="rgb(131,122,133)" width="196" rx="4" opacity="0.255" ry="4" height="61" stroke="none"/> + <rect x="300" y="637" clip-path="url(#clipPath81)" fill="rgb(131,122,133)" width="196" rx="4" opacity="0.255" ry="4" height="61" stroke="none"/> + <rect x="298" y="635" clip-path="url(#clipPath82)" fill="url(#linearGradient13)" width="196" rx="4" ry="4" height="61" stroke="none"/> + <rect x="298" y="635" clip-path="url(#clipPath82)" fill="none" width="195" rx="4" ry="4" height="60"/> + <image x="326" y="640" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAsklEQVR4XqWQ0QoB QRSG941sEhJ5F1HaViRCpKwoN25cUFI8khuvYvbq8IuaOuaftr34mmm+ztdpAhEJ 8qAesqIeLouC+PAGTHp34g2c56EasoGngeM0lKd5fDDpl9/9fcLTwGFSlNsplqsD eBrYj0tqbRt4GtgNy2rIBp4G1v0K/QN4GljGVUm2K0k2/4GngVlUU2vbwNPAqFtX QzbwNDDoNOgfwNNAr92UqOUGngay8gIKdwdeFkAbDAAAAABJRU5ErkJggg==" xlink:type="simple" xlink:actuate="onLoad" height="16" preserveAspectRatio="none" xlink:show="embed"/> + <text x="345" xml:space="preserve" y="651" clip-path="url(#clipPath84)" stroke="none">CompanyWarehouse</text> + <line y2="662" fill="none" x1="299" clip-path="url(#clipPath85)" x2="493" y1="662"/> + <rect x="514" y="636" clip-path="url(#clipPath86)" fill="rgb(131,122,133)" width="201" rx="4" opacity="0.255" ry="4" height="61" stroke="none"/> + <rect x="515" y="637" clip-path="url(#clipPath86)" fill="rgb(131,122,133)" width="201" rx="4" opacity="0.255" ry="4" height="61" stroke="none"/> + <rect x="513" y="635" clip-path="url(#clipPath87)" fill="url(#linearGradient14)" width="201" rx="4" ry="4" height="61" stroke="none"/> + <rect x="513" y="635" clip-path="url(#clipPath87)" fill="none" width="200" rx="4" ry="4" height="60"/> + <image x="543" y="640" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAsklEQVR4XqWQ0QoB QRSG941sEhJ5F1HaViRCpKwoN25cUFI8khuvYvbq8IuaOuaftr34mmm+ztdpAhEJ 8qAesqIeLouC+PAGTHp34g2c56EasoGngeM0lKd5fDDpl9/9fcLTwGFSlNsplqsD eBrYj0tqbRt4GtgNy2rIBp4G1v0K/QN4GljGVUm2K0k2/4GngVlUU2vbwNPAqFtX QzbwNDDoNOgfwNNAr92UqOUGngay8gIKdwdeFkAbDAAAAABJRU5ErkJggg==" xlink:type="simple" xlink:actuate="onLoad" height="16" preserveAspectRatio="none" xlink:show="embed"/> + <text x="562" xml:space="preserve" y="651" clip-path="url(#clipPath89)" stroke="none">CustomerWarehouse</text> + <image x="518" y="664" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAWUlEQVR4XmNgGAWD EMyt0f9PCKPrQQFTKwz///h5EScGyaPrQQFdRaYYmpAxSB5dDwqozbH8//3HNTD+ 8ROKYWwgDZJH14MCitJs/2cl2ePEIHl0PaOAQgAAf2WC/D0GsQEAAAAASUVORK5C YII=" xlink:type="simple" xlink:actuate="onLoad" height="16" preserveAspectRatio="none" xlink:show="embed"/> + <text x="537" xml:space="preserve" y="675" clip-path="url(#clipPath91)" stroke="none">customerName : EString</text> + <line y2="662" fill="none" x1="514" clip-path="url(#clipPath92)" x2="713" y1="662"/> + <rect x="1234" y="281" clip-path="url(#clipPath93)" fill="rgb(131,122,133)" width="118" rx="4" opacity="0.255" ry="4" height="98" stroke="none"/> + <rect x="1235" y="282" clip-path="url(#clipPath93)" fill="rgb(131,122,133)" width="118" rx="4" opacity="0.255" ry="4" height="98" stroke="none"/> + <rect x="1233" y="280" clip-path="url(#clipPath94)" fill="url(#linearGradient15)" width="118" rx="4" ry="4" height="98" stroke="none"/> + <rect x="1233" y="280" clip-path="url(#clipPath94)" fill="none" width="117" rx="4" ry="4" height="97"/> + <image x="1265" y="285" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAsklEQVR4XqWQ0QoB QRSG941sEhJ5F1HaViRCpKwoN25cUFI8khuvYvbq8IuaOuaftr34mmm+ztdpAhEJ 8qAesqIeLouC+PAGTHp34g2c56EasoGngeM0lKd5fDDpl9/9fcLTwGFSlNsplqsD eBrYj0tqbRt4GtgNy2rIBp4G1v0K/QN4GljGVUm2K0k2/4GngVlUU2vbwNPAqFtX QzbwNDDoNOgfwNNAr92UqOUGngay8gIKdwdeFkAbDAAAAABJRU5ErkJggg==" xlink:type="simple" xlink:actuate="onLoad" height="16" preserveAspectRatio="none" xlink:show="embed"/> + <text x="1284" xml:space="preserve" y="296" clip-path="url(#clipPath96)" stroke="none">Route</text> + <line y2="307" fill="none" x1="1234" clip-path="url(#clipPath97)" x2="1350" y1="307"/> + <rect x="1294" y="466" clip-path="url(#clipPath98)" fill="rgb(131,122,133)" width="276" rx="4" opacity="0.255" ry="4" height="90" stroke="none"/> + <rect x="1295" y="467" clip-path="url(#clipPath98)" fill="rgb(131,122,133)" width="276" rx="4" opacity="0.255" ry="4" height="90" stroke="none"/> + <rect x="1293" y="465" clip-path="url(#clipPath99)" fill="url(#linearGradient16)" width="276" rx="4" ry="4" height="90" stroke="none"/> + <rect x="1293" y="465" clip-path="url(#clipPath99)" fill="none" width="275" rx="4" ry="4" height="89"/> + <image x="1401" y="470" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAsklEQVR4XqWQ0QoB QRSG941sEhJ5F1HaViRCpKwoN25cUFI8khuvYvbq8IuaOuaftr34mmm+ztdpAhEJ 8qAesqIeLouC+PAGTHp34g2c56EasoGngeM0lKd5fDDpl9/9fcLTwGFSlNsplqsD eBrYj0tqbRt4GtgNy2rIBp4G1v0K/QN4GljGVUm2K0k2/4GngVlUU2vbwNPAqFtX QzbwNDDoNOgfwNNAr92UqOUGngay8gIKdwdeFkAbDAAAAABJRU5ErkJggg==" xlink:type="simple" xlink:actuate="onLoad" height="16" preserveAspectRatio="none" xlink:show="embed"/> + <text x="1420" xml:space="preserve" y="481" clip-path="url(#clipPath101)" stroke="none">Vehicle</text> + <image x="1298" y="494" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAa0lEQVR4XmNgGAUY YG6N/n9CGF0PCphaYfj/x8+LODFIHl0PCugqMsXQhIxB8uh6UEBtjuX/7z+ugfGP n1AMYwNpkDy6HhRQlGb7PyvJHicGyaProS2QtC8j30aQZooMAIGBNQDmBYoMIQQA VHKRZGFCvOoAAAAASUVORK5CYII=" xlink:type="simple" xlink:actuate="onLoad" height="16" preserveAspectRatio="none" xlink:show="embed" font-weight="bold"/> + <text x="1317" xml:space="preserve" y="505" clip-path="url(#clipPath103)" font-weight="bold" stroke="none">model : EString</text> + <image x="1298" y="511" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAa0lEQVR4XmNgGAUY YG6N/n9CGF0PCphaYfj/x8+LODFIHl0PCugqMsXQhIxB8uh6UEBtjuX/7z+ugfGP n1AMYwNpkDy6HhRQlGb7PyvJHicGyaProS2QtC8j30aQZooMAIGBNQDmBYoMIQQA VHKRZGFCvOoAAAAASUVORK5CYII=" xlink:type="simple" xlink:actuate="onLoad" height="16" preserveAspectRatio="none" xlink:show="embed" font-weight="bold"/> + <text x="1317" xml:space="preserve" y="522" clip-path="url(#clipPath105)" font-weight="bold" stroke="none">fuelCapacity : EDouble = 0.0</text> + <image x="1298" y="528" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAa0lEQVR4XmNgGAUY YG6N/n9CGF0PCphaYfj/x8+LODFIHl0PCugqMsXQhIxB8uh6UEBtjuX/7z+ugfGP n1AMYwNpkDy6HhRQlGb7PyvJHicGyaProS2QtC8j30aQZooMAIGBNQDmBYoMIQQA VHKRZGFCvOoAAAAASUVORK5CYII=" xlink:type="simple" xlink:actuate="onLoad" height="16" preserveAspectRatio="none" xlink:show="embed" font-weight="bold"/> + <text x="1317" xml:space="preserve" y="539" clip-path="url(#clipPath107)" font-weight="bold" stroke="none">fuelType : FuelType = ELECTRICITY</text> + <line y2="492" fill="none" x1="1294" clip-path="url(#clipPath108)" x2="1568" y1="492"/> + <line y2="305" fill="none" x1="768" clip-path="url(#clipPath109)" x2="514" y1="305"/> + <text x="601" xml:space="preserve" y="293" clip-path="url(#clipPath110)" font-weight="bold" stroke="none">[1..1] source</text> + <line y2="305" fill="none" x1="521" clip-path="url(#clipPath111)" x2="514" y1="302"/> + <line y2="308" fill="none" x1="514" clip-path="url(#clipPath111)" x2="521" y1="305"/> + <line y2="333" fill="none" x1="768" clip-path="url(#clipPath109)" x2="514" y1="333"/> + <text x="601" xml:space="preserve" y="353" clip-path="url(#clipPath112)" font-weight="bold" stroke="none">[1..1] target</text> + <line y2="333" fill="none" x1="521" clip-path="url(#clipPath113)" x2="514" y1="330"/> + <line y2="336" fill="none" x1="514" clip-path="url(#clipPath113)" x2="521" y1="333"/> + <line y2="235" fill="none" x1="708" clip-path="url(#clipPath109)" x2="708" y1="181"/> + <line y2="235" fill="none" x1="708" clip-path="url(#clipPath109)" x2="873" y1="235"/> + <line y2="285" fill="none" x1="873" clip-path="url(#clipPath109)" x2="873" y1="235"/> + <text x="775" xml:space="preserve" y="223" clip-path="url(#clipPath114)" stroke="none">[0..*] roadnetworks</text> + <polygon points=" 708 181 711 187 708 193 705 187" clip-path="url(#clipPath115)" stroke="none"/> + <polygon fill="none" points=" 708 181 711 187 708 193 705 187" clip-path="url(#clipPath115)"/> + <line y2="285" fill="none" x1="870" clip-path="url(#clipPath116)" x2="873" y1="278"/> + <line y2="278" fill="none" x1="873" clip-path="url(#clipPath116)" x2="876" y1="285"/> + <line y2="235" fill="none" x1="598" clip-path="url(#clipPath109)" x2="598" y1="181"/> + <line y2="235" fill="none" x1="598" clip-path="url(#clipPath109)" x2="453" y1="235"/> + <line y2="290" fill="none" x1="453" clip-path="url(#clipPath109)" x2="453" y1="235"/> + <text x="472" xml:space="preserve" y="223" clip-path="url(#clipPath117)" stroke="none">[0..*] locations</text> + <polygon points=" 598 181 601 187 598 193 595 187" clip-path="url(#clipPath118)" stroke="none"/> + <polygon fill="none" points=" 598 181 601 187 598 193 595 187" clip-path="url(#clipPath118)"/> + <line y2="290" fill="none" x1="450" clip-path="url(#clipPath119)" x2="453" y1="283"/> + <line y2="283" fill="none" x1="453" clip-path="url(#clipPath119)" x2="456" y1="290"/> + <line y2="420" fill="none" x1="899" clip-path="url(#clipPath109)" x2="899" y1="366"/> + <text x="910" xml:space="preserve" y="403" clip-path="url(#clipPath120)" stroke="none">[0..*] roads</text> + <polygon points=" 899 366 902 372 899 378 896 372" clip-path="url(#clipPath121)" stroke="none"/> + <polygon fill="none" points=" 899 366 902 372 899 378 896 372" clip-path="url(#clipPath121)"/> + <line y2="420" fill="none" x1="896" clip-path="url(#clipPath122)" x2="899" y1="413"/> + <line y2="413" fill="none" x1="899" clip-path="url(#clipPath122)" x2="902" y1="420"/> + <line clip-path="url(#clipPath109)" fill="none" x1="655" x2="655" y1="120" y2="89" stroke="rgb(136,136,136)"/> + <line clip-path="url(#clipPath109)" fill="none" x1="655" x2="957" y1="89" y2="89" stroke="rgb(136,136,136)"/> + <line clip-path="url(#clipPath109)" fill="none" x1="957" x2="957" y1="89" y2="71" stroke="rgb(136,136,136)"/> + <polygon fill="white" clip-path="url(#clipPath123)" points=" 957 71 961 79 953 79" stroke="none"/> + <polygon fill="none" clip-path="url(#clipPath123)" points=" 957 71 961 79 953 79" stroke="rgb(136,136,136)"/> + <line clip-path="url(#clipPath109)" fill="none" x1="968" x2="968" y1="285" y2="89" stroke="rgb(136,136,136)"/> + <line clip-path="url(#clipPath109)" fill="none" x1="968" x2="957" y1="89" y2="89" stroke="rgb(136,136,136)"/> + <line clip-path="url(#clipPath109)" fill="none" x1="957" x2="957" y1="89" y2="71" stroke="rgb(136,136,136)"/> + <polygon fill="white" clip-path="url(#clipPath123)" points=" 957 71 961 79 953 79" stroke="none"/> + <polygon fill="none" clip-path="url(#clipPath123)" points=" 957 71 961 79 953 79" stroke="rgb(136,136,136)"/> + <line clip-path="url(#clipPath109)" fill="none" x1="1056" x2="1056" y1="420" y2="89" stroke="rgb(136,136,136)"/> + <line clip-path="url(#clipPath109)" fill="none" x1="1056" x2="957" y1="89" y2="89" stroke="rgb(136,136,136)"/> + <line clip-path="url(#clipPath109)" fill="none" x1="957" x2="957" y1="89" y2="71" stroke="rgb(136,136,136)"/> + <polygon fill="white" clip-path="url(#clipPath123)" points=" 957 71 961 79 953 79" stroke="none"/> + <polygon fill="none" clip-path="url(#clipPath123)" points=" 957 71 961 79 953 79" stroke="rgb(136,136,136)"/> + <line y2="410" fill="none" x1="453" clip-path="url(#clipPath109)" x2="453" y1="351"/> + <text x="469" xml:space="preserve" y="383" clip-path="url(#clipPath124)" stroke="none">[0..*] pois</text> + <polygon points=" 453 351 456 357 453 363 450 357" clip-path="url(#clipPath125)" stroke="none"/> + <polygon fill="none" points=" 453 351 456 357 453 363 450 357" clip-path="url(#clipPath125)"/> + <line y2="410" fill="none" x1="450" clip-path="url(#clipPath126)" x2="453" y1="403"/> + <line y2="403" fill="none" x1="453" clip-path="url(#clipPath126)" x2="456" y1="410"/> + <line clip-path="url(#clipPath109)" fill="none" x1="393" x2="393" y1="290" y2="89" stroke="rgb(136,136,136)"/> + <line clip-path="url(#clipPath109)" fill="none" x1="393" x2="392" y1="89" y2="89" stroke="rgb(136,136,136)"/> + <line clip-path="url(#clipPath109)" fill="none" x1="392" x2="392" y1="89" y2="71" stroke="rgb(136,136,136)"/> + <polygon fill="white" clip-path="url(#clipPath127)" points=" 392 71 396 79 388 79" stroke="none"/> + <polygon fill="none" clip-path="url(#clipPath127)" points=" 392 71 396 79 388 79" stroke="rgb(136,136,136)"/> + <line clip-path="url(#clipPath109)" fill="none" x1="358" x2="358" y1="410" y2="89" stroke="rgb(136,136,136)"/> + <line clip-path="url(#clipPath109)" fill="none" x1="358" x2="392" y1="89" y2="89" stroke="rgb(136,136,136)"/> + <line clip-path="url(#clipPath109)" fill="none" x1="392" x2="392" y1="89" y2="71" stroke="rgb(136,136,136)"/> + <polygon fill="white" clip-path="url(#clipPath127)" points=" 392 71 396 79 388 79" stroke="none"/> + <polygon fill="none" clip-path="url(#clipPath127)" points=" 392 71 396 79 388 79" stroke="rgb(136,136,136)"/> + <line clip-path="url(#clipPath109)" fill="none" x1="643" x2="643" y1="535" y2="484" stroke="rgb(136,136,136)"/> + <line clip-path="url(#clipPath109)" fill="none" x1="643" x2="422" y1="484" y2="484" stroke="rgb(136,136,136)"/> + <line clip-path="url(#clipPath109)" fill="none" x1="422" x2="422" y1="484" y2="466" stroke="rgb(136,136,136)"/> + <polygon fill="white" clip-path="url(#clipPath128)" points=" 422 466 426 474 418 474" stroke="none"/> + <polygon fill="none" clip-path="url(#clipPath128)" points=" 422 466 426 474 418 474" stroke="rgb(136,136,136)"/> + <line clip-path="url(#clipPath109)" fill="none" x1="500" x2="500" y1="535" y2="484" stroke="rgb(136,136,136)"/> + <line clip-path="url(#clipPath109)" fill="none" x1="500" x2="422" y1="484" y2="484" stroke="rgb(136,136,136)"/> + <line clip-path="url(#clipPath109)" fill="none" x1="422" x2="422" y1="484" y2="466" stroke="rgb(136,136,136)"/> + <polygon fill="white" clip-path="url(#clipPath128)" points=" 422 466 426 474 418 474" stroke="none"/> + <polygon fill="none" clip-path="url(#clipPath128)" points=" 422 466 426 474 418 474" stroke="rgb(136,136,136)"/> + <line clip-path="url(#clipPath109)" fill="none" x1="324" x2="324" y1="535" y2="484" stroke="rgb(136,136,136)"/> + <line clip-path="url(#clipPath109)" fill="none" x1="324" x2="422" y1="484" y2="484" stroke="rgb(136,136,136)"/> + <line clip-path="url(#clipPath109)" fill="none" x1="422" x2="422" y1="484" y2="466" stroke="rgb(136,136,136)"/> + <polygon fill="white" clip-path="url(#clipPath128)" points=" 422 466 426 474 418 474" stroke="none"/> + <polygon fill="none" clip-path="url(#clipPath128)" points=" 422 466 426 474 418 474" stroke="rgb(136,136,136)"/> + <line clip-path="url(#clipPath109)" fill="none" x1="147" x2="147" y1="535" y2="484" stroke="rgb(136,136,136)"/> + <line clip-path="url(#clipPath109)" fill="none" x1="147" x2="422" y1="484" y2="484" stroke="rgb(136,136,136)"/> + <line clip-path="url(#clipPath109)" fill="none" x1="422" x2="422" y1="484" y2="466" stroke="rgb(136,136,136)"/> + <polygon fill="white" clip-path="url(#clipPath128)" points=" 422 466 426 474 418 474" stroke="none"/> + <polygon fill="none" clip-path="url(#clipPath128)" points=" 422 466 426 474 418 474" stroke="rgb(136,136,136)"/> + <line clip-path="url(#clipPath109)" fill="none" x1="593" x2="593" y1="635" y2="614" stroke="rgb(136,136,136)"/> + <line clip-path="url(#clipPath109)" fill="none" x1="593" x2="498" y1="614" y2="614" stroke="rgb(136,136,136)"/> + <line clip-path="url(#clipPath109)" fill="none" x1="498" x2="498" y1="614" y2="596" stroke="rgb(136,136,136)"/> + <polygon fill="white" clip-path="url(#clipPath129)" points=" 498 596 502 604 494 604" stroke="none"/> + <polygon fill="none" clip-path="url(#clipPath129)" points=" 498 596 502 604 494 604" stroke="rgb(136,136,136)"/> + <line clip-path="url(#clipPath109)" fill="none" x1="353" x2="353" y1="635" y2="614" stroke="rgb(136,136,136)"/> + <line clip-path="url(#clipPath109)" fill="none" x1="353" x2="498" y1="614" y2="614" stroke="rgb(136,136,136)"/> + <line clip-path="url(#clipPath109)" fill="none" x1="498" x2="498" y1="614" y2="596" stroke="rgb(136,136,136)"/> + <polygon fill="white" clip-path="url(#clipPath129)" points=" 498 596 502 604 494 604" stroke="none"/> + <polygon fill="none" clip-path="url(#clipPath129)" points=" 498 596 502 604 494 604" stroke="rgb(136,136,136)"/> + <line y2="169" fill="none" x1="769" clip-path="url(#clipPath109)" x2="1257" y1="169"/> + <line y2="280" fill="none" x1="1257" clip-path="url(#clipPath109)" x2="1257" y1="169"/> + <text x="1098" xml:space="preserve" y="191" clip-path="url(#clipPath130)" stroke="none">[0..*] routes</text> + <polygon points=" 769 169 775 166 781 169 775 172" clip-path="url(#clipPath131)" stroke="none"/> + <polygon fill="none" points=" 769 169 775 166 781 169 775 172" clip-path="url(#clipPath131)"/> + <line y2="280" fill="none" x1="1254" clip-path="url(#clipPath132)" x2="1257" y1="273"/> + <line y2="273" fill="none" x1="1257" clip-path="url(#clipPath132)" x2="1260" y1="280"/> + <line clip-path="url(#clipPath109)" fill="none" x1="1292" x2="1292" y1="280" y2="89" stroke="rgb(136,136,136)"/> + <line clip-path="url(#clipPath109)" fill="none" x1="1292" x2="957" y1="89" y2="89" stroke="rgb(136,136,136)"/> + <line clip-path="url(#clipPath109)" fill="none" x1="957" x2="957" y1="89" y2="71" stroke="rgb(136,136,136)"/> + <polygon fill="white" clip-path="url(#clipPath123)" points=" 957 71 961 79 953 79" stroke="none"/> + <polygon fill="none" clip-path="url(#clipPath123)" points=" 957 71 961 79 953 79" stroke="rgb(136,136,136)"/> + <line y2="327" fill="none" x1="1233" clip-path="url(#clipPath109)" x2="1029" y1="327"/> + <text x="1113" xml:space="preserve" y="346" clip-path="url(#clipPath133)" stroke="none">[0..*] networkList</text> + <line y2="327" fill="none" x1="1036" clip-path="url(#clipPath134)" x2="1029" y1="324"/> + <line y2="330" fill="none" x1="1029" clip-path="url(#clipPath134)" x2="1036" y1="327"/> + <line y2="709" fill="none" x1="1263" clip-path="url(#clipPath109)" x2="1263" y1="378"/> + <line y2="709" fill="none" x1="1263" clip-path="url(#clipPath109)" x2="57" y1="709"/> + <line y2="335" fill="none" x1="57" clip-path="url(#clipPath109)" x2="57" y1="709"/> + <line y2="335" fill="none" x1="57" clip-path="url(#clipPath109)" x2="373" y1="335"/> + <text x="1178" xml:space="preserve" y="701" clip-path="url(#clipPath135)" stroke="none">[0..1] start</text> + <line y2="335" fill="none" x1="366" clip-path="url(#clipPath136)" x2="373" y1="338"/> + <line y2="332" fill="none" x1="373" clip-path="url(#clipPath136)" x2="366" y1="335"/> + <line y2="735" fill="none" x1="1277" clip-path="url(#clipPath109)" x2="1277" y1="378"/> + <line y2="735" fill="none" x1="1277" clip-path="url(#clipPath109)" x2="43" y1="735"/> + <line y2="324" fill="none" x1="43" clip-path="url(#clipPath109)" x2="43" y1="735"/> + <line y2="324" fill="none" x1="43" clip-path="url(#clipPath109)" x2="373" y1="324"/> + <text x="1210" xml:space="preserve" y="726" clip-path="url(#clipPath137)" stroke="none">[0..1] end</text> + <line y2="324" fill="none" x1="366" clip-path="url(#clipPath138)" x2="373" y1="327"/> + <line y2="321" fill="none" x1="373" clip-path="url(#clipPath138)" x2="366" y1="324"/> + <line y2="130" fill="none" x1="769" clip-path="url(#clipPath109)" x2="1483" y1="130"/> + <line y2="465" fill="none" x1="1483" clip-path="url(#clipPath109)" x2="1483" y1="130"/> + <text x="1433" xml:space="preserve" y="121" clip-path="url(#clipPath139)" stroke="none">[0..*] carPark</text> + <polygon points=" 769 130 775 127 781 130 775 133" clip-path="url(#clipPath140)" stroke="none"/> + <polygon fill="none" points=" 769 130 775 127 781 130 775 133" clip-path="url(#clipPath140)"/> + <line y2="465" fill="none" x1="1480" clip-path="url(#clipPath141)" x2="1483" y1="458"/> + <line y2="458" fill="none" x1="1483" clip-path="url(#clipPath141)" x2="1486" y1="465"/> + <line y2="465" fill="none" x1="1312" clip-path="url(#clipPath109)" x2="1312" y1="378"/> + <text x="1316" xml:space="preserve" y="453" clip-path="url(#clipPath142)" font-weight="bold" stroke="none">[1..1] vehicle</text> + <polygon points=" 1312 378 1315 384 1312 390 1309 384" clip-path="url(#clipPath143)" stroke="none"/> + <polygon fill="none" points=" 1312 378 1315 384 1312 390 1309 384" clip-path="url(#clipPath143)"/> + <line y2="465" fill="none" x1="1309" clip-path="url(#clipPath144)" x2="1312" y1="458"/> + <line y2="458" fill="none" x1="1312" clip-path="url(#clipPath144)" x2="1315" y1="465"/> + <line clip-path="url(#clipPath109)" fill="none" x1="1406" x2="1406" y1="465" y2="89" stroke="rgb(136,136,136)"/> + <line clip-path="url(#clipPath109)" fill="none" x1="1406" x2="957" y1="89" y2="89" stroke="rgb(136,136,136)"/> + <line clip-path="url(#clipPath109)" fill="none" x1="957" x2="957" y1="89" y2="71" stroke="rgb(136,136,136)"/> + <polygon fill="white" clip-path="url(#clipPath123)" points=" 957 71 961 79 953 79" stroke="none"/> + <polygon fill="none" clip-path="url(#clipPath123)" points=" 957 71 961 79 953 79" stroke="rgb(136,136,136)"/> + <line y2="749" fill="none" x1="1429" clip-path="url(#clipPath109)" x2="1429" y1="555"/> + <line y2="749" fill="none" x1="1429" clip-path="url(#clipPath109)" x2="23" y1="749"/> + <line y2="309" fill="none" x1="23" clip-path="url(#clipPath109)" x2="23" y1="749"/> + <line y2="309" fill="none" x1="23" clip-path="url(#clipPath109)" x2="373" y1="309"/> + <text x="1322" xml:space="preserve" y="741" clip-path="url(#clipPath145)" stroke="none">[0..1] location</text> + <line y2="309" fill="none" x1="366" clip-path="url(#clipPath146)" x2="373" y1="312"/> + <line y2="306" fill="none" x1="373" clip-path="url(#clipPath146)" x2="366" y1="309"/> </g> </g> </svg> diff --git a/stgroup.mdsd.transportation_network.metamodel/src-gen/stgroup/mdsd/transportation_network/metamodel/transportation_network/Route.java b/stgroup.mdsd.transportation_network.metamodel/src-gen/stgroup/mdsd/transportation_network/metamodel/transportation_network/Route.java new file mode 100644 index 0000000000000000000000000000000000000000..f80b4448ded3bdfa08536e92005e996b8795e4c3 --- /dev/null +++ b/stgroup.mdsd.transportation_network.metamodel/src-gen/stgroup/mdsd/transportation_network/metamodel/transportation_network/Route.java @@ -0,0 +1,105 @@ +/** + */ +package stgroup.mdsd.transportation_network.metamodel.transportation_network; + +import org.eclipse.emf.common.util.EList; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Route</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link stgroup.mdsd.transportation_network.metamodel.transportation_network.Route#getNetworkList <em>Network List</em>}</li> + * <li>{@link stgroup.mdsd.transportation_network.metamodel.transportation_network.Route#getStart <em>Start</em>}</li> + * <li>{@link stgroup.mdsd.transportation_network.metamodel.transportation_network.Route#getEnd <em>End</em>}</li> + * <li>{@link stgroup.mdsd.transportation_network.metamodel.transportation_network.Route#getVehicle <em>Vehicle</em>}</li> + * </ul> + * + * @see stgroup.mdsd.transportation_network.metamodel.transportation_network.Transportation_networkPackage#getRoute() + * @model + * @generated + */ +public interface Route extends IdentifiableElement { + /** + * Returns the value of the '<em><b>Network List</b></em>' reference list. + * The list contents are of type {@link stgroup.mdsd.transportation_network.metamodel.transportation_network.RoadNetwork}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Network List</em>' reference list. + * @see stgroup.mdsd.transportation_network.metamodel.transportation_network.Transportation_networkPackage#getRoute_NetworkList() + * @model + * @generated + */ + EList<RoadNetwork> getNetworkList(); + + /** + * Returns the value of the '<em><b>Start</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Start</em>' reference. + * @see #setStart(Location) + * @see stgroup.mdsd.transportation_network.metamodel.transportation_network.Transportation_networkPackage#getRoute_Start() + * @model + * @generated + */ + Location getStart(); + + /** + * Sets the value of the '{@link stgroup.mdsd.transportation_network.metamodel.transportation_network.Route#getStart <em>Start</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Start</em>' reference. + * @see #getStart() + * @generated + */ + void setStart(Location value); + + /** + * Returns the value of the '<em><b>End</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>End</em>' reference. + * @see #setEnd(Location) + * @see stgroup.mdsd.transportation_network.metamodel.transportation_network.Transportation_networkPackage#getRoute_End() + * @model + * @generated + */ + Location getEnd(); + + /** + * Sets the value of the '{@link stgroup.mdsd.transportation_network.metamodel.transportation_network.Route#getEnd <em>End</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>End</em>' reference. + * @see #getEnd() + * @generated + */ + void setEnd(Location value); + + /** + * Returns the value of the '<em><b>Vehicle</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Vehicle</em>' containment reference. + * @see #setVehicle(Vehicle) + * @see stgroup.mdsd.transportation_network.metamodel.transportation_network.Transportation_networkPackage#getRoute_Vehicle() + * @model containment="true" required="true" + * @generated + */ + Vehicle getVehicle(); + + /** + * Sets the value of the '{@link stgroup.mdsd.transportation_network.metamodel.transportation_network.Route#getVehicle <em>Vehicle</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Vehicle</em>' containment reference. + * @see #getVehicle() + * @generated + */ + void setVehicle(Vehicle value); + +} // Route diff --git a/stgroup.mdsd.transportation_network.metamodel/src-gen/stgroup/mdsd/transportation_network/metamodel/transportation_network/TransportationNetwork.java b/stgroup.mdsd.transportation_network.metamodel/src-gen/stgroup/mdsd/transportation_network/metamodel/transportation_network/TransportationNetwork.java index 7eaa051996b169d0fb80f929231e625d9024c21f..0ca78167e474f341dfb5935091f50dc421ea0717 100644 --- a/stgroup.mdsd.transportation_network.metamodel/src-gen/stgroup/mdsd/transportation_network/metamodel/transportation_network/TransportationNetwork.java +++ b/stgroup.mdsd.transportation_network.metamodel/src-gen/stgroup/mdsd/transportation_network/metamodel/transportation_network/TransportationNetwork.java @@ -15,6 +15,8 @@ import org.eclipse.emf.common.util.EList; * <ul> * <li>{@link stgroup.mdsd.transportation_network.metamodel.transportation_network.TransportationNetwork#getRoadnetworks <em>Roadnetworks</em>}</li> * <li>{@link stgroup.mdsd.transportation_network.metamodel.transportation_network.TransportationNetwork#getLocations <em>Locations</em>}</li> + * <li>{@link stgroup.mdsd.transportation_network.metamodel.transportation_network.TransportationNetwork#getRoutes <em>Routes</em>}</li> + * <li>{@link stgroup.mdsd.transportation_network.metamodel.transportation_network.TransportationNetwork#getCarPark <em>Car Park</em>}</li> * </ul> * * @see stgroup.mdsd.transportation_network.metamodel.transportation_network.Transportation_networkPackage#getTransportationNetwork() @@ -46,4 +48,28 @@ public interface TransportationNetwork extends IdentifiableElement { */ EList<Location> getLocations(); + /** + * Returns the value of the '<em><b>Routes</b></em>' containment reference list. + * The list contents are of type {@link stgroup.mdsd.transportation_network.metamodel.transportation_network.Route}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Routes</em>' containment reference list. + * @see stgroup.mdsd.transportation_network.metamodel.transportation_network.Transportation_networkPackage#getTransportationNetwork_Routes() + * @model containment="true" + * @generated + */ + EList<Route> getRoutes(); + + /** + * Returns the value of the '<em><b>Car Park</b></em>' containment reference list. + * The list contents are of type {@link stgroup.mdsd.transportation_network.metamodel.transportation_network.Vehicle}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Car Park</em>' containment reference list. + * @see stgroup.mdsd.transportation_network.metamodel.transportation_network.Transportation_networkPackage#getTransportationNetwork_CarPark() + * @model containment="true" + * @generated + */ + EList<Vehicle> getCarPark(); + } // TransportationNetwork diff --git a/stgroup.mdsd.transportation_network.metamodel/src-gen/stgroup/mdsd/transportation_network/metamodel/transportation_network/Transportation_networkFactory.java b/stgroup.mdsd.transportation_network.metamodel/src-gen/stgroup/mdsd/transportation_network/metamodel/transportation_network/Transportation_networkFactory.java index 6e8aa55e03b7cf3c06db09ca0e0b4a65034e7dcf..fdf1890848d60b4a796c04437ce0c8bbccbe69af 100644 --- a/stgroup.mdsd.transportation_network.metamodel/src-gen/stgroup/mdsd/transportation_network/metamodel/transportation_network/Transportation_networkFactory.java +++ b/stgroup.mdsd.transportation_network.metamodel/src-gen/stgroup/mdsd/transportation_network/metamodel/transportation_network/Transportation_networkFactory.java @@ -103,6 +103,24 @@ public interface Transportation_networkFactory extends EFactory { */ CustomerWarehouse createCustomerWarehouse(); + /** + * Returns a new object of class '<em>Route</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Route</em>'. + * @generated + */ + Route createRoute(); + + /** + * Returns a new object of class '<em>Vehicle</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Vehicle</em>'. + * @generated + */ + Vehicle createVehicle(); + /** * Returns the package supported by this factory. * <!-- begin-user-doc --> diff --git a/stgroup.mdsd.transportation_network.metamodel/src-gen/stgroup/mdsd/transportation_network/metamodel/transportation_network/Transportation_networkPackage.java b/stgroup.mdsd.transportation_network.metamodel/src-gen/stgroup/mdsd/transportation_network/metamodel/transportation_network/Transportation_networkPackage.java index 589a629c049d419fb3357d75d0df16a190f9c527..b13d4e681b9b167fab4d1c32e10bf3bb383bbd72 100644 --- a/stgroup.mdsd.transportation_network.metamodel/src-gen/stgroup/mdsd/transportation_network/metamodel/transportation_network/Transportation_networkPackage.java +++ b/stgroup.mdsd.transportation_network.metamodel/src-gen/stgroup/mdsd/transportation_network/metamodel/transportation_network/Transportation_networkPackage.java @@ -132,6 +132,24 @@ public interface Transportation_networkPackage extends EPackage { */ int TRANSPORTATION_NETWORK__LOCATIONS = IDENTIFIABLE_ELEMENT_FEATURE_COUNT + 1; + /** + * The feature id for the '<em><b>Routes</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TRANSPORTATION_NETWORK__ROUTES = IDENTIFIABLE_ELEMENT_FEATURE_COUNT + 2; + + /** + * The feature id for the '<em><b>Car Park</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TRANSPORTATION_NETWORK__CAR_PARK = IDENTIFIABLE_ELEMENT_FEATURE_COUNT + 3; + /** * The number of structural features of the '<em>Transportation Network</em>' class. * <!-- begin-user-doc --> @@ -139,7 +157,7 @@ public interface Transportation_networkPackage extends EPackage { * @generated * @ordered */ - int TRANSPORTATION_NETWORK_FEATURE_COUNT = IDENTIFIABLE_ELEMENT_FEATURE_COUNT + 2; + int TRANSPORTATION_NETWORK_FEATURE_COUNT = IDENTIFIABLE_ELEMENT_FEATURE_COUNT + 4; /** * The number of operations of the '<em>Transportation Network</em>' class. @@ -647,6 +665,152 @@ public interface Transportation_networkPackage extends EPackage { */ int CUSTOMER_WAREHOUSE_OPERATION_COUNT = WAREHOUSE_OPERATION_COUNT + 0; + /** + * The meta object id for the '{@link stgroup.mdsd.transportation_network.metamodel.transportation_network.impl.RouteImpl <em>Route</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see stgroup.mdsd.transportation_network.metamodel.transportation_network.impl.RouteImpl + * @see stgroup.mdsd.transportation_network.metamodel.transportation_network.impl.Transportation_networkPackageImpl#getRoute() + * @generated + */ + int ROUTE = 13; + + /** + * The feature id for the '<em><b>Identifier</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int ROUTE__IDENTIFIER = IDENTIFIABLE_ELEMENT__IDENTIFIER; + + /** + * The feature id for the '<em><b>Network List</b></em>' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int ROUTE__NETWORK_LIST = IDENTIFIABLE_ELEMENT_FEATURE_COUNT + 0; + + /** + * The feature id for the '<em><b>Start</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int ROUTE__START = IDENTIFIABLE_ELEMENT_FEATURE_COUNT + 1; + + /** + * The feature id for the '<em><b>End</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int ROUTE__END = IDENTIFIABLE_ELEMENT_FEATURE_COUNT + 2; + + /** + * The feature id for the '<em><b>Vehicle</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int ROUTE__VEHICLE = IDENTIFIABLE_ELEMENT_FEATURE_COUNT + 3; + + /** + * The number of structural features of the '<em>Route</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int ROUTE_FEATURE_COUNT = IDENTIFIABLE_ELEMENT_FEATURE_COUNT + 4; + + /** + * The number of operations of the '<em>Route</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int ROUTE_OPERATION_COUNT = IDENTIFIABLE_ELEMENT_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link stgroup.mdsd.transportation_network.metamodel.transportation_network.impl.VehicleImpl <em>Vehicle</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see stgroup.mdsd.transportation_network.metamodel.transportation_network.impl.VehicleImpl + * @see stgroup.mdsd.transportation_network.metamodel.transportation_network.impl.Transportation_networkPackageImpl#getVehicle() + * @generated + */ + int VEHICLE = 14; + + /** + * The feature id for the '<em><b>Identifier</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int VEHICLE__IDENTIFIER = IDENTIFIABLE_ELEMENT__IDENTIFIER; + + /** + * The feature id for the '<em><b>Location</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int VEHICLE__LOCATION = IDENTIFIABLE_ELEMENT_FEATURE_COUNT + 0; + + /** + * The feature id for the '<em><b>Model</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int VEHICLE__MODEL = IDENTIFIABLE_ELEMENT_FEATURE_COUNT + 1; + + /** + * The feature id for the '<em><b>Fuel Capacity</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int VEHICLE__FUEL_CAPACITY = IDENTIFIABLE_ELEMENT_FEATURE_COUNT + 2; + + /** + * The feature id for the '<em><b>Fuel Type</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int VEHICLE__FUEL_TYPE = IDENTIFIABLE_ELEMENT_FEATURE_COUNT + 3; + + /** + * The number of structural features of the '<em>Vehicle</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int VEHICLE_FEATURE_COUNT = IDENTIFIABLE_ELEMENT_FEATURE_COUNT + 4; + + /** + * The number of operations of the '<em>Vehicle</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int VEHICLE_OPERATION_COUNT = IDENTIFIABLE_ELEMENT_OPERATION_COUNT + 0; + /** * The meta object id for the '{@link stgroup.mdsd.transportation_network.metamodel.transportation_network.FuelType <em>Fuel Type</em>}' enum. * <!-- begin-user-doc --> @@ -655,7 +819,7 @@ public interface Transportation_networkPackage extends EPackage { * @see stgroup.mdsd.transportation_network.metamodel.transportation_network.impl.Transportation_networkPackageImpl#getFuelType() * @generated */ - int FUEL_TYPE = 13; + int FUEL_TYPE = 15; /** * Returns the meta object for class '{@link stgroup.mdsd.transportation_network.metamodel.transportation_network.TransportationNetwork <em>Transportation Network</em>}'. @@ -689,6 +853,28 @@ public interface Transportation_networkPackage extends EPackage { */ EReference getTransportationNetwork_Locations(); + /** + * Returns the meta object for the containment reference list '{@link stgroup.mdsd.transportation_network.metamodel.transportation_network.TransportationNetwork#getRoutes <em>Routes</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Routes</em>'. + * @see stgroup.mdsd.transportation_network.metamodel.transportation_network.TransportationNetwork#getRoutes() + * @see #getTransportationNetwork() + * @generated + */ + EReference getTransportationNetwork_Routes(); + + /** + * Returns the meta object for the containment reference list '{@link stgroup.mdsd.transportation_network.metamodel.transportation_network.TransportationNetwork#getCarPark <em>Car Park</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Car Park</em>'. + * @see stgroup.mdsd.transportation_network.metamodel.transportation_network.TransportationNetwork#getCarPark() + * @see #getTransportationNetwork() + * @generated + */ + EReference getTransportationNetwork_CarPark(); + /** * Returns the meta object for class '{@link stgroup.mdsd.transportation_network.metamodel.transportation_network.Location <em>Location</em>}'. * <!-- begin-user-doc --> @@ -941,6 +1127,114 @@ public interface Transportation_networkPackage extends EPackage { */ EAttribute getCustomerWarehouse_CustomerName(); + /** + * Returns the meta object for class '{@link stgroup.mdsd.transportation_network.metamodel.transportation_network.Route <em>Route</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Route</em>'. + * @see stgroup.mdsd.transportation_network.metamodel.transportation_network.Route + * @generated + */ + EClass getRoute(); + + /** + * Returns the meta object for the reference list '{@link stgroup.mdsd.transportation_network.metamodel.transportation_network.Route#getNetworkList <em>Network List</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the reference list '<em>Network List</em>'. + * @see stgroup.mdsd.transportation_network.metamodel.transportation_network.Route#getNetworkList() + * @see #getRoute() + * @generated + */ + EReference getRoute_NetworkList(); + + /** + * Returns the meta object for the reference '{@link stgroup.mdsd.transportation_network.metamodel.transportation_network.Route#getStart <em>Start</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the reference '<em>Start</em>'. + * @see stgroup.mdsd.transportation_network.metamodel.transportation_network.Route#getStart() + * @see #getRoute() + * @generated + */ + EReference getRoute_Start(); + + /** + * Returns the meta object for the reference '{@link stgroup.mdsd.transportation_network.metamodel.transportation_network.Route#getEnd <em>End</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the reference '<em>End</em>'. + * @see stgroup.mdsd.transportation_network.metamodel.transportation_network.Route#getEnd() + * @see #getRoute() + * @generated + */ + EReference getRoute_End(); + + /** + * Returns the meta object for the containment reference '{@link stgroup.mdsd.transportation_network.metamodel.transportation_network.Route#getVehicle <em>Vehicle</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Vehicle</em>'. + * @see stgroup.mdsd.transportation_network.metamodel.transportation_network.Route#getVehicle() + * @see #getRoute() + * @generated + */ + EReference getRoute_Vehicle(); + + /** + * Returns the meta object for class '{@link stgroup.mdsd.transportation_network.metamodel.transportation_network.Vehicle <em>Vehicle</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Vehicle</em>'. + * @see stgroup.mdsd.transportation_network.metamodel.transportation_network.Vehicle + * @generated + */ + EClass getVehicle(); + + /** + * Returns the meta object for the reference '{@link stgroup.mdsd.transportation_network.metamodel.transportation_network.Vehicle#getLocation <em>Location</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the reference '<em>Location</em>'. + * @see stgroup.mdsd.transportation_network.metamodel.transportation_network.Vehicle#getLocation() + * @see #getVehicle() + * @generated + */ + EReference getVehicle_Location(); + + /** + * Returns the meta object for the attribute '{@link stgroup.mdsd.transportation_network.metamodel.transportation_network.Vehicle#getModel <em>Model</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Model</em>'. + * @see stgroup.mdsd.transportation_network.metamodel.transportation_network.Vehicle#getModel() + * @see #getVehicle() + * @generated + */ + EAttribute getVehicle_Model(); + + /** + * Returns the meta object for the attribute '{@link stgroup.mdsd.transportation_network.metamodel.transportation_network.Vehicle#getFuelCapacity <em>Fuel Capacity</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Fuel Capacity</em>'. + * @see stgroup.mdsd.transportation_network.metamodel.transportation_network.Vehicle#getFuelCapacity() + * @see #getVehicle() + * @generated + */ + EAttribute getVehicle_FuelCapacity(); + + /** + * Returns the meta object for the attribute '{@link stgroup.mdsd.transportation_network.metamodel.transportation_network.Vehicle#getFuelType <em>Fuel Type</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Fuel Type</em>'. + * @see stgroup.mdsd.transportation_network.metamodel.transportation_network.Vehicle#getFuelType() + * @see #getVehicle() + * @generated + */ + EAttribute getVehicle_FuelType(); + /** * Returns the meta object for enum '{@link stgroup.mdsd.transportation_network.metamodel.transportation_network.FuelType <em>Fuel Type</em>}'. * <!-- begin-user-doc --> @@ -1000,6 +1294,22 @@ public interface Transportation_networkPackage extends EPackage { */ EReference TRANSPORTATION_NETWORK__LOCATIONS = eINSTANCE.getTransportationNetwork_Locations(); + /** + * The meta object literal for the '<em><b>Routes</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference TRANSPORTATION_NETWORK__ROUTES = eINSTANCE.getTransportationNetwork_Routes(); + + /** + * The meta object literal for the '<em><b>Car Park</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference TRANSPORTATION_NETWORK__CAR_PARK = eINSTANCE.getTransportationNetwork_CarPark(); + /** * The meta object literal for the '{@link stgroup.mdsd.transportation_network.metamodel.transportation_network.impl.LocationImpl <em>Location</em>}' class. * <!-- begin-user-doc --> @@ -1216,6 +1526,90 @@ public interface Transportation_networkPackage extends EPackage { */ EAttribute CUSTOMER_WAREHOUSE__CUSTOMER_NAME = eINSTANCE.getCustomerWarehouse_CustomerName(); + /** + * The meta object literal for the '{@link stgroup.mdsd.transportation_network.metamodel.transportation_network.impl.RouteImpl <em>Route</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see stgroup.mdsd.transportation_network.metamodel.transportation_network.impl.RouteImpl + * @see stgroup.mdsd.transportation_network.metamodel.transportation_network.impl.Transportation_networkPackageImpl#getRoute() + * @generated + */ + EClass ROUTE = eINSTANCE.getRoute(); + + /** + * The meta object literal for the '<em><b>Network List</b></em>' reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference ROUTE__NETWORK_LIST = eINSTANCE.getRoute_NetworkList(); + + /** + * The meta object literal for the '<em><b>Start</b></em>' reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference ROUTE__START = eINSTANCE.getRoute_Start(); + + /** + * The meta object literal for the '<em><b>End</b></em>' reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference ROUTE__END = eINSTANCE.getRoute_End(); + + /** + * The meta object literal for the '<em><b>Vehicle</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference ROUTE__VEHICLE = eINSTANCE.getRoute_Vehicle(); + + /** + * The meta object literal for the '{@link stgroup.mdsd.transportation_network.metamodel.transportation_network.impl.VehicleImpl <em>Vehicle</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see stgroup.mdsd.transportation_network.metamodel.transportation_network.impl.VehicleImpl + * @see stgroup.mdsd.transportation_network.metamodel.transportation_network.impl.Transportation_networkPackageImpl#getVehicle() + * @generated + */ + EClass VEHICLE = eINSTANCE.getVehicle(); + + /** + * The meta object literal for the '<em><b>Location</b></em>' reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference VEHICLE__LOCATION = eINSTANCE.getVehicle_Location(); + + /** + * The meta object literal for the '<em><b>Model</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute VEHICLE__MODEL = eINSTANCE.getVehicle_Model(); + + /** + * The meta object literal for the '<em><b>Fuel Capacity</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute VEHICLE__FUEL_CAPACITY = eINSTANCE.getVehicle_FuelCapacity(); + + /** + * The meta object literal for the '<em><b>Fuel Type</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute VEHICLE__FUEL_TYPE = eINSTANCE.getVehicle_FuelType(); + /** * The meta object literal for the '{@link stgroup.mdsd.transportation_network.metamodel.transportation_network.FuelType <em>Fuel Type</em>}' enum. * <!-- begin-user-doc --> diff --git a/stgroup.mdsd.transportation_network.metamodel/src-gen/stgroup/mdsd/transportation_network/metamodel/transportation_network/Vehicle.java b/stgroup.mdsd.transportation_network.metamodel/src-gen/stgroup/mdsd/transportation_network/metamodel/transportation_network/Vehicle.java new file mode 100644 index 0000000000000000000000000000000000000000..51123b9e2f87a8993cee2143cd79d3b48a1bb826 --- /dev/null +++ b/stgroup.mdsd.transportation_network.metamodel/src-gen/stgroup/mdsd/transportation_network/metamodel/transportation_network/Vehicle.java @@ -0,0 +1,117 @@ +/** + */ +package stgroup.mdsd.transportation_network.metamodel.transportation_network; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Vehicle</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link stgroup.mdsd.transportation_network.metamodel.transportation_network.Vehicle#getLocation <em>Location</em>}</li> + * <li>{@link stgroup.mdsd.transportation_network.metamodel.transportation_network.Vehicle#getModel <em>Model</em>}</li> + * <li>{@link stgroup.mdsd.transportation_network.metamodel.transportation_network.Vehicle#getFuelCapacity <em>Fuel Capacity</em>}</li> + * <li>{@link stgroup.mdsd.transportation_network.metamodel.transportation_network.Vehicle#getFuelType <em>Fuel Type</em>}</li> + * </ul> + * + * @see stgroup.mdsd.transportation_network.metamodel.transportation_network.Transportation_networkPackage#getVehicle() + * @model + * @generated + */ +public interface Vehicle extends IdentifiableElement { + /** + * Returns the value of the '<em><b>Location</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Location</em>' reference. + * @see #setLocation(Location) + * @see stgroup.mdsd.transportation_network.metamodel.transportation_network.Transportation_networkPackage#getVehicle_Location() + * @model + * @generated + */ + Location getLocation(); + + /** + * Sets the value of the '{@link stgroup.mdsd.transportation_network.metamodel.transportation_network.Vehicle#getLocation <em>Location</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Location</em>' reference. + * @see #getLocation() + * @generated + */ + void setLocation(Location value); + + /** + * Returns the value of the '<em><b>Model</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Model</em>' attribute. + * @see #setModel(String) + * @see stgroup.mdsd.transportation_network.metamodel.transportation_network.Transportation_networkPackage#getVehicle_Model() + * @model required="true" + * @generated + */ + String getModel(); + + /** + * Sets the value of the '{@link stgroup.mdsd.transportation_network.metamodel.transportation_network.Vehicle#getModel <em>Model</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Model</em>' attribute. + * @see #getModel() + * @generated + */ + void setModel(String value); + + /** + * Returns the value of the '<em><b>Fuel Capacity</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Fuel Capacity</em>' attribute. + * @see #setFuelCapacity(double) + * @see stgroup.mdsd.transportation_network.metamodel.transportation_network.Transportation_networkPackage#getVehicle_FuelCapacity() + * @model required="true" + * @generated + */ + double getFuelCapacity(); + + /** + * Sets the value of the '{@link stgroup.mdsd.transportation_network.metamodel.transportation_network.Vehicle#getFuelCapacity <em>Fuel Capacity</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Fuel Capacity</em>' attribute. + * @see #getFuelCapacity() + * @generated + */ + void setFuelCapacity(double value); + + /** + * Returns the value of the '<em><b>Fuel Type</b></em>' attribute. + * The default value is <code>"ELECTRICITY"</code>. + * The literals are from the enumeration {@link stgroup.mdsd.transportation_network.metamodel.transportation_network.FuelType}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Fuel Type</em>' attribute. + * @see stgroup.mdsd.transportation_network.metamodel.transportation_network.FuelType + * @see #setFuelType(FuelType) + * @see stgroup.mdsd.transportation_network.metamodel.transportation_network.Transportation_networkPackage#getVehicle_FuelType() + * @model default="ELECTRICITY" required="true" + * @generated + */ + FuelType getFuelType(); + + /** + * Sets the value of the '{@link stgroup.mdsd.transportation_network.metamodel.transportation_network.Vehicle#getFuelType <em>Fuel Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Fuel Type</em>' attribute. + * @see stgroup.mdsd.transportation_network.metamodel.transportation_network.FuelType + * @see #getFuelType() + * @generated + */ + void setFuelType(FuelType value); + +} // Vehicle diff --git a/stgroup.mdsd.transportation_network.metamodel/src-gen/stgroup/mdsd/transportation_network/metamodel/transportation_network/impl/RouteImpl.java b/stgroup.mdsd.transportation_network.metamodel/src-gen/stgroup/mdsd/transportation_network/metamodel/transportation_network/impl/RouteImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..4dd8a15c98e119dd347d1460c01d53e3c161844f --- /dev/null +++ b/stgroup.mdsd.transportation_network.metamodel/src-gen/stgroup/mdsd/transportation_network/metamodel/transportation_network/impl/RouteImpl.java @@ -0,0 +1,359 @@ +/** + */ +package stgroup.mdsd.transportation_network.metamodel.transportation_network.impl; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.emf.ecore.util.EObjectResolvingEList; + +import stgroup.mdsd.transportation_network.metamodel.transportation_network.Location; +import stgroup.mdsd.transportation_network.metamodel.transportation_network.RoadNetwork; +import stgroup.mdsd.transportation_network.metamodel.transportation_network.Route; +import stgroup.mdsd.transportation_network.metamodel.transportation_network.Transportation_networkPackage; +import stgroup.mdsd.transportation_network.metamodel.transportation_network.Vehicle; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Route</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link stgroup.mdsd.transportation_network.metamodel.transportation_network.impl.RouteImpl#getNetworkList <em>Network List</em>}</li> + * <li>{@link stgroup.mdsd.transportation_network.metamodel.transportation_network.impl.RouteImpl#getStart <em>Start</em>}</li> + * <li>{@link stgroup.mdsd.transportation_network.metamodel.transportation_network.impl.RouteImpl#getEnd <em>End</em>}</li> + * <li>{@link stgroup.mdsd.transportation_network.metamodel.transportation_network.impl.RouteImpl#getVehicle <em>Vehicle</em>}</li> + * </ul> + * + * @generated + */ +public class RouteImpl extends IdentifiableElementImpl implements Route { + /** + * The cached value of the '{@link #getNetworkList() <em>Network List</em>}' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getNetworkList() + * @generated + * @ordered + */ + protected EList<RoadNetwork> networkList; + + /** + * The cached value of the '{@link #getStart() <em>Start</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getStart() + * @generated + * @ordered + */ + protected Location start; + + /** + * The cached value of the '{@link #getEnd() <em>End</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getEnd() + * @generated + * @ordered + */ + protected Location end; + + /** + * The cached value of the '{@link #getVehicle() <em>Vehicle</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getVehicle() + * @generated + * @ordered + */ + protected Vehicle vehicle; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected RouteImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return Transportation_networkPackage.Literals.ROUTE; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EList<RoadNetwork> getNetworkList() { + if (networkList == null) { + networkList = new EObjectResolvingEList<RoadNetwork>(RoadNetwork.class, this, + Transportation_networkPackage.ROUTE__NETWORK_LIST); + } + return networkList; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Location getStart() { + if (start != null && start.eIsProxy()) { + InternalEObject oldStart = (InternalEObject) start; + start = (Location) eResolveProxy(oldStart); + if (start != oldStart) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, + Transportation_networkPackage.ROUTE__START, oldStart, start)); + } + } + return start; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public Location basicGetStart() { + return start; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setStart(Location newStart) { + Location oldStart = start; + start = newStart; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, Transportation_networkPackage.ROUTE__START, oldStart, + start)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Location getEnd() { + if (end != null && end.eIsProxy()) { + InternalEObject oldEnd = (InternalEObject) end; + end = (Location) eResolveProxy(oldEnd); + if (end != oldEnd) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, Transportation_networkPackage.ROUTE__END, + oldEnd, end)); + } + } + return end; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public Location basicGetEnd() { + return end; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setEnd(Location newEnd) { + Location oldEnd = end; + end = newEnd; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, Transportation_networkPackage.ROUTE__END, oldEnd, + end)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Vehicle getVehicle() { + return vehicle; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetVehicle(Vehicle newVehicle, NotificationChain msgs) { + Vehicle oldVehicle = vehicle; + vehicle = newVehicle; + if (eNotificationRequired()) { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, + Transportation_networkPackage.ROUTE__VEHICLE, oldVehicle, newVehicle); + if (msgs == null) + msgs = notification; + else + msgs.add(notification); + } + return msgs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setVehicle(Vehicle newVehicle) { + if (newVehicle != vehicle) { + NotificationChain msgs = null; + if (vehicle != null) + msgs = ((InternalEObject) vehicle).eInverseRemove(this, + EOPPOSITE_FEATURE_BASE - Transportation_networkPackage.ROUTE__VEHICLE, null, msgs); + if (newVehicle != null) + msgs = ((InternalEObject) newVehicle).eInverseAdd(this, + EOPPOSITE_FEATURE_BASE - Transportation_networkPackage.ROUTE__VEHICLE, null, msgs); + msgs = basicSetVehicle(newVehicle, msgs); + if (msgs != null) + msgs.dispatch(); + } else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, Transportation_networkPackage.ROUTE__VEHICLE, + newVehicle, newVehicle)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case Transportation_networkPackage.ROUTE__VEHICLE: + return basicSetVehicle(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case Transportation_networkPackage.ROUTE__NETWORK_LIST: + return getNetworkList(); + case Transportation_networkPackage.ROUTE__START: + if (resolve) + return getStart(); + return basicGetStart(); + case Transportation_networkPackage.ROUTE__END: + if (resolve) + return getEnd(); + return basicGetEnd(); + case Transportation_networkPackage.ROUTE__VEHICLE: + return getVehicle(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case Transportation_networkPackage.ROUTE__NETWORK_LIST: + getNetworkList().clear(); + getNetworkList().addAll((Collection<? extends RoadNetwork>) newValue); + return; + case Transportation_networkPackage.ROUTE__START: + setStart((Location) newValue); + return; + case Transportation_networkPackage.ROUTE__END: + setEnd((Location) newValue); + return; + case Transportation_networkPackage.ROUTE__VEHICLE: + setVehicle((Vehicle) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case Transportation_networkPackage.ROUTE__NETWORK_LIST: + getNetworkList().clear(); + return; + case Transportation_networkPackage.ROUTE__START: + setStart((Location) null); + return; + case Transportation_networkPackage.ROUTE__END: + setEnd((Location) null); + return; + case Transportation_networkPackage.ROUTE__VEHICLE: + setVehicle((Vehicle) null); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case Transportation_networkPackage.ROUTE__NETWORK_LIST: + return networkList != null && !networkList.isEmpty(); + case Transportation_networkPackage.ROUTE__START: + return start != null; + case Transportation_networkPackage.ROUTE__END: + return end != null; + case Transportation_networkPackage.ROUTE__VEHICLE: + return vehicle != null; + } + return super.eIsSet(featureID); + } + +} //RouteImpl diff --git a/stgroup.mdsd.transportation_network.metamodel/src-gen/stgroup/mdsd/transportation_network/metamodel/transportation_network/impl/TransportationNetworkImpl.java b/stgroup.mdsd.transportation_network.metamodel/src-gen/stgroup/mdsd/transportation_network/metamodel/transportation_network/impl/TransportationNetworkImpl.java index 74a3c21f9999b6017b2c1b2d6538c4593283022f..ba06f5197e93b085e8dd6ac83157687b8eb00658 100644 --- a/stgroup.mdsd.transportation_network.metamodel/src-gen/stgroup/mdsd/transportation_network/metamodel/transportation_network/impl/TransportationNetworkImpl.java +++ b/stgroup.mdsd.transportation_network.metamodel/src-gen/stgroup/mdsd/transportation_network/metamodel/transportation_network/impl/TransportationNetworkImpl.java @@ -16,8 +16,10 @@ import org.eclipse.emf.ecore.util.InternalEList; import stgroup.mdsd.transportation_network.metamodel.transportation_network.Location; import stgroup.mdsd.transportation_network.metamodel.transportation_network.RoadNetwork; +import stgroup.mdsd.transportation_network.metamodel.transportation_network.Route; import stgroup.mdsd.transportation_network.metamodel.transportation_network.TransportationNetwork; import stgroup.mdsd.transportation_network.metamodel.transportation_network.Transportation_networkPackage; +import stgroup.mdsd.transportation_network.metamodel.transportation_network.Vehicle; /** * <!-- begin-user-doc --> @@ -29,6 +31,8 @@ import stgroup.mdsd.transportation_network.metamodel.transportation_network.Tran * <ul> * <li>{@link stgroup.mdsd.transportation_network.metamodel.transportation_network.impl.TransportationNetworkImpl#getRoadnetworks <em>Roadnetworks</em>}</li> * <li>{@link stgroup.mdsd.transportation_network.metamodel.transportation_network.impl.TransportationNetworkImpl#getLocations <em>Locations</em>}</li> + * <li>{@link stgroup.mdsd.transportation_network.metamodel.transportation_network.impl.TransportationNetworkImpl#getRoutes <em>Routes</em>}</li> + * <li>{@link stgroup.mdsd.transportation_network.metamodel.transportation_network.impl.TransportationNetworkImpl#getCarPark <em>Car Park</em>}</li> * </ul> * * @generated @@ -54,6 +58,26 @@ public class TransportationNetworkImpl extends IdentifiableElementImpl implement */ protected EList<Location> locations; + /** + * The cached value of the '{@link #getRoutes() <em>Routes</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getRoutes() + * @generated + * @ordered + */ + protected EList<Route> routes; + + /** + * The cached value of the '{@link #getCarPark() <em>Car Park</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getCarPark() + * @generated + * @ordered + */ + protected EList<Vehicle> carPark; + /** * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -101,6 +125,34 @@ public class TransportationNetworkImpl extends IdentifiableElementImpl implement return locations; } + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EList<Route> getRoutes() { + if (routes == null) { + routes = new EObjectContainmentEList<Route>(Route.class, this, + Transportation_networkPackage.TRANSPORTATION_NETWORK__ROUTES); + } + return routes; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EList<Vehicle> getCarPark() { + if (carPark == null) { + carPark = new EObjectContainmentEList<Vehicle>(Vehicle.class, this, + Transportation_networkPackage.TRANSPORTATION_NETWORK__CAR_PARK); + } + return carPark; + } + /** * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -113,6 +165,10 @@ public class TransportationNetworkImpl extends IdentifiableElementImpl implement return ((InternalEList<?>) getRoadnetworks()).basicRemove(otherEnd, msgs); case Transportation_networkPackage.TRANSPORTATION_NETWORK__LOCATIONS: return ((InternalEList<?>) getLocations()).basicRemove(otherEnd, msgs); + case Transportation_networkPackage.TRANSPORTATION_NETWORK__ROUTES: + return ((InternalEList<?>) getRoutes()).basicRemove(otherEnd, msgs); + case Transportation_networkPackage.TRANSPORTATION_NETWORK__CAR_PARK: + return ((InternalEList<?>) getCarPark()).basicRemove(otherEnd, msgs); } return super.eInverseRemove(otherEnd, featureID, msgs); } @@ -129,6 +185,10 @@ public class TransportationNetworkImpl extends IdentifiableElementImpl implement return getRoadnetworks(); case Transportation_networkPackage.TRANSPORTATION_NETWORK__LOCATIONS: return getLocations(); + case Transportation_networkPackage.TRANSPORTATION_NETWORK__ROUTES: + return getRoutes(); + case Transportation_networkPackage.TRANSPORTATION_NETWORK__CAR_PARK: + return getCarPark(); } return super.eGet(featureID, resolve, coreType); } @@ -150,6 +210,14 @@ public class TransportationNetworkImpl extends IdentifiableElementImpl implement getLocations().clear(); getLocations().addAll((Collection<? extends Location>) newValue); return; + case Transportation_networkPackage.TRANSPORTATION_NETWORK__ROUTES: + getRoutes().clear(); + getRoutes().addAll((Collection<? extends Route>) newValue); + return; + case Transportation_networkPackage.TRANSPORTATION_NETWORK__CAR_PARK: + getCarPark().clear(); + getCarPark().addAll((Collection<? extends Vehicle>) newValue); + return; } super.eSet(featureID, newValue); } @@ -168,6 +236,12 @@ public class TransportationNetworkImpl extends IdentifiableElementImpl implement case Transportation_networkPackage.TRANSPORTATION_NETWORK__LOCATIONS: getLocations().clear(); return; + case Transportation_networkPackage.TRANSPORTATION_NETWORK__ROUTES: + getRoutes().clear(); + return; + case Transportation_networkPackage.TRANSPORTATION_NETWORK__CAR_PARK: + getCarPark().clear(); + return; } super.eUnset(featureID); } @@ -184,6 +258,10 @@ public class TransportationNetworkImpl extends IdentifiableElementImpl implement return roadnetworks != null && !roadnetworks.isEmpty(); case Transportation_networkPackage.TRANSPORTATION_NETWORK__LOCATIONS: return locations != null && !locations.isEmpty(); + case Transportation_networkPackage.TRANSPORTATION_NETWORK__ROUTES: + return routes != null && !routes.isEmpty(); + case Transportation_networkPackage.TRANSPORTATION_NETWORK__CAR_PARK: + return carPark != null && !carPark.isEmpty(); } return super.eIsSet(featureID); } diff --git a/stgroup.mdsd.transportation_network.metamodel/src-gen/stgroup/mdsd/transportation_network/metamodel/transportation_network/impl/Transportation_networkFactoryImpl.java b/stgroup.mdsd.transportation_network.metamodel/src-gen/stgroup/mdsd/transportation_network/metamodel/transportation_network/impl/Transportation_networkFactoryImpl.java index 24ce3653a2663e4009e3c7d39919e1cd61c72fdd..fa6a10f97bbbd262b85a2cd5eceb98b558dcbb3b 100644 --- a/stgroup.mdsd.transportation_network.metamodel/src-gen/stgroup/mdsd/transportation_network/metamodel/transportation_network/impl/Transportation_networkFactoryImpl.java +++ b/stgroup.mdsd.transportation_network.metamodel/src-gen/stgroup/mdsd/transportation_network/metamodel/transportation_network/impl/Transportation_networkFactoryImpl.java @@ -75,6 +75,10 @@ public class Transportation_networkFactoryImpl extends EFactoryImpl implements T return createCompanyWarehouse(); case Transportation_networkPackage.CUSTOMER_WAREHOUSE: return createCustomerWarehouse(); + case Transportation_networkPackage.ROUTE: + return createRoute(); + case Transportation_networkPackage.VEHICLE: + return createVehicle(); default: throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier"); } @@ -209,6 +213,28 @@ public class Transportation_networkFactoryImpl extends EFactoryImpl implements T return customerWarehouse; } + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Route createRoute() { + RouteImpl route = new RouteImpl(); + return route; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Vehicle createVehicle() { + VehicleImpl vehicle = new VehicleImpl(); + return vehicle; + } + /** * <!-- begin-user-doc --> * <!-- end-user-doc --> diff --git a/stgroup.mdsd.transportation_network.metamodel/src-gen/stgroup/mdsd/transportation_network/metamodel/transportation_network/impl/Transportation_networkPackageImpl.java b/stgroup.mdsd.transportation_network.metamodel/src-gen/stgroup/mdsd/transportation_network/metamodel/transportation_network/impl/Transportation_networkPackageImpl.java index 65611de4adf6f755d67f756a70ed54feab529049..48d00ae9cf09f2be1d5ffef5968c6ea8c90ba9c9 100644 --- a/stgroup.mdsd.transportation_network.metamodel/src-gen/stgroup/mdsd/transportation_network/metamodel/transportation_network/impl/Transportation_networkPackageImpl.java +++ b/stgroup.mdsd.transportation_network.metamodel/src-gen/stgroup/mdsd/transportation_network/metamodel/transportation_network/impl/Transportation_networkPackageImpl.java @@ -22,9 +22,11 @@ import stgroup.mdsd.transportation_network.metamodel.transportation_network.Poin import stgroup.mdsd.transportation_network.metamodel.transportation_network.RestStop; import stgroup.mdsd.transportation_network.metamodel.transportation_network.Road; import stgroup.mdsd.transportation_network.metamodel.transportation_network.RoadNetwork; +import stgroup.mdsd.transportation_network.metamodel.transportation_network.Route; import stgroup.mdsd.transportation_network.metamodel.transportation_network.TransportationNetwork; import stgroup.mdsd.transportation_network.metamodel.transportation_network.Transportation_networkFactory; import stgroup.mdsd.transportation_network.metamodel.transportation_network.Transportation_networkPackage; +import stgroup.mdsd.transportation_network.metamodel.transportation_network.Vehicle; import stgroup.mdsd.transportation_network.metamodel.transportation_network.Warehouse; /** @@ -125,6 +127,20 @@ public class Transportation_networkPackageImpl extends EPackageImpl implements T */ private EClass customerWarehouseEClass = null; + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass routeEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass vehicleEClass = null; + /** * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -227,6 +243,26 @@ public class Transportation_networkPackageImpl extends EPackageImpl implements T return (EReference) transportationNetworkEClass.getEStructuralFeatures().get(1); } + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getTransportationNetwork_Routes() { + return (EReference) transportationNetworkEClass.getEStructuralFeatures().get(2); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getTransportationNetwork_CarPark() { + return (EReference) transportationNetworkEClass.getEStructuralFeatures().get(3); + } + /** * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -467,6 +503,106 @@ public class Transportation_networkPackageImpl extends EPackageImpl implements T return (EAttribute) customerWarehouseEClass.getEStructuralFeatures().get(0); } + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getRoute() { + return routeEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getRoute_NetworkList() { + return (EReference) routeEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getRoute_Start() { + return (EReference) routeEClass.getEStructuralFeatures().get(1); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getRoute_End() { + return (EReference) routeEClass.getEStructuralFeatures().get(2); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getRoute_Vehicle() { + return (EReference) routeEClass.getEStructuralFeatures().get(3); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getVehicle() { + return vehicleEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getVehicle_Location() { + return (EReference) vehicleEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getVehicle_Model() { + return (EAttribute) vehicleEClass.getEStructuralFeatures().get(1); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getVehicle_FuelCapacity() { + return (EAttribute) vehicleEClass.getEStructuralFeatures().get(2); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getVehicle_FuelType() { + return (EAttribute) vehicleEClass.getEStructuralFeatures().get(3); + } + /** * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -510,6 +646,8 @@ public class Transportation_networkPackageImpl extends EPackageImpl implements T transportationNetworkEClass = createEClass(TRANSPORTATION_NETWORK); createEReference(transportationNetworkEClass, TRANSPORTATION_NETWORK__ROADNETWORKS); createEReference(transportationNetworkEClass, TRANSPORTATION_NETWORK__LOCATIONS); + createEReference(transportationNetworkEClass, TRANSPORTATION_NETWORK__ROUTES); + createEReference(transportationNetworkEClass, TRANSPORTATION_NETWORK__CAR_PARK); locationEClass = createEClass(LOCATION); createEReference(locationEClass, LOCATION__POIS); @@ -547,6 +685,18 @@ public class Transportation_networkPackageImpl extends EPackageImpl implements T customerWarehouseEClass = createEClass(CUSTOMER_WAREHOUSE); createEAttribute(customerWarehouseEClass, CUSTOMER_WAREHOUSE__CUSTOMER_NAME); + routeEClass = createEClass(ROUTE); + createEReference(routeEClass, ROUTE__NETWORK_LIST); + createEReference(routeEClass, ROUTE__START); + createEReference(routeEClass, ROUTE__END); + createEReference(routeEClass, ROUTE__VEHICLE); + + vehicleEClass = createEClass(VEHICLE); + createEReference(vehicleEClass, VEHICLE__LOCATION); + createEAttribute(vehicleEClass, VEHICLE__MODEL); + createEAttribute(vehicleEClass, VEHICLE__FUEL_CAPACITY); + createEAttribute(vehicleEClass, VEHICLE__FUEL_TYPE); + // Create enums fuelTypeEEnum = createEEnum(FUEL_TYPE); } @@ -591,6 +741,8 @@ public class Transportation_networkPackageImpl extends EPackageImpl implements T otherEClass.getESuperTypes().add(this.getPointOfInterest()); companyWarehouseEClass.getESuperTypes().add(this.getWarehouse()); customerWarehouseEClass.getESuperTypes().add(this.getWarehouse()); + routeEClass.getESuperTypes().add(this.getIdentifiableElement()); + vehicleEClass.getESuperTypes().add(this.getIdentifiableElement()); // Initialize classes, features, and operations; add parameters initEClass(transportationNetworkEClass, TransportationNetwork.class, "TransportationNetwork", !IS_ABSTRACT, @@ -601,6 +753,12 @@ public class Transportation_networkPackageImpl extends EPackageImpl implements T initEReference(getTransportationNetwork_Locations(), this.getLocation(), null, "locations", null, 0, -1, TransportationNetwork.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getTransportationNetwork_Routes(), this.getRoute(), null, "routes", null, 0, -1, + TransportationNetwork.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, + !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getTransportationNetwork_CarPark(), this.getVehicle(), null, "carPark", null, 0, -1, + TransportationNetwork.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, + !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(locationEClass, Location.class, "Location", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); @@ -667,6 +825,31 @@ public class Transportation_networkPackageImpl extends EPackageImpl implements T CustomerWarehouse.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEClass(routeEClass, Route.class, "Route", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getRoute_NetworkList(), this.getRoadNetwork(), null, "networkList", null, 0, -1, Route.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getRoute_Start(), this.getLocation(), null, "start", null, 0, 1, Route.class, !IS_TRANSIENT, + !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, + IS_ORDERED); + initEReference(getRoute_End(), this.getLocation(), null, "end", null, 0, 1, Route.class, !IS_TRANSIENT, + !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, + IS_ORDERED); + initEReference(getRoute_Vehicle(), this.getVehicle(), null, "vehicle", null, 1, 1, Route.class, !IS_TRANSIENT, + !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, + IS_ORDERED); + + initEClass(vehicleEClass, Vehicle.class, "Vehicle", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getVehicle_Location(), this.getLocation(), null, "location", null, 0, 1, Vehicle.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getVehicle_Model(), ecorePackage.getEString(), "model", null, 1, 1, Vehicle.class, !IS_TRANSIENT, + !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getVehicle_FuelCapacity(), ecorePackage.getEDouble(), "fuelCapacity", null, 1, 1, Vehicle.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getVehicle_FuelType(), this.getFuelType(), "fuelType", "ELECTRICITY", 1, 1, Vehicle.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + // Initialize enums and add enum literals initEEnum(fuelTypeEEnum, FuelType.class, "FuelType"); addEEnumLiteral(fuelTypeEEnum, FuelType.PETROL); diff --git a/stgroup.mdsd.transportation_network.metamodel/src-gen/stgroup/mdsd/transportation_network/metamodel/transportation_network/impl/VehicleImpl.java b/stgroup.mdsd.transportation_network.metamodel/src-gen/stgroup/mdsd/transportation_network/metamodel/transportation_network/impl/VehicleImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..28fdaa99cda60efefbebac3ef5473f947d08878f --- /dev/null +++ b/stgroup.mdsd.transportation_network.metamodel/src-gen/stgroup/mdsd/transportation_network/metamodel/transportation_network/impl/VehicleImpl.java @@ -0,0 +1,348 @@ +/** + */ +package stgroup.mdsd.transportation_network.metamodel.transportation_network.impl; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import stgroup.mdsd.transportation_network.metamodel.transportation_network.FuelType; +import stgroup.mdsd.transportation_network.metamodel.transportation_network.Location; +import stgroup.mdsd.transportation_network.metamodel.transportation_network.Transportation_networkPackage; +import stgroup.mdsd.transportation_network.metamodel.transportation_network.Vehicle; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Vehicle</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link stgroup.mdsd.transportation_network.metamodel.transportation_network.impl.VehicleImpl#getLocation <em>Location</em>}</li> + * <li>{@link stgroup.mdsd.transportation_network.metamodel.transportation_network.impl.VehicleImpl#getModel <em>Model</em>}</li> + * <li>{@link stgroup.mdsd.transportation_network.metamodel.transportation_network.impl.VehicleImpl#getFuelCapacity <em>Fuel Capacity</em>}</li> + * <li>{@link stgroup.mdsd.transportation_network.metamodel.transportation_network.impl.VehicleImpl#getFuelType <em>Fuel Type</em>}</li> + * </ul> + * + * @generated + */ +public class VehicleImpl extends IdentifiableElementImpl implements Vehicle { + /** + * The cached value of the '{@link #getLocation() <em>Location</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getLocation() + * @generated + * @ordered + */ + protected Location location; + + /** + * The default value of the '{@link #getModel() <em>Model</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getModel() + * @generated + * @ordered + */ + protected static final String MODEL_EDEFAULT = null; + + /** + * The cached value of the '{@link #getModel() <em>Model</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getModel() + * @generated + * @ordered + */ + protected String model = MODEL_EDEFAULT; + + /** + * The default value of the '{@link #getFuelCapacity() <em>Fuel Capacity</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getFuelCapacity() + * @generated + * @ordered + */ + protected static final double FUEL_CAPACITY_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getFuelCapacity() <em>Fuel Capacity</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getFuelCapacity() + * @generated + * @ordered + */ + protected double fuelCapacity = FUEL_CAPACITY_EDEFAULT; + + /** + * The default value of the '{@link #getFuelType() <em>Fuel Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getFuelType() + * @generated + * @ordered + */ + protected static final FuelType FUEL_TYPE_EDEFAULT = FuelType.ELECTRICITY; + + /** + * The cached value of the '{@link #getFuelType() <em>Fuel Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getFuelType() + * @generated + * @ordered + */ + protected FuelType fuelType = FUEL_TYPE_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected VehicleImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return Transportation_networkPackage.Literals.VEHICLE; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Location getLocation() { + if (location != null && location.eIsProxy()) { + InternalEObject oldLocation = (InternalEObject) location; + location = (Location) eResolveProxy(oldLocation); + if (location != oldLocation) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, + Transportation_networkPackage.VEHICLE__LOCATION, oldLocation, location)); + } + } + return location; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public Location basicGetLocation() { + return location; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setLocation(Location newLocation) { + Location oldLocation = location; + location = newLocation; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, Transportation_networkPackage.VEHICLE__LOCATION, + oldLocation, location)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getModel() { + return model; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setModel(String newModel) { + String oldModel = model; + model = newModel; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, Transportation_networkPackage.VEHICLE__MODEL, + oldModel, model)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public double getFuelCapacity() { + return fuelCapacity; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setFuelCapacity(double newFuelCapacity) { + double oldFuelCapacity = fuelCapacity; + fuelCapacity = newFuelCapacity; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, Transportation_networkPackage.VEHICLE__FUEL_CAPACITY, + oldFuelCapacity, fuelCapacity)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public FuelType getFuelType() { + return fuelType; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setFuelType(FuelType newFuelType) { + FuelType oldFuelType = fuelType; + fuelType = newFuelType == null ? FUEL_TYPE_EDEFAULT : newFuelType; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, Transportation_networkPackage.VEHICLE__FUEL_TYPE, + oldFuelType, fuelType)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case Transportation_networkPackage.VEHICLE__LOCATION: + if (resolve) + return getLocation(); + return basicGetLocation(); + case Transportation_networkPackage.VEHICLE__MODEL: + return getModel(); + case Transportation_networkPackage.VEHICLE__FUEL_CAPACITY: + return getFuelCapacity(); + case Transportation_networkPackage.VEHICLE__FUEL_TYPE: + return getFuelType(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case Transportation_networkPackage.VEHICLE__LOCATION: + setLocation((Location) newValue); + return; + case Transportation_networkPackage.VEHICLE__MODEL: + setModel((String) newValue); + return; + case Transportation_networkPackage.VEHICLE__FUEL_CAPACITY: + setFuelCapacity((Double) newValue); + return; + case Transportation_networkPackage.VEHICLE__FUEL_TYPE: + setFuelType((FuelType) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case Transportation_networkPackage.VEHICLE__LOCATION: + setLocation((Location) null); + return; + case Transportation_networkPackage.VEHICLE__MODEL: + setModel(MODEL_EDEFAULT); + return; + case Transportation_networkPackage.VEHICLE__FUEL_CAPACITY: + setFuelCapacity(FUEL_CAPACITY_EDEFAULT); + return; + case Transportation_networkPackage.VEHICLE__FUEL_TYPE: + setFuelType(FUEL_TYPE_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case Transportation_networkPackage.VEHICLE__LOCATION: + return location != null; + case Transportation_networkPackage.VEHICLE__MODEL: + return MODEL_EDEFAULT == null ? model != null : !MODEL_EDEFAULT.equals(model); + case Transportation_networkPackage.VEHICLE__FUEL_CAPACITY: + return fuelCapacity != FUEL_CAPACITY_EDEFAULT; + case Transportation_networkPackage.VEHICLE__FUEL_TYPE: + return fuelType != FUEL_TYPE_EDEFAULT; + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (model: "); + result.append(model); + result.append(", fuelCapacity: "); + result.append(fuelCapacity); + result.append(", fuelType: "); + result.append(fuelType); + result.append(')'); + return result.toString(); + } + +} //VehicleImpl diff --git a/stgroup.mdsd.transportation_network.metamodel/src-gen/stgroup/mdsd/transportation_network/metamodel/transportation_network/util/Transportation_networkAdapterFactory.java b/stgroup.mdsd.transportation_network.metamodel/src-gen/stgroup/mdsd/transportation_network/metamodel/transportation_network/util/Transportation_networkAdapterFactory.java index ddbfcb6ee4ecb96d451e3e3f642408b1bb1c39c4..a4d5e90962c7b47d1d574b051c76afc1e0b27d9a 100644 --- a/stgroup.mdsd.transportation_network.metamodel/src-gen/stgroup/mdsd/transportation_network/metamodel/transportation_network/util/Transportation_networkAdapterFactory.java +++ b/stgroup.mdsd.transportation_network.metamodel/src-gen/stgroup/mdsd/transportation_network/metamodel/transportation_network/util/Transportation_networkAdapterFactory.java @@ -131,6 +131,16 @@ public class Transportation_networkAdapterFactory extends AdapterFactoryImpl { return createCustomerWarehouseAdapter(); } + @Override + public Adapter caseRoute(Route object) { + return createRouteAdapter(); + } + + @Override + public Adapter caseVehicle(Vehicle object) { + return createVehicleAdapter(); + } + @Override public Adapter defaultCase(EObject object) { return createEObjectAdapter(); @@ -332,6 +342,34 @@ public class Transportation_networkAdapterFactory extends AdapterFactoryImpl { return null; } + /** + * Creates a new adapter for an object of class '{@link stgroup.mdsd.transportation_network.metamodel.transportation_network.Route <em>Route</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see stgroup.mdsd.transportation_network.metamodel.transportation_network.Route + * @generated + */ + public Adapter createRouteAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link stgroup.mdsd.transportation_network.metamodel.transportation_network.Vehicle <em>Vehicle</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see stgroup.mdsd.transportation_network.metamodel.transportation_network.Vehicle + * @generated + */ + public Adapter createVehicleAdapter() { + return null; + } + /** * Creates a new adapter for the default case. * <!-- begin-user-doc --> diff --git a/stgroup.mdsd.transportation_network.metamodel/src-gen/stgroup/mdsd/transportation_network/metamodel/transportation_network/util/Transportation_networkSwitch.java b/stgroup.mdsd.transportation_network.metamodel/src-gen/stgroup/mdsd/transportation_network/metamodel/transportation_network/util/Transportation_networkSwitch.java index 2b4fcabb1375fd99aac923056cb2aac67fdc4bde..f4beee276bbc8561d3c20b93e2985cfd37336907 100644 --- a/stgroup.mdsd.transportation_network.metamodel/src-gen/stgroup/mdsd/transportation_network/metamodel/transportation_network/util/Transportation_networkSwitch.java +++ b/stgroup.mdsd.transportation_network.metamodel/src-gen/stgroup/mdsd/transportation_network/metamodel/transportation_network/util/Transportation_networkSwitch.java @@ -195,6 +195,24 @@ public class Transportation_networkSwitch<T> extends Switch<T> { result = defaultCase(theEObject); return result; } + case Transportation_networkPackage.ROUTE: { + Route route = (Route) theEObject; + T result = caseRoute(route); + if (result == null) + result = caseIdentifiableElement(route); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case Transportation_networkPackage.VEHICLE: { + Vehicle vehicle = (Vehicle) theEObject; + T result = caseVehicle(vehicle); + if (result == null) + result = caseIdentifiableElement(vehicle); + if (result == null) + result = defaultCase(theEObject); + return result; + } default: return defaultCase(theEObject); } @@ -395,6 +413,36 @@ public class Transportation_networkSwitch<T> extends Switch<T> { return null; } + /** + * Returns the result of interpreting the object as an instance of '<em>Route</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Route</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseRoute(Route object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Vehicle</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Vehicle</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseVehicle(Vehicle object) { + return null; + } + /** * Returns the result of interpreting the object as an instance of '<em>EObject</em>'. * <!-- begin-user-doc -->