SCKM Ontology
type: Ontology
contributor: Fariba Quarib
contributor: Justin Förster @de
creator: Sebastian Heil
subject: annotation
subject: source code
license: MIT License Copyright (c) 2019 Technische Universität Chemnitz Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
comment: This ontology is an OWL representation of the source code knowledge model (SCKM) formalism, which is part of the AWSM Reverse Engineering method (AWSM:RE). It employs the W3C Web Annotation standard.

S5
is rule enabled: true
type: Imp
body: DatavaluedPropertyAtom
  property predicate: start
  argument1: TR
  argument2: sr
body: DatavaluedPropertyAtom
  property predicate: start
  argument1: TF
  argument2: sf
body: DatavaluedPropertyAtom
  property predicate: hasSource
  argument1: SF
  argument2: https://vsr.informatik.tu-chemnitz.de/ontologies/source_knowledge#S
body: ClassAtom
  class predicate: SpecificResource
  argument1: SR
body: ClassAtom
  class predicate: TextPositionSelector
  argument1: TF
body: ClassAtom
  class predicate: SpecificResource
  argument1: SF
body: BuiltinAtom
  builtin: greaterThanOrEqual
  arguments: ef
  arguments: er
body: ClassAtom
  class predicate: Annotation
  argument1: AR
body: BuiltinAtom
  builtin: lessThan
  arguments: sr
  arguments: sf
body: IndividualPropertyAtom
  property predicate: hasBody
  argument1: AF
  argument2: https://vsr.informatik.tu-chemnitz.de/ontologies/source_knowledge#F
body: IndividualPropertyAtom
  property predicate: hasBody
  argument1: AR
  argument2: https://vsr.informatik.tu-chemnitz.de/ontologies/source_knowledge#R
body: ClassAtom
  class predicate: TextPositionSelector
  argument1: TR
body: IndividualPropertyAtom
  property predicate: hasSelector
  argument1: SF
  argument2: TF
body: IndividualPropertyAtom
  property predicate: hasSelector
  argument1: SR
  argument2: TR
body: BuiltinAtom
  builtin: greaterThanOrEqual
  arguments: er
  arguments: sf
body: ClassAtom
  class predicate: Feature
  argument1: https://vsr.informatik.tu-chemnitz.de/ontologies/source_knowledge#F
body: DatavaluedPropertyAtom
  property predicate: end
  argument1: TR
  argument2: er
body: DatavaluedPropertyAtom
  property predicate: end
  argument1: TF
  argument2: ef
body: IndividualPropertyAtom
  property predicate: hasTarget
  argument1: AF
  argument2: SF
body: IndividualPropertyAtom
  property predicate: hasTarget
  argument1: AR
  argument2: SR
body: DatavaluedPropertyAtom
  property predicate: hasSource
  argument1: SR
  argument2: https://vsr.informatik.tu-chemnitz.de/ontologies/source_knowledge#S
body: ClassAtom
  class predicate: DomainKnowledge
  argument1: https://vsr.informatik.tu-chemnitz.de/ontologies/source_knowledge#R
body: ClassAtom
  class predicate: Annotation
  argument1: AF
head: IndividualPropertyAtom
  property predicate: requires
  argument1: https://vsr.informatik.tu-chemnitz.de/ontologies/source_knowledge#F
  argument2: https://vsr.informatik.tu-chemnitz.de/ontologies/source_knowledge#R
head: IndividualPropertyAtom
  property predicate: influences
  argument1: https://vsr.informatik.tu-chemnitz.de/ontologies/source_knowledge#R
  argument2: https://vsr.informatik.tu-chemnitz.de/ontologies/source_knowledge#F

S2
is rule enabled: true
type: Imp
body: DatavaluedPropertyAtom
  property predicate: start
  argument1: TR
  argument2: sr
body: DatavaluedPropertyAtom
  property predicate: start
  argument1: TF
  argument2: sf
body: ClassAtom
  class predicate: SpecificResource
  argument1: SR
body: ClassAtom
  class predicate: TextPositionSelector
  argument1: TF
body: ClassAtom
  class predicate: SpecificResource
  argument1: SF
body: ClassAtom
  class predicate: Annotation
  argument1: AR
body: IndividualPropertyAtom
  property predicate: hasBody
  argument1: AF
  argument2: https://vsr.informatik.tu-chemnitz.de/ontologies/source_knowledge#F
body: IndividualPropertyAtom
  property predicate: hasBody
  argument1: AR
  argument2: https://vsr.informatik.tu-chemnitz.de/ontologies/source_knowledge#R
body: ClassAtom
  class predicate: TextPositionSelector
  argument1: TR
body: IndividualPropertyAtom
  property predicate: hasSelector
  argument1: SF
  argument2: TF
body: IndividualPropertyAtom
  property predicate: hasSelector
  argument1: SR
  argument2: TR
body: BuiltinAtom
  builtin: lessThan
  arguments: sf
  arguments: sr
body: ClassAtom
  class predicate: Feature
  argument1: https://vsr.informatik.tu-chemnitz.de/ontologies/source_knowledge#F
body: DatavaluedPropertyAtom
  property predicate: end
  argument1: TR
  argument2: er
body: DatavaluedPropertyAtom
  property predicate: end
  argument1: TF
  argument2: ef
body: IndividualPropertyAtom
  property predicate: hasTarget
  argument1: AF
  argument2: SF
body: IndividualPropertyAtom
  property predicate: hasTarget
  argument1: AR
  argument2: SR
body: BuiltinAtom
  builtin: greaterThanOrEqual
  arguments: ef
  arguments: sr
body: BuiltinAtom
  builtin: greaterThan
  arguments: er
  arguments: ef
body: ClassAtom
  class predicate: DomainKnowledge
  argument1: https://vsr.informatik.tu-chemnitz.de/ontologies/source_knowledge#R
body: ClassAtom
  class predicate: Annotation
  argument1: AF
head: IndividualPropertyAtom
  property predicate: requires
  argument1: https://vsr.informatik.tu-chemnitz.de/ontologies/source_knowledge#F
  argument2: https://vsr.informatik.tu-chemnitz.de/ontologies/source_knowledge#R
head: IndividualPropertyAtom
  property predicate: influences
  argument1: https://vsr.informatik.tu-chemnitz.de/ontologies/source_knowledge#R
  argument2: https://vsr.informatik.tu-chemnitz.de/ontologies/source_knowledge#F

S3
is rule enabled: true
type: Imp
body: DatavaluedPropertyAtom
  property predicate: start
  argument1: TR
  argument2: sr
body: DatavaluedPropertyAtom
  property predicate: start
  argument1: TF
  argument2: sf
body: ClassAtom
  class predicate: SpecificResource
  argument1: SR
body: ClassAtom
  class predicate: TextPositionSelector
  argument1: TF
body: ClassAtom
  class predicate: SpecificResource
  argument1: SF
body: BuiltinAtom
  builtin: greaterThanOrEqual
  arguments: ef
  arguments: er
body: ClassAtom
  class predicate: Annotation
  argument1: AR
body: IndividualPropertyAtom
  property predicate: hasBody
  argument1: AF
  argument2: https://vsr.informatik.tu-chemnitz.de/ontologies/source_knowledge#F
body: IndividualPropertyAtom
  property predicate: hasBody
  argument1: AR
  argument2: https://vsr.informatik.tu-chemnitz.de/ontologies/source_knowledge#R
body: ClassAtom
  class predicate: TextPositionSelector
  argument1: TR
body: IndividualPropertyAtom
  property predicate: hasSelector
  argument1: SF
  argument2: TF
body: IndividualPropertyAtom
  property predicate: hasSelector
  argument1: SR
  argument2: TR
body: ClassAtom
  class predicate: Feature
  argument1: https://vsr.informatik.tu-chemnitz.de/ontologies/source_knowledge#F
body: DatavaluedPropertyAtom
  property predicate: end
  argument1: TR
  argument2: er
body: DatavaluedPropertyAtom
  property predicate: end
  argument1: TF
  argument2: ef
body: IndividualPropertyAtom
  property predicate: hasTarget
  argument1: AF
  argument2: SF
body: IndividualPropertyAtom
  property predicate: hasTarget
  argument1: AR
  argument2: SR
body: BuiltinAtom
  builtin: lessThanOrEqual
  arguments: sf
  arguments: sr
body: ClassAtom
  class predicate: DomainKnowledge
  argument1: https://vsr.informatik.tu-chemnitz.de/ontologies/source_knowledge#R
body: ClassAtom
  class predicate: Annotation
  argument1: AF
head: IndividualPropertyAtom
  property predicate: requires
  argument1: https://vsr.informatik.tu-chemnitz.de/ontologies/source_knowledge#F
  argument2: https://vsr.informatik.tu-chemnitz.de/ontologies/source_knowledge#R
head: IndividualPropertyAtom
  property predicate: influences
  argument1: https://vsr.informatik.tu-chemnitz.de/ontologies/source_knowledge#R
  argument2: https://vsr.informatik.tu-chemnitz.de/ontologies/source_knowledge#F

S4
is rule enabled: true
type: Imp
body: DatavaluedPropertyAtom
  property predicate: start
  argument1: TR
  argument2: sr
body: DatavaluedPropertyAtom
  property predicate: start
  argument1: TF
  argument2: sf
body: BuiltinAtom
  builtin: greaterThanOrEqual
  arguments: er
  arguments: ef
body: ClassAtom
  class predicate: SpecificResource
  argument1: SR
body: ClassAtom
  class predicate: TextPositionSelector
  argument1: TF
body: ClassAtom
  class predicate: SpecificResource
  argument1: SF
body: ClassAtom
  class predicate: Annotation
  argument1: AR
body: IndividualPropertyAtom
  property predicate: hasBody
  argument1: AF
  argument2: https://vsr.informatik.tu-chemnitz.de/ontologies/source_knowledge#F
body: IndividualPropertyAtom
  property predicate: hasBody
  argument1: AR
  argument2: https://vsr.informatik.tu-chemnitz.de/ontologies/source_knowledge#R
body: ClassAtom
  class predicate: TextPositionSelector
  argument1: TR
body: IndividualPropertyAtom
  property predicate: hasSelector
  argument1: SF
  argument2: TF
body: IndividualPropertyAtom
  property predicate: hasSelector
  argument1: SR
  argument2: TR
body: BuiltinAtom
  builtin: lessThanOrEqual
  arguments: sr
  arguments: sf
body: ClassAtom
  class predicate: Feature
  argument1: https://vsr.informatik.tu-chemnitz.de/ontologies/source_knowledge#F
body: DatavaluedPropertyAtom
  property predicate: end
  argument1: TR
  argument2: er
body: DatavaluedPropertyAtom
  property predicate: end
  argument1: TF
  argument2: ef
body: IndividualPropertyAtom
  property predicate: hasTarget
  argument1: AF
  argument2: SF
body: IndividualPropertyAtom
  property predicate: hasTarget
  argument1: AR
  argument2: SR
body: ClassAtom
  class predicate: DomainKnowledge
  argument1: https://vsr.informatik.tu-chemnitz.de/ontologies/source_knowledge#R
body: ClassAtom
  class predicate: Annotation
  argument1: AF
head: IndividualPropertyAtom
  property predicate: requires
  argument1: https://vsr.informatik.tu-chemnitz.de/ontologies/source_knowledge#F
  argument2: https://vsr.informatik.tu-chemnitz.de/ontologies/source_knowledge#R
head: IndividualPropertyAtom
  property predicate: influences
  argument1: https://vsr.informatik.tu-chemnitz.de/ontologies/source_knowledge#R
  argument2: https://vsr.informatik.tu-chemnitz.de/ontologies/source_knowledge#F

AnnotationWithinArea
is rule enabled: true
type: Imp
body: ClassAtom
  class predicate: Annotation
  argument1: AN
body: ClassAtom
  class predicate: Area
  argument1: AREA
body: IndividualPropertyAtom
  property predicate: hasTarget
  argument1: AN
  argument2: SR
body: ClassAtom
  class predicate: SpecificResource
  argument1: SR
body: DatavaluedPropertyAtom
  property predicate: hasSource
  argument1: SR
  argument2: SOURCE
body: DatavaluedPropertyAtom
  property predicate: hasSource
  argument1: AREA
  argument2: SOURCE
body: ClassAtom
  class predicate: TextPositionSelector
  argument1: TAN
body: ClassAtom
  class predicate: TextPositionSelector
  argument1: TAR
body: DatavaluedPropertyAtom
  property predicate: start
  argument1: TAN
  argument2: san
body: DatavaluedPropertyAtom
  property predicate: start
  argument1: TAR
  argument2: sar
body: DatavaluedPropertyAtom
  property predicate: end
  argument1: TAN
  argument2: ean
body: DatavaluedPropertyAtom
  property predicate: end
  argument1: TAR
  argument2: ear
body: BuiltinAtom
  builtin: lessThanOrEqual
  arguments: sar
  arguments: san
body: BuiltinAtom
  builtin: greaterThanOrEqual
  arguments: ear
  arguments: ean
head: IndividualPropertyAtom
  property predicate: within
  argument1: AN
  argument2: AREA

S1
is rule enabled: true
type: Imp
body: DatavaluedPropertyAtom
  property predicate: start
  argument1: TR
  argument2: sr
body: DatavaluedPropertyAtom
  property predicate: start
  argument1: TF
  argument2: sf
body: DatavaluedPropertyAtom
  property predicate: hasSource
  argument1: SF
  argument2: https://vsr.informatik.tu-chemnitz.de/ontologies/source_knowledge#S
body: ClassAtom
  class predicate: SpecificResource
  argument1: SR
body: ClassAtom
  class predicate: TextPositionSelector
  argument1: TF
body: ClassAtom
  class predicate: SpecificResource
  argument1: SF
body: BuiltinAtom
  builtin: lessThanOrEqual
  arguments: er
  arguments: ef
body: ClassAtom
  class predicate: Annotation
  argument1: AR
body: BuiltinAtom
  builtin: greaterThanOrEqual
  arguments: sr
  arguments: sf
body: IndividualPropertyAtom
  property predicate: hasBody
  argument1: AF
  argument2: https://vsr.informatik.tu-chemnitz.de/ontologies/source_knowledge#F
body: IndividualPropertyAtom
  property predicate: hasBody
  argument1: AR
  argument2: https://vsr.informatik.tu-chemnitz.de/ontologies/source_knowledge#R
body: ClassAtom
  class predicate: TextPositionSelector
  argument1: TR
body: IndividualPropertyAtom
  property predicate: hasSelector
  argument1: SF
  argument2: TF
body: IndividualPropertyAtom
  property predicate: hasSelector
  argument1: SR
  argument2: TR
body: ClassAtom
  class predicate: Feature
  argument1: https://vsr.informatik.tu-chemnitz.de/ontologies/source_knowledge#F
body: DatavaluedPropertyAtom
  property predicate: end
  argument1: TR
  argument2: er
body: DatavaluedPropertyAtom
  property predicate: end
  argument1: TF
  argument2: ef
body: IndividualPropertyAtom
  property predicate: hasTarget
  argument1: AF
  argument2: SF
body: IndividualPropertyAtom
  property predicate: hasTarget
  argument1: AR
  argument2: SR
body: DatavaluedPropertyAtom
  property predicate: hasSource
  argument1: SR
  argument2: https://vsr.informatik.tu-chemnitz.de/ontologies/source_knowledge#S
body: ClassAtom
  class predicate: DomainKnowledge
  argument1: https://vsr.informatik.tu-chemnitz.de/ontologies/source_knowledge#R
body: ClassAtom
  class predicate: Annotation
  argument1: AF
head: IndividualPropertyAtom
  property predicate: requires
  argument1: https://vsr.informatik.tu-chemnitz.de/ontologies/source_knowledge#F
  argument2: https://vsr.informatik.tu-chemnitz.de/ontologies/source_knowledge#R
head: IndividualPropertyAtom
  property predicate: influences
  argument1: https://vsr.informatik.tu-chemnitz.de/ontologies/source_knowledge#R
  argument2: https://vsr.informatik.tu-chemnitz.de/ontologies/source_knowledge#F