├── .gitignore ├── CIMCheck ├── .classpath ├── .gitignore ├── .project ├── CIMCheck.launch ├── CIMCheck.xml ├── html │ ├── CIMCheck.html │ ├── CIMCheck_API.html │ └── graphic.css ├── lib │ └── scala-library.jar ├── scaladoc.sh └── src │ └── au │ └── com │ └── langdale │ ├── cimcheck │ ├── CIMCheck.scala │ └── Checker.scala │ └── util │ └── CommandLine.scala ├── CIMToolFeature ├── .project ├── GettingStarted.txt ├── LGPL.txt ├── LICENSE-Jena.txt ├── LICENSE-apache.txt ├── LICENSE.txt ├── build.properties └── feature.xml ├── CIMToolHelp ├── .classpath ├── .project ├── .settings │ └── org.eclipse.jdt.core.prefs ├── META-INF │ └── MANIFEST.MF ├── build.properties ├── html │ ├── Associations_and_Anonymous_Classes.html │ ├── Browsing_the_CIM.html │ ├── CIMCheck.html │ ├── CIMCheck_API.html │ ├── CIMToolNamespaceSupport.html │ ├── CIMTool_Topics.html │ ├── ChangeLog.html │ ├── Comparing_Profiles_and_Schemas.html │ ├── EclipseUpdate │ │ ├── update1.png │ │ └── update2.png │ ├── Enumerations_Support.html │ ├── Exchanging_CIMTool_Projects.html │ ├── ExportFromEnterpriseArchitect.html │ ├── Generating_a_Database_Schema.html │ ├── GettingStarted.html │ ├── HowToValidateCPSM.html │ ├── LGPL.html │ ├── MultipleProfiles.html │ ├── MultipleProfiles │ │ ├── screen1.png │ │ ├── screen2.png │ │ ├── screen3.png │ │ ├── screen4.png │ │ └── screen5.png │ ├── Namespaces.html │ ├── New_and_Notable_for_1_9.html │ ├── OWL_as_a_Profile_Language.html │ ├── ProfileStructure.png │ ├── Profile_Maintenance.html │ ├── Profile_Structure_Diagram.html │ ├── Repair │ │ ├── repair.png │ │ └── repair1.png │ ├── Search │ │ ├── browsing.png │ │ ├── browsing1.png │ │ ├── prosearch.png │ │ ├── search.png │ │ ├── search1.png │ │ ├── search2.png │ │ └── search3.png │ ├── Searching_Schemas_and_Profiles.html │ ├── UMLOWL.html │ ├── Using_CIMTool_with_Enterprise_Architect.html │ ├── Using_CIMTool_with_Protege_and_Top_Braid.html │ ├── ValidationCases.html │ ├── ValidationRules.html │ ├── add_button1.png │ ├── add_button2.png │ ├── aggregate.png │ ├── association1.png │ ├── association2.png │ ├── association3.png │ ├── association4.png │ ├── association5.png │ ├── association6.png │ ├── association7.png │ ├── association8.png │ ├── browsing.png │ ├── browsing1.png │ ├── class.png │ ├── composite.png │ ├── enums0.png │ ├── enums1.png │ ├── enums2.png │ ├── enums3.png │ ├── enums4.png │ ├── enums5.png │ ├── enums6.png │ ├── functional.png │ ├── graphic.css │ ├── inverse.png │ ├── minus.png │ ├── plus.png │ ├── plusinc.png │ ├── property.png │ ├── prosearch.png │ ├── repair.png │ ├── repair1.png │ ├── search.png │ ├── search1.png │ ├── search2.png │ ├── search3.png │ ├── subclass.png │ └── superclass.png ├── plugin.xml └── toc.xml ├── CIMToolPlugin ├── .classpath ├── .project ├── .settings │ └── org.eclipse.jdt.core.prefs ├── META-INF │ └── MANIFEST.MF ├── build.properties ├── graphics │ ├── aggregate.svg │ ├── anontype.svg │ ├── attribute.svg │ ├── catalog.svg │ ├── class.svg │ ├── composite.svg │ ├── compoundclass.svg │ ├── compoundelement.svg │ ├── datatype.svg │ ├── detail.svg │ ├── element.svg │ ├── empty.svg │ ├── enumclass.svg │ ├── enumelement.svg │ ├── enumproperty.svg │ ├── enumvalue.svg │ ├── envelope.svg │ ├── equiv.svg │ ├── extension.svg │ ├── extensionclass.svg │ ├── functional.svg │ ├── general.svg │ ├── html.svg │ ├── icon.svg │ ├── incremental.svg │ ├── individual.svg │ ├── individuals.svg │ ├── inverse.svg │ ├── key.svg │ ├── left.svg │ ├── leftfast.svg │ ├── minus.svg │ ├── note.svg │ ├── package.svg │ ├── plus.svg │ ├── plusinc.svg │ ├── property.svg │ ├── prosearch.svg │ ├── reference.svg │ ├── repair.svg │ ├── right.svg │ ├── rootelement.svg │ ├── rules.svg │ ├── search.svg │ ├── shadow.svg │ ├── spreadsheet.svg │ ├── subclass.svg │ ├── subtype.svg │ ├── superclass.svg │ ├── supertype.svg │ ├── type.svg │ ├── validate.svg │ └── xsd.svg ├── icons │ ├── aggregate-32.png │ ├── aggregate.png │ ├── anontype-32.png │ ├── anontype.png │ ├── attribute-32.png │ ├── attribute.png │ ├── catalog-32.png │ ├── catalog.png │ ├── class-32.png │ ├── class.png │ ├── composite-32.png │ ├── composite.png │ ├── compoundclass-32.png │ ├── compoundclass.png │ ├── compoundelement-32.png │ ├── compoundelement.png │ ├── datatype-32.png │ ├── datatype.png │ ├── detail-32.png │ ├── detail.png │ ├── element-32.png │ ├── element.png │ ├── empty-32.png │ ├── empty.png │ ├── enumclass-32.png │ ├── enumclass.png │ ├── enumelement-32.png │ ├── enumelement.png │ ├── enumproperty-32.png │ ├── enumproperty.png │ ├── enumvalue-32.png │ ├── enumvalue.png │ ├── envelope-32.png │ ├── envelope.png │ ├── equiv-32.png │ ├── equiv.png │ ├── error_tsk.png │ ├── extension-32.png │ ├── extension.png │ ├── extensionclass-32.png │ ├── extensionclass.png │ ├── functional-32.png │ ├── functional.png │ ├── general-32.png │ ├── general.png │ ├── html-32.png │ ├── html.png │ ├── icon-32.png │ ├── icon.png │ ├── incremental-32.png │ ├── incremental.png │ ├── individual-32.png │ ├── individual.png │ ├── individuals-32.png │ ├── individuals.png │ ├── inverse-32.png │ ├── inverse.png │ ├── key-32.png │ ├── key.png │ ├── left-32.png │ ├── left.png │ ├── leftfast-32.png │ ├── leftfast.png │ ├── minus-32.png │ ├── minus.png │ ├── note-32.png │ ├── note.png │ ├── package-32.png │ ├── package.png │ ├── plus-32.png │ ├── plus.png │ ├── plusinc-32.png │ ├── plusinc.png │ ├── property-32.png │ ├── property.png │ ├── prosearch-32.png │ ├── prosearch.png │ ├── reference-32.png │ ├── reference.png │ ├── repair-32.png │ ├── repair.png │ ├── right-32.png │ ├── right.png │ ├── rootelement-32.png │ ├── rootelement.png │ ├── rules-32.png │ ├── rules.png │ ├── sample.gif │ ├── search-32.png │ ├── search.png │ ├── shadow-32.png │ ├── shadow.png │ ├── spreadsheet-32.png │ ├── spreadsheet.png │ ├── subclass-32.png │ ├── subclass.png │ ├── subtype-32.png │ ├── subtype.png │ ├── superclass-32.png │ ├── superclass.png │ ├── supertype-32.png │ ├── supertype.png │ ├── type-32.png │ ├── type.png │ ├── validate-32.png │ ├── validate.png │ ├── xsd-32.png │ └── xsd.png ├── lib │ └── commons-logging-1.1.1.jar ├── makeicons.launch ├── makeicons.sh ├── plugin.xml ├── schema │ ├── model_parser.exsd │ └── profile_buildlet.exsd └── src │ └── au │ └── com │ └── langdale │ ├── cimtoole │ ├── CIMNature.java │ ├── CIMToolBrowsingPerspective.java │ ├── CIMToolPerspective.java │ ├── CIMToolPlugin.java │ ├── DisplayText.java │ ├── ValidationPerspective.java │ ├── actions │ │ ├── CleanupAction.java │ │ ├── ImportIncrementalAction.java │ │ ├── ImportModelAction.java │ │ ├── ImportProfileAction.java │ │ ├── ImportSchemaAction.java │ │ ├── JumpAction.java │ │ ├── SearchAction.java │ │ └── ToggleNatureAction.java │ ├── builder │ │ ├── Buildlet.java │ │ ├── CIMBuilder.java │ │ ├── ConsistencyChecks.java │ │ ├── IncrementalValidationBuildlet.java │ │ ├── ProfileBuildlets.java │ │ ├── SchemaBuildlet.java │ │ ├── SplitValidationBuildlet.java │ │ ├── ValidationBaseBuildlet.java │ │ └── ValidationBuildlet.java │ ├── compare │ │ ├── ModelDiffViewer.java │ │ ├── ModelDiffViewerCreator.java │ │ └── ModelStructureCreator.java │ ├── editors │ │ ├── DiagnosisEditor.java │ │ ├── InfoModelEditor.java │ │ ├── MappingEditor.java │ │ ├── ModelEditor.java │ │ ├── ModelOutliner.java │ │ ├── MultiPageEditorContributor.java │ │ ├── ProfileEditor.java │ │ ├── RepairEditor.java │ │ └── profile │ │ │ ├── Detail.java │ │ │ ├── Hierarchy.java │ │ │ ├── NamespaceWizard.java │ │ │ ├── Populate.java │ │ │ ├── PopulateBinding.java │ │ │ ├── RefactorWizard.java │ │ │ ├── Stereotype.java │ │ │ └── Summary.java │ ├── popup │ │ └── actions │ │ │ └── NewAction.java │ ├── preferences │ │ ├── PreferenceInitializer.java │ │ └── PreferencePage.java │ ├── project │ │ ├── Cache.java │ │ ├── FurnishedPropertyPage.java │ │ ├── Info.java │ │ ├── ModelMinder.java │ │ ├── NSChecker.java │ │ ├── PrettyTypes.java │ │ ├── RDBImporter.java │ │ ├── Settings.java │ │ ├── SplitModelImporter.java │ │ ├── SpreadsheetImporter.java │ │ └── Task.java │ ├── properties │ │ ├── PropertyPage.java │ │ └── PropertySupport.java │ ├── registries │ │ ├── ModelParser.java │ │ ├── ModelParserRegistry.java │ │ ├── ModelParserRegistryImpl.java │ │ ├── ProfileBuildletRegistry.java │ │ └── ProfileBuildletRegistryImpl.java │ ├── views │ │ ├── DocView.java │ │ ├── ProjectModelFollower.java │ │ ├── ProjectModelView.java │ │ ├── SelectionFollower.java │ │ └── ValidationView.java │ └── wizards │ │ ├── Cleanup.java │ │ ├── ExportSchema.java │ │ ├── ImportArchive.java │ │ ├── ImportHTMLRules.java │ │ ├── ImportIncRuleset.java │ │ ├── ImportIncremental.java │ │ ├── ImportModel.java │ │ ├── ImportProfile.java │ │ ├── ImportProfilePage.java │ │ ├── ImportRuleset.java │ │ ├── ImportSchema.java │ │ ├── ImportSpreadsheet.java │ │ ├── ImportXSDRules.java │ │ ├── NewHTMLRules.java │ │ ├── NewIncRuleset.java │ │ ├── NewMappings.java │ │ ├── NewMappingsPage.java │ │ ├── NewProfile.java │ │ ├── NewProfilePage.java │ │ ├── NewProject.java │ │ ├── NewRuleset.java │ │ ├── NewXSDRules.java │ │ ├── RuleWizardPage.java │ │ ├── SchemaExportPage.java │ │ ├── SchemaWizardPage.java │ │ └── SearchWizard.java │ ├── jena │ ├── JenaCheckTreeBinding.java │ ├── JenaTreeBinding.java │ ├── JenaTreeProvider.java │ └── OntModelAdapters.java │ ├── util │ └── ValidateSchema.java │ └── workspace │ ├── ResourceOutputStream.java │ └── ResourceUI.java ├── CIMToolProduct ├── .project ├── CIMTool.product ├── META-INF │ └── MANIFEST.MF ├── about.png ├── about.svg ├── build.properties ├── helpData.xml ├── icon-16-8.bmp ├── icon-16.bmp ├── icon-16.png ├── icon-32-8.bmp ├── icon-32.bmp ├── icon-32.png ├── icon-48-8.bmp ├── icon-48.bmp ├── icon-48.png ├── icon-64-8.bmp ├── icon-64.bmp ├── icon-64.png ├── icon.svg ├── icon.xpm ├── makeicons.sh ├── plugin.properties ├── plugin.xml ├── plugin_customization.ini ├── splash.bmp ├── splash.png └── splash.svg ├── CIMToolTest ├── .classpath ├── .project ├── .settings │ └── org.eclipse.jdt.core.prefs ├── META-INF │ └── MANIFEST.MF ├── build.properties └── src │ ├── ValidationCases │ ├── abstract_class.ttl │ ├── abstract_class.xml │ ├── add_case.xml │ ├── add_undefined_class.xml │ ├── add_undefined_property.xml │ ├── association_case.ttl │ ├── association_case.xml │ ├── base_case.ttl │ ├── base_case.xml │ ├── base_voltages.ttl │ ├── base_voltages.xml │ ├── build.sh │ ├── cpsm2007.owl │ ├── cpsm2007_no_topol.owl │ ├── domain_of_property.ttl │ ├── domain_of_property.xml │ ├── duplicate_property.xml │ ├── extra_terminals_1.ttl │ ├── extra_terminals_1.xml │ ├── extra_terminals_2.ttl │ ├── extra_terminals_2.xml │ ├── failed_precondition.xml │ ├── isolated_node_1.ttl │ ├── isolated_node_1.xml │ ├── isolated_node_2.ttl │ ├── isolated_node_2.xml │ ├── literal_value_for_object.ttl │ ├── literal_value_for_object.xml │ ├── loop_created.ttl │ ├── loop_created.xml │ ├── maximum_cardinality_1.ttl │ ├── maximum_cardinality_1.xml │ ├── maximum_cardinality_2.ttl │ ├── maximum_cardinality_2.xml │ ├── maximum_cardinality_3.ttl │ ├── maximum_cardinality_3.xml │ ├── minimum_cardinality_1.ttl │ ├── minimum_cardinality_1.xml │ ├── minimum_cardinality_2.ttl │ ├── minimum_cardinality_2.xml │ ├── minimum_cardinality_3.ttl │ ├── minimum_cardinality_3.xml │ ├── missing_property.xml │ ├── missing_terminal_1.ttl │ ├── missing_terminal_1.xml │ ├── missing_terminal_2.ttl │ ├── missing_terminal_2.xml │ ├── missing_terminal_3.ttl │ ├── missing_terminal_3.xml │ ├── range_of_datatype_1.ttl │ ├── range_of_datatype_1.xml │ ├── range_of_datatype_2.ttl │ ├── range_of_datatype_2.xml │ ├── range_of_object.ttl │ ├── range_of_object.xml │ ├── remove_case.xml │ ├── run.sh │ ├── topology_case.ttl │ ├── topology_case.xml │ ├── undefined_class.ttl │ ├── undefined_class.xml │ ├── undefined_property.ttl │ ├── undefined_property.xml │ ├── untyped_object.ttl │ ├── untyped_object.xml │ ├── untyped_subject.ttl │ └── untyped_subject.xml │ └── au │ └── com │ └── langdale │ └── cimtoole │ ├── Convert.java │ └── test │ ├── ProjectTest.java │ ├── SplitModelTest.java │ ├── TestUtility.java │ ├── ValidationTest.java │ ├── WorkbenchTest.java │ ├── WorkspaceTest.java │ ├── headless │ ├── CreateProject.java │ ├── ExtractorTest.java │ ├── IncrementalTests.java │ ├── KenaTests.java │ ├── ProfileTasks.java │ ├── SchemaTests.java │ ├── SplitReaderTest.java │ ├── TopologyTests.java │ └── TransformTasks.java │ └── ui │ ├── ModelWizards.java │ ├── ProfileWizards.java │ ├── RuleWizards.java │ └── SchemaWizards.java ├── CIMToolUpdate ├── .gitignore ├── .project ├── makepackages.sh ├── plugin_customization.ini └── site.xml ├── CIMUtil ├── .classpath ├── .project ├── .settings │ └── org.eclipse.jdt.core.prefs ├── META-INF │ └── MANIFEST.MF ├── build.properties ├── lib │ ├── commons-lang-2.6.jar │ ├── commons-logging-1.1.1.jar │ ├── jackcess-1.2.9.jar │ └── poi-3.0.1-FINAL-20070705.jar └── src │ └── au │ └── com │ └── langdale │ ├── cim │ ├── CIM.java │ └── CIMS.java │ ├── jena │ ├── JenaTreeModelBase.java │ ├── MappingTree.java │ ├── OntModelProvider.java │ ├── TreeModelBase.java │ └── UMLTreeModel.java │ ├── profiles │ ├── HierarchyModel.java │ ├── MESSAGE.java │ ├── OWLGenerator.java │ ├── ProfileClass.java │ ├── ProfileFixes.java │ ├── ProfileModel.java │ ├── ProfileSerializer.java │ ├── ProfileUtility.java │ ├── RDFSBasedGenerator.java │ ├── RDFSGenerator.java │ ├── Refactory.java │ ├── Remapper.java │ ├── Renamer.java │ ├── Reorganizer.java │ ├── SchemaGenerator.java │ ├── SpreadsheetParser.java │ ├── html.xsl │ ├── indent.xsl │ ├── jpa.xsl │ ├── scala.xsl │ ├── sql.xsl │ ├── xsd.xsl │ ├── xsdflat.xsl │ ├── xsdmdi.xsl │ ├── xsdplain.xsl │ └── xsdsimple.xsl │ ├── ui │ └── util │ │ └── NodeTraits.java │ ├── validation │ ├── ConsistencyChecker.java │ ├── DiagnosisModel.java │ ├── ModelValidator.java │ ├── ProfileValidator.java │ ├── RepairMan.java │ ├── SplitValidator.java │ ├── ValidatorUtil.java │ ├── cimtool-inc.rules │ ├── cimtool-simple.rules │ ├── cimtool-split.rules │ └── profile.rules │ └── xmi │ ├── CIMInterpreter.java │ ├── EAPExtractor.java │ ├── Translator.java │ ├── UML.java │ ├── UMLInterpreter.java │ ├── XMI.java │ ├── XMIModel.java │ └── XMIParser.java ├── Kena ├── .cimtool-settings ├── .classpath ├── .project ├── .settings │ └── org.eclipse.jdt.core.prefs ├── META-INF │ └── MANIFEST.MF ├── build.properties ├── lib │ ├── arq-2.8.4.jar │ ├── icu4j-3.4.4.jar │ ├── iri-0.8-sources.jar │ ├── iri-0.8.jar │ ├── jena-2.6.3-tests.jar │ ├── jena-2.6.3.jar │ ├── junit-4.5.jar │ ├── log4j-1.2.13.jar │ ├── lucene-core-2.3.1.jar │ ├── slf4j-api-1.5.8.jar │ ├── slf4j-log4j12-1.5.8.jar │ ├── stax-api-1.0.1.jar │ ├── wstx-asl-3.2.9.jar │ └── xercesImpl-2.7.1.jar └── src │ ├── au │ └── com │ │ └── langdale │ │ ├── inference │ │ ├── AsyncModel.java │ │ ├── AsyncResult.java │ │ ├── CompoundRule.java │ │ ├── Extractor.java │ │ ├── GraphAdapter.java │ │ ├── LOG.java │ │ ├── PartialBinding.java │ │ ├── ProxyRegistry.java │ │ ├── QuoteClause.java │ │ ├── RepairFunctors.java │ │ ├── RepairLibrary.java │ │ ├── Reporting.java │ │ ├── RuleLexer.java │ │ ├── RuleParser.java │ │ ├── SimpleInfGraph.java │ │ ├── SimpleReasoner.java │ │ ├── StandardFunctorActions.java │ │ └── ValidationBuiltins.java │ │ ├── kena │ │ ├── Composition.java │ │ ├── ConversionException.java │ │ ├── IO.java │ │ ├── Injector.java │ │ ├── LocalNameIndex.java │ │ ├── ModelFactory.java │ │ ├── NodeIterator.java │ │ ├── OntModel.java │ │ ├── OntResource.java │ │ ├── Property.java │ │ ├── PropertyIndex.java │ │ ├── RDFParser.java │ │ ├── ResIterator.java │ │ ├── Resource.java │ │ ├── ResourceFactory.java │ │ ├── SearchIndex.java │ │ └── filters │ │ │ ├── Buffer.java │ │ │ ├── FilterMap.java │ │ │ ├── ListIterator.java │ │ │ ├── ListResourceIterator.java │ │ │ ├── LiteralObjects.java │ │ │ ├── NamedSubjects.java │ │ │ ├── NodeLookAhead.java │ │ │ ├── Nodes.java │ │ │ ├── Objects.java │ │ │ ├── ObjectsExcluding.java │ │ │ ├── ResourceObjects.java │ │ │ ├── Subjects.java │ │ │ ├── SubjectsExcluding.java │ │ │ ├── TransitiveIterator.java │ │ │ ├── Unique.java │ │ │ ├── UniqueObjects.java │ │ │ ├── UniqueSubjects.java │ │ │ ├── UnnamedObjects.java │ │ │ └── Wrapper.java │ │ ├── sax │ │ ├── AbstractReader.java │ │ ├── XMLElement.java │ │ ├── XMLInterpreter.java │ │ ├── XMLMode.java │ │ └── XMLReaderBase.java │ │ ├── splitmodel │ │ ├── SplitBase.java │ │ ├── SplitReader.java │ │ └── SplitWriter.java │ │ └── util │ │ ├── Formater.java │ │ ├── Logger.java │ │ ├── MultiMap.java │ │ ├── NSMapper.java │ │ ├── Profiler.java │ │ └── TextUtil.java │ └── com │ └── hp │ └── hpl │ └── jena │ └── rdf │ └── arp │ ├── QuotedStatementHandler.java │ ├── impl │ └── ARPResource.java │ └── states │ ├── WantPropertyElement.java │ └── WantQuotedDescription.java ├── ModelExtractor ├── .classpath ├── .project ├── model.csv ├── model.dot ├── model.pdf ├── modelp.pdf └── src │ └── au │ └── com │ └── langdale │ └── modelex │ └── Main.scala ├── RCPUtil ├── .cimtool-settings ├── .classpath ├── .project ├── META-INF │ └── MANIFEST.MF ├── build.properties └── src │ └── au │ └── com │ └── langdale │ ├── ui │ ├── binding │ │ ├── AnyModel.java │ │ ├── ArrayModel.java │ │ ├── BooleanBinding.java │ │ ├── BooleanModel.java │ │ ├── FilteredContentProvider.java │ │ ├── ListBinding.java │ │ ├── RadioTextBinding.java │ │ ├── TableBinding.java │ │ ├── TextBinding.java │ │ ├── TextModel.java │ │ ├── Validator.java │ │ └── Validators.java │ ├── builder │ │ ├── ArrayComposite.java │ │ ├── Assembly.java │ │ ├── ButtonObserver.java │ │ ├── FurnishedEditor.java │ │ ├── FurnishedMultiEditor.java │ │ ├── FurnishedWizardPage.java │ │ ├── LayoutGenerator.java │ │ ├── Template.java │ │ └── Templates.java │ ├── plumbing │ │ ├── Binding.java │ │ ├── Bindings.java │ │ ├── Controller.java │ │ ├── ICanRefresh.java │ │ ├── Observer.java │ │ ├── Plumbing.java │ │ └── SentinelBinding.java │ └── util │ │ ├── GeneralIconCache.java │ │ ├── IconCache.java │ │ ├── SelectionProvider.java │ │ ├── Tickler.java │ │ └── WizardLauncher.java │ └── util │ └── Jobs.java ├── SKena ├── .classpath ├── .project ├── META-INF │ └── MANIFEST.MF ├── build.properties └── src │ └── au │ └── com │ └── langdale │ └── skena │ ├── Class.scala │ ├── DataProperty.scala │ ├── GraphOps.scala │ ├── Individual.scala │ ├── ListProperty.scala │ ├── Namespace.scala │ ├── ObjectProperty.scala │ ├── Property.scala │ ├── Step.scala │ ├── Vocabulary.scala │ ├── data │ └── FacetBox.scala │ ├── package.scala │ ├── serializer │ └── CIMXML.scala │ └── vocabulary │ ├── OWL.scala │ ├── RDF.scala │ ├── RDFS.scala │ └── XSD.scala ├── ScalaRCP ├── .classpath ├── .project ├── .settings │ └── org.eclipse.jdt.core.prefs ├── META-INF │ └── MANIFEST.MF ├── build.properties └── src │ └── au │ └── com │ └── langdale │ └── eclipse │ ├── ActionDelegate.scala │ ├── ConnectionTester.scala │ ├── DatabasePart.scala │ ├── DialogBuilder.scala │ ├── DisposeChain.scala │ ├── EventMonitor.scala │ ├── FormBuilder.scala │ ├── JobCache.scala │ ├── Progress.scala │ ├── Requester.scala │ ├── SelectionMonitor.scala │ ├── SettingsWizard.scala │ ├── Subscriber.scala │ ├── TableBinding.scala │ ├── TablePart.scala │ ├── TemplateBuilder.scala │ ├── UI.scala │ ├── UIActor.scala │ ├── ViewBase.scala │ ├── ViewBuilder.scala │ └── WizardBuilder.scala ├── ScalaUtil ├── .classpath ├── .project ├── .settings │ └── org.eclipse.jdt.core.prefs ├── META-INF │ └── MANIFEST.MF ├── build.properties ├── lib │ ├── ojdbc14_g.jar │ ├── sdoapi.jar │ └── slf4j-api-1.5.8.jar └── src │ ├── au │ └── com │ │ └── langdale │ │ ├── Log.scala │ │ ├── actors │ │ ├── Client.scala │ │ ├── Jobber.scala │ │ ├── Joins.scala │ │ ├── Operation.scala │ │ ├── Producer.scala │ │ ├── Publisher.scala │ │ ├── Runner.scala │ │ └── Server.scala │ │ ├── collection │ │ ├── AsyncGraph.scala │ │ ├── FilteredIterator.scala │ │ └── SymetricProperty.scala │ │ ├── db │ │ ├── ConnectionBorrower.scala │ │ ├── ConnectionHolder.scala │ │ ├── DBA.scala │ │ ├── DbService.scala │ │ ├── Oracle.scala │ │ ├── RecordType.scala │ │ ├── ResultExtractor.scala │ │ ├── SQLQuoter.scala │ │ ├── Savepoint.scala │ │ ├── SchemaBuilder.scala │ │ ├── Script.scala │ │ ├── SettingsAgent.scala │ │ ├── Spatial.scala │ │ ├── Spec.scala │ │ └── Workspace.scala │ │ ├── graphic │ │ ├── Box.scala │ │ ├── Geometry.scala │ │ ├── KML.scala │ │ ├── SVG.scala │ │ └── Tesselator.scala │ │ ├── rdf │ │ └── Graph.scala │ │ └── util │ │ ├── CommandLine.scala │ │ ├── Descriptor.scala │ │ ├── Files.scala │ │ ├── Frequency.scala │ │ ├── Graph.scala │ │ ├── Grouper.scala │ │ ├── Islands.scala │ │ ├── LogRouter.scala │ │ ├── PackageLogger.scala │ │ ├── Redirector.scala │ │ ├── Settings.scala │ │ ├── ShortestPath.scala │ │ └── SimpleLogger.java │ └── org │ └── slf4j │ └── impl │ ├── SimpleLoggerFactory.java │ ├── StaticLoggerBinder.java │ ├── StaticMDCBinder.java │ └── StaticMarkerBinder.java └── com.cimphony.cimtoole ├── .classpath ├── .project ├── .settings └── org.eclipse.jdt.core.prefs ├── META-INF └── MANIFEST.MF ├── build.properties ├── icons └── package-ecore.png ├── plugin.xml └── src └── com └── cimphony └── cimtoole ├── CimphonyCIMToolPlugin.java ├── buildlet └── EcoreBuildlet.java ├── ecore ├── EcoreExtractor.java ├── EcoreGenerator.java └── EcoreRegistryExtractor.java ├── util └── CIMToolEcoreUtil.java └── wizards ├── EPackageSelectionDialog.java ├── ExportEcore.java ├── ImportRegistrySchema.java └── RegistrySchemaWizardPage.java /.gitignore: -------------------------------------------------------------------------------- 1 | *.class 2 | bin/ 3 | *~ 4 | *.pyc 5 | .metadata 6 | Assembly 7 | CIMToolUpdate/features 8 | CIMToolUpdate/plugins 9 | CIMToolUpdate/artifacts.jar 10 | CIMToolUpdate/content.jar 11 | CIMToolUpdate/*.zip 12 | CIMToolCheck/*.zip 13 | boto 14 | botoscripts 15 | CIMToolPlugin/console.log 16 | .scala_dependencies 17 | bin 18 | .settings 19 | .directory 20 | -------------------------------------------------------------------------------- /CIMCheck/.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /CIMCheck/.gitignore: -------------------------------------------------------------------------------- 1 | bin 2 | api 3 | .manager 4 | build 5 | testdata 6 | cimcheck.zip 7 | -------------------------------------------------------------------------------- /CIMCheck/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | CIMCheck 4 | 5 | 6 | CIMToolPlugin 7 | Kena 8 | 9 | 10 | 11 | ch.epfl.lamp.sdt.core.scalabuilder 12 | 13 | 14 | 15 | 16 | 17 | ch.epfl.lamp.sdt.core.scalanature 18 | org.eclipse.jdt.core.javanature 19 | 20 | 21 | -------------------------------------------------------------------------------- /CIMCheck/html/graphic.css: -------------------------------------------------------------------------------- 1 | 2 | #logo { display: none; } 3 | #illust { display: none ; } 4 | #footer { display: none ; } 5 | 6 | h1, h2 { 7 | font-family: Arial, sans-serif; 8 | margin-left:-5mm; 9 | } 10 | h3 { 11 | font-family: Arial, sans-serif; 12 | } 13 | dt, dd, p, li { 14 | font-family: "Trebuchet MS", serif; 15 | } 16 | pre { 17 | color:darkMagenta; 18 | margin-left:1em; 19 | border: 1px solid #d7d7d7; 20 | overflow: auto; 21 | padding: .25em; 22 | } 23 | dt { 24 | margin-top:1em; 25 | } 26 | code { 27 | color:darkMagenta; 28 | } 29 | body { 30 | margin:1cm; 31 | } 32 | :link { 33 | color:red; 34 | text-decoration:underline; 35 | } 36 | .wiki-toc ol { list-style: disc; } 37 | 38 | table.wiki { 39 | border: 2px solid #ccc; 40 | border-collapse: collapse; 41 | border-spacing: 0; 42 | } 43 | table.wiki td { border: 1px solid #ccc; padding: .1em .25em; } 44 | -------------------------------------------------------------------------------- /CIMCheck/lib/scala-library.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMCheck/lib/scala-library.jar -------------------------------------------------------------------------------- /CIMCheck/scaladoc.sh: -------------------------------------------------------------------------------- 1 | ~/share/scala-2.7.7.RC1/bin/scaladoc -d api -cp $(echo build/* | sed -e 's/ /:/g') src/au/com/langdale/cimcheck/*.scala 2 | -------------------------------------------------------------------------------- /CIMCheck/src/au/com/langdale/util/CommandLine.scala: -------------------------------------------------------------------------------- 1 | package au.com.langdale.util 2 | import scala.collection.Map 3 | import scala.collection.mutable.{ListBuffer, HashMap} 4 | 5 | object CommandLine { 6 | val OPTIONAL_FLAG = "--([^=]+)"r 7 | val OPTIONAL_VALUE = "--([^=]+)=(.*)"r 8 | 9 | def parse(args: Array[String], defaults: (String, String)*): (List[String], Map[String, String]) = { 10 | val params = new ListBuffer[String] 11 | val options = new HashMap[String, String] 12 | 13 | options ++= defaults 14 | 15 | for( arg <- args ) arg match { 16 | case OPTIONAL_VALUE(name, value) => options(name) = value 17 | case OPTIONAL_FLAG(name) => options(name) = "" 18 | case param => params += param 19 | } 20 | 21 | (params.toList, options) 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /CIMToolFeature/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | CIMToolFeature 4 | 5 | 6 | 7 | 8 | 9 | org.eclipse.pde.FeatureBuilder 10 | 11 | 12 | 13 | 14 | 15 | org.eclipse.pde.FeatureNature 16 | 17 | 18 | -------------------------------------------------------------------------------- /CIMToolFeature/LICENSE.txt: -------------------------------------------------------------------------------- 1 | This software is Copyright 2005-2011 Langdale Consultants 2 | except where otherwise stated. 3 | 4 | Langdale Consultants can be contacted at: http://www.langdale.com.au 5 | 6 | You can redistribute this software and/or modify it under 7 | the terms of the GNU Lesser General Public License version 2.1 8 | as published by the Free Software Foundation. 9 | 10 | This software is distributed in the hope that it will be useful, 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 | Lesser General Public License for more details. 14 | 15 | This software includes parts of the Jena package 16 | redistributed under the Jena and the Apache licenses. 17 | See http://jena.sf.net 18 | 19 | This software includes parts of the POI package 20 | redistributed under the Apache license. 21 | See http://poi.apache.org/ 22 | 23 | Copies of the GNU Lesser General Public License, 24 | the Jena license and the Apache license are included 25 | in the CIMTool distribution. 26 | -------------------------------------------------------------------------------- /CIMToolFeature/build.properties: -------------------------------------------------------------------------------- 1 | bin.includes = feature.xml,\ 2 | ChangeLog.txt,\ 3 | GettingStarted.txt,\ 4 | LGPL.txt,\ 5 | LICENSE-Jena.txt,\ 6 | LICENSE-apache.txt,\ 7 | LICENSE.txt 8 | -------------------------------------------------------------------------------- /CIMToolHelp/.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /CIMToolHelp/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | CIMToolHelp 4 | 5 | 6 | 7 | 8 | 9 | org.eclipse.pde.ManifestBuilder 10 | 11 | 12 | 13 | 14 | org.eclipse.pde.SchemaBuilder 15 | 16 | 17 | 18 | 19 | 20 | org.eclipse.pde.PluginNature 21 | org.eclipse.jdt.core.javanature 22 | 23 | 24 | -------------------------------------------------------------------------------- /CIMToolHelp/.settings/org.eclipse.jdt.core.prefs: -------------------------------------------------------------------------------- 1 | #Tue Nov 25 10:34:16 EST 2008 2 | eclipse.preferences.version=1 3 | org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5 4 | org.eclipse.jdt.core.compiler.compliance=1.5 5 | org.eclipse.jdt.core.compiler.problem.assertIdentifier=error 6 | org.eclipse.jdt.core.compiler.problem.enumIdentifier=error 7 | org.eclipse.jdt.core.compiler.source=1.5 8 | -------------------------------------------------------------------------------- /CIMToolHelp/META-INF/MANIFEST.MF: -------------------------------------------------------------------------------- 1 | Manifest-Version: 1.0 2 | Bundle-ManifestVersion: 2 3 | Bundle-Name: CIMTool Help Plug-in 4 | Bundle-SymbolicName: au.com.langdale.cimtoole.help;singleton:=true 5 | Bundle-Version: 1.9.7.qualifier 6 | Bundle-Vendor: Langdale Consultants 7 | Bundle-RequiredExecutionEnvironment: JavaSE-1.6 8 | -------------------------------------------------------------------------------- /CIMToolHelp/build.properties: -------------------------------------------------------------------------------- 1 | bin.includes = plugin.xml,\ 2 | META-INF/,\ 3 | .,\ 4 | html/,\ 5 | *.xml 6 | -------------------------------------------------------------------------------- /CIMToolHelp/html/EclipseUpdate/update1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolHelp/html/EclipseUpdate/update1.png -------------------------------------------------------------------------------- /CIMToolHelp/html/EclipseUpdate/update2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolHelp/html/EclipseUpdate/update2.png -------------------------------------------------------------------------------- /CIMToolHelp/html/MultipleProfiles/screen1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolHelp/html/MultipleProfiles/screen1.png -------------------------------------------------------------------------------- /CIMToolHelp/html/MultipleProfiles/screen2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolHelp/html/MultipleProfiles/screen2.png -------------------------------------------------------------------------------- /CIMToolHelp/html/MultipleProfiles/screen3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolHelp/html/MultipleProfiles/screen3.png -------------------------------------------------------------------------------- /CIMToolHelp/html/MultipleProfiles/screen4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolHelp/html/MultipleProfiles/screen4.png -------------------------------------------------------------------------------- /CIMToolHelp/html/MultipleProfiles/screen5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolHelp/html/MultipleProfiles/screen5.png -------------------------------------------------------------------------------- /CIMToolHelp/html/ProfileStructure.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolHelp/html/ProfileStructure.png -------------------------------------------------------------------------------- /CIMToolHelp/html/Repair/repair.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolHelp/html/Repair/repair.png -------------------------------------------------------------------------------- /CIMToolHelp/html/Repair/repair1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolHelp/html/Repair/repair1.png -------------------------------------------------------------------------------- /CIMToolHelp/html/Search/browsing.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolHelp/html/Search/browsing.png -------------------------------------------------------------------------------- /CIMToolHelp/html/Search/browsing1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolHelp/html/Search/browsing1.png -------------------------------------------------------------------------------- /CIMToolHelp/html/Search/prosearch.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolHelp/html/Search/prosearch.png -------------------------------------------------------------------------------- /CIMToolHelp/html/Search/search.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolHelp/html/Search/search.png -------------------------------------------------------------------------------- /CIMToolHelp/html/Search/search1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolHelp/html/Search/search1.png -------------------------------------------------------------------------------- /CIMToolHelp/html/Search/search2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolHelp/html/Search/search2.png -------------------------------------------------------------------------------- /CIMToolHelp/html/Search/search3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolHelp/html/Search/search3.png -------------------------------------------------------------------------------- /CIMToolHelp/html/add_button1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolHelp/html/add_button1.png -------------------------------------------------------------------------------- /CIMToolHelp/html/add_button2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolHelp/html/add_button2.png -------------------------------------------------------------------------------- /CIMToolHelp/html/aggregate.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolHelp/html/aggregate.png -------------------------------------------------------------------------------- /CIMToolHelp/html/association1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolHelp/html/association1.png -------------------------------------------------------------------------------- /CIMToolHelp/html/association2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolHelp/html/association2.png -------------------------------------------------------------------------------- /CIMToolHelp/html/association3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolHelp/html/association3.png -------------------------------------------------------------------------------- /CIMToolHelp/html/association4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolHelp/html/association4.png -------------------------------------------------------------------------------- /CIMToolHelp/html/association5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolHelp/html/association5.png -------------------------------------------------------------------------------- /CIMToolHelp/html/association6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolHelp/html/association6.png -------------------------------------------------------------------------------- /CIMToolHelp/html/association7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolHelp/html/association7.png -------------------------------------------------------------------------------- /CIMToolHelp/html/association8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolHelp/html/association8.png -------------------------------------------------------------------------------- /CIMToolHelp/html/browsing.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolHelp/html/browsing.png -------------------------------------------------------------------------------- /CIMToolHelp/html/browsing1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolHelp/html/browsing1.png -------------------------------------------------------------------------------- /CIMToolHelp/html/class.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolHelp/html/class.png -------------------------------------------------------------------------------- /CIMToolHelp/html/composite.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolHelp/html/composite.png -------------------------------------------------------------------------------- /CIMToolHelp/html/enums0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolHelp/html/enums0.png -------------------------------------------------------------------------------- /CIMToolHelp/html/enums1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolHelp/html/enums1.png -------------------------------------------------------------------------------- /CIMToolHelp/html/enums2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolHelp/html/enums2.png -------------------------------------------------------------------------------- /CIMToolHelp/html/enums3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolHelp/html/enums3.png -------------------------------------------------------------------------------- /CIMToolHelp/html/enums4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolHelp/html/enums4.png -------------------------------------------------------------------------------- /CIMToolHelp/html/enums5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolHelp/html/enums5.png -------------------------------------------------------------------------------- /CIMToolHelp/html/enums6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolHelp/html/enums6.png -------------------------------------------------------------------------------- /CIMToolHelp/html/functional.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolHelp/html/functional.png -------------------------------------------------------------------------------- /CIMToolHelp/html/graphic.css: -------------------------------------------------------------------------------- 1 | 2 | #logo { display: none; } 3 | #illust { display: none ; } 4 | #footer { display: none ; } 5 | 6 | h1, h2 { 7 | font-family: Arial, sans-serif; 8 | margin-left:-5mm; 9 | } 10 | h3 { 11 | font-family: Arial, sans-serif; 12 | } 13 | dt, dd, p, li { 14 | font-family: "Trebuchet MS", serif; 15 | } 16 | pre { 17 | color:darkMagenta; 18 | margin-left:1em; 19 | border: 1px solid #d7d7d7; 20 | overflow: auto; 21 | padding: .25em; 22 | } 23 | dt { 24 | margin-top:1em; 25 | } 26 | code { 27 | color:darkMagenta; 28 | } 29 | body { 30 | margin:1cm; 31 | } 32 | :link { 33 | color:red; 34 | text-decoration:underline; 35 | } 36 | .wiki-toc ol { list-style: disc; } 37 | 38 | table.wiki { 39 | border: 2px solid #ccc; 40 | border-collapse: collapse; 41 | border-spacing: 0; 42 | } 43 | table.wiki td { border: 1px solid #ccc; padding: .1em .25em; } 44 | -------------------------------------------------------------------------------- /CIMToolHelp/html/inverse.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolHelp/html/inverse.png -------------------------------------------------------------------------------- /CIMToolHelp/html/minus.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolHelp/html/minus.png -------------------------------------------------------------------------------- /CIMToolHelp/html/plus.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolHelp/html/plus.png -------------------------------------------------------------------------------- /CIMToolHelp/html/plusinc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolHelp/html/plusinc.png -------------------------------------------------------------------------------- /CIMToolHelp/html/property.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolHelp/html/property.png -------------------------------------------------------------------------------- /CIMToolHelp/html/prosearch.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolHelp/html/prosearch.png -------------------------------------------------------------------------------- /CIMToolHelp/html/repair.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolHelp/html/repair.png -------------------------------------------------------------------------------- /CIMToolHelp/html/repair1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolHelp/html/repair1.png -------------------------------------------------------------------------------- /CIMToolHelp/html/search.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolHelp/html/search.png -------------------------------------------------------------------------------- /CIMToolHelp/html/search1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolHelp/html/search1.png -------------------------------------------------------------------------------- /CIMToolHelp/html/search2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolHelp/html/search2.png -------------------------------------------------------------------------------- /CIMToolHelp/html/search3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolHelp/html/search3.png -------------------------------------------------------------------------------- /CIMToolHelp/html/subclass.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolHelp/html/subclass.png -------------------------------------------------------------------------------- /CIMToolHelp/html/superclass.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolHelp/html/superclass.png -------------------------------------------------------------------------------- /CIMToolHelp/plugin.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 7 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /CIMToolPlugin/.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /CIMToolPlugin/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | CIMToolPlugin 4 | 5 | 6 | CIMTool 7 | 8 | 9 | 10 | org.eclipse.jdt.core.javabuilder 11 | 12 | 13 | 14 | 15 | org.eclipse.pde.ManifestBuilder 16 | 17 | 18 | 19 | 20 | org.eclipse.pde.SchemaBuilder 21 | 22 | 23 | 24 | 25 | 26 | org.eclipse.pde.PluginNature 27 | org.eclipse.jdt.core.javanature 28 | 29 | 30 | -------------------------------------------------------------------------------- /CIMToolPlugin/build.properties: -------------------------------------------------------------------------------- 1 | bin.includes = plugin.xml,\ 2 | META-INF/,\ 3 | icons/,\ 4 | cimtoole.jar,\ 5 | lib/,\ 6 | schema/ 7 | jars.compile.order = cimtoole.jar 8 | output.cimtoole.jar = bin/ 9 | source.cimtoole.jar = src/ 10 | 11 | -------------------------------------------------------------------------------- /CIMToolPlugin/icons/aggregate-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/aggregate-32.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/aggregate.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/aggregate.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/anontype-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/anontype-32.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/anontype.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/anontype.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/attribute-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/attribute-32.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/attribute.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/attribute.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/catalog-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/catalog-32.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/catalog.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/catalog.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/class-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/class-32.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/class.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/class.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/composite-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/composite-32.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/composite.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/composite.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/compoundclass-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/compoundclass-32.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/compoundclass.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/compoundclass.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/compoundelement-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/compoundelement-32.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/compoundelement.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/compoundelement.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/datatype-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/datatype-32.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/datatype.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/datatype.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/detail-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/detail-32.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/detail.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/detail.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/element-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/element-32.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/element.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/element.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/empty-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/empty-32.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/empty.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/empty.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/enumclass-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/enumclass-32.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/enumclass.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/enumclass.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/enumelement-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/enumelement-32.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/enumelement.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/enumelement.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/enumproperty-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/enumproperty-32.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/enumproperty.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/enumproperty.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/enumvalue-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/enumvalue-32.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/enumvalue.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/enumvalue.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/envelope-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/envelope-32.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/envelope.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/envelope.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/equiv-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/equiv-32.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/equiv.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/equiv.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/error_tsk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/error_tsk.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/extension-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/extension-32.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/extension.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/extension.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/extensionclass-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/extensionclass-32.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/extensionclass.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/extensionclass.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/functional-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/functional-32.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/functional.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/functional.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/general-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/general-32.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/general.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/general.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/html-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/html-32.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/html.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/html.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/icon-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/icon-32.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/icon.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/incremental-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/incremental-32.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/incremental.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/incremental.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/individual-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/individual-32.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/individual.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/individual.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/individuals-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/individuals-32.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/individuals.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/individuals.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/inverse-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/inverse-32.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/inverse.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/inverse.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/key-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/key-32.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/key.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/key.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/left-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/left-32.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/left.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/left.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/leftfast-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/leftfast-32.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/leftfast.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/leftfast.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/minus-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/minus-32.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/minus.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/minus.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/note-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/note-32.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/note.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/note.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/package-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/package-32.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/package.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/package.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/plus-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/plus-32.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/plus.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/plus.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/plusinc-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/plusinc-32.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/plusinc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/plusinc.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/property-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/property-32.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/property.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/property.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/prosearch-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/prosearch-32.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/prosearch.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/prosearch.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/reference-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/reference-32.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/reference.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/reference.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/repair-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/repair-32.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/repair.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/repair.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/right-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/right-32.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/right.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/right.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/rootelement-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/rootelement-32.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/rootelement.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/rootelement.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/rules-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/rules-32.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/rules.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/rules.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/sample.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/sample.gif -------------------------------------------------------------------------------- /CIMToolPlugin/icons/search-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/search-32.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/search.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/search.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/shadow-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/shadow-32.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/shadow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/shadow.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/spreadsheet-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/spreadsheet-32.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/spreadsheet.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/spreadsheet.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/subclass-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/subclass-32.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/subclass.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/subclass.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/subtype-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/subtype-32.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/subtype.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/subtype.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/superclass-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/superclass-32.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/superclass.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/superclass.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/supertype-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/supertype-32.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/supertype.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/supertype.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/type-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/type-32.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/type.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/type.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/validate-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/validate-32.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/validate.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/validate.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/xsd-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/xsd-32.png -------------------------------------------------------------------------------- /CIMToolPlugin/icons/xsd.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/icons/xsd.png -------------------------------------------------------------------------------- /CIMToolPlugin/lib/commons-logging-1.1.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolPlugin/lib/commons-logging-1.1.1.jar -------------------------------------------------------------------------------- /CIMToolPlugin/makeicons.launch: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /CIMToolPlugin/makeicons.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | # 3 | # create the PNG icons for distribution from the SVG artwork 4 | # 5 | 6 | die() { 7 | echo $1 8 | exit 1 9 | } 10 | 11 | convert() { 12 | inkscape --export-area-page --file=$1 --export-png=$2.png --export-height=16 --export-width=16 13 | inkscape --export-area-page --file=$1 --export-png=$2-32.png --export-height=32 --export-width=32 14 | # inkscape --export-area-canvas --file=$1 --export-png=$2-64.png --export-height=64 --export-width=64 15 | } 16 | 17 | convertdir() { 18 | [ -d $1 ] || die "must execute this in the project directory" 19 | [ -d $2 ] || mkdir -p $2 20 | 21 | for svg in $1/*.svg 22 | do 23 | convert $svg $2/$(basename $svg .svg) 24 | done 25 | } 26 | 27 | convertdir graphics icons 28 | # cp icons/*.png src/au/com/langdale/ui/icons/ 29 | -------------------------------------------------------------------------------- /CIMToolPlugin/src/au/com/langdale/cimtoole/DisplayText.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This software is Copyright 2005,2006,2007,2008 Langdale Consultants. 3 | * Langdale Consultants can be contacted at: http://www.langdale.com.au 4 | */ 5 | package au.com.langdale.cimtoole; 6 | 7 | import java.util.ListResourceBundle; 8 | 9 | public class DisplayText extends ListResourceBundle { 10 | 11 | @Override 12 | protected Object[][] getContents() { 13 | 14 | return new Object[][] { 15 | { "title" , "Detail" }, 16 | { "action.CopyLeftToRight.label", "" }, 17 | { "action.CopyRightToLeft.label", "" } 18 | }; 19 | 20 | } 21 | 22 | } 23 | -------------------------------------------------------------------------------- /CIMToolPlugin/src/au/com/langdale/cimtoole/actions/CleanupAction.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This software is Copyright 2005,2006,2007,2008 Langdale Consultants. 3 | * Langdale Consultants can be contacted at: http://www.langdale.com.au 4 | */ 5 | package au.com.langdale.cimtoole.actions; 6 | 7 | import org.eclipse.ui.IWorkbenchWizard; 8 | 9 | import au.com.langdale.cimtoole.wizards.Cleanup; 10 | import au.com.langdale.ui.util.WizardLauncher; 11 | 12 | public class CleanupAction extends WizardLauncher { 13 | 14 | @Override 15 | protected IWorkbenchWizard createWizard() { 16 | return new Cleanup(); 17 | } 18 | 19 | } 20 | -------------------------------------------------------------------------------- /CIMToolPlugin/src/au/com/langdale/cimtoole/actions/ImportIncrementalAction.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This software is Copyright 2005,2006,2007,2008 Langdale Consultants. 3 | * Langdale Consultants can be contacted at: http://www.langdale.com.au 4 | */ 5 | package au.com.langdale.cimtoole.actions; 6 | 7 | import org.eclipse.ui.IWorkbenchWizard; 8 | 9 | import au.com.langdale.cimtoole.wizards.ImportIncremental; 10 | import au.com.langdale.ui.util.WizardLauncher; 11 | 12 | public class ImportIncrementalAction extends WizardLauncher { 13 | 14 | @Override 15 | protected IWorkbenchWizard createWizard() { 16 | return new ImportIncremental(); 17 | } 18 | 19 | } 20 | -------------------------------------------------------------------------------- /CIMToolPlugin/src/au/com/langdale/cimtoole/actions/ImportModelAction.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This software is Copyright 2005,2006,2007,2008 Langdale Consultants. 3 | * Langdale Consultants can be contacted at: http://www.langdale.com.au 4 | */ 5 | package au.com.langdale.cimtoole.actions; 6 | 7 | import org.eclipse.ui.IWorkbenchWizard; 8 | 9 | import au.com.langdale.cimtoole.wizards.ImportModel; 10 | import au.com.langdale.ui.util.WizardLauncher; 11 | 12 | public class ImportModelAction extends WizardLauncher { 13 | 14 | @Override 15 | protected IWorkbenchWizard createWizard() { 16 | return new ImportModel(); 17 | } 18 | 19 | } 20 | -------------------------------------------------------------------------------- /CIMToolPlugin/src/au/com/langdale/cimtoole/actions/ImportProfileAction.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This software is Copyright 2005,2006,2007,2008 Langdale Consultants. 3 | * Langdale Consultants can be contacted at: http://www.langdale.com.au 4 | */ 5 | package au.com.langdale.cimtoole.actions; 6 | 7 | import org.eclipse.ui.IWorkbenchWizard; 8 | 9 | import au.com.langdale.cimtoole.wizards.ImportProfile; 10 | import au.com.langdale.ui.util.WizardLauncher; 11 | 12 | public class ImportProfileAction extends WizardLauncher { 13 | 14 | @Override 15 | protected IWorkbenchWizard createWizard() { 16 | return new ImportProfile(); 17 | } 18 | 19 | } 20 | -------------------------------------------------------------------------------- /CIMToolPlugin/src/au/com/langdale/cimtoole/actions/ImportSchemaAction.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This software is Copyright 2005,2006,2007,2008 Langdale Consultants. 3 | * Langdale Consultants can be contacted at: http://www.langdale.com.au 4 | */ 5 | package au.com.langdale.cimtoole.actions; 6 | 7 | import org.eclipse.ui.IWorkbenchWizard; 8 | 9 | import au.com.langdale.cimtoole.wizards.ImportSchema; 10 | import au.com.langdale.ui.util.WizardLauncher; 11 | 12 | public class ImportSchemaAction extends WizardLauncher { 13 | 14 | @Override 15 | protected IWorkbenchWizard createWizard() { 16 | return new ImportSchema(); 17 | } 18 | 19 | } 20 | -------------------------------------------------------------------------------- /CIMToolPlugin/src/au/com/langdale/cimtoole/actions/JumpAction.java: -------------------------------------------------------------------------------- 1 | package au.com.langdale.cimtoole.actions; 2 | 3 | import org.eclipse.jface.action.IAction; 4 | import org.eclipse.jface.viewers.ISelection; 5 | import org.eclipse.jface.viewers.IStructuredSelection; 6 | import org.eclipse.ui.IViewActionDelegate; 7 | import org.eclipse.ui.IViewPart; 8 | 9 | import au.com.langdale.jena.TreeModelBase.Node; 10 | 11 | 12 | public class JumpAction implements IViewActionDelegate { 13 | 14 | private IViewPart view; 15 | private ISelection selection; 16 | 17 | public interface Jumpable { 18 | public void jump(Node node); 19 | } 20 | 21 | public void run(IAction action) { 22 | if( view instanceof Jumpable && selection instanceof IStructuredSelection) { 23 | Jumpable searchable = (Jumpable) view; 24 | Object element = ((IStructuredSelection)selection).getFirstElement(); 25 | if( element instanceof Node ) { 26 | searchable.jump((Node)element); 27 | } 28 | } 29 | } 30 | 31 | public void selectionChanged(IAction action, ISelection selection) { 32 | this.selection = selection; 33 | } 34 | 35 | public void init(IViewPart view) { 36 | this.view = view; 37 | } 38 | 39 | } 40 | -------------------------------------------------------------------------------- /CIMToolPlugin/src/au/com/langdale/cimtoole/compare/ModelDiffViewerCreator.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This software is Copyright 2005,2006,2007,2008 Langdale Consultants. 3 | * Langdale Consultants can be contacted at: http://www.langdale.com.au 4 | */ 5 | package au.com.langdale.cimtoole.compare; 6 | 7 | import org.eclipse.compare.CompareConfiguration; 8 | import org.eclipse.compare.IViewerCreator; 9 | import org.eclipse.jface.viewers.Viewer; 10 | import org.eclipse.swt.widgets.Composite; 11 | 12 | public class ModelDiffViewerCreator implements IViewerCreator { 13 | 14 | public Viewer createViewer(Composite parent, CompareConfiguration config) { 15 | return new ModelDiffViewer(parent, config); 16 | } 17 | 18 | } 19 | -------------------------------------------------------------------------------- /CIMToolPlugin/src/au/com/langdale/cimtoole/project/PrettyTypes.java: -------------------------------------------------------------------------------- 1 | package au.com.langdale.cimtoole.project; 2 | 3 | import au.com.langdale.cim.CIMS; 4 | import au.com.langdale.xmi.UML; 5 | 6 | import com.hp.hpl.jena.rdf.model.Resource; 7 | import com.hp.hpl.jena.rdf.model.ResourceFactory; 8 | import com.hp.hpl.jena.vocabulary.OWL; 9 | import com.hp.hpl.jena.vocabulary.RDF; 10 | import com.hp.hpl.jena.vocabulary.RDFS; 11 | 12 | public class PrettyTypes { 13 | 14 | static final Object PRETTY_TYPES = new Resource[] { 15 | OWL.Class, 16 | OWL.FunctionalProperty, 17 | OWL.ObjectProperty, 18 | OWL.DatatypeProperty, 19 | RDF.Property, 20 | RDFS.Class, 21 | RDFS.Datatype, 22 | ResourceFactory.createProperty(UML.Package.getURI()), 23 | ResourceFactory.createProperty(CIMS.ClassCategory.getURI()) 24 | }; 25 | 26 | } 27 | -------------------------------------------------------------------------------- /CIMToolPlugin/src/au/com/langdale/cimtoole/registries/ModelParser.java: -------------------------------------------------------------------------------- 1 | package au.com.langdale.cimtoole.registries; 2 | 3 | import java.io.IOException; 4 | 5 | import org.eclipse.core.resources.IFile; 6 | import org.eclipse.core.runtime.CoreException; 7 | 8 | import au.com.langdale.kena.OntModel; 9 | 10 | public interface ModelParser { 11 | 12 | public OntModel getModel(); 13 | public void setFile(IFile file); 14 | public void run() throws IOException, CoreException; 15 | 16 | } 17 | -------------------------------------------------------------------------------- /CIMToolPlugin/src/au/com/langdale/cimtoole/registries/ModelParserRegistry.java: -------------------------------------------------------------------------------- 1 | package au.com.langdale.cimtoole.registries; 2 | 3 | public interface ModelParserRegistry { 4 | 5 | public static final String PARSER_REGISTRY_ID = "au.com.langdale.cimtoole.model_parser"; 6 | 7 | public static ModelParserRegistry INSTANCE = new ModelParserRegistryImpl(); 8 | 9 | public ModelParser[] getParsers(); 10 | public ModelParser[] getParsersForExtension(String extension); 11 | public String[] getExtensions(); 12 | public boolean hasParserForExtension(String extension); 13 | 14 | } 15 | -------------------------------------------------------------------------------- /CIMToolPlugin/src/au/com/langdale/cimtoole/registries/ProfileBuildletRegistry.java: -------------------------------------------------------------------------------- 1 | package au.com.langdale.cimtoole.registries; 2 | 3 | import au.com.langdale.cimtoole.builder.ProfileBuildlets.ProfileBuildlet; 4 | 5 | public interface ProfileBuildletRegistry { 6 | 7 | public static final String BUILDLET_REGISTRY_ID = "au.com.langdale.cimtoole.profile_buildlet"; 8 | 9 | public static ProfileBuildletRegistry INSTANCE = new ProfileBuildletRegistryImpl(); 10 | 11 | public ProfileBuildlet[] getBuildlets(); 12 | } 13 | -------------------------------------------------------------------------------- /CIMToolPlugin/src/au/com/langdale/util/ValidateSchema.java: -------------------------------------------------------------------------------- 1 | package au.com.langdale.util; 2 | 3 | import java.io.FileInputStream; 4 | 5 | import javax.xml.transform.Source; 6 | import javax.xml.transform.stream.StreamSource; 7 | import javax.xml.validation.SchemaFactory; 8 | 9 | public class ValidateSchema { 10 | public static void main( String[] args) throws Exception { 11 | SchemaFactory parser = SchemaFactory.newInstance("http://www.w3.org/2001/XMLSchema"); 12 | Source source = new StreamSource( new FileInputStream(args[0])); 13 | try { 14 | parser.newSchema(source); 15 | System.out.println("Schema is valid."); 16 | } catch (Exception e) { 17 | System.out.println(e.getMessage()); 18 | } 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /CIMToolProduct/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | CIMToolProduct 4 | 5 | 6 | 7 | 8 | 9 | org.eclipse.pde.ManifestBuilder 10 | 11 | 12 | 13 | 14 | org.eclipse.pde.SchemaBuilder 15 | 16 | 17 | 18 | 19 | 20 | org.eclipse.pde.PluginNature 21 | 22 | 23 | -------------------------------------------------------------------------------- /CIMToolProduct/META-INF/MANIFEST.MF: -------------------------------------------------------------------------------- 1 | Manifest-Version: 1.0 2 | Bundle-ManifestVersion: 2 3 | Bundle-Name: CIMToolEnvironment 4 | Bundle-SymbolicName: au.com.langdale.cimtool.product;singleton:=true 5 | Bundle-Version: 1.9.7.qualifier 6 | Bundle-Vendor: Langdale Consultants 7 | -------------------------------------------------------------------------------- /CIMToolProduct/about.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolProduct/about.png -------------------------------------------------------------------------------- /CIMToolProduct/build.properties: -------------------------------------------------------------------------------- 1 | bin.includes = META-INF/,\ 2 | plugin.properties,\ 3 | plugin.xml,\ 4 | plugin_customization.ini,\ 5 | splash.bmp,\ 6 | about.png,\ 7 | icon-16-8.bmp,\ 8 | icon-16.bmp,\ 9 | icon-16.png,\ 10 | icon-32-8.bmp,\ 11 | icon-32.bmp,\ 12 | icon-32.png,\ 13 | icon-48-8.bmp,\ 14 | icon-48.bmp,\ 15 | icon-48.png,\ 16 | icon-64.bmp,\ 17 | icon-64.png,\ 18 | icon.xpm,\ 19 | helpData.xml 20 | -------------------------------------------------------------------------------- /CIMToolProduct/helpData.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /CIMToolProduct/icon-16-8.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolProduct/icon-16-8.bmp -------------------------------------------------------------------------------- /CIMToolProduct/icon-16.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolProduct/icon-16.bmp -------------------------------------------------------------------------------- /CIMToolProduct/icon-16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolProduct/icon-16.png -------------------------------------------------------------------------------- /CIMToolProduct/icon-32-8.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolProduct/icon-32-8.bmp -------------------------------------------------------------------------------- /CIMToolProduct/icon-32.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolProduct/icon-32.bmp -------------------------------------------------------------------------------- /CIMToolProduct/icon-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolProduct/icon-32.png -------------------------------------------------------------------------------- /CIMToolProduct/icon-48-8.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolProduct/icon-48-8.bmp -------------------------------------------------------------------------------- /CIMToolProduct/icon-48.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolProduct/icon-48.bmp -------------------------------------------------------------------------------- /CIMToolProduct/icon-48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolProduct/icon-48.png -------------------------------------------------------------------------------- /CIMToolProduct/icon-64-8.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolProduct/icon-64-8.bmp -------------------------------------------------------------------------------- /CIMToolProduct/icon-64.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolProduct/icon-64.bmp -------------------------------------------------------------------------------- /CIMToolProduct/icon-64.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolProduct/icon-64.png -------------------------------------------------------------------------------- /CIMToolProduct/makeicons.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | # 3 | # create the PNG icons for distribution from the SVG artwork 4 | # 5 | 6 | scaleit() { 7 | # inkscape --export-area-page --file=$1.svg --export-png=$2-$3.png --export-height=$3 --export-width=$3 8 | convert $1.svg -depth 8 -resize $3x$3 $2-$3.png 9 | convert $2-$3.png $2-$3.bmp 10 | convert $2-$3.png +matte -colors 256 $2-$3-8.bmp 11 | } 12 | 13 | scaleit icon icon 16 14 | scaleit icon icon 32 15 | scaleit icon icon 48 16 | scaleit icon icon 64 17 | convert icon-32.png icon.xpm 18 | -------------------------------------------------------------------------------- /CIMToolProduct/plugin.properties: -------------------------------------------------------------------------------- 1 | productBlurb=Eclipse SDK\n\ 2 | \n\ 3 | Version: 3.6.1\n\ 4 | Build id: {0}\n\ 5 | \n\ 6 | (c) Copyright Eclipse contributors and others 2000, 2010. All rights reserved.\n\ 7 | Visit http://www.eclipse.org/platform\n\ 8 | \n\ 9 | This product includes software developed by the\n\ 10 | Apache Software Foundation http://www.apache.org/ 11 | 12 | productLicense=LGPL -------------------------------------------------------------------------------- /CIMToolProduct/plugin_customization.ini: -------------------------------------------------------------------------------- 1 | # plugin_customization.ini 2 | # sets default values for plug-in-specific preferences 3 | # keys are qualified by plug-in id 4 | # e.g., com.example.acmeplugin/myproperty=myvalue 5 | # java.io.Properties file (ISO 8859-1 with "\" escapes) 6 | # "%key" are externalized strings defined in plugin_customization.properties 7 | # This file does not need to be translated. 8 | 9 | # Property "org.eclipse.ui/defaultPerspectiveId" controls the 10 | # perspective that the workbench opens initially 11 | org.eclipse.ui/defaultPerspectiveId=au.com.langdale.cimtoole.CIMToolPerspective 12 | 13 | # new-style tabs by default 14 | org.eclipse.ui/SHOW_TRADITIONAL_STYLE_TABS=false 15 | 16 | # put the perspective switcher on the top right 17 | org.eclipse.ui/DOCK_PERSPECTIVE_BAR=topRight 18 | 19 | # show progress on startup 20 | org.eclipse.ui/SHOW_PROGRESS_ON_STARTUP=true 21 | 22 | # show build id in the splash - only for nightly, integration, and milestone builds 23 | # org.eclipse.ui.workbench/SHOW_BUILDID_ON_STARTUP=true 24 | 25 | # use the window set by default 26 | org.eclipse.ui/USE_WINDOW_WORKING_SET_BY_DEFAULT=true 27 | 28 | # Order help books in table of contents 29 | org.eclipse.help/HELP_DATA = helpData.xml -------------------------------------------------------------------------------- /CIMToolProduct/splash.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolProduct/splash.bmp -------------------------------------------------------------------------------- /CIMToolProduct/splash.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMToolProduct/splash.png -------------------------------------------------------------------------------- /CIMToolTest/.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /CIMToolTest/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | CIMToolTest 4 | 5 | 6 | 7 | 8 | 9 | org.eclipse.jdt.core.javabuilder 10 | 11 | 12 | 13 | 14 | org.eclipse.pde.ManifestBuilder 15 | 16 | 17 | 18 | 19 | org.eclipse.pde.SchemaBuilder 20 | 21 | 22 | 23 | 24 | 25 | org.eclipse.pde.PluginNature 26 | org.eclipse.jdt.core.javanature 27 | 28 | 29 | -------------------------------------------------------------------------------- /CIMToolTest/META-INF/MANIFEST.MF: -------------------------------------------------------------------------------- 1 | Manifest-Version: 1.0 2 | Bundle-ManifestVersion: 2 3 | Bundle-Name: CIMToolTest Plug-in 4 | Bundle-SymbolicName: CIMToolTest 5 | Bundle-Version: 1.0.0 6 | Require-Bundle: au.com.langdale.cimtoole, 7 | au.com.langdale.kena, 8 | au.com.langdale.rcputil, 9 | org.eclipse.core.resources, 10 | org.eclipse.core.runtime, 11 | org.eclipse.ui, 12 | org.junit 13 | Bundle-RequiredExecutionEnvironment: J2SE-1.5 14 | -------------------------------------------------------------------------------- /CIMToolTest/build.properties: -------------------------------------------------------------------------------- 1 | source.. = src/ 2 | output.. = bin/ 3 | bin.includes = META-INF/,\ 4 | .,\ 5 | bin/ 6 | additional.bundles = org.eclipse.jface 7 | -------------------------------------------------------------------------------- /CIMToolTest/src/ValidationCases/abstract_class.ttl: -------------------------------------------------------------------------------- 1 | @prefix cim: . 2 | 3 | <#acls1> 4 | a cim:IdentifiedObject ; # error 5 | cim:IdentifiedObject.name "acls1" ; 6 | . 7 | 8 | -------------------------------------------------------------------------------- /CIMToolTest/src/ValidationCases/abstract_class.xml: -------------------------------------------------------------------------------- 1 | 4 | 5 | acls1 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /CIMToolTest/src/ValidationCases/add_undefined_class.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /CIMToolTest/src/ValidationCases/add_undefined_property.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /CIMToolTest/src/ValidationCases/association_case.ttl: -------------------------------------------------------------------------------- 1 | @prefix cim: . 2 | 3 | <#bv1> 4 | a cim:BaseVoltage; 5 | cim:IdentifiedObject.name "bv1" ; 6 | cim:BaseVoltage.nominalVoltage "22" 7 | . 8 | 9 | <#sm1> 10 | a cim:SynchronousMachine ; 11 | cim:IdentifiedObject.name "acls1" ; 12 | cim:ConductingEquipment.BaseVoltage <#bv1> ; 13 | cim:SynchronousMachine.operatingMode cim:SynchronousMachineOperatingMode.generator ; 14 | cim:SynchronousMachine.type cim:SynchronousMachineType.generator ; 15 | . -------------------------------------------------------------------------------- /CIMToolTest/src/ValidationCases/association_case.xml: -------------------------------------------------------------------------------- 1 | 4 | 5 | 22 6 | bv1 7 | 8 | 9 | 10 | 11 | 12 | 13 | acls1 14 | 15 | 16 | 17 | -------------------------------------------------------------------------------- /CIMToolTest/src/ValidationCases/base_case.ttl: -------------------------------------------------------------------------------- 1 | @prefix cim: . 2 | 3 | <#bv1> 4 | a cim:BaseVoltage; 5 | cim:IdentifiedObject.name "bv1" ; 6 | cim:BaseVoltage.nominalVoltage "22" 7 | . 8 | 9 | -------------------------------------------------------------------------------- /CIMToolTest/src/ValidationCases/base_case.xml: -------------------------------------------------------------------------------- 1 | 4 | 5 | 22 6 | bv1 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /CIMToolTest/src/ValidationCases/build.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | for ttl in *.ttl 3 | do 4 | xml=$(basename $ttl .ttl).xml 5 | echo $xml 6 | sh run.sh au.com.langdale.cimtoole.Convert $ttl $xml "TTL" "RDF/XML" 7 | done 8 | 9 | -------------------------------------------------------------------------------- /CIMToolTest/src/ValidationCases/domain_of_property.ttl: -------------------------------------------------------------------------------- 1 | @prefix cim: . 2 | 3 | <#bv1> 4 | a cim:BaseVoltage; 5 | cim:IdentifiedObject.name "bv1" ; 6 | cim:BaseVoltage.nominalVoltage "22" 7 | . 8 | 9 | 10 | <#acls1> 11 | a cim:ACLineSegment ; 12 | cim:IdentifiedObject.name "acls1" ; 13 | cim:ConductingEquipment.BaseVoltage <#bv1> ; 14 | cim:SynchronousMachine.operatingMode cim:SynchronousMachineOperatingMode.generator ; # error 15 | cim:Conductor.bch ".0001" ; 16 | cim:Conductor.x "5.0" ; 17 | cim:Conductor.r ".01" ; 18 | . -------------------------------------------------------------------------------- /CIMToolTest/src/ValidationCases/domain_of_property.xml: -------------------------------------------------------------------------------- 1 | 4 | 5 | .01 6 | 5.0 7 | .0001 8 | 9 | 10 | acls1 11 | 12 | 13 | 14 | 22 15 | bv1 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /CIMToolTest/src/ValidationCases/duplicate_property.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /CIMToolTest/src/ValidationCases/failed_precondition.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /CIMToolTest/src/ValidationCases/literal_value_for_object.ttl: -------------------------------------------------------------------------------- 1 | @prefix cim: . 2 | 3 | <#bv1> 4 | a cim:BaseVoltage; 5 | cim:IdentifiedObject.name "bv1" ; 6 | cim:BaseVoltage.nominalVoltage "22" ; 7 | . 8 | 9 | <#acls1> 10 | a cim:ACLineSegment ; 11 | cim:IdentifiedObject.name "acls1" ; 12 | cim:ConductingEquipment.BaseVoltage "bogus" ; # error 13 | cim:Conductor.bch ".0001" ; 14 | cim:Conductor.x "5.0" ; 15 | cim:Conductor.r ".01" ; 16 | . 17 | 18 | -------------------------------------------------------------------------------- /CIMToolTest/src/ValidationCases/literal_value_for_object.xml: -------------------------------------------------------------------------------- 1 | 4 | 5 | .01 6 | 5.0 7 | .0001 8 | bogus 9 | acls1 10 | 11 | 12 | 13 | 22 14 | bv1 15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /CIMToolTest/src/ValidationCases/maximum_cardinality_1.ttl: -------------------------------------------------------------------------------- 1 | @prefix cim: . 2 | 3 | <#bv1> 4 | a cim:BaseVoltage; 5 | cim:IdentifiedObject.name "bv1" ; 6 | cim:IdentifiedObject.name "bogus" ; # error 7 | cim:BaseVoltage.nominalVoltage "22" 8 | . 9 | 10 | -------------------------------------------------------------------------------- /CIMToolTest/src/ValidationCases/maximum_cardinality_1.xml: -------------------------------------------------------------------------------- 1 | 4 | 5 | 22 6 | bogus 7 | bv1 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /CIMToolTest/src/ValidationCases/maximum_cardinality_2.ttl: -------------------------------------------------------------------------------- 1 | @prefix cim: . 2 | 3 | <#bv1> 4 | a cim:BaseVoltage; 5 | cim:IdentifiedObject.name "bv1" ; 6 | cim:BaseVoltage.nominalVoltage "22" 7 | . 8 | 9 | <#bv2> 10 | a cim:BaseVoltage; 11 | cim:IdentifiedObject.name "bv2" ; 12 | cim:BaseVoltage.nominalVoltage "120" 13 | . 14 | 15 | <#sm1> 16 | a cim:SynchronousMachine ; 17 | cim:IdentifiedObject.name "acls1" ; 18 | cim:ConductingEquipment.BaseVoltage <#bv1> ; 19 | cim:ConductingEquipment.BaseVoltage <#bv2> ; # error 20 | cim:SynchronousMachine.operatingMode cim:SynchronousMachineOperatingMode.generator ; 21 | cim:SynchronousMachine.type cim:SynchronousMachineType.generator ; 22 | . -------------------------------------------------------------------------------- /CIMToolTest/src/ValidationCases/maximum_cardinality_3.ttl: -------------------------------------------------------------------------------- 1 | @prefix cim: . 2 | 3 | <#bv1> 4 | a cim:BaseVoltage; 5 | cim:IdentifiedObject.name "bv1" ; 6 | cim:BaseVoltage.nominalVoltage "22" 7 | . 8 | 9 | <#sm1> 10 | a cim:SynchronousMachine ; 11 | cim:IdentifiedObject.name "acls1" ; 12 | cim:ConductingEquipment.BaseVoltage <#bv1> ; 13 | cim:SynchronousMachine.operatingMode cim:SynchronousMachineOperatingMode.generator ; 14 | cim:SynchronousMachine.operatingMode cim:SynchronousMachineOperatingMode.condenser ; # error 15 | cim:SynchronousMachine.type cim:SynchronousMachineType.generator ; 16 | . -------------------------------------------------------------------------------- /CIMToolTest/src/ValidationCases/maximum_cardinality_3.xml: -------------------------------------------------------------------------------- 1 | 4 | 5 | 22 6 | bv1 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | acls1 15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /CIMToolTest/src/ValidationCases/minimum_cardinality_1.ttl: -------------------------------------------------------------------------------- 1 | @prefix cim: . 2 | 3 | <#bv1> 4 | a cim:BaseVoltage ; 5 | # error, no cim:IdentifiedObject.name 6 | cim:BaseVoltage.nominalVoltage "22" 7 | . 8 | 9 | -------------------------------------------------------------------------------- /CIMToolTest/src/ValidationCases/minimum_cardinality_1.xml: -------------------------------------------------------------------------------- 1 | 4 | 5 | 22 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /CIMToolTest/src/ValidationCases/minimum_cardinality_2.ttl: -------------------------------------------------------------------------------- 1 | @prefix cim: . 2 | 3 | <#sm1> 4 | a cim:SynchronousMachine ; 5 | cim:IdentifiedObject.name "acls1" ; 6 | # error, no cim:ConductingEquipment.BaseVoltage 7 | cim:SynchronousMachine.operatingMode cim:SynchronousMachineOperatingMode.generator ; 8 | cim:SynchronousMachine.type cim:SynchronousMachineType.generator ; 9 | . -------------------------------------------------------------------------------- /CIMToolTest/src/ValidationCases/minimum_cardinality_2.xml: -------------------------------------------------------------------------------- 1 | 4 | 5 | 6 | 7 | acls1 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /CIMToolTest/src/ValidationCases/minimum_cardinality_3.ttl: -------------------------------------------------------------------------------- 1 | @prefix cim: . 2 | 3 | <#bv1> 4 | a cim:BaseVoltage; 5 | cim:IdentifiedObject.name "bv1" ; 6 | cim:BaseVoltage.nominalVoltage "22" 7 | . 8 | 9 | <#sm1> 10 | a cim:SynchronousMachine ; 11 | cim:IdentifiedObject.name "acls1" ; 12 | cim:ConductingEquipment.BaseVoltage <#bv1> ; 13 | # error, no cim:SynchronousMachine.operatingMode 14 | cim:SynchronousMachine.type cim:SynchronousMachineType.generator ; 15 | . -------------------------------------------------------------------------------- /CIMToolTest/src/ValidationCases/minimum_cardinality_3.xml: -------------------------------------------------------------------------------- 1 | 4 | 5 | 22 6 | bv1 7 | 8 | 9 | 10 | 11 | 12 | acls1 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /CIMToolTest/src/ValidationCases/missing_property.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /CIMToolTest/src/ValidationCases/range_of_datatype_1.ttl: -------------------------------------------------------------------------------- 1 | @prefix cim: . 2 | 3 | <#bv1> 4 | a cim:BaseVoltage; 5 | cim:IdentifiedObject.name "bv1" ; 6 | cim:BaseVoltage.nominalVoltage "bogus" # error 7 | . 8 | 9 | -------------------------------------------------------------------------------- /CIMToolTest/src/ValidationCases/range_of_datatype_1.xml: -------------------------------------------------------------------------------- 1 | 4 | 5 | bogus 6 | bv1 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /CIMToolTest/src/ValidationCases/range_of_datatype_2.ttl: -------------------------------------------------------------------------------- 1 | @prefix cim: . 2 | 3 | <#bv1> 4 | a cim:BaseVoltage; 5 | cim:IdentifiedObject.name "bv1" ; 6 | cim:BaseVoltage.nominalVoltage <#bv1> 7 | . 8 | 9 | -------------------------------------------------------------------------------- /CIMToolTest/src/ValidationCases/range_of_datatype_2.xml: -------------------------------------------------------------------------------- 1 | 4 | 5 | 6 | bv1 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /CIMToolTest/src/ValidationCases/range_of_object.ttl: -------------------------------------------------------------------------------- 1 | @prefix cim: . 2 | 3 | <#bv1> 4 | a cim:BaseVoltage; 5 | cim:IdentifiedObject.name "bv1" ; 6 | cim:BaseVoltage.nominalVoltage "22" 7 | . 8 | 9 | <#sm1> 10 | a cim:SynchronousMachine ; 11 | cim:IdentifiedObject.name "acls1" ; 12 | cim:ConductingEquipment.BaseVoltage <#bv1> ; 13 | cim:SynchronousMachine.operatingMode cim:SynchronousMachineOperatingMode.generator ; 14 | cim:SynchronousMachine.type cim:SynchronousMachineType.generator ; 15 | . 16 | 17 | 18 | <#acls1> 19 | a cim:ACLineSegment ; 20 | cim:IdentifiedObject.name "acls1" ; 21 | cim:ConductingEquipment.BaseVoltage <#sm1> ; # error 22 | cim:Conductor.bch ".0001" ; 23 | cim:Conductor.x "5.0" ; 24 | cim:Conductor.r ".01" ; 25 | . 26 | 27 | -------------------------------------------------------------------------------- /CIMToolTest/src/ValidationCases/remove_case.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | l1 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /CIMToolTest/src/ValidationCases/run.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | WS=/home/projects/CIMTool 3 | JARS=$(echo $WS/CIMToolPlugin/lib/*.jar | sed -e 's/ /:/g') 4 | CP=$WS/CIMToolPlugin/bin/:$WS/CIMToolTest/bin/:$JARS 5 | java -cp $CP $* 6 | -------------------------------------------------------------------------------- /CIMToolTest/src/ValidationCases/undefined_class.ttl: -------------------------------------------------------------------------------- 1 | @prefix cim: . 2 | 3 | <#acls1> 4 | a cim:BogusClass ; # error 5 | . 6 | 7 | -------------------------------------------------------------------------------- /CIMToolTest/src/ValidationCases/undefined_class.xml: -------------------------------------------------------------------------------- 1 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /CIMToolTest/src/ValidationCases/undefined_property.ttl: -------------------------------------------------------------------------------- 1 | @prefix cim: . 2 | 3 | <#bv1> 4 | a cim:BaseVoltage; 5 | cim:IdentifiedObject.name "bv1" ; 6 | cim:BaseVoltage.nominalVoltage "22" ; 7 | cim:Bogus.property "x" # error 8 | . 9 | 10 | -------------------------------------------------------------------------------- /CIMToolTest/src/ValidationCases/undefined_property.xml: -------------------------------------------------------------------------------- 1 | 4 | 5 | x 6 | 22 7 | bv1 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /CIMToolTest/src/ValidationCases/untyped_object.ttl: -------------------------------------------------------------------------------- 1 | @prefix cim: . 2 | 3 | <#acls1> 4 | a cim:ACLineSegment ; 5 | cim:IdentifiedObject.name "acls1" ; 6 | cim:ConductingEquipment.BaseVoltage <#bogus> ; # error 7 | cim:Conductor.bch ".0001" ; 8 | cim:Conductor.x "5.0" ; 9 | cim:Conductor.r ".01" ; 10 | . 11 | 12 | -------------------------------------------------------------------------------- /CIMToolTest/src/ValidationCases/untyped_object.xml: -------------------------------------------------------------------------------- 1 | 4 | 5 | .01 6 | 5.0 7 | .0001 8 | 9 | acls1 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /CIMToolTest/src/ValidationCases/untyped_subject.ttl: -------------------------------------------------------------------------------- 1 | @prefix cim: . 2 | 3 | <#acls1> 4 | cim:IdentifiedObject.name "acls1" ; # error 5 | . 6 | 7 | -------------------------------------------------------------------------------- /CIMToolTest/src/ValidationCases/untyped_subject.xml: -------------------------------------------------------------------------------- 1 | 4 | 5 | acls1 6 | 7 | 8 | -------------------------------------------------------------------------------- /CIMToolTest/src/au/com/langdale/cimtoole/test/SplitModelTest.java: -------------------------------------------------------------------------------- 1 | package au.com.langdale.cimtoole.test; 2 | 3 | 4 | public class SplitModelTest extends TestUtility { 5 | 6 | public final static String SAMPLE_FILES = "./"; 7 | public final static String SPLIT_MODEL = "ABB40BusIOP10_rev7"; 8 | public final static String NET = "http://iec.ch/TC57/2007/network#"; 9 | public final static String CIM = "http://iec.ch/TC57/2007/CIM-schema-cim12#"; 10 | } 11 | -------------------------------------------------------------------------------- /CIMToolTest/src/au/com/langdale/cimtoole/test/WorkspaceTest.java: -------------------------------------------------------------------------------- 1 | package au.com.langdale.cimtoole.test; 2 | 3 | import org.eclipse.core.resources.IProject; 4 | import org.eclipse.core.resources.IWorkspace; 5 | import org.eclipse.core.resources.ResourcesPlugin; 6 | import org.eclipse.core.runtime.IProgressMonitor; 7 | import org.eclipse.core.runtime.NullProgressMonitor; 8 | 9 | public class WorkspaceTest extends TestUtility { 10 | 11 | protected IProject project; 12 | protected IProgressMonitor monitor; 13 | protected IWorkspace workspace; 14 | 15 | @Override 16 | protected void setUp() throws Exception { 17 | workspace = ResourcesPlugin.getWorkspace(); 18 | monitor = new NullProgressMonitor(); 19 | project = workspace.getRoot().getProject("TestProject"); 20 | if( project.exists()) 21 | project.delete(true, monitor); 22 | } 23 | 24 | @Override 25 | protected void tearDown() throws Exception { 26 | // if( project.exists()) 27 | // project.delete(true, monitor); 28 | } 29 | 30 | } 31 | -------------------------------------------------------------------------------- /CIMToolTest/src/au/com/langdale/cimtoole/test/headless/CreateProject.java: -------------------------------------------------------------------------------- 1 | package au.com.langdale.cimtoole.test.headless; 2 | 3 | import au.com.langdale.cimtoole.project.Task; 4 | import au.com.langdale.cimtoole.test.WorkspaceTest; 5 | 6 | public class CreateProject extends WorkspaceTest { 7 | public final void testCreate() throws Exception { 8 | workspace.run(Task.createProject(project, null), monitor); 9 | assertTrue("project resource created", project.exists()); 10 | assertTrue("project folders created", project.getFolder("Schema").exists()); 11 | assertTrue("project folders created", project.getFolder("Profiles").exists()); 12 | assertTrue("project folders created", project.getFolder("Instances").exists()); 13 | assertTrue("project folders created", project.getFolder("Incremental").exists()); 14 | } 15 | 16 | } 17 | -------------------------------------------------------------------------------- /CIMToolTest/src/au/com/langdale/cimtoole/test/headless/ProfileTasks.java: -------------------------------------------------------------------------------- 1 | package au.com.langdale.cimtoole.test.headless; 2 | 3 | import org.eclipse.core.resources.IWorkspaceRunnable; 4 | import org.eclipse.core.runtime.CoreException; 5 | 6 | import au.com.langdale.cimtoole.project.Task; 7 | import au.com.langdale.cimtoole.test.ProjectTest; 8 | 9 | public class ProfileTasks extends ProjectTest { 10 | @Override 11 | protected void setUp() throws Exception { 12 | super.setUp(); 13 | setupSchema(); 14 | } 15 | 16 | public final void testCreateProfile() throws Exception { 17 | IWorkspaceRunnable action = Task.createProfile( 18 | profile, 19 | PROFILE_NS, 20 | PROFILE_ENVELOPE); 21 | workspace.run(action, monitor); 22 | assertTrue("profile exists", profile.exists()); 23 | } 24 | 25 | public final void testImportProfile() throws CoreException { 26 | IWorkspaceRunnable action = Task.importProfile( 27 | profile, 28 | getSamplesFolder() + SAMPLE_PROFILE); 29 | workspace.run(action, monitor); 30 | assertTrue("profile exists", profile.exists()); 31 | } 32 | 33 | } 34 | -------------------------------------------------------------------------------- /CIMToolUpdate/.gitignore: -------------------------------------------------------------------------------- 1 | Assembly 2 | -------------------------------------------------------------------------------- /CIMToolUpdate/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | CIMToolUpdate 4 | 5 | 6 | 7 | 8 | 9 | org.eclipse.pde.UpdateSiteBuilder 10 | 11 | 12 | 13 | 14 | 15 | org.eclipse.pde.UpdateSiteNature 16 | 17 | 18 | -------------------------------------------------------------------------------- /CIMToolUpdate/makepackages.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | COMMAND=${1:-package} 3 | VERSION=${2:-$(date --iso)} 4 | 5 | package() { 6 | 7 | cd Assembly || exit 1 8 | 9 | for d in linux.* macosx.* win32.* 10 | do 11 | if [ -d $d ] 12 | then 13 | p=CIMTool-$VERSION-$d.zip 14 | if [ -f $d/$p ] 15 | then 16 | rm $d/$p 17 | fi 18 | ( cd $d && zip -q -r $p CIMTool ) 19 | mv $d/$p ../ 20 | echo $p 21 | fi 22 | done 23 | } 24 | 25 | 26 | 27 | upload() { 28 | for p in CIMTool-$VERSION-*.zip 29 | do 30 | s3 cp $p files.cimtool.org 31 | done 32 | } 33 | 34 | $COMMAND 35 | 36 | -------------------------------------------------------------------------------- /CIMToolUpdate/plugin_customization.ini: -------------------------------------------------------------------------------- 1 | org.eclipse.ui/SHOW_PROGRESS_ON_STARTUP = true 2 | -------------------------------------------------------------------------------- /CIMToolUpdate/site.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | CIMTool distribution site. 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /CIMUtil/.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /CIMUtil/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | CIMUtil 4 | 5 | 6 | 7 | 8 | 9 | org.eclipse.jdt.core.javabuilder 10 | 11 | 12 | 13 | 14 | org.eclipse.pde.ManifestBuilder 15 | 16 | 17 | 18 | 19 | org.eclipse.pde.SchemaBuilder 20 | 21 | 22 | 23 | 24 | 25 | org.eclipse.pde.PluginNature 26 | org.eclipse.jdt.core.javanature 27 | 28 | 29 | -------------------------------------------------------------------------------- /CIMUtil/build.properties: -------------------------------------------------------------------------------- 1 | bin.includes = META-INF/,\ 2 | cimutil.jar,\ 3 | lib/poi-3.0.1-FINAL-20070705.jar,\ 4 | lib/commons-logging-1.1.1.jar,\ 5 | lib/jackcess-1.2.9.jar,\ 6 | lib/commons-lang-2.6.jar 7 | jars.compile.order = cimutil.jar 8 | source.cimutil.jar = src/ 9 | output.cimutil.jar = bin/ 10 | -------------------------------------------------------------------------------- /CIMUtil/lib/commons-lang-2.6.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMUtil/lib/commons-lang-2.6.jar -------------------------------------------------------------------------------- /CIMUtil/lib/commons-logging-1.1.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMUtil/lib/commons-logging-1.1.1.jar -------------------------------------------------------------------------------- /CIMUtil/lib/jackcess-1.2.9.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMUtil/lib/jackcess-1.2.9.jar -------------------------------------------------------------------------------- /CIMUtil/lib/poi-3.0.1-FINAL-20070705.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/CIMUtil/lib/poi-3.0.1-FINAL-20070705.jar -------------------------------------------------------------------------------- /CIMUtil/src/au/com/langdale/cim/CIM.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This software is Copyright 2005,2006,2007,2008 Langdale Consultants. 3 | * Langdale Consultants can be contacted at: http://www.langdale.com.au 4 | */ 5 | package au.com.langdale.cim; 6 | 7 | /** 8 | * Namespace for the RDF representation of the CIM. 9 | * 10 | */ 11 | 12 | public class CIM { 13 | 14 | public final static String NS = "http://iec.ch/TC57/CIM-generic#"; 15 | 16 | } 17 | -------------------------------------------------------------------------------- /CIMUtil/src/au/com/langdale/jena/OntModelProvider.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This software is Copyright 2005,2006,2007,2008 Langdale Consultants. 3 | * Langdale Consultants can be contacted at: http://www.langdale.com.au 4 | */ 5 | package au.com.langdale.jena; 6 | 7 | import au.com.langdale.kena.OntModel; 8 | import au.com.langdale.kena.OntResource; 9 | /** 10 | * A reference to a an ontology model and a resource in that model. 11 | */ 12 | public interface OntModelProvider { 13 | public OntModel getModel(); 14 | public OntResource getSubject(); 15 | } 16 | -------------------------------------------------------------------------------- /CIMUtil/src/au/com/langdale/profiles/MESSAGE.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This software is Copyright 2005,2006,2007,2008 Langdale Consultants. 3 | * Langdale Consultants can be contacted at: http://www.langdale.com.au 4 | */ 5 | package au.com.langdale.profiles; 6 | 7 | import au.com.langdale.kena.OntModel; 8 | import au.com.langdale.kena.Property; 9 | import au.com.langdale.kena.Resource; 10 | import au.com.langdale.kena.ResourceFactory; 11 | 12 | /** 13 | * The Abstract Message Definition vocabulary.. 14 | * 15 | */ 16 | public class MESSAGE { 17 | 18 | public final static String NS = "http://langdale.com.au/2005/Message#"; 19 | public final static Resource Message = ResourceFactory.createResource(NS + "Message"); 20 | @Deprecated public final static Resource profile = ResourceFactory.createResource(NS + "profile"); 21 | public final static Resource Flag = ResourceFactory.createResource(NS + "Flag"); 22 | public final static Property about = ResourceFactory.createProperty(NS + "about"); 23 | @Deprecated public final static Resource Reference = ResourceFactory.createResource(NS + "Reference"); 24 | 25 | public static void loadOntology( OntModel model ) { 26 | model.createClass(Message.getURI()); 27 | model.createObjectProperty(about.getURI()); 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /CIMUtil/src/au/com/langdale/ui/util/NodeTraits.java: -------------------------------------------------------------------------------- 1 | package au.com.langdale.ui.util; 2 | /* 3 | * This software is Copyright 2005,2006,2007,2008 Langdale Consultants. 4 | * Langdale Consultants can be contacted at: http://www.langdale.com.au 5 | */ 6 | 7 | 8 | /** 9 | * An interface that tree nodes may implement to 10 | * gain more control over rendering. 11 | */ 12 | public interface NodeTraits { 13 | /** 14 | * 15 | * Should the node be rendered with an error indicator? 16 | */ 17 | public boolean getErrorIndicator(); 18 | 19 | /** 20 | * A marker class that will determine the icon used. 21 | */ 22 | public Class getIconClass(); 23 | } -------------------------------------------------------------------------------- /CIMUtil/src/au/com/langdale/xmi/XMI.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This software is Copyright 2005,2006,2007,2008 Langdale Consultants. 3 | * Langdale Consultants can be contacted at: http://www.langdale.com.au 4 | */ 5 | package au.com.langdale.xmi; 6 | 7 | 8 | /** 9 | * Namespace for model elements contained in a XMI document. 10 | * The local name is generally an ordinal or a UUID code. 11 | * 12 | */ 13 | 14 | public class XMI { 15 | 16 | public final static String NS = "http://langdale.com.au/2005/xuid#"; 17 | 18 | } 19 | -------------------------------------------------------------------------------- /Kena/.cimtool-settings: -------------------------------------------------------------------------------- 1 | @prefix dc: . 2 | @prefix rdfs: . 3 | @prefix project: . 4 | @prefix tool: . 5 | @prefix owl: . 6 | @prefix xsd: . 7 | @prefix rdf: . 8 | 9 | -------------------------------------------------------------------------------- /Kena/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | Kena 4 | 5 | 6 | 7 | 8 | 9 | org.eclipse.jdt.core.javabuilder 10 | 11 | 12 | 13 | 14 | org.eclipse.pde.ManifestBuilder 15 | 16 | 17 | 18 | 19 | org.eclipse.pde.SchemaBuilder 20 | 21 | 22 | 23 | 24 | 25 | org.eclipse.pde.PluginNature 26 | org.eclipse.jdt.core.javanature 27 | 28 | 29 | -------------------------------------------------------------------------------- /Kena/build.properties: -------------------------------------------------------------------------------- 1 | bin.includes = META-INF/,\ 2 | kena.jar,\ 3 | lib/arq-2.8.4.jar,\ 4 | lib/icu4j-3.4.4.jar,\ 5 | lib/iri-0.8-sources.jar,\ 6 | lib/iri-0.8.jar,\ 7 | lib/jena-2.6.3-tests.jar,\ 8 | lib/jena-2.6.3.jar,\ 9 | lib/junit-4.5.jar,\ 10 | lib/log4j-1.2.13.jar,\ 11 | lib/lucene-core-2.3.1.jar,\ 12 | lib/slf4j-api-1.5.8.jar,\ 13 | lib/slf4j-log4j12-1.5.8.jar,\ 14 | lib/stax-api-1.0.1.jar,\ 15 | lib/wstx-asl-3.2.9.jar,\ 16 | lib/xercesImpl-2.7.1.jar 17 | jars.compile.order = kena.jar 18 | source.kena.jar = src/ 19 | output.kena.jar = bin/ 20 | source.kena.jar = src/ 21 | -------------------------------------------------------------------------------- /Kena/lib/arq-2.8.4.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/Kena/lib/arq-2.8.4.jar -------------------------------------------------------------------------------- /Kena/lib/icu4j-3.4.4.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/Kena/lib/icu4j-3.4.4.jar -------------------------------------------------------------------------------- /Kena/lib/iri-0.8-sources.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/Kena/lib/iri-0.8-sources.jar -------------------------------------------------------------------------------- /Kena/lib/iri-0.8.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/Kena/lib/iri-0.8.jar -------------------------------------------------------------------------------- /Kena/lib/jena-2.6.3-tests.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/Kena/lib/jena-2.6.3-tests.jar -------------------------------------------------------------------------------- /Kena/lib/jena-2.6.3.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/Kena/lib/jena-2.6.3.jar -------------------------------------------------------------------------------- /Kena/lib/junit-4.5.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/Kena/lib/junit-4.5.jar -------------------------------------------------------------------------------- /Kena/lib/log4j-1.2.13.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/Kena/lib/log4j-1.2.13.jar -------------------------------------------------------------------------------- /Kena/lib/lucene-core-2.3.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/Kena/lib/lucene-core-2.3.1.jar -------------------------------------------------------------------------------- /Kena/lib/slf4j-api-1.5.8.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/Kena/lib/slf4j-api-1.5.8.jar -------------------------------------------------------------------------------- /Kena/lib/slf4j-log4j12-1.5.8.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/Kena/lib/slf4j-log4j12-1.5.8.jar -------------------------------------------------------------------------------- /Kena/lib/stax-api-1.0.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/Kena/lib/stax-api-1.0.1.jar -------------------------------------------------------------------------------- /Kena/lib/wstx-asl-3.2.9.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/Kena/lib/wstx-asl-3.2.9.jar -------------------------------------------------------------------------------- /Kena/lib/xercesImpl-2.7.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/Kena/lib/xercesImpl-2.7.1.jar -------------------------------------------------------------------------------- /Kena/src/au/com/langdale/inference/AsyncResult.java: -------------------------------------------------------------------------------- 1 | package au.com.langdale.inference; 2 | 3 | import com.hp.hpl.jena.graph.Triple; 4 | 5 | /** 6 | * Clients implement this interface to receive query results. 7 | */ 8 | public interface AsyncResult { 9 | /** 10 | * Invoked to deliver a single statement. 11 | * 12 | * If true is returned then further statements will be delivered 13 | * or close() will be invoked if none are pending. 14 | * 15 | * If false is returned then no further statements will 16 | * be delivered and close() will not be invoked. 17 | */ 18 | public boolean add(Triple result); 19 | 20 | /** 21 | * Invoked after all statements have been delivered. 22 | */ 23 | public void close(); 24 | } 25 | -------------------------------------------------------------------------------- /Kena/src/au/com/langdale/inference/LOG.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This software is Copyright 2005,2006,2007,2008 Langdale Consultants. 3 | * Langdale Consultants can be contacted at: http://www.langdale.com.au 4 | */ 5 | package au.com.langdale.inference; 6 | 7 | import au.com.langdale.kena.Property; 8 | import au.com.langdale.kena.Resource; 9 | import au.com.langdale.kena.ResourceFactory; 10 | 11 | /** 12 | * Vocabulary for auxiliary terms such as error reports. 13 | * 14 | */ 15 | 16 | public class LOG { 17 | public static final String NS = "http://langdale.com.au/2007/log#"; 18 | public static final Resource Problem = ResourceFactory.createResource(NS + "Problem"); 19 | public static final Property hasProblems = ResourceFactory.createProperty(NS + "hasProblem"); 20 | public static final Property problemDetail = ResourceFactory.createProperty(NS + "problemDetail"); 21 | public static final Property problemReference = ResourceFactory.createProperty(NS + "problemReference"); 22 | public static final Resource Repair = ResourceFactory.createResource(NS + "Repair"); 23 | public static final Property hasRepairs = ResourceFactory.createProperty(NS + "hasRepairs"); 24 | public static final Property repairArgs = ResourceFactory.createProperty(NS + "repairArgs"); 25 | } 26 | -------------------------------------------------------------------------------- /Kena/src/au/com/langdale/inference/QuoteClause.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This software is Copyright 2005,2006,2007,2008 Langdale Consultants. 3 | * Langdale Consultants can be contacted at: http://www.langdale.com.au 4 | */ 5 | package au.com.langdale.inference; 6 | 7 | import com.hp.hpl.jena.graph.Node; 8 | import com.hp.hpl.jena.reasoner.rulesys.ClauseEntry; 9 | import com.hp.hpl.jena.reasoner.rulesys.Node_RuleVariable; 10 | /** 11 | * Represents a rule class that applies to a quote (or submodel). 12 | */ 13 | public class QuoteClause implements ClauseEntry { 14 | private ClauseEntry clause; 15 | private Node quote; 16 | 17 | public QuoteClause(Node quote, ClauseEntry clause) { 18 | super(); 19 | this.quote = quote; 20 | this.clause = clause; 21 | } 22 | 23 | public ClauseEntry getClause() { 24 | return clause; 25 | } 26 | 27 | public Node getQuote() { 28 | return quote; 29 | } 30 | 31 | public boolean sameAs(Object other) { 32 | if (other instanceof QuoteClause) { 33 | QuoteClause cand = (QuoteClause) other; 34 | return Node_RuleVariable.sameNodeAs(quote, cand.quote) 35 | && clause.sameAs(cand.clause); 36 | } 37 | return false; 38 | } 39 | 40 | } 41 | -------------------------------------------------------------------------------- /Kena/src/au/com/langdale/kena/ConversionException.java: -------------------------------------------------------------------------------- 1 | /** 2 | * 3 | */ 4 | package au.com.langdale.kena; 5 | 6 | public class ConversionException extends Exception { 7 | private static final long serialVersionUID = 9060636904114094601L; 8 | } -------------------------------------------------------------------------------- /Kena/src/au/com/langdale/kena/ModelFactory.java: -------------------------------------------------------------------------------- 1 | package au.com.langdale.kena; 2 | 3 | import com.hp.hpl.jena.graph.Factory; 4 | import com.hp.hpl.jena.graph.Graph; 5 | import com.hp.hpl.jena.reasoner.transitiveReasoner.TransitiveReasoner; 6 | 7 | public class ModelFactory { 8 | public static OntModel createMem(Graph graph) { 9 | return new OntModel(graph); 10 | } 11 | 12 | public static OntModel createMem() { 13 | return new OntModel(Factory.createDefaultGraph()); 14 | } 15 | 16 | public static OntModel createTransInf(Graph graph) { 17 | TransitiveReasoner reasoner = new TransitiveReasoner(); 18 | return new OntModel(reasoner.bind(graph)); 19 | } 20 | 21 | public static OntModel createTransInf() { 22 | return createTransInf(Factory.createDefaultGraph()); 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /Kena/src/au/com/langdale/kena/NodeIterator.java: -------------------------------------------------------------------------------- 1 | package au.com.langdale.kena; 2 | 3 | import java.util.Iterator; 4 | 5 | import com.hp.hpl.jena.graph.Node; 6 | 7 | public interface NodeIterator extends Iterator { 8 | public Node nextNode(); 9 | } 10 | -------------------------------------------------------------------------------- /Kena/src/au/com/langdale/kena/Property.java: -------------------------------------------------------------------------------- 1 | package au.com.langdale.kena; 2 | 3 | import com.hp.hpl.jena.graph.Node; 4 | 5 | public class Property extends Resource { 6 | Property(Node node) { 7 | super(node); 8 | assert node.isURI(); 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /Kena/src/au/com/langdale/kena/PropertyIndex.java: -------------------------------------------------------------------------------- 1 | package au.com.langdale.kena; 2 | 3 | import java.util.Iterator; 4 | import java.util.Set; 5 | 6 | import com.hp.hpl.jena.graph.Node; 7 | import com.hp.hpl.jena.graph.Triple; 8 | 9 | public class PropertyIndex extends SearchIndex { 10 | Property prop; 11 | 12 | public PropertyIndex(Property prop) { 13 | this.prop = prop; 14 | } 15 | 16 | /** 17 | * Index resources 18 | * @param model: the model containing the resources 19 | */ 20 | @Override 21 | public void scan(OntModel model) { 22 | Iterator it = model.getGraph().find(Node.ANY, prop.asNode(), Node.ANY); 23 | while( it.hasNext()) { 24 | Triple t = (Triple) it.next(); 25 | Node n = t.getObject(); 26 | if( n.isLiteral()) { 27 | addWord(n.getLiteralLexicalForm()); 28 | } 29 | } 30 | } 31 | 32 | /** 33 | * Find resources by local name. 34 | * @param name: the local name 35 | * @param model: the model containing the resources 36 | * @return a set of Resource 37 | */ 38 | @Override 39 | public Set locate(String name, OntModel model) { 40 | return model.listSubjectsWithProperty(prop, name).toSet(); 41 | } 42 | } 43 | -------------------------------------------------------------------------------- /Kena/src/au/com/langdale/kena/ResIterator.java: -------------------------------------------------------------------------------- 1 | package au.com.langdale.kena; 2 | 3 | import java.util.Iterator; 4 | import java.util.Set; 5 | 6 | public interface ResIterator extends Iterator { 7 | public OntResource nextResource(); 8 | public Set toSet(); 9 | } 10 | -------------------------------------------------------------------------------- /Kena/src/au/com/langdale/kena/ResourceFactory.java: -------------------------------------------------------------------------------- 1 | package au.com.langdale.kena; 2 | 3 | import com.hp.hpl.jena.graph.FrontsNode; 4 | import com.hp.hpl.jena.graph.Node; 5 | 6 | public class ResourceFactory { 7 | public static Resource createResource() { 8 | return new Resource(Node.createAnon()); 9 | } 10 | 11 | public static Resource createResource(String uri) { 12 | return new Resource(Node.createURI(uri)); 13 | } 14 | 15 | public static Resource createResource(FrontsNode symbol) { 16 | return new Resource(symbol.asNode()); 17 | } 18 | 19 | public static Resource createResource(Node symbol) { 20 | return new Resource(symbol); 21 | } 22 | 23 | public static Property createProperty(String uri) { 24 | return new Property(Node.createURI(uri)); 25 | } 26 | 27 | public static Property createProperty(FrontsNode symbol) { 28 | return new Property(symbol.asNode()); 29 | } 30 | 31 | public static Property createProperty(Node symbol) { 32 | return new Property(symbol); 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /Kena/src/au/com/langdale/kena/filters/Buffer.java: -------------------------------------------------------------------------------- 1 | package au.com.langdale.kena.filters; 2 | 3 | import java.util.ArrayList; 4 | import java.util.Collection; 5 | import java.util.Iterator; 6 | 7 | import com.hp.hpl.jena.graph.Node; 8 | 9 | import au.com.langdale.kena.NodeIterator; 10 | 11 | public class Buffer implements NodeIterator { 12 | private Iterator inner; 13 | 14 | public Buffer(NodeIterator it) { 15 | Collection seen = new ArrayList(); 16 | while(it.hasNext()) 17 | seen.add(it.nextNode()); 18 | inner = seen.iterator(); 19 | } 20 | 21 | public Node nextNode() { 22 | return (Node) inner.next(); 23 | } 24 | 25 | public boolean hasNext() { 26 | return inner.hasNext(); 27 | } 28 | 29 | public Object next() { 30 | return inner.next(); 31 | } 32 | 33 | public void remove() { 34 | throw new UnsupportedOperationException(); 35 | } 36 | 37 | } 38 | -------------------------------------------------------------------------------- /Kena/src/au/com/langdale/kena/filters/FilterMap.java: -------------------------------------------------------------------------------- 1 | package au.com.langdale.kena.filters; 2 | 3 | import java.util.Iterator; 4 | 5 | import com.hp.hpl.jena.graph.Node; 6 | import com.hp.hpl.jena.graph.Triple; 7 | 8 | public abstract class FilterMap extends NodeLookAhead { 9 | private Iterator inner; 10 | public FilterMap(Iterator it) { 11 | this.inner = it; 12 | } 13 | 14 | protected abstract boolean test(Node item); 15 | protected abstract Node map(Triple item); 16 | 17 | @Override 18 | protected final boolean advance() { 19 | while( inner.hasNext()) { 20 | Node item = map((Triple)inner.next()); 21 | if( test(item)) { 22 | lookahead = item; 23 | return true; 24 | } 25 | } 26 | return false; 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /Kena/src/au/com/langdale/kena/filters/ListIterator.java: -------------------------------------------------------------------------------- 1 | package au.com.langdale.kena.filters; 2 | 3 | import au.com.langdale.kena.OntResource; 4 | 5 | import com.hp.hpl.jena.graph.Node; 6 | 7 | public class ListIterator extends NodeLookAhead { 8 | private OntResource cell; 9 | 10 | public ListIterator(OntResource cell) { 11 | this.cell = cell; 12 | } 13 | 14 | protected boolean test(Node item) { 15 | return true; 16 | } 17 | 18 | @Override 19 | protected final boolean advance() { 20 | while( cell != null && ! cell.isEmpty()) { 21 | lookahead = cell.getFirst(); 22 | cell = cell.getRest(); 23 | if( lookahead != null && test(lookahead)) { 24 | return true; 25 | } 26 | } 27 | return false; 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /Kena/src/au/com/langdale/kena/filters/ListResourceIterator.java: -------------------------------------------------------------------------------- 1 | package au.com.langdale.kena.filters; 2 | 3 | import au.com.langdale.kena.OntResource; 4 | 5 | import com.hp.hpl.jena.graph.Node; 6 | 7 | public class ListResourceIterator extends ListIterator { 8 | 9 | public ListResourceIterator(OntResource cell) { 10 | super(cell); 11 | } 12 | 13 | @Override 14 | protected boolean test(Node item) { 15 | return ! item.isLiteral(); 16 | } 17 | 18 | } 19 | -------------------------------------------------------------------------------- /Kena/src/au/com/langdale/kena/filters/LiteralObjects.java: -------------------------------------------------------------------------------- 1 | package au.com.langdale.kena.filters; 2 | 3 | import java.util.Iterator; 4 | 5 | import com.hp.hpl.jena.graph.Node; 6 | import com.hp.hpl.jena.graph.Triple; 7 | 8 | public class LiteralObjects extends FilterMap { 9 | 10 | public LiteralObjects(Iterator it) { 11 | super(it); 12 | } 13 | 14 | @Override 15 | protected Node map(Triple item) { 16 | return item.getObject(); 17 | } 18 | 19 | @Override 20 | protected boolean test(Node item) { 21 | return item.isLiteral(); 22 | } 23 | 24 | } 25 | -------------------------------------------------------------------------------- /Kena/src/au/com/langdale/kena/filters/NamedSubjects.java: -------------------------------------------------------------------------------- 1 | package au.com.langdale.kena.filters; 2 | 3 | import java.util.Iterator; 4 | 5 | import com.hp.hpl.jena.graph.Node; 6 | import com.hp.hpl.jena.graph.Triple; 7 | 8 | public class NamedSubjects extends FilterMap { 9 | 10 | public NamedSubjects(Iterator it) { 11 | super(it); 12 | } 13 | 14 | @Override 15 | protected Node map(Triple item) { 16 | return item.getSubject(); 17 | } 18 | 19 | @Override 20 | protected boolean test(Node item) { 21 | return item.isURI(); 22 | } 23 | 24 | } 25 | -------------------------------------------------------------------------------- /Kena/src/au/com/langdale/kena/filters/NodeLookAhead.java: -------------------------------------------------------------------------------- 1 | package au.com.langdale.kena.filters; 2 | 3 | import com.hp.hpl.jena.graph.Node; 4 | 5 | import au.com.langdale.kena.NodeIterator; 6 | 7 | public abstract class NodeLookAhead implements NodeIterator { 8 | protected Node lookahead; 9 | private boolean filled; 10 | 11 | protected abstract boolean advance(); 12 | 13 | public boolean hasNext() { 14 | if( ! filled ) 15 | filled = advance(); 16 | return filled; 17 | } 18 | 19 | public Node nextNode() { 20 | if( ! filled ) 21 | advance(); 22 | filled = false; 23 | return lookahead; 24 | } 25 | 26 | public Object next() { 27 | return nextNode(); 28 | } 29 | 30 | public void remove() { 31 | throw new UnsupportedOperationException(); 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /Kena/src/au/com/langdale/kena/filters/Nodes.java: -------------------------------------------------------------------------------- 1 | package au.com.langdale.kena.filters; 2 | 3 | import java.util.Iterator; 4 | 5 | import com.hp.hpl.jena.graph.Node; 6 | import com.hp.hpl.jena.graph.Triple; 7 | 8 | import au.com.langdale.kena.NodeIterator; 9 | 10 | public abstract class Nodes implements NodeIterator { 11 | private Iterator inner; 12 | 13 | public Nodes(Iterator inner) { 14 | this.inner = inner; 15 | } 16 | 17 | protected abstract Node map(Triple item); 18 | 19 | public boolean hasNext() { 20 | return inner.hasNext(); 21 | } 22 | 23 | public Object next() { 24 | return nextNode(); 25 | } 26 | 27 | public Node nextNode() { 28 | return map((Triple) inner.next()); 29 | } 30 | 31 | public void remove() { 32 | inner.remove(); 33 | } 34 | 35 | } 36 | -------------------------------------------------------------------------------- /Kena/src/au/com/langdale/kena/filters/Objects.java: -------------------------------------------------------------------------------- 1 | package au.com.langdale.kena.filters; 2 | 3 | import java.util.Iterator; 4 | 5 | import com.hp.hpl.jena.graph.Node; 6 | import com.hp.hpl.jena.graph.Triple; 7 | 8 | public class Objects extends Nodes { 9 | protected Iterator inner; 10 | 11 | public Objects(Iterator inner) { 12 | super(inner); 13 | } 14 | 15 | public Node map(Triple triple) { 16 | return triple.getObject(); 17 | } 18 | 19 | } 20 | -------------------------------------------------------------------------------- /Kena/src/au/com/langdale/kena/filters/ObjectsExcluding.java: -------------------------------------------------------------------------------- 1 | package au.com.langdale.kena.filters; 2 | 3 | import java.util.Iterator; 4 | 5 | import com.hp.hpl.jena.graph.Node; 6 | import com.hp.hpl.jena.graph.Triple; 7 | 8 | public class ObjectsExcluding extends FilterMap { 9 | 10 | private Node excluded; 11 | 12 | public ObjectsExcluding(Node excluded, Iterator it) { 13 | super(it); 14 | this.excluded = excluded; 15 | } 16 | 17 | @Override 18 | protected Node map(Triple item) { 19 | return item.getObject(); 20 | } 21 | 22 | @Override 23 | protected boolean test(Node item) { 24 | return ! item.isLiteral() && ! item.equals(excluded); 25 | } 26 | 27 | } 28 | -------------------------------------------------------------------------------- /Kena/src/au/com/langdale/kena/filters/ResourceObjects.java: -------------------------------------------------------------------------------- 1 | package au.com.langdale.kena.filters; 2 | 3 | import java.util.Iterator; 4 | 5 | import com.hp.hpl.jena.graph.Node; 6 | import com.hp.hpl.jena.graph.Triple; 7 | 8 | public class ResourceObjects extends FilterMap { 9 | 10 | public ResourceObjects(Iterator it) { 11 | super(it); 12 | } 13 | 14 | @Override 15 | protected Node map(Triple item) { 16 | return item.getObject(); 17 | } 18 | 19 | @Override 20 | protected boolean test(Node item) { 21 | return ! item.isLiteral(); 22 | } 23 | 24 | } 25 | -------------------------------------------------------------------------------- /Kena/src/au/com/langdale/kena/filters/Subjects.java: -------------------------------------------------------------------------------- 1 | package au.com.langdale.kena.filters; 2 | 3 | import java.util.Iterator; 4 | 5 | import com.hp.hpl.jena.graph.Node; 6 | import com.hp.hpl.jena.graph.Triple; 7 | 8 | public class Subjects extends Nodes { 9 | public Subjects(Iterator inner) { 10 | super(inner); 11 | } 12 | 13 | protected Node map(Triple triple) { 14 | return triple.getSubject(); 15 | } 16 | 17 | } 18 | -------------------------------------------------------------------------------- /Kena/src/au/com/langdale/kena/filters/SubjectsExcluding.java: -------------------------------------------------------------------------------- 1 | package au.com.langdale.kena.filters; 2 | 3 | import java.util.Iterator; 4 | 5 | import com.hp.hpl.jena.graph.Node; 6 | import com.hp.hpl.jena.graph.Triple; 7 | 8 | public class SubjectsExcluding extends FilterMap { 9 | 10 | private Node excluded; 11 | 12 | public SubjectsExcluding(Node excluded, Iterator it) { 13 | super(it); 14 | this.excluded = excluded; 15 | } 16 | 17 | @Override 18 | protected Node map(Triple item) { 19 | return item.getSubject(); 20 | } 21 | 22 | @Override 23 | protected boolean test(Node item) { 24 | return ! item.equals(excluded); 25 | } 26 | 27 | } 28 | -------------------------------------------------------------------------------- /Kena/src/au/com/langdale/kena/filters/Unique.java: -------------------------------------------------------------------------------- 1 | package au.com.langdale.kena.filters; 2 | 3 | import java.util.HashSet; 4 | import java.util.Iterator; 5 | 6 | import com.hp.hpl.jena.graph.Node; 7 | 8 | public abstract class Unique extends FilterMap { 9 | 10 | protected HashSet seen = new HashSet(); 11 | 12 | public Unique(Iterator it) { 13 | super(it); 14 | } 15 | 16 | protected boolean test(Node item) { 17 | if( seen.contains(item)) 18 | return false; 19 | 20 | seen.add(item); 21 | return true; 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /Kena/src/au/com/langdale/kena/filters/UniqueObjects.java: -------------------------------------------------------------------------------- 1 | package au.com.langdale.kena.filters; 2 | 3 | import java.util.Iterator; 4 | 5 | import com.hp.hpl.jena.graph.Node; 6 | import com.hp.hpl.jena.graph.Triple; 7 | 8 | public class UniqueObjects extends Unique { 9 | 10 | public UniqueObjects(Iterator it) { 11 | super(it); 12 | } 13 | 14 | @Override 15 | protected Node map(Triple item) { 16 | return item.getObject(); 17 | } 18 | 19 | } 20 | -------------------------------------------------------------------------------- /Kena/src/au/com/langdale/kena/filters/UniqueSubjects.java: -------------------------------------------------------------------------------- 1 | package au.com.langdale.kena.filters; 2 | 3 | import java.util.Iterator; 4 | 5 | import com.hp.hpl.jena.graph.Node; 6 | import com.hp.hpl.jena.graph.Triple; 7 | 8 | public class UniqueSubjects extends Unique { 9 | 10 | public UniqueSubjects(Iterator it) { 11 | super(it); 12 | } 13 | 14 | @Override 15 | protected Node map(Triple item) { 16 | return item.getSubject(); 17 | } 18 | 19 | } 20 | -------------------------------------------------------------------------------- /Kena/src/au/com/langdale/kena/filters/UnnamedObjects.java: -------------------------------------------------------------------------------- 1 | package au.com.langdale.kena.filters; 2 | 3 | import java.util.Iterator; 4 | 5 | import com.hp.hpl.jena.graph.Node; 6 | import com.hp.hpl.jena.graph.Triple; 7 | 8 | public class UnnamedObjects extends FilterMap { 9 | 10 | public UnnamedObjects(Iterator it) { 11 | super(it); 12 | } 13 | 14 | @Override 15 | protected Node map(Triple item) { 16 | return item.getObject(); 17 | } 18 | 19 | @Override 20 | protected boolean test(Node item) { 21 | return item.isBlank(); 22 | } 23 | 24 | } 25 | -------------------------------------------------------------------------------- /Kena/src/au/com/langdale/kena/filters/Wrapper.java: -------------------------------------------------------------------------------- 1 | package au.com.langdale.kena.filters; 2 | 3 | import java.util.HashSet; 4 | import java.util.Iterator; 5 | import java.util.Set; 6 | 7 | import com.hp.hpl.jena.graph.Node; 8 | 9 | import au.com.langdale.kena.OntModel; 10 | import au.com.langdale.kena.OntResource; 11 | import au.com.langdale.kena.ResIterator; 12 | 13 | public class Wrapper implements ResIterator { 14 | protected Iterator inner; 15 | protected OntModel model; 16 | 17 | public Wrapper(OntModel model, Iterator it) { 18 | this.inner = it; 19 | this.model = model; 20 | } 21 | 22 | public boolean hasNext() { 23 | return inner.hasNext(); 24 | } 25 | 26 | public Object next() { 27 | return nextResource(); 28 | } 29 | 30 | public OntResource nextResource() { 31 | return model.createResource(((Node)inner.next())); 32 | } 33 | 34 | public Set toSet() { 35 | Set result = new HashSet(); 36 | while( hasNext()) 37 | result.add(nextResource()); 38 | return result; 39 | } 40 | 41 | public void remove() { 42 | inner.remove(); 43 | } 44 | } 45 | -------------------------------------------------------------------------------- /Kena/src/au/com/langdale/sax/XMLElement.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This software is Copyright 2005,2006,2007,2008 Langdale Consultants. 3 | * Langdale Consultants can be contacted at: http://www.langdale.com.au 4 | */ 5 | /* 6 | * This software is Copyright 2005,2006,2007,2008 Langdale Consultants. 7 | * Langdale Consultants can be contacted at: http://www.langdale.com.au 8 | */ 9 | package au.com.langdale.sax; 10 | 11 | import org.xml.sax.Attributes; 12 | 13 | /** 14 | * Represents an Element from an XML document. 15 | * 16 | * The Element's name, attributes and enclosing elements are 17 | * available through this interface. 18 | */ 19 | public interface XMLElement { 20 | public XMLElement getParent() ; 21 | public String getNameSpace(); 22 | public String getName(); 23 | public String getValue(String namespace, String name); 24 | public Attributes getAttributes(); 25 | public boolean matches(String name); 26 | public boolean matches(String namespace, String name); 27 | public boolean matches( XMLElement parent, String name); 28 | public boolean matches( XMLElement parent, String namespace, String name); 29 | } 30 | -------------------------------------------------------------------------------- /Kena/src/au/com/langdale/sax/XMLMode.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This software is Copyright 2005,2006,2007,2008 Langdale Consultants. 3 | * Langdale Consultants can be contacted at: http://www.langdale.com.au 4 | */ 5 | package au.com.langdale.sax; 6 | 7 | /** 8 | * An XML Processing Mode. 9 | * 10 | * A mode receives elements (XMLElement objects) one at a time for 11 | * interpretation. 12 | */ 13 | public interface XMLMode { 14 | /** 15 | * Interpret an element and return a mode object 16 | * that should interpret its child elements 17 | * and text nodes. Returning null means that children 18 | * should be ignored. 19 | */ 20 | public XMLMode visit( XMLElement element); 21 | 22 | /** 23 | * Interpret a text node in the context of its parent element. 24 | */ 25 | public void visit(XMLElement element, String text); 26 | 27 | /** 28 | * Indicates the end of the mode. No further methods will 29 | * be called. 30 | */ 31 | public void leave(); 32 | } 33 | -------------------------------------------------------------------------------- /Kena/src/au/com/langdale/util/MultiMap.java: -------------------------------------------------------------------------------- 1 | package au.com.langdale.util; 2 | 3 | import java.util.Collections; 4 | import java.util.HashMap; 5 | import java.util.HashSet; 6 | import java.util.Map; 7 | import java.util.Set; 8 | 9 | public class MultiMap { 10 | private Map trace = new HashMap(); 11 | 12 | protected void putRaw(Object key, Object value) { 13 | Set traces = (Set) trace.get(key); 14 | if( traces == null ) { 15 | traces = new HashSet(); 16 | trace.put(key, traces); 17 | } 18 | traces.add(value); 19 | } 20 | 21 | public Set find(Object key) { 22 | Set traces = (Set) trace.get(key); 23 | if( traces == null ) 24 | return Collections.EMPTY_SET; 25 | 26 | return traces; 27 | } 28 | 29 | public void remove(Object key, Object value) { 30 | find(key).remove(value); 31 | } 32 | 33 | public Set keySet() { 34 | return trace.keySet(); 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /Kena/src/au/com/langdale/util/TextUtil.java: -------------------------------------------------------------------------------- 1 | package au.com.langdale.util; 2 | 3 | public class TextUtil { 4 | static int wrap(StringBuilder text, int cursor, int width) { 5 | cursor = text.indexOf(" ", cursor + width); 6 | if( cursor != -1) { 7 | text.replace(cursor, cursor + 1, "\n"); 8 | return cursor + 1; 9 | } 10 | else 11 | return text.length(); 12 | } 13 | 14 | public static String wrap( String s, int width) { 15 | StringBuilder text = new StringBuilder(s); 16 | int cursor = 0; 17 | while( cursor < text.length()) { 18 | cursor = wrap(text, cursor, width); 19 | } 20 | return text.toString(); 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /Kena/src/com/hp/hpl/jena/rdf/arp/QuotedStatementHandler.java: -------------------------------------------------------------------------------- 1 | package com.hp.hpl.jena.rdf.arp; 2 | /** 3 | * Extended statement handler to allow RDF quoting. 4 | */ 5 | public interface QuotedStatementHandler extends StatementHandler { 6 | /** 7 | * Start a quote. Following statements are part of the quote 8 | * until the quote is terminated and unless they belong to a nested quote. 9 | * 10 | * @param quote: the name of the quote 11 | */ 12 | public void startQuote(AResource quote); 13 | /** 14 | * Terminate the most recently started but unterminated quote. 15 | */ 16 | public void endQuote(); 17 | } 18 | -------------------------------------------------------------------------------- /Kena/src/com/hp/hpl/jena/rdf/arp/states/WantQuotedDescription.java: -------------------------------------------------------------------------------- 1 | package com.hp.hpl.jena.rdf.arp.states; 2 | 3 | import com.hp.hpl.jena.rdf.arp.impl.AbsXMLContext; 4 | 5 | /** 6 | * Modified parser Frame to support RDF quoting. 7 | */ 8 | public class WantQuotedDescription extends WantDescription { 9 | 10 | public WantQuotedDescription(FrameI s, AbsXMLContext x) { 11 | super(s, x); 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /ModelExtractor/.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /ModelExtractor/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | ModelExtractor 4 | 5 | 6 | 7 | 8 | 9 | org.scala-ide.sdt.core.scalabuilder 10 | 11 | 12 | 13 | 14 | 15 | org.scala-ide.sdt.core.scalanature 16 | org.eclipse.jdt.core.javanature 17 | 18 | 19 | -------------------------------------------------------------------------------- /ModelExtractor/model.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/ModelExtractor/model.pdf -------------------------------------------------------------------------------- /ModelExtractor/modelp.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/ModelExtractor/modelp.pdf -------------------------------------------------------------------------------- /RCPUtil/.cimtool-settings: -------------------------------------------------------------------------------- 1 | @prefix dc: . 2 | @prefix rdfs: . 3 | @prefix project: . 4 | @prefix tool: . 5 | @prefix owl: . 6 | @prefix xsd: . 7 | @prefix rdf: . 8 | 9 | -------------------------------------------------------------------------------- /RCPUtil/.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /RCPUtil/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | RCPUtil 4 | 5 | 6 | 7 | 8 | 9 | org.eclipse.jdt.core.javabuilder 10 | 11 | 12 | 13 | 14 | org.eclipse.pde.ManifestBuilder 15 | 16 | 17 | 18 | 19 | org.eclipse.pde.SchemaBuilder 20 | 21 | 22 | 23 | 24 | 25 | org.eclipse.pde.PluginNature 26 | org.eclipse.jdt.core.javanature 27 | 28 | 29 | -------------------------------------------------------------------------------- /RCPUtil/build.properties: -------------------------------------------------------------------------------- 1 | source.. = src/ 2 | output.. = bin/ 3 | bin.includes = META-INF/,\ 4 | . 5 | -------------------------------------------------------------------------------- /RCPUtil/src/au/com/langdale/ui/binding/AnyModel.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This software is Copyright 2005,2006,2007,2008 Langdale Consultants. 3 | * Langdale Consultants can be contacted at: http://www.langdale.com.au 4 | */ 5 | package au.com.langdale.ui.binding; 6 | /** 7 | * A data model whose single value is an untyped object. 8 | * 9 | * This boils down to a reference to an Object. 10 | */ 11 | public interface AnyModel { 12 | /** 13 | * @return: the value of the model. 14 | */ 15 | public Object getValue(); 16 | public void setValue(Object value); 17 | } -------------------------------------------------------------------------------- /RCPUtil/src/au/com/langdale/ui/binding/ArrayModel.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This software is Copyright 2005,2006,2007,2008 Langdale Consultants. 3 | * Langdale Consultants can be contacted at: http://www.langdale.com.au 4 | */ 5 | package au.com.langdale.ui.binding; 6 | /** 7 | * A data model whose value is an array. 8 | */ 9 | public interface ArrayModel { 10 | /** 11 | * @return: the value of the model 12 | */ 13 | public Object[] getValues(); 14 | public void setValues(Object[] values); 15 | } -------------------------------------------------------------------------------- /RCPUtil/src/au/com/langdale/ui/binding/BooleanModel.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This software is Copyright 2005,2006,2007,2008 Langdale Consultants. 3 | * Langdale Consultants can be contacted at: http://www.langdale.com.au 4 | */ 5 | package au.com.langdale.ui.binding; 6 | /** 7 | * A data model whose single value is a boolean. 8 | */ 9 | public interface BooleanModel { 10 | 11 | public static final BooleanModel[] EMPTY_FLAGS = new BooleanModel[0]; 12 | /** 13 | * @return: the model value 14 | */ 15 | public boolean isTrue(); 16 | 17 | public void setTrue(boolean flag); 18 | 19 | /** 20 | * A boolean model implemented by a concrete boolean variable. 21 | */ 22 | public static class BooleanValue implements BooleanModel { 23 | private boolean value; 24 | private String label; 25 | 26 | public BooleanValue(String label) { 27 | this.label = label; 28 | } 29 | 30 | public boolean isTrue() { 31 | return value; 32 | } 33 | 34 | public void setTrue(boolean flag) { 35 | value = flag; 36 | } 37 | 38 | @Override 39 | public String toString() { 40 | return label; 41 | } 42 | } 43 | } -------------------------------------------------------------------------------- /RCPUtil/src/au/com/langdale/ui/binding/TextModel.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This software is Copyright 2005,2006,2007,2008 Langdale Consultants. 3 | * Langdale Consultants can be contacted at: http://www.langdale.com.au 4 | */ 5 | package au.com.langdale.ui.binding; 6 | /** 7 | * A data model whose value is a String. 8 | */ 9 | public interface TextModel { 10 | public void setText(String value); 11 | public String getText(); 12 | 13 | /** 14 | * A concrete text model that encapsulates a String variable. 15 | */ 16 | public static class TextValue implements TextModel { 17 | private String value, label; 18 | 19 | public TextValue(String label) { 20 | this.label = label; 21 | } 22 | 23 | public String getText() { 24 | return value; 25 | } 26 | 27 | public void setText(String value) { 28 | this.value = value; 29 | } 30 | 31 | @Override 32 | public String toString() { 33 | return label; 34 | } 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /RCPUtil/src/au/com/langdale/ui/binding/Validator.java: -------------------------------------------------------------------------------- 1 | package au.com.langdale.ui.binding; 2 | 3 | /** 4 | * Validators implement this template. 5 | * FIXME: should be an interface. 6 | */ 7 | public abstract class Validator { 8 | /** 9 | * Validate a value. 10 | * 11 | * This method has the same contract as Binding.validate(). 12 | * @param value: the value to be validated 13 | * @return: the validation error message or null if value is valid. 14 | */ 15 | public abstract String validate(String value); 16 | } -------------------------------------------------------------------------------- /RCPUtil/src/au/com/langdale/ui/builder/ButtonObserver.java: -------------------------------------------------------------------------------- 1 | package au.com.langdale.ui.builder; 2 | 3 | /** 4 | * An abstraction of the IHyperlinkListener and SelectionListener 5 | * that reports clicks and the name of the button or hyperlink that 6 | * was clicked. 7 | * 8 | */ 9 | public interface ButtonObserver { 10 | public void entered(String name); 11 | public void exited(String name); 12 | public void clicked(String name); 13 | } 14 | -------------------------------------------------------------------------------- /RCPUtil/src/au/com/langdale/ui/builder/Template.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This software is Copyright 2005,2006,2007,2008 Langdale Consultants. 3 | * Langdale Consultants can be contacted at: http://www.langdale.com.au 4 | */ 5 | package au.com.langdale.ui.builder; 6 | 7 | import org.eclipse.swt.widgets.Composite; 8 | import org.eclipse.swt.widgets.Control; 9 | 10 | /** 11 | * A Template contains a specification for a single control and its children. 12 | * The control is created within its parent by the realise() method. 13 | */ 14 | public interface Template { 15 | 16 | /** 17 | * Build and return a control with the given parent and register 18 | * it in the given assembly. 19 | * 20 | * The control may itself be the root of a hierarchy. 21 | * 22 | * This method should hook widget events and register 23 | * one or more widget or viewers against their names. 24 | */ 25 | public Control realise(Composite parent, Assembly assembly); 26 | 27 | } 28 | -------------------------------------------------------------------------------- /RCPUtil/src/au/com/langdale/ui/plumbing/Binding.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This software is Copyright 2005,2006,2007,2008 Langdale Consultants. 3 | * Langdale Consultants can be contacted at: http://www.langdale.com.au 4 | */ 5 | package au.com.langdale.ui.plumbing; 6 | 7 | /** 8 | * Defines events to transfer data to and from a user interface 9 | * and perform interactive validation. 10 | */ 11 | public interface Binding { 12 | /** 13 | * The implementation should transfer default values to the widgets. 14 | */ 15 | public void reset(); 16 | /** 17 | * The implementation should transfer values from an underlying model to the widgets. 18 | */ 19 | public void refresh(); 20 | 21 | /** 22 | * The implementation should transfer values from the widgets an underlying model. 23 | */ 24 | public void update(); 25 | 26 | /** 27 | * The implementation should examine the contents of the 28 | * model and/or the widgets' state and return an error message if user action 29 | * or data entry is required. It is invoked following both refresh() and update(). 30 | */ 31 | public abstract String validate(); 32 | } 33 | -------------------------------------------------------------------------------- /RCPUtil/src/au/com/langdale/ui/plumbing/ICanRefresh.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This software is Copyright 2005,2006,2007,2008 Langdale Consultants. 3 | * Langdale Consultants can be contacted at: http://www.langdale.com.au 4 | */ 5 | package au.com.langdale.ui.plumbing; 6 | /** 7 | * Tag for components that can refresh. 8 | */ 9 | public interface ICanRefresh { 10 | /** 11 | * Trigger a refresh operation, transferring model values to a user interface. 12 | */ 13 | void doRefresh(); 14 | } 15 | -------------------------------------------------------------------------------- /RCPUtil/src/au/com/langdale/ui/plumbing/Observer.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This software is Copyright 2005,2006,2007,2008 Langdale Consultants. 3 | * Langdale Consultants can be contacted at: http://www.langdale.com.au 4 | */ 5 | package au.com.langdale.ui.plumbing; 6 | 7 | /** 8 | * Defines overall form status events. 9 | */ 10 | public interface Observer { 11 | /** 12 | * Indicates to the receiver that values have been transferred from the 13 | * widgets to the model or other underlying data structures. 14 | */ 15 | public void markDirty(); 16 | 17 | /** 18 | * Indicates to the receiver that the widget values and/or model data 19 | * are now valid. 20 | */ 21 | public void markValid(); 22 | 23 | /** 24 | * Indicates to the receiver that the widget values and/or model data 25 | * are now invalid. The message parameter provides a human readable 26 | * reason. 27 | */ 28 | public void markInvalid(String message); 29 | } 30 | -------------------------------------------------------------------------------- /RCPUtil/src/au/com/langdale/ui/plumbing/SentinelBinding.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This software is Copyright 2005,2006,2007,2008 Langdale Consultants. 3 | * Langdale Consultants can be contacted at: http://www.langdale.com.au 4 | */ 5 | package au.com.langdale.ui.plumbing; 6 | /** 7 | * A binding that has no behaviour. 8 | * 9 | * This can be used as a placemarker in a bindings list or 10 | * as a base class for implementations. 11 | */ 12 | public class SentinelBinding implements Binding { 13 | 14 | /** 15 | * Default implementation provided. 16 | */ 17 | public void reset() {} 18 | 19 | 20 | /** 21 | * Default implementation provided. 22 | */ 23 | public void refresh() {} 24 | 25 | 26 | /** 27 | * Default implementation provided. 28 | */ 29 | public void update() {} 30 | 31 | 32 | /** 33 | * Default implementation provided. 34 | */ 35 | public String validate() { 36 | return null; 37 | } 38 | } -------------------------------------------------------------------------------- /RCPUtil/src/au/com/langdale/ui/util/IconCache.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This software is Copyright 2005,2006,2007,2008 Langdale Consultants. 3 | * Langdale Consultants can be contacted at: http://www.langdale.com.au 4 | */ 5 | package au.com.langdale.ui.util; 6 | 7 | import org.osgi.framework.Bundle; 8 | 9 | /** 10 | * Select an image to represent an object, instantiate it as an 11 | * Image and cache it. 12 | */ 13 | public class IconCache { 14 | 15 | private static GeneralIconCache icons; 16 | 17 | public static GeneralIconCache getIcons() { 18 | if( icons == null ) 19 | icons = new GeneralIconCache( null, "/au/com/langdale/ui/icons/" ); 20 | return icons; 21 | } 22 | 23 | public static void setSource(Bundle bundleToUse, String prefixPath) { 24 | icons = new GeneralIconCache(bundleToUse, prefixPath); 25 | } 26 | 27 | public static void setIcons(GeneralIconCache cache) { 28 | icons = cache; 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /SKena/.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /SKena/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | SKena 4 | 5 | 6 | 7 | 8 | 9 | org.eclipse.pde.ManifestBuilder 10 | 11 | 12 | 13 | 14 | org.eclipse.pde.SchemaBuilder 15 | 16 | 17 | 18 | 19 | ch.epfl.lamp.sdt.core.scalabuilder 20 | 21 | 22 | 23 | 24 | 25 | ch.epfl.lamp.sdt.core.scalanature 26 | org.eclipse.pde.PluginNature 27 | org.eclipse.jdt.core.javanature 28 | 29 | 30 | -------------------------------------------------------------------------------- /SKena/META-INF/MANIFEST.MF: -------------------------------------------------------------------------------- 1 | Manifest-Version: 1.0 2 | Bundle-ManifestVersion: 2 3 | Bundle-Name: SKena 4 | Bundle-SymbolicName: au.com.langdale.skena 5 | Bundle-Version: 1.1.0.qualifier 6 | Bundle-Vendor: Langdale Consultants 7 | Bundle-RequiredExecutionEnvironment: JavaSE-1.6 8 | Require-Bundle: org.scala-ide.scala.library, 9 | au.com.langdale.kena;visibility:=reexport 10 | Export-Package: au.com.langdale.skena, 11 | au.com.langdale.skena.data, 12 | au.com.langdale.skena.serializer, 13 | au.com.langdale.skena.vocabulary 14 | -------------------------------------------------------------------------------- /SKena/build.properties: -------------------------------------------------------------------------------- 1 | source.. = src/ 2 | output.. = bin/ 3 | bin.includes = META-INF/,\ 4 | . 5 | -------------------------------------------------------------------------------- /SKena/src/au/com/langdale/skena/Class.scala: -------------------------------------------------------------------------------- 1 | package au.com.langdale.skena 2 | 3 | import com.hp.hpl.jena.graph.{FrontsNode, Node, Graph, GraphAdd} 4 | import vocabulary._ 5 | import scala.collection.Set 6 | 7 | class Class( val label: String, val asNode: Node ) extends FrontsNode with Terminal[Node] { 8 | 9 | def this( label: String, uri: String ) = this( label, Node.createURI(uri)) 10 | 11 | def this( asNode: Node ) = this( asNode.getLocalName, asNode ) 12 | 13 | def update( subj: Node, value: Boolean )( implicit graph: Graph ): Unit = 14 | if(value) RDF.a( subj ) = asNode 15 | 16 | def update( subj: Option[Node], value: Boolean )( implicit graph: Graph ): Unit = 17 | subj.foreach( update(_, value)) 18 | 19 | def apply( subj: Node )( implicit graph: Graph ) = RDF.a( subj, asNode ) 20 | 21 | def toSet( implicit graph: Graph ) = RDF.a.subjects(asNode) 22 | } 23 | -------------------------------------------------------------------------------- /SKena/src/au/com/langdale/skena/Individual.scala: -------------------------------------------------------------------------------- 1 | package au.com.langdale.skena 2 | 3 | import com.hp.hpl.jena.graph.{FrontsNode, Node, Graph} 4 | 5 | class OneOf( label: String, asNode: Node ) extends Class( label, asNode ) { 6 | def this( label: String, uri: String ) = this( label, Node.createURI(uri)) 7 | def this( asNode: Node ) = this( asNode.getLocalName, asNode ) 8 | } 9 | 10 | class Individual( val label: String, val asNode: Node ) extends FrontsNode with Terminal[Node] { 11 | def this( label: String, uri: String ) = this( label, Node.createURI(uri)) 12 | def this( asNode: Node ) = this( asNode.getLocalName, asNode ) 13 | def apply( cand: Node )(implicit graph: Graph) = asNode == cand 14 | def toSet(implicit graph: Graph) = Set(asNode) 15 | } 16 | -------------------------------------------------------------------------------- /SKena/src/au/com/langdale/skena/Namespace.scala: -------------------------------------------------------------------------------- 1 | package au.com.langdale.skena 2 | 3 | import com.hp.hpl.jena.graph.{Node} 4 | 5 | case class Namespace( uri: String ) extends (String => Node) { 6 | def apply( name: String) = Node.createURI( uri + name ) 7 | def +( name: String ) = uri + name 8 | } 9 | -------------------------------------------------------------------------------- /SKena/src/au/com/langdale/skena/Property.scala: -------------------------------------------------------------------------------- 1 | package au.com.langdale.skena 2 | 3 | import com.hp.hpl.jena.graph.{FrontsNode, Node, Graph, GraphAdd} 4 | 5 | trait Property[T] extends FrontsNode with Step[Node,T] { 6 | 7 | val label: String 8 | 9 | def update( subj: Node, obj: T )( implicit graph: Graph ): Unit 10 | 11 | def update( subj: Node, obj: Option[T] )( implicit graph: Graph ): Unit 12 | } 13 | -------------------------------------------------------------------------------- /SKena/src/au/com/langdale/skena/Vocabulary.scala: -------------------------------------------------------------------------------- 1 | package au.com.langdale.skena 2 | 3 | class Vocabulary { 4 | 5 | } -------------------------------------------------------------------------------- /SKena/src/au/com/langdale/skena/package.scala: -------------------------------------------------------------------------------- 1 | package au.com.langdale 2 | 3 | import com.hp.hpl.jena.graph.{Graph, Node, FrontsNode} 4 | 5 | package object skena { 6 | implicit def toGraphOps(g: Graph) = new GraphOps(g) 7 | implicit def toNode(r: FrontsNode) = r.asNode 8 | val ? = Node.ANY 9 | } 10 | -------------------------------------------------------------------------------- /SKena/src/au/com/langdale/skena/vocabulary/OWL.scala: -------------------------------------------------------------------------------- 1 | package au.com.langdale.skena 2 | package vocabulary 3 | 4 | import com.hp.hpl.jena.vocabulary.OWL2 5 | 6 | object OWL extends Vocabulary { 7 | val NS = Namespace(OWL2.NS) 8 | 9 | object withRestrictions extends ListProperty(OWL2.withRestrictions) 10 | object equivalentClass extends ObjectProperty(OWL2.equivalentClass) 11 | object intersectionOf extends ListProperty(OWL2.intersectionOf) 12 | object onDatatype extends FunctionalObjectProperty(OWL2.onDatatype) 13 | } 14 | -------------------------------------------------------------------------------- /SKena/src/au/com/langdale/skena/vocabulary/RDF.scala: -------------------------------------------------------------------------------- 1 | package au.com.langdale.skena 2 | package vocabulary 3 | 4 | object RDF extends Vocabulary { 5 | val NS = Namespace("http://www.w3.org/1999/02/22-rdf-syntax-ns#") 6 | object a extends ObjectProperty(NS("type")) 7 | object first extends FunctionalObjectProperty(NS("first")) 8 | object rest extends FunctionalObjectProperty(NS("rest")) 9 | object nil extends Individual(NS("nil")) 10 | } 11 | -------------------------------------------------------------------------------- /SKena/src/au/com/langdale/skena/vocabulary/RDFS.scala: -------------------------------------------------------------------------------- 1 | package au.com.langdale.skena 2 | package vocabulary 3 | 4 | import com.hp.hpl.jena.vocabulary.{RDFS => jRDFS} 5 | 6 | object RDFS extends Vocabulary { 7 | val NS = Namespace(jRDFS.getURI) 8 | 9 | object Datatype extends Class(jRDFS.Datatype) 10 | object comment extends PlainDataProperty(jRDFS.comment) 11 | } -------------------------------------------------------------------------------- /SKena/src/au/com/langdale/skena/vocabulary/XSD.scala: -------------------------------------------------------------------------------- 1 | package au.com.langdale.skena 2 | package vocabulary 3 | 4 | object XSD extends Vocabulary { 5 | val NS = Namespace("http://www.w3.org/2001/XMLSchema#") 6 | } 7 | -------------------------------------------------------------------------------- /ScalaRCP/.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /ScalaRCP/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | ScalaRCP 4 | 5 | 6 | 7 | 8 | 9 | org.eclipse.pde.ManifestBuilder 10 | 11 | 12 | 13 | 14 | org.eclipse.pde.SchemaBuilder 15 | 16 | 17 | 18 | 19 | org.scala-ide.sdt.core.scalabuilder 20 | 21 | 22 | 23 | 24 | 25 | org.scala-ide.sdt.core.scalanature 26 | org.eclipse.pde.PluginNature 27 | org.eclipse.jdt.core.javanature 28 | 29 | 30 | -------------------------------------------------------------------------------- /ScalaRCP/.settings/org.eclipse.jdt.core.prefs: -------------------------------------------------------------------------------- 1 | #Tue Mar 30 17:23:23 EST 2010 2 | eclipse.preferences.version=1 3 | org.eclipse.jdt.core.builder.resourceCopyExclusionFilter=*.scala 4 | org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled 5 | org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6 6 | org.eclipse.jdt.core.compiler.compliance=1.6 7 | org.eclipse.jdt.core.compiler.problem.assertIdentifier=error 8 | org.eclipse.jdt.core.compiler.problem.enumIdentifier=error 9 | org.eclipse.jdt.core.compiler.source=1.6 10 | -------------------------------------------------------------------------------- /ScalaRCP/META-INF/MANIFEST.MF: -------------------------------------------------------------------------------- 1 | Manifest-Version: 1.0 2 | Bundle-ManifestVersion: 2 3 | Bundle-Name: ScalaRCP 4 | Bundle-SymbolicName: au.com.langdale.scalarcp 5 | Bundle-Version: 1.1.0.qualifier 6 | Bundle-RequiredExecutionEnvironment: JavaSE-1.6 7 | Require-Bundle: au.com.langdale.rcputil;bundle-version="1.0.0", 8 | au.com.langdale.scalautil;bundle-version="1.0.0", 9 | org.eclipse.ui, 10 | org.eclipse.ui.forms, 11 | org.eclipse.jface.text, 12 | org.eclipse.core.runtime, 13 | org.eclipse.help, 14 | org.scala-ide.scala.library;bundle-version="2.9.0" 15 | Export-Package: au.com.langdale.eclipse 16 | -------------------------------------------------------------------------------- /ScalaRCP/build.properties: -------------------------------------------------------------------------------- 1 | source.. = src/,\ 2 | bin/ 3 | output.. = bin/ 4 | bin.includes = META-INF/,\ 5 | . 6 | -------------------------------------------------------------------------------- /ScalaRCP/src/au/com/langdale/eclipse/ActionDelegate.scala: -------------------------------------------------------------------------------- 1 | package au.com.langdale 2 | package eclipse 3 | import org.eclipse.ui.{IWorkbenchWindowActionDelegate,IWorkbenchWindow} 4 | import org.eclipse.jface.action.IAction 5 | import org.eclipse.jface.viewers.ISelection 6 | import org.eclipse.jface.operation.IRunnableContext 7 | 8 | trait ActionDelegate extends IWorkbenchWindowActionDelegate { 9 | 10 | def shell = w.getShell 11 | def context: IRunnableContext = w 12 | def page = w.getActivePage 13 | def window = w 14 | private var w: IWorkbenchWindow = _ 15 | 16 | def init(w: IWorkbenchWindow) {this.w = w} 17 | def selectionChanged(action: IAction, selection: ISelection) {} 18 | def dispose {} 19 | } 20 | -------------------------------------------------------------------------------- /ScalaRCP/src/au/com/langdale/eclipse/ConnectionTester.scala: -------------------------------------------------------------------------------- 1 | package au.com.langdale 2 | package eclipse 3 | import scala.actors.Actor._ 4 | import java.sql.SQLException 5 | import db.Spec 6 | 7 | trait ConnectionTester { 8 | case class TestResult(result: String) 9 | 10 | def runTest(spec: Spec, localcast: UIActor) = actor { 11 | try { 12 | spec.connect.close 13 | localcast ! TestResult("OK.") 14 | } 15 | catch { 16 | case ex: SQLException => 17 | localcast ! TestResult("failure:\n" + ex.toString) 18 | } 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /ScalaRCP/src/au/com/langdale/eclipse/DialogBuilder.scala: -------------------------------------------------------------------------------- 1 | package au.com.langdale 2 | package eclipse 3 | import org.eclipse.swt.widgets.Composite 4 | import org.eclipse.jface.wizard.WizardPage 5 | import EventMonitor._ 6 | import ui.builder.{Assembly} 7 | 8 | abstract class DialogBuilder(name: String) extends WizardPage(name) with Disposable with FormBuilder { 9 | 10 | override def toolkit = Assembly.createDialogToolkit 11 | 12 | setDescription(name) 13 | 14 | def createControl( parent: Composite ) { 15 | createPartControl(parent) 16 | setControl(assembly.getRoot) 17 | assembly.doRefresh 18 | } 19 | 20 | def shell = getContainer.getShell 21 | def context = getContainer 22 | 23 | localcast listen { 24 | case Valid => 25 | setErrorMessage(null) 26 | setPageComplete(true) 27 | getNextPage match { 28 | case page: FormBuilder => page.assembly.fireValidate 29 | case _ => 30 | } 31 | 32 | case Invalid(message) => 33 | setErrorMessage(if(message == "") null else message) 34 | setPageComplete(false) 35 | } 36 | 37 | override def dispose { 38 | super.dispose 39 | disposeChain 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /ScalaRCP/src/au/com/langdale/eclipse/DisposeChain.scala: -------------------------------------------------------------------------------- 1 | package au.com.langdale.eclipse 2 | 3 | trait DisposeChain { 4 | def disposeChain: Unit 5 | } 6 | 7 | trait Disposable extends DisposeChain { 8 | def disposeChain {} 9 | } 10 | -------------------------------------------------------------------------------- /ScalaRCP/src/au/com/langdale/eclipse/Requester.scala: -------------------------------------------------------------------------------- 1 | package au.com.langdale 2 | package eclipse 3 | import actors.{Client, Operation} 4 | 5 | trait Requester extends Progress with Client { 6 | 7 | def request(op: Operation, title: String): Boolean = 8 | alert(title) { block(title) { request(op) }} 9 | 10 | def requestConfirm(op: Operation, title: String): Boolean = 11 | alert(title) { confirm(title) { block(title) { request(op) }}} 12 | } 13 | -------------------------------------------------------------------------------- /ScalaRCP/src/au/com/langdale/eclipse/SelectionMonitor.scala: -------------------------------------------------------------------------------- 1 | package au.com.langdale 2 | package eclipse 3 | 4 | import org.eclipse.ui.{IWorkbenchPart} 5 | import org.eclipse.swt.widgets.{Composite} 6 | 7 | trait SelectionMonitor extends EventMonitor with IWorkbenchPart { 8 | 9 | abstract override def createPartControl(parent: Composite) { 10 | super.createPartControl(parent) 11 | getSite.getPage.addSelectionListener(monitorSelection) 12 | } 13 | 14 | abstract override def dispose { 15 | getSite.getPage.removeSelectionListener(monitorSelection) 16 | super.dispose 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /ScalaRCP/src/au/com/langdale/eclipse/Subscriber.scala: -------------------------------------------------------------------------------- 1 | package au.com.langdale 2 | package eclipse 3 | import actors.Publisher 4 | import actors.Publisher._ 5 | import scala.actors.Actor._ 6 | 7 | trait Subscriber extends DisposeChain { 8 | val broadcast: Publisher 9 | case object Dispose 10 | 11 | def subscribe( body: PartialFunction[Any, Unit]) = actor { 12 | broadcast ! Subscribe(self) 13 | 14 | loop { 15 | react { 16 | case Dispose => 17 | broadcast ! Unsubscribe(self) 18 | exit 19 | 20 | case mesg if body.isDefinedAt(mesg) => 21 | body(mesg) 22 | 23 | case _ => 24 | } 25 | } 26 | } 27 | 28 | abstract override def disposeChain { 29 | super.disposeChain 30 | broadcast ! Dispose 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /ScalaRCP/src/au/com/langdale/eclipse/UI.scala: -------------------------------------------------------------------------------- 1 | package au.com.langdale 2 | package eclipse 3 | import org.eclipse.swt.widgets.Composite 4 | 5 | trait UI { 6 | //def createPartControl(parent: Composite): Unit 7 | def dispose: Unit 8 | } 9 | 10 | //object UI { 11 | // trait Part extends UI { 12 | // def createControl(parent: Composite) = createPartControl(parent) 13 | // } 14 | //} -------------------------------------------------------------------------------- /ScalaRCP/src/au/com/langdale/eclipse/UIActor.scala: -------------------------------------------------------------------------------- 1 | package au.com.langdale 2 | package eclipse 3 | import org.eclipse.ui.PlatformUI 4 | import java.lang.Thread.currentThread 5 | 6 | object UIActor { 7 | 8 | def asyncExec( action: =>Unit) { 9 | val display = PlatformUI.getWorkbench.getDisplay 10 | 11 | if( currentThread == display.getThread ) 12 | action 13 | else 14 | display asyncExec new Runnable { def run = action } 15 | } 16 | } 17 | import UIActor._ 18 | 19 | trait UIActor extends DisposeChain { 20 | type Reaction = PartialFunction[Any,Unit] 21 | private var reactions: List[Reaction] = Nil 22 | 23 | def !( mesg: Any) = asyncExec { reactions filter(_.isDefinedAt(mesg)) foreach ( _.apply(mesg)) } 24 | 25 | def listen(r: Reaction) = asyncExec { reactions = r :: reactions } 26 | 27 | abstract override def disposeChain { 28 | super.disposeChain 29 | asyncExec { reactions = Nil } 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /ScalaRCP/src/au/com/langdale/eclipse/ViewBase.scala: -------------------------------------------------------------------------------- 1 | package au.com.langdale 2 | package eclipse 3 | import org.eclipse.ui.IViewPart 4 | import org.eclipse.jface.operation.IRunnableContext 5 | import org.eclipse.swt.widgets.Composite 6 | import org.eclipse.jface.action.Action 7 | import ui.util.IconCache 8 | import scala.collection.mutable.ListBuffer 9 | 10 | trait ViewBase extends IViewPart { 11 | 12 | def shell = getSite.getShell 13 | def context: IRunnableContext = getSite.getWorkbenchWindow 14 | 15 | abstract override def createPartControl( parent: Composite ) { 16 | super.createPartControl(parent) 17 | val toolbar = getViewSite.getActionBars.getToolBarManager 18 | tools foreach { toolbar add _ } 19 | } 20 | 21 | val tools = new ListBuffer[Action] 22 | 23 | def action(name: String, text: String)( imp: =>Unit ) = { 24 | val a = new Action { override def run = imp } 25 | a setId name 26 | a setImageDescriptor IconCache.getIcons.getDescriptor(name, false, 16) 27 | a setText text 28 | tools += a 29 | a 30 | } 31 | 32 | } 33 | -------------------------------------------------------------------------------- /ScalaRCP/src/au/com/langdale/eclipse/ViewBuilder.scala: -------------------------------------------------------------------------------- 1 | package au.com.langdale 2 | package eclipse 3 | import org.eclipse.ui.part.ViewPart 4 | import org.eclipse.jface.operation.IRunnableContext 5 | import org.eclipse.swt.widgets.Composite 6 | import org.eclipse.jface.action.Action 7 | import scala.collection.mutable.ListBuffer 8 | 9 | abstract class ViewBuilder extends ViewPart with Disposable with FormBuilder with ViewBase { 10 | override def createPartControl( parent: Composite ) { 11 | super.createPartControl(parent) 12 | assembly.doRefresh 13 | } 14 | 15 | override def dispose { 16 | super.dispose 17 | disposeChain 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /ScalaRCP/src/au/com/langdale/eclipse/WizardBuilder.scala: -------------------------------------------------------------------------------- 1 | package au.com.langdale 2 | package eclipse 3 | 4 | import org.eclipse.jface.wizard.{Wizard, IWizardPage} 5 | import org.eclipse.ui.IWorkbenchWizard 6 | import org.eclipse.ui.IWorkbench 7 | import org.eclipse.jface.viewers.IStructuredSelection 8 | import org.eclipse.jface.operation.IRunnableContext 9 | import scala.collection.mutable.ListBuffer 10 | 11 | abstract class WizardBuilder extends Wizard with IWorkbenchWizard with Disposable { 12 | 13 | def init( w: IWorkbench, s: IStructuredSelection) {} 14 | def shell = getContainer.getShell 15 | def context: IRunnableContext = getContainer 16 | def doRefresh = pages foreach { case f: FormBuilder => f.assembly.doRefresh case _ => } 17 | 18 | setNeedsProgressMonitor(true) 19 | 20 | val pages = new ListBuffer[IWizardPage] 21 | 22 | override def addPages { 23 | for( page <- pages ) addPage(page) 24 | } 25 | 26 | override def dispose { 27 | super.dispose 28 | disposeChain 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /ScalaUtil/.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /ScalaUtil/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | ScalaUtil 4 | 5 | 6 | 7 | 8 | 9 | org.eclipse.pde.ManifestBuilder 10 | 11 | 12 | 13 | 14 | org.eclipse.pde.SchemaBuilder 15 | 16 | 17 | 18 | 19 | org.scala-ide.sdt.core.scalabuilder 20 | 21 | 22 | 23 | 24 | 25 | org.scala-ide.sdt.core.scalanature 26 | org.eclipse.pde.PluginNature 27 | org.eclipse.jdt.core.javanature 28 | 29 | 30 | -------------------------------------------------------------------------------- /ScalaUtil/.settings/org.eclipse.jdt.core.prefs: -------------------------------------------------------------------------------- 1 | #Tue Mar 30 20:17:18 EST 2010 2 | eclipse.preferences.version=1 3 | org.eclipse.jdt.core.builder.resourceCopyExclusionFilter=*.scala 4 | org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled 5 | org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6 6 | org.eclipse.jdt.core.compiler.compliance=1.6 7 | org.eclipse.jdt.core.compiler.problem.assertIdentifier=error 8 | org.eclipse.jdt.core.compiler.problem.enumIdentifier=error 9 | org.eclipse.jdt.core.compiler.source=1.6 10 | -------------------------------------------------------------------------------- /ScalaUtil/META-INF/MANIFEST.MF: -------------------------------------------------------------------------------- 1 | Manifest-Version: 1.0 2 | Bundle-ManifestVersion: 2 3 | Bundle-Name: ScalaUtil 4 | Bundle-SymbolicName: au.com.langdale.scalautil 5 | Bundle-Version: 1.1.0.qualifier 6 | Bundle-RequiredExecutionEnvironment: JavaSE-1.6 7 | Require-Bundle: org.scala-ide.scala.library;bundle-version="2.9.0" 8 | Bundle-ClassPath: ., 9 | lib/ojdbc14_g.jar, 10 | lib/sdoapi.jar, 11 | lib/slf4j-api-1.5.8.jar 12 | Export-Package: au.com.langdale, 13 | au.com.langdale.actors, 14 | au.com.langdale.collection, 15 | au.com.langdale.db, 16 | au.com.langdale.graphic, 17 | au.com.langdale.rdf, 18 | au.com.langdale.util, 19 | oracle.spatial.geometry, 20 | oracle.sql, 21 | org.slf4j 22 | Require-Bundle: org.scala-ide.scala.library 23 | -------------------------------------------------------------------------------- /ScalaUtil/build.properties: -------------------------------------------------------------------------------- 1 | source.. = src/,\ 2 | bin/ 3 | output.. = bin/ 4 | bin.includes = META-INF/,\ 5 | .,\ 6 | lib/ojdbc14_g.jar,\ 7 | lib/sdoapi.jar,\ 8 | lib/slf4j-api-1.5.8.jar 9 | -------------------------------------------------------------------------------- /ScalaUtil/lib/ojdbc14_g.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/ScalaUtil/lib/ojdbc14_g.jar -------------------------------------------------------------------------------- /ScalaUtil/lib/sdoapi.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/ScalaUtil/lib/sdoapi.jar -------------------------------------------------------------------------------- /ScalaUtil/lib/slf4j-api-1.5.8.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/ScalaUtil/lib/slf4j-api-1.5.8.jar -------------------------------------------------------------------------------- /ScalaUtil/src/au/com/langdale/Log.scala: -------------------------------------------------------------------------------- 1 | package au.com.langdale 2 | 3 | object Log extends util.PackageLogger 4 | -------------------------------------------------------------------------------- /ScalaUtil/src/au/com/langdale/actors/Client.scala: -------------------------------------------------------------------------------- 1 | package au.com.langdale 2 | package actors 3 | import scala.actors.OutputChannel 4 | import Operation._ 5 | 6 | /** 7 | * A client is not necessarily an actor, but will communicate with an actor. 8 | */ 9 | trait Client { 10 | val broadcast: OutputChannel[Any] 11 | 12 | def request(op: Operation) = { 13 | Log("Initiating: " + op) 14 | (broadcast.receiver !? op) match { 15 | case Success(`op`) => Log("Completed: " + op); None 16 | case Failure(`op`, mesg) => Log("Failed: " + op); Some(mesg) 17 | case _ => Some("Unexpected result for: " + op) 18 | } 19 | } 20 | 21 | def requestReply(op: Operation)(handler: Any => Unit): Option[String] = { 22 | Log("Initiating: " + op) 23 | (broadcast.receiver !? op) match { 24 | case Result(`op`, r) => handler(r); None 25 | case Failure(`op`, mesg: String) => Log("Failed: " + op); Some(mesg) 26 | case _ => Some("Unexpected result for: " + op) 27 | } 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /ScalaUtil/src/au/com/langdale/actors/Jobber.scala: -------------------------------------------------------------------------------- 1 | package au.com.langdale 2 | package actors 3 | import scala.actors.Actor 4 | import scala.actors.Actor._ 5 | import Operation._ 6 | import Jobber._ 7 | 8 | object Jobber { 9 | trait Job extends Operation with Function0[Unit] 10 | case object QueryStatus 11 | case class InProgress(op: Operation) extends Effect 12 | case object Idle extends Effect 13 | } 14 | 15 | class Jobber extends Actor { 16 | 17 | private var status: Effect = Idle 18 | private var ready = true 19 | 20 | def act = loop { 21 | react { 22 | case op: Job if ready => 23 | status = InProgress(op) 24 | ready = false 25 | perform(op) 26 | 27 | case result: Effect => 28 | status = result 29 | ready = true 30 | 31 | case QueryStatus => sender ! status 32 | 33 | case _ => 34 | 35 | } 36 | } 37 | 38 | private val coordinator = this 39 | 40 | private def perform(op: Job) = new Actor { 41 | def act = try { 42 | op() 43 | coordinator ! Success(op) 44 | } 45 | catch { 46 | case ex => coordinator ! Failure(op, ex.toString) 47 | Log error ex.toString 48 | } 49 | start 50 | } 51 | } 52 | 53 | 54 | -------------------------------------------------------------------------------- /ScalaUtil/src/au/com/langdale/actors/Operation.scala: -------------------------------------------------------------------------------- 1 | package au.com.langdale 2 | package actors 3 | 4 | trait Operation 5 | 6 | object Operation { 7 | // commands 8 | case class Create[E](entity: E) extends Operation 9 | case class Update[E](entity: E) extends Operation 10 | case class Delete[E](entity: E) extends Operation 11 | 12 | // results 13 | trait Effect 14 | case class Result[V](op: Operation, value: V) extends Effect 15 | case class Success(op: Operation) extends Effect 16 | case class Failure(op: Operation, reason: String) extends Effect 17 | case class Notify(op: Operation) 18 | case object GeneralNotify 19 | } 20 | -------------------------------------------------------------------------------- /ScalaUtil/src/au/com/langdale/actors/Publisher.scala: -------------------------------------------------------------------------------- 1 | package au.com.langdale 2 | package actors 3 | import scala.actors.{Actor, OutputChannel} 4 | import scala.actors.Actor._ 5 | 6 | object Publisher { 7 | case class Subscribe(c: OutputChannel[Any]) 8 | case class Unsubscribe(c: OutputChannel[Any]) 9 | object hub extends Publisher 10 | } 11 | import Publisher._ 12 | 13 | class Publisher extends Actor { 14 | private var subscribers: List[OutputChannel[Any]] = Nil 15 | 16 | def act { 17 | // Log("Publisher") 18 | loop { 19 | react { 20 | case Subscribe(c) => subscribe(c) 21 | case Unsubscribe(c) => subscribers = subscribers remove { _ == c }; /* Log( "Unsubscibe: " + c) */ 22 | case m => subscribers filter { _ != sender } foreach { _ forward m } 23 | } 24 | } 25 | } 26 | 27 | def listen(reaction: PartialFunction[Any,Unit]) = actor { 28 | this ! Subscribe(self) 29 | loop(reaction) 30 | } 31 | 32 | def subscribe(c: OutputChannel[Any]) { subscribers = c :: subscribers; /* Log( "Subscibe: " + c) */ } 33 | } 34 | -------------------------------------------------------------------------------- /ScalaUtil/src/au/com/langdale/actors/Server.scala: -------------------------------------------------------------------------------- 1 | package au.com.langdale 2 | package actors 3 | import scala.actors.Actor._ 4 | import Operation._ 5 | import scala.actors.OutputChannel 6 | 7 | trait Server { 8 | val broadcast: OutputChannel[Any] 9 | 10 | def perform( op: Operation )( imp: => Unit ) { 11 | val client = sender 12 | 13 | try { 14 | imp 15 | client ! Success(op) 16 | broadcast ! Notify(op) 17 | } 18 | catch { 19 | case ex: Exception => 20 | client ! Failure(op, ex.getMessage) 21 | 22 | case er: OutOfMemoryError => 23 | er.printStackTrace(Console.out) 24 | client ! Failure(op, "Memory exhausted, please restart the application") 25 | 26 | case er: StackOverflowError => 27 | er.printStackTrace(Console.out) 28 | client ! Failure(op, "Memory exhausted, please restart the application") 29 | } 30 | } 31 | 32 | } 33 | -------------------------------------------------------------------------------- /ScalaUtil/src/au/com/langdale/collection/AsyncGraph.scala: -------------------------------------------------------------------------------- 1 | package au.com.langdale 2 | package collection 3 | 4 | import scala.actors.Actor._ 5 | import util.Graph._ 6 | 7 | class AsyncGraph { 8 | 9 | class Edges extends Responder[Edge] { 10 | def respond(consume: Edge => Unit) { 11 | var more = true 12 | loopWhile(more) { 13 | react { 14 | case Some(e: Edge) => consume(e) 15 | case None => more = false 16 | } 17 | } 18 | } 19 | } 20 | 21 | class Tags extends Responder[Tag] { 22 | def respond(consume: Tag => Unit) { 23 | var more = true 24 | loopWhile(more) { 25 | react { 26 | case Some(e: Tag) => consume(e) 27 | case None => more = false 28 | } 29 | } 30 | } 31 | } 32 | 33 | def edges(n: Node) = { 34 | new Tags 35 | } 36 | } 37 | 38 | object Example { 39 | case class Conductor( id: Long ) 40 | 41 | val ag = new AsyncGraph 42 | val n = 42l 43 | for( e <- ag.edges(n)) { 44 | e match { 45 | case c: Conductor => 46 | actor { 47 | 48 | } 49 | } 50 | } 51 | } 52 | -------------------------------------------------------------------------------- /ScalaUtil/src/au/com/langdale/collection/FilteredIterator.scala: -------------------------------------------------------------------------------- 1 | package au.com.langdale 2 | package collection 3 | 4 | class FilteredIterator[A](val inner:Iterator[A])(val p: A => Boolean) extends Iterator[A] { 5 | private var filled = false 6 | private var exhausted = false 7 | private var lookahead: A = _ 8 | 9 | def hasNext: Boolean = { 10 | if( ! filled && ! exhausted) { 11 | while( inner.hasNext ) { 12 | lookahead = inner.next 13 | if(p(lookahead)) 14 | return true 15 | } 16 | exhausted = true 17 | } 18 | ! exhausted 19 | } 20 | 21 | def next: A = { 22 | hasNext 23 | if(exhausted) 24 | throw new NoSuchElementException 25 | filled = false 26 | lookahead 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /ScalaUtil/src/au/com/langdale/collection/SymetricProperty.scala: -------------------------------------------------------------------------------- 1 | package au.com.langdale 2 | package collection 3 | 4 | import scala.collection.mutable.{HashMap,HashSet,Set} 5 | 6 | class SymetricProperty[Node] extends HashMap[Node,Set[Node]] { 7 | def add(s:Node, o:Node) { 8 | getOrElseUpdate(s, new HashSet[Node]) += o 9 | getOrElseUpdate(o, new HashSet[Node]) += s 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /ScalaUtil/src/au/com/langdale/db/ConnectionBorrower.scala: -------------------------------------------------------------------------------- 1 | package au.com.langdale 2 | package db 3 | import ConnectionHolder._ 4 | import java.sql.Connection 5 | import scala.actors.OutputChannel 6 | import db.DBA.LIVE 7 | 8 | /* 9 | * A trait to allow a thread (not designed as an actor) to 10 | * synchronously obtain a database connection. 11 | */ 12 | trait ConnectionBorrower { 13 | val key: String 14 | val broadcast: OutputChannel[Any] 15 | 16 | def withConnection[A](action: Connection => A) = { 17 | (broadcast.receiver !? Take(key, LIVE)) match { 18 | case Give(`key`, LIVE, c) => 19 | 20 | try { 21 | Some(action(c)) 22 | } 23 | finally { 24 | broadcast ! Release(key, c) 25 | } 26 | 27 | case x => 28 | Log error "Connection not available: " + x 29 | None 30 | } 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /ScalaUtil/src/au/com/langdale/db/ResultExtractor.scala: -------------------------------------------------------------------------------- 1 | package au.com.langdale 2 | package db 3 | import java.sql.ResultSet 4 | import oracle.spatial.geometry.JGeometry 5 | import oracle.sql.STRUCT 6 | import graphic.Geometry._ 7 | 8 | object ResultExtractor { 9 | 10 | implicit def getInt(column: Symbol)(implicit results: ResultSet): Int = results.getInt(column.name) 11 | implicit def getLong(column: Symbol)(implicit results: ResultSet): Long = results.getLong(column.name) 12 | implicit def getString(column: Symbol)(implicit results: ResultSet) = results.getString(column.name) 13 | implicit def getDouble(column: Symbol)(implicit results: ResultSet) = results.getDouble(column.name) 14 | implicit def getStringOption(column: Symbol)(implicit results: ResultSet) = { 15 | val v = results.getString(column.name) 16 | if( v != null ) Some(v) else None 17 | } 18 | 19 | implicit def getShape(column: Symbol)(implicit rs: ResultSet, transform: (Double, Double) => Point) = 20 | Spatial.structToShape(rs.getObject(column.name)) 21 | } 22 | -------------------------------------------------------------------------------- /ScalaUtil/src/au/com/langdale/db/Script.scala: -------------------------------------------------------------------------------- 1 | package au.com.langdale 2 | package db 3 | import java.io.{BufferedReader, InputStreamReader, InputStream} 4 | import DBA._ 5 | 6 | object Script { 7 | def run(spec: Spec, stream: InputStream) { 8 | val db = spec.connect 9 | db.setAutoCommit(false) 10 | 11 | try { 12 | 13 | val r = new BufferedReader( new InputStreamReader(stream)) 14 | try { 15 | var line = r.readLine 16 | while(line != null) { 17 | val sql = line.trim 18 | if( sql != "") 19 | db exec SQL(sql) 20 | line = r.readLine 21 | } 22 | } 23 | finally { 24 | r.close 25 | } 26 | 27 | db.commit 28 | } 29 | finally { 30 | db.rollback 31 | db.close 32 | } 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /ScalaUtil/src/au/com/langdale/db/SettingsAgent.scala: -------------------------------------------------------------------------------- 1 | package au.com.langdale 2 | package db 3 | 4 | import scala.actors.Actor._ 5 | import scala.actors.Actor 6 | import scala.actors.OutputChannel 7 | 8 | import util.Settings 9 | import actors.Publisher.Subscribe 10 | 11 | object SettingsAgent { 12 | case class Setting( key: String, value: Any) 13 | case class NeedSetting( key: String ) 14 | } 15 | 16 | import SettingsAgent._ 17 | 18 | class SettingsAgent( val name: String, notifier: OutputChannel[Any]) extends Actor with Settings { 19 | 20 | val description = "Database Connection Settings" 21 | val dir = System.getProperty("user.home") 22 | 23 | def act { 24 | // Log("SettingsAgent") 25 | 26 | Oracle.setupTNS 27 | 28 | loop { 29 | react { 30 | case Setting( key, spec: Spec) => 31 | spec.saveTo( key, this) 32 | save 33 | 34 | case NeedSetting( key ) => 35 | Oracle.extractSpec( key, this) match { 36 | case Some(spec) => notifier ! Setting(key, spec) 37 | case None => 38 | } 39 | 40 | case _ => 41 | } 42 | } 43 | } 44 | } 45 | -------------------------------------------------------------------------------- /ScalaUtil/src/au/com/langdale/db/Spec.scala: -------------------------------------------------------------------------------- 1 | package au.com.langdale 2 | package db 3 | import scala.collection.mutable.{HashMap} 4 | import java.sql.{Connection, DriverManager, SQLException } 5 | import java.util.Properties 6 | import util.{Descriptor, Settings} 7 | 8 | object Spec { 9 | 10 | private val specs = new HashMap[String, Spec] 11 | 12 | def apply( key: String ) = specs(key) 13 | 14 | def update(key: String, spec: Spec) { specs(key) = spec } 15 | 16 | def save( settings: Settings ) { 17 | for((key, spec) <- specs) 18 | spec.saveTo(key, settings) 19 | settings.save 20 | } 21 | } 22 | 23 | trait Spec { 24 | def uri: String 25 | def info: String 26 | def saveTo( key: String, settings: Settings): Unit 27 | def connect = DriverManager.getConnection(uri) 28 | } -------------------------------------------------------------------------------- /ScalaUtil/src/au/com/langdale/db/Workspace.scala: -------------------------------------------------------------------------------- 1 | package au.com.langdale 2 | package db 3 | 4 | import java.util.Date 5 | import java.sql.{Connection,ResultSet} 6 | import db.SQLQuoter._ 7 | import db.DBA._ 8 | 9 | case class Workspace(name: String, date: Date, desc: String) { 10 | def create = ID("DBMS_WM", "CreateWorkspace")(name, desc) 11 | def update = ID("DBMS_WM", "AlterWorkspace")(name, desc) 12 | def delete = ID("DBMS_WM", "RemoveWorkspace")(name) 13 | def merge = ID("DBMS_WM", "MergeWorkspace")(name, TRUE) 14 | 15 | } 16 | 17 | object Workspace extends RecordType[Workspace] { 18 | 19 | val name = Prop("Name", "workspace", _.name) 20 | val date = Prop("Created", "createTime", _.date) 21 | val desc = Prop("Description", "description", _.desc) 22 | 23 | def apply(implicit rs: ResultSet): Workspace = apply(name, date, desc) 24 | 25 | val all = this query SELECT(name, date, desc) ~ FROM('ALL_WORKSPACES) ~ 26 | WHERE ~ name ~ SQL("<>") ~ LIVE ~ 27 | ORDER ~ BY ~ name 28 | 29 | //def byName(crit: String) = this query all.sql ~ WHERE ~ name ~ LIKE ~ crit 30 | } 31 | -------------------------------------------------------------------------------- /ScalaUtil/src/au/com/langdale/util/CommandLine.scala: -------------------------------------------------------------------------------- 1 | package au.com.langdale 2 | package util 3 | import scala.collection.Map 4 | import scala.collection.mutable.{ListBuffer, HashMap} 5 | 6 | object CommandLine { 7 | val OPTIONAL_FLAG = "--([^=]+)"r 8 | val OPTIONAL_VALUE = "--([^=]+)=(.*)"r 9 | 10 | def parse(args: Array[String]): (List[String], Map[String, String]) = { 11 | val params = new ListBuffer[String] 12 | val options = new HashMap[String, String] 13 | 14 | for( arg <- args ) arg match { 15 | case OPTIONAL_VALUE(name, value) => options(name) = value 16 | case OPTIONAL_FLAG(name) => options(name) = "" 17 | case param => params += param 18 | } 19 | 20 | (params.toList, options) 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /ScalaUtil/src/au/com/langdale/util/Descriptor.scala: -------------------------------------------------------------------------------- 1 | package au.com.langdale 2 | package util 3 | import scala.reflect.Manifest 4 | import scala.collection.mutable.ListBuffer 5 | 6 | trait Descriptor[A] { 7 | 8 | case class Prop[+B](desc: String, name: String, get: A=>B) { 9 | def toString(a: A) = desc + ": " + get(a).toString 10 | val ordinal = props.length 11 | props += this 12 | } 13 | 14 | val props = new ListBuffer[Prop[Any]] 15 | def toList = props.toList 16 | def mkString(a: A) = props.map( _.toString(a)).mkString 17 | 18 | } 19 | -------------------------------------------------------------------------------- /ScalaUtil/src/au/com/langdale/util/Frequency.scala: -------------------------------------------------------------------------------- 1 | package au.com.langdale 2 | package util 3 | 4 | import scala.collection.mutable.HashMap 5 | import scala.collection.immutable.TreeSet 6 | import Ordering._ 7 | 8 | class Frequency[A : Ordering,B : Ordering] extends HashMap[(A,B), Int] { 9 | 10 | var xs = new TreeSet[A] 11 | var ys = new TreeSet[B] 12 | 13 | def add(k1: A, k2:B, count:Int) { 14 | val key = (k1, k2) 15 | update(key, getOrElse(key, 0) + count) 16 | xs += k1 17 | ys += k2 18 | } 19 | 20 | def add(k1: A, k2:B) { add(k1, k2, 1) } 21 | 22 | def title = "" 23 | 24 | def printGrid { 25 | println(title) 26 | 27 | for( x <- xs ) print("\t" + x) 28 | println 29 | 30 | for( y <- ys) { 31 | print(y) 32 | for( x <- xs) print("\t" + getOrElse((x,y), 0)) 33 | println 34 | } 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /ScalaUtil/src/au/com/langdale/util/Islands.scala: -------------------------------------------------------------------------------- 1 | package au.com.langdale 2 | package util 3 | 4 | import Graph._ 5 | 6 | class Islands(val g:Graph) { 7 | val grouper = new Grouper[Node] 8 | def nodes = grouper.nodes 9 | def size = grouper.size 10 | 11 | for(e <- g.edges) grouper.add(e.s, e.o) 12 | 13 | def reanalyse { 14 | grouper.clear 15 | for(e <- g.edges) grouper.add(e.s, e.o) 16 | } 17 | } 18 | 19 | class Summary(islands:Islands, threshhold: Int) extends Frequency[Int, Label] { 20 | override def title = "Islands" 21 | 22 | for( (i, ns) <- islands.nodes; if ns.size > threshhold) { 23 | add(i, "node", ns.size) 24 | for( n <- ns; e <- islands.g.edgesFrom(n) ) add(i, e.p) 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /ScalaUtil/src/au/com/langdale/util/PackageLogger.scala: -------------------------------------------------------------------------------- 1 | package au.com.langdale 2 | package util 3 | import org.slf4j.LoggerFactory 4 | 5 | class PackageLogger(val name: String) { 6 | def this() = this { val c = getClass.getName; c.substring(0, c.lastIndexOf('.')) } 7 | val inner = LoggerFactory.getLogger(name) 8 | 9 | def apply( mesg: => Any ) = inner.info(mesg.toString) 10 | 11 | def info( mesg: String ) = inner.info(mesg) 12 | def info(msg: String, arg0: AnyRef, arg1: AnyRef) = inner.info(msg, arg0, arg1) 13 | 14 | def debug(msg: String, ex: Throwable) = inner.debug(msg, ex) 15 | def debug(msg: String, arg0: AnyRef, arg1: AnyRef) = inner.debug(msg, arg0, arg1) 16 | 17 | def warn( mesg: String ) = inner.warn(mesg) 18 | def warn(msg: String, ex: Throwable) = inner.warn(msg, ex) 19 | def warn(msg: String, arg0: AnyRef, arg1: AnyRef) = inner.warn(msg, arg0, arg1) 20 | 21 | def error( mesg: String ) = inner.error(mesg) 22 | def error(msg: String, ex: Throwable) = inner.error(msg, ex) 23 | def error(msg: String, arg0: AnyRef, arg1: AnyRef) = inner.error(msg, arg0, arg1) 24 | 25 | def isDebugEnabled = inner.isDebugEnabled 26 | } 27 | -------------------------------------------------------------------------------- /ScalaUtil/src/au/com/langdale/util/Redirector.scala: -------------------------------------------------------------------------------- 1 | package au.com.langdale 2 | package util 3 | import java.io.{FileOutputStream, OutputStream, PrintStream, IOException, BufferedOutputStream, File} 4 | import java.util.Date 5 | 6 | trait Redirector { 7 | def apply[A](name: String)( block: => A ): A 8 | } 9 | 10 | object Redirector { 11 | 12 | object NullStream extends OutputStream { 13 | def write(c: Int) {} 14 | } 15 | 16 | object FileRedirector extends Redirector { 17 | def apply[A](name: String)( block: => A ): A = Console.withOut( new FileOutputStream(name) ) { block } 18 | } 19 | 20 | object NullRedirector extends Redirector { 21 | def apply[A](name: String)( block: => A ): A = Console.withOut( NullStream ) { block } 22 | } 23 | } -------------------------------------------------------------------------------- /com.cimphony.cimtoole/.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /com.cimphony.cimtoole/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | com.cimphony.cimtoole 4 | 5 | 6 | 7 | 8 | 9 | org.eclipse.jdt.core.javabuilder 10 | 11 | 12 | 13 | 14 | org.eclipse.pde.ManifestBuilder 15 | 16 | 17 | 18 | 19 | org.eclipse.pde.SchemaBuilder 20 | 21 | 22 | 23 | 24 | 25 | org.eclipse.pde.PluginNature 26 | org.eclipse.jdt.core.javanature 27 | 28 | 29 | -------------------------------------------------------------------------------- /com.cimphony.cimtoole/.settings/org.eclipse.jdt.core.prefs: -------------------------------------------------------------------------------- 1 | #Mon Aug 02 13:49:07 BST 2010 2 | eclipse.preferences.version=1 3 | org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled 4 | org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6 5 | org.eclipse.jdt.core.compiler.compliance=1.6 6 | org.eclipse.jdt.core.compiler.problem.assertIdentifier=error 7 | org.eclipse.jdt.core.compiler.problem.enumIdentifier=error 8 | org.eclipse.jdt.core.compiler.source=1.6 9 | -------------------------------------------------------------------------------- /com.cimphony.cimtoole/META-INF/MANIFEST.MF: -------------------------------------------------------------------------------- 1 | Manifest-Version: 1.0 2 | Bundle-ManifestVersion: 2 3 | Bundle-Name: CIMTool Ecore Support 4 | Bundle-SymbolicName: com.cimphony.cimtoole;singleton:=true 5 | Bundle-Version: 1.0.0.qualifier 6 | Bundle-Vendor: CIMPHONY 7 | Bundle-RequiredExecutionEnvironment: JavaSE-1.6 8 | Require-Bundle: org.eclipse.emf.ecore;bundle-version="2.5.0", 9 | org.eclipse.emf;bundle-version="2.5.0", 10 | au.com.langdale.cimutil;bundle-version="1.8.2", 11 | au.com.langdale.rcputil;bundle-version="2.0.0", 12 | org.eclipse.core.resources, 13 | org.eclipse.core.runtime, 14 | au.com.langdale.kena, 15 | org.eclipse.ui, 16 | org.eclipse.emf.ecore.xmi;bundle-version="2.5.0", 17 | au.com.langdale.cimtoole;bundle-version="1.8.2", 18 | org.eclipse.ui.forms;bundle-version="3.5.0" 19 | Import-Package: au.com.langdale.kena, 20 | com.hp.hpl.jena.graph, 21 | com.hp.hpl.jena.vocabulary 22 | Export-Package: com.cimphony.cimtoole, 23 | com.cimphony.cimtoole.buildlet, 24 | com.cimphony.cimtoole.ecore, 25 | com.cimphony.cimtoole.util, 26 | com.cimphony.cimtoole.wizards 27 | -------------------------------------------------------------------------------- /com.cimphony.cimtoole/build.properties: -------------------------------------------------------------------------------- 1 | source.. = src/ 2 | output.. = bin/ 3 | bin.includes = META-INF/,\ 4 | .,\ 5 | plugin.xml,\ 6 | icons/ 7 | -------------------------------------------------------------------------------- /com.cimphony.cimtoole/icons/package-ecore.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arnolddevos/CIMTool/14e13e5b4b00711341e893087188a6a58715ac41/com.cimphony.cimtoole/icons/package-ecore.png --------------------------------------------------------------------------------