@prefix nam1: <https://lseun135.github.io/NAontology_study/m1-record#> .
@prefix nam2: <https://lseun135.github.io/NAontology_study/m2-person#> .
@prefix nam3: <https://lseun135.github.io/NAontology_study/m3-content#> .
@prefix nadat1: <https://lseun135.github.io/NAontology_study/resource/d1-record#> .
@prefix nadat2: <https://lseun135.github.io/NAontology_study/resource/d2-person#> .
@prefix nadat3: <https://lseun135.github.io/NAontology_study/resource/d3-content#> .

@prefix adms: <http://www.w3.org/ns/adms#> .
@prefix bf: <https://id.loc.gov/ontologies/bibframe/> .
@prefix bio: <http://purl.org/vocab/bio/0.1/> .
@prefix crm: <http://www.cidoc-crm.org/cidoc-crm/> .
@prefix dcterms: <http://purl.org/dc/terms/> .
@prefix foaf: <http://xmlns.com/foaf/0.1/> .
@prefix gn:     <https://www.geonames.org/ontology#> .
@prefix opengov: <http://www.w3.org/ns/opengov#> .
@prefix org: <http://www.w3.org/ns/org#> .
@prefix owl:  <http://www.w3.org/2002/07/owl#> .
@prefix prov: <http://www.w3.org/ns/prov#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix rico: <https://www.ica.org/standards/RiC/ontology#> .
@prefix schema: <https://schema.org/> .
@prefix skos: <https://www.w3.org/2004/02/skos/core#> .
@prefix xml: <http://www.w3.org/XML/1998/namespace> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .


@base <https://lseun135.github.io/NAontology_study/m2-person#> .


<https://lseun135.github.io/NAontology_study/m2-person.ttl> rdf:type owl:Ontology ;
                owl:imports <http://www.w3.org/2004/02/skos/core> ,
                            <http://www.w3.org/ns/org>, <http://xmlns.com/foaf/0.1/> .

#    Class
foaf:Agent rdf:type owl:Class ;
            skos:prefLabel "행위자"@ko, "agent"@en . 

foaf:Person rdf:type owl:Class ;
                rdfs:subClassOf foaf:Agent ;
                skos:prefLabel "개인"@ko, "person"@en .

nam2:Legislator rdf:type owl:Class ;
                rdfs:subClassOf foaf:Person ;
                skos:prefLabel "의원"@ko , "legislator"@en ;
                skos:altLabel "국회의원"@ko , "member of the national assembly"@en , "national assembly member"@en , "lawmaker"@en .

nam2:Staff rdf:type owl:Class ;
                rdfs:subClassOf foaf:Person ;
                skos:prefLabel "직원"@ko, "staff"@en ;
                skos:altLabel "employee"@en .


dcterms:LocationPeriodOrJurisdiction rdf:type owl:Class .

dcterms:PeriodOfTime rdf:type owl:Class ;
                     rdfs:subClassOf dcterms:LocationPeriodOrJurisdiction .



nam2:Committee rdf:type owl:Class ;
                rdfs:subClassOf org:OrganizationalUnit ;
                skos:prefLabel "위원회"@ko , "committee"@en .

nam2:SpecialCommittee rdf:type owl:Class ;
                rdfs:subClassOf nam2:Committee ;
                skos:prefLabel "특별위원회"@ko , "special committee"@en.

nam2:StandingCommittee rdf:type owl:Class ;
                rdfs:subClassOf nam2:Committee ;
                skos:prefLabel "상임위원회"@ko , "standing committee"@en ;
                skos:altLabel "상임위"@ko .

nam2:SubCommittee rdf:type owl:Class ;
                rdfs:subClassOf nam2:Committee ;
                skos:prefLabel "소위원회"@ko , "subcommittee"@en .

nam2:Institution rdf:type owl:Class ;
                rdfs:subClassOf org:FormalOrganization ;
                owl:disjointWith nam2:Party ;
                skos:prefLabel "기관"@ko , "institution"@en .

nam2:Party rdf:type owl:Class ;
                rdfs:subClassOf org:FormalOrganization ;
                skos:prefLabel "정당"@ko , "party"@en .

gn:Feature rdf:type owl:Class .





#    Object Properties

dcterms:temporal rdf:type owl:ObjectProperty ;
                 rdfs:range dcterms:PeriodOfTime .



#    Data properties

dcterms:identifier rdf:type owl:DatatypeProperty ;
                   rdfs:range rdfs:Literal .

foaf:gender rdf:type owl:DatatypeProperty ;
            rdfs:range [ rdf:type rdfs:Datatype ;
                         owl:oneOf [ rdf:type rdf:List ;
                                     rdf:first "female"^^xsd:token ;
                                     rdf:rest [ rdf:type rdf:List ;
                                                rdf:first "male"^^xsd:token ;
                                                rdf:rest rdf:nil
                                              ]
                                   ]
                       ] .

foaf:name rdf:type owl:DatatypeProperty .

nam2:formerLabel rdf:type owl:DatatypeProperty ;
                rdfs:comment "이전 이름" .

nam2:lunarBirthText rdf:type owl:DatatypeProperty ;
                    rdfs:range xsd:string .

nam2:calendarType rdf:type owl:DatatypeProperty ;
                  rdfs:range [ rdf:type rdfs:Datatype ;
                               owl:oneOf [ rdf:type rdf:List ;
                                           rdf:first "lunar"^^xsd:token ;
                                           rdf:rest [ rdf:type rdf:List ;
                                                      rdf:first "solar"^^xsd:token ;
                                                      rdf:rest rdf:nil
                                                    ]
                                         ]
                             ] .


nam2:assistantName rdf:type owl:DatatypeProperty ;
                   rdfs:domain org:Membership ,
                               foaf:Person ;
                   rdfs:range rdf:langString ;
                   rdfs:comment "보좌관 이름(여러 값 허용)"@ko ;
                   skos:prefLabel "보좌관"@ko , "assistant"@en .

nam2:secretaryName rdf:type owl:DatatypeProperty ;
                   rdfs:domain org:Membership ,
                               foaf:Person ;
                   rdfs:range rdf:langString ;
                   rdfs:comment "비서관 이름(여러 값 허용)"@ko ;
                   skos:prefLabel "비서관"@ko , "secretary"@en .

nam2:seniorSecretaryName rdf:type owl:DatatypeProperty ;
                         rdfs:domain org:Membership ,
                                     foaf:Person ;
                         rdfs:range rdf:langString ;
                         rdfs:comment "선임비서관 이름(여러 값 허용)"@ko ;
                         skos:prefLabel "선임비서관"@ko , "senior secretary"@en  .


schema:endDate rdf:type owl:DatatypeProperty .

schema:startDate rdf:type owl:DatatypeProperty .

schema:telephone rdf:type owl:DatatypeProperty .

gn:name rdf:type owl:DatatypeProperty .





#    Individuals

### 임시 생성 여부 설정
nam2:isInAStateOf rdf:type owl:ObjectProperty ;
                rdfs:subPropertyOf adms:status ;
                rdfs:range skos:Concept ;
                rdfs:label "entity status"@en ;
                rdfs:comment "추가한 개체의 임시생성 여부 표기"@ko .

nam2:State rdf:type skos:ConceptScheme ;
                skos:prefLabel "상태"@ko ;
                rdfs:comment "개체의 상태표기" .

nam2:Provisional rdf:type skos:Concept ;
                skos:inScheme nam2:State ;
                skos:prefLabel "Provisional"@en ; 
                skos:prefLabel "임시"@ko .





