Changeset 455 for trunk/src/json/JTM
- Timestamp:
- 05/06/11 23:02:35 (14 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
TabularUnified trunk/src/json/JTM/jtm_importer.lisp ¶
r454 r455 33 33 :prefixes prefixes)) 34 34 (scope (get-item :SCOPE jtm-list)) 35 (type (get-item : SCOPE jtm-list))35 (type (get-item :TYPE jtm-list)) 36 36 (value (get-item :VALUE jtm-list)) 37 37 (name-variants (get-item :VARIANTS jtm-list)) … … 44 44 (get-items-from-jtm-references 45 45 parent-references :revision revision :prefixes prefixes))))) 46 (unless local-parent 47 (error (make-condition 'JTM-error :message (format nil "From import-occurrence-from-jtm-string(): the JTM occurrence ~a must have a parent set in its members." jtm-list)))) 48 (unless type 49 (error (make-condition 'JTM-error :message (format nil "From import-occurrence-from-jtm-string(): the JTM occurrence ~a must have a type set in its members." jtm-list)))) 46 (when (/= (length local-parent) 1) 47 (error (make-condition 'JTM-error :message (format nil "From import-name-from-jtm-string(): the JTM name ~a must have exactly one parent set in its members." jtm-list)))) 50 48 (let ((name 51 49 (make-construct 52 50 'NameC :start-revision revision 53 51 :item-identifiers iis 54 : value (if value value "")52 :charvalue value 55 53 :themes (get-items-from-jtm-references 56 54 scope :revision revision :prefixes prefixes) 57 :instance-of (get-item-from-jtm-reference 58 type :revision revision :prefixes prefixes) 59 :parent local-parent 55 :instance-of (when type 56 (get-item-from-jtm-reference 57 type :revision revision :prefixes prefixes)) 58 :parent (first local-parent) 60 59 :reifier (when reifier 61 60 (get-item-from-jtm-reference … … 73 72 (declare (List jtm-list prefixes) 74 73 (Integer revision) 75 (type (or Null OccurrenceC) parent))74 (type (or Null TopicC) parent)) 76 75 (let* ((iis (import-identifiers-from-jtm-strings 77 76 (get-item :ITEM--IDENTIFIERS jtm-list) … … 79 78 (datatype (get-item :DATATYPE jtm-list)) 80 79 (scope (get-item :SCOPE jtm-list)) 81 (type (get-item : SCOPE jtm-list))80 (type (get-item :TYPE jtm-list)) 82 81 (value (get-item :VALUE jtm-list)) 83 82 (reifier (get-item :REIFIER jtm-list)) … … 89 88 (get-items-from-jtm-references 90 89 parent-references :revision revision :prefixes prefixes))))) 91 ( unless local-parent90 (when (/= (length local-parent) 1) 92 91 (error (make-condition 'JTM-error :message (format nil "From import-occurrence-from-jtm-string(): the JTM occurrence ~a must have a parent set in its members." jtm-list)))) 93 92 (unless type … … 96 95 :item-identifiers iis 97 96 :datatype (if datatype datatype *xml-string*) 98 : value (if value value "")97 :charvalue value 99 98 :themes (get-items-from-jtm-references 100 99 scope :revision revision :prefixes prefixes) 101 100 :instance-of (get-item-from-jtm-reference 102 101 type :revision revision :prefixes prefixes) 103 :parent local-parent102 :parent (first local-parent) 104 103 :reifier (when reifier 105 104 (get-item-from-jtm-reference … … 112 111 (declare (List jtm-lists prefixes) 113 112 (Integer revision) 114 (type (or Null NameC) parent)113 (type (or Null ReifiableConstructC) parent) 115 114 (Function next-fun)) 116 115 (map 'list #'(lambda(jtm-list) … … 141 140 (get-items-from-jtm-references 142 141 parent-references :revision revision :prefixes prefixes))))) 143 ( unless local-parent144 (error (make-condition 'JTM-error :message (format nil "From import-variant-from-jtm-string(): the JTM variant ~a must have aparent set in its members." jtm-list))))142 (when (/= (length local-parent) 1) 143 (error (make-condition 'JTM-error :message (format nil "From import-variant-from-jtm-string(): the JTM variant ~a must have exactly one parent set in its members." jtm-list)))) 145 144 (make-construct 'VariantC :start-revision revision 146 145 :item-identifiers iis 147 146 :datatype (if datatype datatype *xml-string*) 148 : value (if value value "")147 :charvalue value 149 148 :themes (get-items-from-jtm-references 150 149 scope :revision revision :prefixes prefixes) 151 :parent local-parent150 :parent (first local-parent) 152 151 :reifier (when reifier 153 152 (get-item-from-jtm-reference … … 156 155 157 156 (defun import-identifiers-from-jtm-strings 158 (jtm-strings &key (identifier-type-symbol 'ItemIdentif eirC) prefixes)157 (jtm-strings &key (identifier-type-symbol 'ItemIdentifierC) prefixes) 159 158 "Creates and returns a list of identifiers specified by jtm-strings and 160 159 identifier-type-symbol." … … 164 163 (map 'list #'(lambda(jtm-string) 165 164 (import-identifier-from-jtm-string 166 jtm-string identifier-type-symbol :prefixes prefixes)) 165 jtm-string :prefixes prefixes 166 :identifier-type-symbol identifier-type-symbol)) 167 167 jtm-strings)) 168 168 169 (defun import-identifier-from-jtm-string(jtm-string identifier-type-symbol 170 &key prefixes) 169 170 (defun import-identifier-from-jtm-string 171 (jtm-string &key (identifier-type-symbol 'ItemIdentifierC) prefixes) 171 172 "Creates and returns an identifier of the type specified by 172 173 identifier-type-symbol."
Note: See TracChangeset
for help on using the changeset viewer.