CoinsCore:Entity Class

Uit COINS2
Ga naar: navigatie, zoeken

Entity is a subclass of Concept. It serves as superclass of Object, EntityProperty, ComplexPropertyValue, Party, Connection and ContainsRelation.
Assembly, Part and ContainsRelationGroup are also subclasses of Entity.
Entity can also be a subclass of VersionObject, thus allowing it’s members to have versions.

Entity can not be extended to other classes.

Entity is an abstract class; it can not be instantiated directly. It’s members have to be members of an extended class (Object, EntityProperty, ComplexPropertyValue, Party, Connection and ContainsRelation) and also be a member of CoinsContainerObject or CataloguePart.

It has properties for name and description (both of type string) and optionally (custom defined) properties from EntityProperty.

It holds references to exactly 1 Party as creator.

Since data elements are instances of classes derived from Entity, these elements all have an ID, a name and description and a reference to their creator (instances of Party). Extendend classes can have custom defined properties.

The nextTrunkVersion is restricted to one.


History
* New in COINS 2.0


Informative representation in UML

Informative representation of Entity in UML

This image shows the informative representation of the Entity class.

Attributes

Name Type Description
userID xsd:string To humans, an unique identification of the individual
name xsd:string Name of the individual
description xsd:string Description of the individual
creator Party Party (0..1) who created this entity
hasProperties EntityProperty Set of custom defined properties


Formal Representation in RDF/XML

 <owl:Class rdf:ID="Entity">

   <rdfs:label xml:lang="en-GB">Entity</rdfs:label>
   <rdfs:comment xml:lang="en-GB">Abstract supertype of all C-BIM classes with some relations and properties.</rdfs:comment>

   <rdfs:subClassOf rdf:resource="#Concept"/>
   <rdfs:subClassOf rdf:resource="#VersionObject"/>

   <rdfs:subClassOf>
     <owl:Class>
       <owl:unionOf rdf:parseType="Collection">
         <rdf:Description rdf:about="#CoinsContainerObject"/>
         <rdf:Description rdf:about="#CataloguePart"/>
       </owl:unionOf>
     </owl:Class>
   </rdfs:subClassOf>

   <rdfs:subClassOf>
     <owl:Class>
       <owl:unionOf rdf:parseType="Collection">
         <rdf:Description rdf:ID="EntityProperty"/>
         <rdf:Description rdf:ID="Connection"/>
         <rdf:Description rdf:ID="Object"/>
         <rdf:Description rdf:ID="ComplexPropertyValue"/>
         <rdf:Description rdf:ID="ContainsRelation"/>
         <rdf:Description rdf:ID="Party"/>
       </owl:unionOf>
     </owl:Class>
   </rdfs:subClassOf>

   <rdfs:subClassOf>
     <owl:Restriction>
       <owl:onProperty rdf:resource="#creator"/>
       <owl:maxCardinality rdf:datatype=" xsd:nonNegativeInteger">1</owl:maxCardinality>
     </owl:Restriction>
   </rdfs:subClassOf>

   <rdfs:subClassOf>
     <owl:Restriction>
       <owl:onProperty rdf:resource="#modifier"/>
       <owl:maxCardinality rdf:datatype="xsd:nonNegativeInteger">1</owl:maxCardinality>
     </owl:Restriction>
   </rdfs:subClassOf>

   <owl:equivalentClass>
     <owl:Class>
       <owl:intersectionOf rdf:parseType="Collection">
         <owl:Class>
           <owl:unionOf rdf:parseType="Collection">
             <rdf:Description rdf:about="#EntityProperty"/>
             <rdf:Description rdf:about="#Connection"/>
             <rdf:Description rdf:about="#Object"/>
             <rdf:Description rdf:about="#ComplexPropertyValue"/>
             <rdf:Description rdf:about="#ContainsRelation"/>
             <rdf:Description rdf:about="#Party"/>
           </owl:unionOf>
         </owl:Class>

         <owl:Class>
           <owl:unionOf rdf:parseType="Collection">
             <rdf:Description rdf:ID="CoinsContainerObject"/>
             <rdf:Description rdf:ID="CataloguePart"/>
           </owl:unionOf>
         </owl:Class>
       </owl:intersectionOf>
     </owl:Class>
   </owl:equivalentClass>

   <isClassAbstract rdf:datatype="xsd:boolean">true</isClassAbstract>
   <isClassExtendable rdf:datatype="xsd:boolean">false</isClassExtendable>

   <rdfs:subClassOf>
     <owl:Restriction>
       <owl:onProperty rdf:resource="#nextTrunkVersion"/>
       <owl:maxCardinality rdf:datatype="xsd:nonNegativeInteger">1</owl:maxCardinality>
     </owl:Restriction>
   </rdfs:subClassOf>

   <classCreator rdf:resource="#COINSTechnicalManagementGroup"/>
   <classCreationDate rdf:datatype="xsd:dateTime">2016-04-04T12:00:00.00</classCreationDate>
   <classVersionID rdf:datatype="xsd:string">1.0</classVersionID>

 </owl:Class>