FHIR CI-Build

This is the Continuous Integration Build of FHIR (will be incorrect/inconsistent at times).
See the Directory of published versions

Terminologycapabilities.shex

Responsible Owner: Terminology Infrastructure Work GroupStandards Status: InformativeCompartments: No defined compartments

Raw ShEx

ShEx statement for terminologycapabilities

PREFIX fhir: <http://hl7.org/fhir/> 
PREFIX fhirvs: <http://hl7.org/fhir/ValueSet/>
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> 
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> 

# ShEx Version 2.2
IMPORT <Uri.shex>
IMPORT <Url.shex>
IMPORT <Code.shex>
IMPORT <Coding.shex>
IMPORT <String.shex>
IMPORT <Boolean.shex>
IMPORT <DateTime.shex>
IMPORT <Markdown.shex>
IMPORT <Canonical.shex>
IMPORT <Identifier.shex>
IMPORT <UsageContext.shex>
IMPORT <ContactDetail.shex>
IMPORT <DomainResource.shex>
IMPORT <BackboneElement.shex>
IMPORT <CodeableConcept.shex>

start=@<TerminologyCapabilities> AND {fhir:nodeRole [fhir:treeRoot]}

# A statement of system capabilities
<TerminologyCapabilities> EXTENDS @<DomainResource> CLOSED {   
    a [fhir:TerminologyCapabilities]?;fhir:nodeRole [fhir:treeRoot]?;

    fhir:url @<Uri>?;                       # Canonical identifier for this 
                                            # terminology capabilities, 
                                            # represented as a URI (globally 
                                            # unique) 
    fhir:identifier @<OneOrMore_Identifier>?;  # Additional identifier for the 
                                            # terminology capabilities 
    fhir:version @<String>?;                # Business version of the 
                                            # terminology capabilities 
    fhir:versionAlgorithm @<String>  OR 
    			@<Coding>  ?;  # How to compare versions
    fhir:name @<String>?;                   # Name for this terminology 
                                            # capabilities (computer friendly) 
    fhir:title @<String>?;                  # Name for this terminology 
                                            # capabilities (human friendly) 
    fhir:status @<Code> AND
    	{fhir:v @fhirvs:publication-status};  # draft | active | retired | unknown
    fhir:experimental @<Boolean>?;          # For testing only - never for real 
                                            # usage 
    fhir:date @<DateTime>;                  # Date last changed
    fhir:publisher @<String>?;              # Name of the publisher/steward 
                                            # (organization or individual) 
    fhir:contact @<OneOrMore_ContactDetail>?;  # Contact details for the publisher
    fhir:description @<Markdown>?;          # Natural language description of 
                                            # the terminology capabilities 
    fhir:useContext @<OneOrMore_UsageContext>?;  # The context that the content is 
                                            # intended to support 
    fhir:jurisdiction @<OneOrMore_CodeableConcept>?;  # Jurisdiction of the authority that 
                                            # maintains the terminology 
                                            # capabilities (if applicable) 
    fhir:purpose @<Markdown>?;              # Why this terminology capabilities 
                                            # is defined 
    fhir:copyright @<Markdown>?;            # Notice about intellectual property 
                                            # ownership, can include 
                                            # restrictions on use 
    fhir:copyrightLabel @<String>?;         # Copyright holder and year(s)
    fhir:kind @<Code> AND
    	{fhir:v @fhirvs:capability-statement-kind};  # instance | capability | 
                                            # requirements 
    fhir:software @<TerminologyCapabilities.software>?;  # Software that is covered by this 
                                            # terminology capability statement 
    fhir:implementation @<TerminologyCapabilities.implementation>?;  # If this describes a specific 
                                            # instance 
    fhir:lockedDate @<Boolean>?;            # Whether lockedDate is supported
    fhir:codeSystem @<OneOrMore_TerminologyCapabilities.codeSystem>?;  # A code system supported by the 
                                            # server 
    fhir:supplements @<TerminologyCapabilities.supplements>?;  # Supplement Support Information
    fhir:expansion @<TerminologyCapabilities.expansion>?;  # Information about the 
                                            # [ValueSet/$expand](valueset-oper-
                                            # ation-expand.html) operation 
    fhir:codeSearch @<Code> AND
    	{fhir:v @fhirvs:code-search-support}?;  # in-compose | in-expansion | 
                                            # in-compose-or-expansion 
    fhir:validateCode @<TerminologyCapabilities.validateCode>?;  # Information about the 
                                            # [ValueSet/$validate-code](values-
                                            # et-operation-validate-code.html) 
                                            # operation 
    fhir:translation @<TerminologyCapabilities.translation>?;  # Information about the 
                                            # [ConceptMap/$translate](conceptm-
                                            # ap-operation-translate.html) 
                                            # operation 
}  

# Software that is covered by this terminology capability statement
<TerminologyCapabilities.software> EXTENDS @<BackboneElement> CLOSED {   
    fhir:name @<String>;                    # A name the software is known by
    fhir:version @<String>?;                # Version covered by this statement
}  

# If this describes a specific instance
<TerminologyCapabilities.implementation> EXTENDS @<BackboneElement> CLOSED {   
    fhir:description @<Markdown>;           # Describes this specific instance
    fhir:url @<Url>?;                       # Base URL for the implementation
    fhir:fragmentSupport @<Markdown>?;      # Describes how fragments are 
                                            # supported 
    fhir:supplementSupport @<Markdown>?;    # Describes how supplements are 
                                            # supported 
}  

# A code system supported by the server
<TerminologyCapabilities.codeSystem> EXTENDS @<BackboneElement> CLOSED {   
    fhir:uri @<Canonical>?;                 # Canonical identifier for the code 
                                            # system, represented as a URI (no 
                                            # version portion) 
    fhir:supplement @<OneOrMore_Canonical>?;  # Canonical identifier for a 
                                            # supported supplement to this code 
                                            # system (including supplement 
                                            # version) 
    fhir:versionAlgorithm @<String>  OR 
    			@<Coding>  ?;  # How to compare versions
    fhir:version @<OneOrMore_TerminologyCapabilities.codeSystem.version>?;  # Version of Code System supported
    fhir:content @<Code> AND
    	{fhir:v @fhirvs:codesystem-content-mode}?;  # not-present | example | fragment | 
                                            # complete | supplement 
    fhir:subsumption @<Boolean>?;           # Whether subsumption is supported
}  

# Version of Code System supported
<TerminologyCapabilities.codeSystem.version> EXTENDS @<BackboneElement> CLOSED {   
    fhir:value @<String>?;                  # Code system business version
    fhir:isDefault @<Boolean>?;             # If this is the default version for 
                                            # this code system 
    fhir:content @<Code> AND
    	{fhir:v @fhirvs:codesystem-content-mode}?;  # not-present | example | fragment | 
                                            # complete | supplement 
    fhir:supplement @<OneOrMore_Canonical>?;  # Canonical identifier for a 
                                            # supported supplement to this code 
                                            # system version (including 
                                            # supplement version) 
    fhir:compositional @<Boolean>?;         # If compositional grammar is 
                                            # supported 
    fhir:language @<OneOrMore_Code> AND
    	{fhir:v @fhirvs:all-languages}?;  # Language Displays supported
    fhir:filter @<OneOrMore_TerminologyCapabilities.codeSystem.version.filter>?;  # Filter Properties supported
    fhir:property @<OneOrMore_Code>?;       # Properties supported for $lookup
}  

# Filter Properties supported
<TerminologyCapabilities.codeSystem.version.filter> EXTENDS @<BackboneElement> CLOSED {   
    fhir:code @<Code>;                      # Code of the property supported
    fhir:op @<OneOrMore_Code>;              # Operations supported for the 
                                            # property 
}  

# Supplement Support Information
<TerminologyCapabilities.supplements> EXTENDS @<BackboneElement> CLOSED {   
    fhir:globals @<Code> AND
    	{fhir:v @fhirvs:global-langpack-support}?;  # not-supported | explicit | implicit
}  

# Information about the [ValueSet/$expand](valueset-operation-expand.html) operation
<TerminologyCapabilities.expansion> EXTENDS @<BackboneElement> CLOSED {   
    fhir:hierarchical @<Boolean>?;          # Whether the server can return 
                                            # nested value sets 
    fhir:paging @<Boolean>?;                # Whether the server supports paging 
                                            # on expansion 
    fhir:incomplete @<Boolean>?;            # Allow request for incomplete 
                                            # expansions? 
    fhir:parameter @<OneOrMore_TerminologyCapabilities.expansion.parameter>?;  # Supported expansion parameter
    fhir:textFilter @<Markdown>?;           # Documentation about text searching 
                                            # works 
}  

# Supported expansion parameter
<TerminologyCapabilities.expansion.parameter> EXTENDS @<BackboneElement> CLOSED {   
    fhir:name @<Code>;                      # Name of the supported expansion 
                                            # parameter 
    fhir:documentation @<Markdown>?;        # Description of support for 
                                            # parameter 
}  

# Information about the [ValueSet/$validate-code](valueset-operation-validate-code.html) operation
<TerminologyCapabilities.validateCode> EXTENDS @<BackboneElement> CLOSED {   
    fhir:translations @<Boolean>;           # Whether translations are validated
}  

# Information about the [ConceptMap/$translate](conceptmap-operation-translate.html) operation
<TerminologyCapabilities.translation> EXTENDS @<BackboneElement> CLOSED {   
    fhir:needsMap @<Boolean>;               # Whether the client must identify 
                                            # the map 
}  

#---------------------- Cardinality Types (OneOrMore) -------------------
<OneOrMore_Identifier> CLOSED {
    rdf:first @<Identifier>  ;
    rdf:rest [rdf:nil] OR @<OneOrMore_Identifier> 
}
<OneOrMore_ContactDetail> CLOSED {
    rdf:first @<ContactDetail>  ;
    rdf:rest [rdf:nil] OR @<OneOrMore_ContactDetail> 
}
<OneOrMore_UsageContext> CLOSED {
    rdf:first @<UsageContext>  ;
    rdf:rest [rdf:nil] OR @<OneOrMore_UsageContext> 
}
<OneOrMore_CodeableConcept> CLOSED {
    rdf:first @<CodeableConcept>  ;
    rdf:rest [rdf:nil] OR @<OneOrMore_CodeableConcept> 
}
<OneOrMore_TerminologyCapabilities.codeSystem> CLOSED {
    rdf:first @<TerminologyCapabilities.codeSystem>  ;
    rdf:rest [rdf:nil] OR @<OneOrMore_TerminologyCapabilities.codeSystem> 
}
<OneOrMore_Canonical> CLOSED {
    rdf:first @<Canonical>  ;
    rdf:rest [rdf:nil] OR @<OneOrMore_Canonical> 
}
<OneOrMore_TerminologyCapabilities.codeSystem.version> CLOSED {
    rdf:first @<TerminologyCapabilities.codeSystem.version>  ;
    rdf:rest [rdf:nil] OR @<OneOrMore_TerminologyCapabilities.codeSystem.version> 
}
<OneOrMore_Code> CLOSED {
    rdf:first @<Code>  ;
    rdf:rest [rdf:nil] OR @<OneOrMore_Code> 
}
<OneOrMore_TerminologyCapabilities.codeSystem.version.filter> CLOSED {
    rdf:first @<TerminologyCapabilities.codeSystem.version.filter>  ;
    rdf:rest [rdf:nil] OR @<OneOrMore_TerminologyCapabilities.codeSystem.version.filter> 
}
<OneOrMore_TerminologyCapabilities.expansion.parameter> CLOSED {
    rdf:first @<TerminologyCapabilities.expansion.parameter>  ;
    rdf:rest [rdf:nil] OR @<OneOrMore_TerminologyCapabilities.expansion.parameter> 
}

#---------------------- Value Sets ------------------------

# This value set includes all possible codes from BCP-47 (see http://tools.ietf.org/html/bcp47)
fhirvs:all-languages ["aa" "ab" "ace" "ach" "ada" "ady" "ae" "af" "afa" "afh" "ain" "ak" "akk" "ale" "alg" "alt" "am" "an" "ang" "anp" "apa" "ar" "arc" "arn" "arp" "art" "arw" "as" "ast" "ath" "aus" "av" "awa" "ay" "az" "ba" "bad" "bai" "bal" "ban" "bas" "bat" "be" "bej" "bem" "ber" "bg" "bho" "bi" "bik" "bin" "bla" "bm" "bn" "bnt" "bo" "br" "bra" "bs" "btk" "bua" "bug" "byn" "ca" "cad" "cai" "car" "cau" "ce" "ceb" "cel" "ch" "chb" "chg" "chk" "chm" "chn" "cho" "chp" "chr" "chy" "cmc" "cnr" "co" "cop" "cpe" "cpf" "cpp" "cr" "crh" "crp" "cs" "csb" "cu" "cus" "cv" "cy" "da" "dak" "dar" "day" "de" "del" "den" "dgr" "din" "doi" "dra" "dsb" "dua" "dum" "dv" "dyu" "dz" "ee" "efi" "egy" "eka" "el" "elx" "en" "enm" "eo" "es" "et" "eu" "ewo" "fa" "fan" "fat" "ff" "fi" "fil" "fiu" "fj" "fo" "fon" "fr" "frm" "fro" "frr" "frs" "fur" "fy" "ga" "gaa" "gay" "gba" "gd" "gem" "gez" "gil" "gl" "gmh" "gn" "goh" "gon" "gor" "got" "grb" "grc" "gsw" "gu" "gv" "gwi" "ha" "hai" "haw" "he" "hi" "hil" "him" "hit" "hmn" "ho" "hr" "hsb" "ht" "hu" "hup" "hy" "hz" "ia" "iba" "id" "ie" "ig" "ii" "ijo" "ik" "ilo" "inc" "ine" "inh" "io" "ira" "iro" "is" "it" "iu" "ja" "jbo" "jpr" "jrb" "jv" "ka" "kaa" "kab" "kac" "kam" "kar" "kaw" "kbd" "kg" "kha" "khi" "kho" "ki" "kj" "kk" "kl" "km" "kmb" "kn" "ko" "kok" "kos" "kpe" "kr" "krc" "krl" "kro" "kru" "ks" "ku" "kum" "kut" "kv" "kw" "ky" "la" "lad" "lah" "lam" "lb" "lez" "lg" "li" "ln" "lo" "lol" "loz" "lt" "lu" "lua" "lui" "lun" "luo" "lus" "lv" "mad" "mag" "mai" "mak" "man" "map" "mas" "mdf" "mdr" "men" "mg" "mga" "mh" "mi" "mic" "min" "mis" "mk" "mkh" "ml" "mn" "mnc" "mni" "mno" "moh" "mos" "mr" "ms" "mt" "mul" "mun" "mus" "mwl" "mwr" "my" "myn" "myv" "na" "nah" "nai" "nap" "nb" "nd" "nds" "ne" "new" "ng" "nia" "nic" "niu" "nl" "nn" "no" "nog" "non" "nqo" "nr" "nso" "nub" "nv" "nwc" "ny" "nym" "nyn" "nyo" "nzi" "oc" "oj" "om" "or" "os" "osa" "ota" "oto" "pa" "paa" "pag" "pal" "pam" "pap" "pau" "peo" "phi" "phn" "pi" "pl" "pon" "pra" "pro" "ps" "pt" "qu" "raj" "rap" "rar" "rm" "rn" "ro" "roa" "rom" "ru" "rup" "rw" "sa" "sad" "sah" "sai" "sal" "sam" "sas" "sat" "sc" "scn" "sco" "sd" "se" "sel" "sem" "sg" "sga" "sgn" "shn" "si" "sid" "sio" "sit" "sk" "sl" "sla" "sm" "sma" "smi" "smj" "smn" "sms" "sn" "snk" "so" "sog" "son" "sq" "sr" "srn" "srr" "ss" "ssa" "st" "su" "suk" "sus" "sux" "sv" "sw" "syc" "syr" "ta" "tai" "te" "tem" "ter" "tet" "tg" "th" "ti" "tig" "tiv" "tk" "tkl" "tl" "tlh" "tli" "tmh" "tn" "to" "tog" "tpi" "tr" "ts" "tsi" "tt" "tum" "tup" "tut" "tvl" "tw" "ty" "tyv" "udm" "ug" "uga" "uk" "umb" "und" "ur" "uz" "vai" "ve" "vi" "vo" "vot" "wa" "wak" "wal" "war" "was" "wen" "wo" "xal" "xh" "yao" "yap" "yi" "yo" "ypk" "za" "zap" "zbl" "zen" "zgh" "zh" "znd" "zu" "zun" "zxx" "zza"]

# How a capability statement is intended to be used.
fhirvs:capability-statement-kind ["instance" "capability" "requirements"]

# The degree to which the server supports the code search parameter on ValueSet, if it is supported.
fhirvs:code-search-support ["in-compose" "in-expansion" "in-compose-or-expansion"]

# The extent of the content of the code system (the concepts and codes it defines) are represented in a code system resource.
fhirvs:codesystem-content-mode ["not-present" "example" "fragment" "complete" "supplement"]

# How a server supports global language packs
fhirvs:global-langpack-support ["not-supported" "explicit" "implicit"]

# The lifecycle status of an artifact.
fhirvs:publication-status ["draft" "active" "retired" "unknown"]


Usage note: every effort has been made to ensure that the ShEx files are correct and useful, but they are not a normative part of the specification.