Stream: terminology
Topic: Language codes
Grahame Grieve (Feb 16 2017 at 21:46):
Proposal to add the following properties for the BCP-47 code system:
- language
- ext-lang
- script
- region
- variant
- extension
- private-use
Grahame Grieve (Feb 16 2017 at 21:46):
all are able to be used for with $lookup, and also for using in value sets filters, for extensional value sets
Grahame Grieve (Feb 16 2017 at 21:47):
this creates the language for existing and proposed US conformance rules, and is probably relevant for other countries too
Rob Hausam (Feb 16 2017 at 23:52):
looks good to me
Grahame Grieve (Feb 28 2017 at 05:19):
ok, so, then, given this valueset:
<?xml version="1.0" encoding="UTF-8"?> <ValueSet xmlns="http://hl7.org/fhir"> <id value="simple-languages"/> <url value="http://hl7.org/fhir/ValueSet/simple-languages"/> <version value="1.9.0"/> <name value="All Language codes with language and optionally a region modifier"/> <status value="draft"/> <experimental value="true"/> <publisher value="HL7 International - FHIR-Infrastructure"/> <contact> <telecom> <system value="url"/> <value value="http://hl7.org/fhir"/> </telecom> </contact> <description value="This value set includes all possible codes from BCP-47 (http://tools.ietf.org/html/bcp47)"/> <compose> <include> <system value="urn:ietf:bcp:47"/> <filter> <property value="ext-lang"/> <op value="exists"/> <value value="false"/> </filter> <filter> <property value="script"/> <op value="exists"/> <value value="false"/> </filter> <filter> <property value="variant"/> <op value="exists"/> <value value="false"/> </filter> <filter> <property value="extension"/> <op value="exists"/> <value value="false"/> </filter> <filter> <property value="private-use"/> <op value="exists"/> <value value="false"/> </filter> </include> </compose> </ValueSet>
Grahame Grieve (Feb 28 2017 at 05:21):
then the following is valid:
GET http://fhir3.healthintersections.com.au/open/ValueSet/simple-languages/$validate-code?system=urn:ietf:bcp:47&code=en-AU
Grahame Grieve (Feb 28 2017 at 05:21):
and this is not:
Grahame Grieve (Feb 28 2017 at 05:21):
GET http://fhir3.healthintersections.com.au/open/ValueSet/simple-languages/$validate-code?system=urn:ietf:bcp:47&code=zh-Hans
Grahame Grieve (Feb 28 2017 at 05:21):
Hans is a script, not a region
Grahame Grieve (Feb 28 2017 at 05:21):
those won't work right now, but they will when I next upgrade my server - in the next 24 hours
Grahame Grieve (Feb 28 2017 at 05:22):
response:
<?xml version="1.0" encoding="UTF-8"?> <Parameters xmlns="http://hl7.org/fhir"> <parameter> <name value="result"/> <valueBoolean value="false"/> </parameter> <parameter> <name value="message"/> <valueString value="The language code zh-Hans contains a script, and it is not allowed to"/> </parameter> <parameter> <name value="message"/> <valueString value="The code provided (urn:ietf:bcp:47#zh-Hans) is not valid in the value set All Language codes with language and optionally a region modifier"/> </parameter> </Parameters>
Grahame Grieve (Feb 28 2017 at 05:40):
@Robert McClure this is for you
Robert McClure (Mar 02 2017 at 04:13):
@Grahame Grieve Many thanks. I suppose I need to figure out how to test this. Can you notify Brett when it's done? And will there be a "all codes" value set - I assume not?
Eric Haas (Mar 02 2017 at 05:27):
Brett has been notified and it is applied in us core. Still a mystery how this aligns with "use two letters code first".
Grahame Grieve (Mar 02 2017 at 06:50):
that's not stated explicitly, but the terminology server knows it
Grahame Grieve (Mar 09 2017 at 20:25):
@Robert McClure getting back to this:
- no there won't be an 'all codes' value set, but we could do what we do for UCUM and generate a common values expansion - but, in fact, we already have that in that all the common language values are valid in this value set - so US usage restricts the max value set
- you can test this using these URLS:
http://fhir3.healthintersections.com.au/open/ValueSet/simple-languages/$validate-code?system=urn:ietf:bcp:47&code=en-AU
http://fhir3.healthintersections.com.au/open/ValueSet/simple-languages/$validate-code?system=urn:ietf:bcp:47&code=zh-Hans
Robert McClure (Mar 13 2017 at 23:24):
Thanks. Remind me, is "simple-language" the code system name you guys decided for this? I think we need to clarify how these validation operations deliver on a subset of the entire grammar. That is correct right?
And we need to figure out if this represents the same thing the C-CDA referenced content means. I'm assuming it should. Agree @Brett Marquard ?
Grahame Grieve (Mar 14 2017 at 00:51):
'simple-language' is the arbitrary id for the value set on my server.
Grahame Grieve (Mar 14 2017 at 00:51):
you can see the definition of the value set here;
Grahame Grieve (Mar 14 2017 at 00:52):
http://fhir3.healthintersections.com.au/open/ValueSet/simple-languages
Grahame Grieve (Mar 14 2017 at 00:53):
it explicitly defines the subset of BCP 47 that applies. The fact that BCP says 2 letter codes then 3 is implicit in the code system, and therefore not explicit in the value set
Grahame Grieve (Mar 14 2017 at 00:53):
my server knows this fact
Last updated: Apr 12 2022 at 19:14 UTC