@prefix : <http://www.ontologydesignpatterns.org/cp/owl/bag.owl#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix xml: <http://www.w3.org/XML/1998/namespace> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@base <http://www.ontologydesignpatterns.org/cp/owl/bag.owl> .

<http://www.ontologydesignpatterns.org/cp/owl/bag.owl> rdf:type owl:Ontology ;
                                                        owl:imports <http://www.ontologydesignpatterns.org/cp/owl/collectionentity.owl> ,
                                                                    <http://www.ontologydesignpatterns.org/schemas/cpannotationschema.owl> ;
                                                        <http://www.ontologydesignpatterns.org/schemas/cpannotationschema.owl#coversRequirements> "What are the items contained in this bag? "^^xsd:string ,
                                                                                                                                                  "What bag is this item an element of?"^^xsd:string ,
                                                                                                                                                  "What is the size of this bag?"^^xsd:string ,
                                                                                                                                                  "What resource does this item refer to?"^^xsd:string ;
                                                        <http://www.ontologydesignpatterns.org/schemas/cpannotationschema.owl#extractedFrom> "http://swan.mindinformatics.org/ontologies/1.2/collections.owl"^^xsd:string ;
                                                        <http://www.ontologydesignpatterns.org/schemas/cpannotationschema.owl#hasAuthor> "PaoloCiccarese"^^xsd:string ;
                                                        <http://www.ontologydesignpatterns.org/schemas/cpannotationschema.owl#hasComponent> "http://www.ontologydesignpatterns.org/cp/owl/collectionentity.owl"^^xsd:string ;
                                                        <http://www.ontologydesignpatterns.org/schemas/cpannotationschema.owl#hasIntent> "To model bags of items (elements). The Bag is characterized by a collection that can have multiple copies of each object. "^^xsd:string ;
                                                        <http://www.ontologydesignpatterns.org/schemas/cpannotationschema.owl#reengineeredFrom> "http://swan.mindinformatics.org/ontologies/1.2/collections.owl"^^xsd:string ;
                                                        <http://www.ontologydesignpatterns.org/schemas/cpannotationschema.owl#relatedCPs> "http://www.ontologydesignpatterns.org/cp/owl/list.owl"^^xsd:string ,
                                                                                                                                          "http://www.ontologydesignpatterns.org/cp/owl/set.owl"^^xsd:string ;
                                                        owl:versionInfo "Created with TopBraid Composer"^^xsd:string .

#################################################################
#    Object Properties
#################################################################

###  http://www.ontologydesignpatterns.org/cp/owl/bag.owl#hasItem
:hasItem rdf:type owl:ObjectProperty ;
         rdfs:subPropertyOf <http://www.ontologydesignpatterns.org/cp/owl/collectionentity.owl#hasMember> ;
         owl:inverseOf :itemOf ;
         rdfs:domain :Bag ;
         rdfs:range :Item ;
         rdfs:comment "has item - The link to every item of the Bag"^^xsd:string ;
         rdfs:label "has item"^^xsd:string .


###  http://www.ontologydesignpatterns.org/cp/owl/bag.owl#itemContent
:itemContent rdf:type owl:ObjectProperty ;
             rdfs:domain :Item ;
             rdfs:range [ rdf:type owl:Class ;
                          owl:complementOf :Item
                        ] ;
             rdfs:comment "itemContent - The link to the actual resource to which the item refers."^^xsd:string ;
             rdfs:label "item content"^^xsd:string .


###  http://www.ontologydesignpatterns.org/cp/owl/bag.owl#itemOf
:itemOf rdf:type owl:ObjectProperty ;
        rdfs:subPropertyOf <http://www.ontologydesignpatterns.org/cp/owl/collectionentity.owl#isMemberOf> ;
        rdfs:domain :Item ;
        rdfs:range :Bag ;
        rdfs:comment "item of - The link from an item to the Bag where it is contained"^^xsd:string ;
        rdfs:label "item of"^^xsd:string .


#################################################################
#    Data properties
#################################################################

###  http://www.ontologydesignpatterns.org/cp/owl/bag.owl#size
:size rdf:type owl:DatatypeProperty ;
      rdfs:domain <http://www.ontologydesignpatterns.org/cp/owl/collectionentity.owl#Collection> ;
      rdfs:range xsd:integer ;
      rdfs:comment "size - The number of items belonging to a collection"^^xsd:string ;
      rdfs:label "size"^^xsd:string .


#################################################################
#    Classes
#################################################################

###  http://www.ontologydesignpatterns.org/cp/owl/bag.owl#Bag
:Bag rdf:type owl:Class ;
     rdfs:subClassOf <http://www.ontologydesignpatterns.org/cp/owl/collectionentity.owl#Collection> ;
     rdfs:comment "Bag - Collection that can have a number of copies of each object"^^xsd:string ;
     rdfs:label "(collections) Bag"^^xsd:string .


###  http://www.ontologydesignpatterns.org/cp/owl/bag.owl#Item
:Item rdf:type owl:Class ;
      rdfs:subClassOf owl:Thing ,
                      [ rdf:type owl:Restriction ;
                        owl:onProperty :itemContent ;
                        owl:cardinality "1"^^xsd:nonNegativeInteger
                      ] ;
      owl:disjointWith <http://www.ontologydesignpatterns.org/cp/owl/collectionentity.owl#Collection> ;
      rdfs:comment "Item - Element belonging to a Bag"^^xsd:string ;
      rdfs:label "item"^^xsd:string .


###  http://www.ontologydesignpatterns.org/cp/owl/collectionentity.owl#Collection

###  Generated by the OWL API (version 4.5.9.2019-02-01T07:24:44Z) https://github.com/owlcs/owlapi
