blob: d72778fc243b63f2edc6d520f2166c0f4e1f22a9 [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8"?>
<ecore:EPackage xmi:version="2.0"
xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="LibraryExtension"
nsURI="http:///org/eclipse/egf/examples/library/extension/library_extension.ecore/1.0.0"
nsPrefix="egf_lib_extension">
<eClassifiers xsi:type="ecore:EClass" name="EquippedLibrary" eSuperTypes="extlibrary.ecore#//Library">
<eStructuralFeatures xsi:type="ecore:EReference" name="borrowingSystem" lowerBound="1"
eType="#//BorrowingSystem" containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="BorrowingSystem">
<eStructuralFeatures xsi:type="ecore:EReference" name="records" upperBound="-1"
eType="#//RecordType" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="activeReservations" upperBound="-1"
eType="#//Reservation" changeable="false" volatile="true" transient="true"
derived="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="activeBorrows" upperBound="-1"
eType="#//Borrow" changeable="false" volatile="true" transient="true" derived="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="RecordType" abstract="true">
<eOperations name="getDescriptionFormat" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="borrower" lowerBound="1"
eType="ecore:EClass extlibrary.ecore#//Borrower"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="item" lowerBound="1" upperBound="-1"
eType="ecore:EClass extlibrary.ecore#//CirculatingItem"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="Finished" lowerBound="1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean" defaultValueLiteral="False"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="description" lowerBound="1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString" changeable="false"
volatile="true" transient="true" derived="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Reservation" eSuperTypes="#//RecordType">
<eStructuralFeatures xsi:type="ecore:EReference" name="waitedBorrowers" upperBound="-1"
eType="ecore:EClass extlibrary.ecore#//Borrower" changeable="false" volatile="true"
transient="true" derived="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Borrow" eSuperTypes="#//RecordType"/>
<eClassifiers xsi:type="ecore:EClass" name="CrossLibraryReservation" eSuperTypes="#//Reservation">
<eStructuralFeatures xsi:type="ecore:EReference" name="involvedLibraries" upperBound="-1"
eType="#//EquippedLibrary"/>
</eClassifiers>
</ecore:EPackage>