source: fmts/trunk/p/C0XUTIL.m@ 1644

Last change on this file since 1644 was 1629, checked in by George Lilly, 11 years ago

misc updates

File size: 3.4 KB
Line 
1C0XUTIL ; GPL - Fileman Triples utilities ;11/07/11 17:05
2 ;;1.0;FILEMAN TRIPLE STORE;;Sep 26, 2012;Build 11
3 ;Copyright 2011 George Lilly. Licensed under the terms of the GNU
4 ;General Public License See attached copy of the License.
5 ;
6 ;This program is free software; you can redistribute it and/or modify
7 ;it under the terms of the GNU General Public License as published by
8 ;the Free Software Foundation; either version 2 of the License, or
9 ;(at your option) any later version.
10 ;
11 ;This program is distributed in the hope that it will be useful,
12 ;but WITHOUT ANY WARRANTY; without even the implied warranty of
13 ;MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 ;GNU General Public License for more details.
15 ;
16 ;You should have received a copy of the GNU General Public License along
17 ;with this program; if not, write to the Free Software Foundation, Inc.,
18 ;51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
19 ;
20 Q
21 ;
22NSP(ZX) ; OUTPUT TRANSFORM EXTRINSIC
23 ;
24 N ZR
25 ; I WOULD REALLY LIKE TO NOT HAVE THE FILE NUMBER HARD CODED HERE
26 ; ANYONE KNOW HOW I COULD DO THAT? :) GPL
27 S ZR=$$GET1^DIQ(172.201,ZX_",",.01)
28 I '$D(C0XNSP) S C0XNSP=1 ; DEFAULT ON
29 I C0XNSP=0 Q ZR ; SWITCHED OFF
30 I '$D(C0XVOC) D VOCINIT ; INITIALIZE THE VOCABULARIES
31 N ZI,ZJ,ZK S ZI=""
32 N DONE S DONE=0
33 F S ZI=$O(C0XVOC(ZI)) Q:(DONE=1)!(ZI="") D ;
34 . ;W !,ZI
35 . S ZJ=C0XVOC(ZI)
36 . S ZK=$P(ZR,ZJ,2)
37 . ;W !,"ZK=",ZK
38 . I ZK'="" D ; BINGO
39 . . S ZR=ZI_":"_ZK
40 . . S DONE=1
41 Q ZR
42 ;
43VOCINIT ; INITIALIZE VOCABULARIES
44 S C0XVOC("xmlns")="http://www.w3.org/2001/XMLSchema-instance"
45 S C0XVOC("dcterms")="http://purl.org/dc/terms/"
46 S C0XVOC("rdf")="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
47 S C0XVOC("sp")="http://smartplatforms.org/terms#"
48 S C0XVOC("qds")="http://cms.gov/pqri/qds/"
49 S C0XVOC("smart")="http://sandbox-api.smartplatforms.org/records/"
50 S C0XVOC("snomed")="http://purl.bioontology.org/ontology/SNOMEDCT/"
51 S C0XVOC("icd9")="http://purl.bioontology.org/ontology/ICD9/"
52 S C0XVOC("rxnorm")="http://purl.bioontology.org/ontology/RXNORM/"
53 S C0XVOC("loinc")="http://purl.bioontology.org/ontology/LNC/"
54 S C0XVOC("file")="/home/glilly/fmts/trunk/samples/"
55 S C0XVOC("foaf")="http://xmlns.com/foaf/0.1/"
56 S C0XVOC("skos")="http://www.w3.org/2004/02/skos/core#"
57 S C0XVOC("gpl")="http://georgetriples.org/"
58 S C0XVOC("cg")="http://datasets.caregraf.org/"
59 S C0XVOC("mv")="http://metavista.name/foundation#"
60 S C0XVOC("rdfs")="http://www.w3.org/2000/01/rdf-schema#"
61 S C0XVOC("vistaSmart")="https://smart2.vistaewd.net/vista/smart/records/"
62 S C0XVOC("vmu")="http://vista.org/mu/"
63 S C0XVOC("vq")="http://vista.org/quality/"
64 S C0XVOC("nodeID")="iDPsDPss"
65 S C0XVOC("fmts")="http://glilly.net/fmts#"
66 S C0XVOC("oro")="http://oro.com/vista/sage" ;change to get URL from system
67 S C0XVOC("sage")="http://oro.com/sage/schema#"
68 S C0XVOC("v")="http://www.w3.org/2006/vcard/ns#"
69 S C0XVOC("sdtc")="urn:hl7-org:v3/sdtc"
70 S C0XVOC("voc")="urn:hl7-org:v3/voc"
71 S C0XVOC("xsi")="http://www.w3.org/2001/XMLSchema-instance"
72 S C0XVOC("qrda")="urn:hl7-org:v3/qrda#"
73 Q
74 ;
75EXT(C0XIN) ; EXTRINSIC WHICH EXPANDS NAMESPACES
76 ; SO skos:xxx would return http://www.w3.org/2004/02/skos/core#xxx
77 N C0XPRE
78 S C0XPRE=C0XIN
79 I '$D(C0XVOC) D VOCINIT ; INITIALIZE NAME SPACE TABLE
80 I C0XPRE[":" D ; expand using vocabulary
81 . N ZB,ZA
82 . S ZB=$P(C0XPRE,":",1)
83 . S ZA=$P(C0XPRE,":",2)
84 . I $G(C0XVOC(ZB))'="" D ;
85 . . S C0XPRE=C0XVOC(ZB)_ZA ; expanded
86 Q C0XPRE
87 ;
Note: See TracBrowser for help on using the repository browser.