Index: ruby/trunk/lib/adl_parser/lib/adl_scanner.rb
===================================================================
--- ruby/trunk/lib/adl_parser/lib/adl_scanner.rb	(revision 314)
+++ ruby/trunk/lib/adl_parser/lib/adl_scanner.rb	(revision 315)
@@ -271,8 +271,7 @@
                 ;
               when /\A[ \t\r\f]+/ #just drop it
-                #@@logger.debug("DADLScanner#scan:  white space, data = #{data.inspect}")
+                ##@@logger.debug("DADLScanner#scan:  white space, data = #{data.inspect}")
                 ;
               when /\A--.*/ # single line comment
-#                @lineno += 1
                 @@logger.debug("DADLScanner#scan: COMMENT = #{$&} at #{@filename}:#{@lineno}")
                 ;
@@ -399,4 +398,6 @@
                 @@logger.debug("DADLScanner#scan: V_STRING, #{$1}")
                 yield :V_STRING, $1
+              when /\A[0-9]+\.[0-9]+|[0-9]+\.[0-9]+[eE][+-]?[0-9]+ /   #V_REAL
+                yield :V_REAL, $&
               when /\A[0-9]+|[0-9]+[eE][+-]?[0-9]+/   #V_INTEGER
                 @@logger.debug("DADLScanner#scan: V_INTEGER = #{$&}")
@@ -631,13 +632,13 @@
               when /\A[0-9]{4}-[0-1][0-9]-[0-3][0-9]|[0-9]{4}-[0-1][0-9]/   #V_ISO8601_EXTENDED_DATE YYYY-MM-DD
                 yield :V_ISO8601_EXTENDED_DATE, $&
-              when /\A[0-9]+|[0-9]+[eE][+-]?[0-9]+/   #V_INTEGER
-                @@logger.debug("CADLScanner#scan: V_INTEGER = #{$&}")
-                yield :V_INTEGER, $&
-              when /\A[0-9]+\.[0-9]+|[0-9]+\.[0-9]+[eE][+-]?[0-9]+ /   #V_REAL
-                yield :V_REAL, $&
               when /\A"((?:[^"\\]+|\\.)*)"/ #V_STRING
                 yield :V_STRING, $1
               when /\A"([^"]*)"/m #V_STRING
                 yield :V_STRING, $1
+              when /\A[0-9]+\.[0-9]+|[0-9]+\.[0-9]+[eE][+-]?[0-9]+ /   #V_REAL
+                yield :V_REAL, $&
+              when /\A[0-9]+|[0-9]+[eE][+-]?[0-9]+/   #V_INTEGER
+                @@logger.debug("CADLScanner#scan: V_INTEGER = #{$&}")
+                yield :V_INTEGER, $&
               when /\A[a-z]+:\/\/[^<>|\\{}^~"\[\] ]*/ #V_URI
                 yield :V_URI, $&
Index: ruby/trunk/lib/adl_parser/test/adl/openEHR-EHR-OBSERVATION.body_mass_index.v1.adl
===================================================================
--- ruby/trunk/lib/adl_parser/test/adl/openEHR-EHR-OBSERVATION.body_mass_index.v1.adl	(revision 314)
+++ ruby/trunk/lib/adl_parser/test/adl/openEHR-EHR-OBSERVATION.body_mass_index.v1.adl	(revision 315)
@@ -1,3 +1,3 @@
-archetype (adl_version=1.4)
+﻿archetype (adl_version=1.4)
 	openEHR-EHR-OBSERVATION.body_mass_index.v1
 
@@ -42,6 +42,10 @@
 Obesity: Preventing and Managing the Global Epidemic: Report of a WHO Consultation [Internet]. Geneva, Switzerland: World Health Organisation; 2000 [cited 2009 Jul 28]. Available from: http://www.who.int/nutrition/publications/obesity/WHO_TRS_894/en/index.html
 
-Tzamaloukas AH, Patron A, Malhotra D. Body Mass Index in Amputees. Journal of Parenteral and Enteral Nutrition [Internet]. 1994 [cited 2009 Jul 28]; 18 (4): 355. Available from: http://pen.sagepub.com/cgi/content/abstract/18/4/355">
-       >
+Tzamaloukas AH, Patron A, Malhotra D. Body Mass Index in Amputees. Journal of Parenteral and Enteral Nutrition [Internet]. 1994 [cited 2009 Jul 28]; 18 (4): 355. Available from: http://pen.sagepub.com/cgi/content/abstract/18/4/355  
+
+
+
+">
+	>
 
 definition
Index: ruby/trunk/lib/adl_parser/test/parser_test.rb
===================================================================
--- ruby/trunk/lib/adl_parser/test/parser_test.rb	(revision 314)
+++ ruby/trunk/lib/adl_parser/test/parser_test.rb	(revision 315)
@@ -6,220 +6,221 @@
   end
 
-  must "assert parser instance" do
-    assert_instance_of ::OpenEhr::ADL::Parser,@parser
-  end
-
-  must "openEHR-EHR-SECTION.summary.v1.adl be properly parsed" do
-    file =  File.read("#{TEST_ROOT_DIR}/adl/openEHR-EHR-SECTION.summary.v1.adl")
-    assert_nothing_raised do
-      ast = @parser.parse(file, 'openEHR-EHR-SECTION.summary.v1')
-      assert_instance_of OpenEhr::RM::Support::Identification::ArchetypeID, ast.archetype_id
-    end
-  end
-
-  must "openEHR-EHR-ACTION.imaging.v1.adl be properly parsed" do
-    file =  File.read("#{TEST_ROOT_DIR}/adl/openEHR-EHR-ACTION.imaging.v1.adl")
-    assert_nothing_raised do
-      ast = @parser.parse(file, 'openEHR-EHR-ACTION.imaging.v1')
-      assert_instance_of OpenEhr::RM::Support::Identification::ArchetypeID, ast.archetype_id
-    end
-  end
-
-  must "openEHR-EHR-ACTION.referral.v1.adl be properly parsed" do
-    file =  File.read("#{TEST_ROOT_DIR}/adl/openEHR-EHR-ACTION.referral.v1.adl")
-    assert_nothing_raised do
-      ast = @parser.parse(file, 'openEHR-EHR-ACTION.referral.v1')
-      assert_instance_of OpenEhr::RM::Support::Identification::ArchetypeID, ast.archetype_id
-    end
-  end
-
-  must "openEHR-EHR-CLUSTER.auscultation-chest.v1.adl be properly parsed" do
-    file =  File.read("#{TEST_ROOT_DIR}/adl/openEHR-EHR-CLUSTER.auscultation-chest.v1.adl")
-    assert_nothing_raised do
-      ast = @parser.parse(file, 'openEHR-EHR-CLUSTER.auscultation-chest.v1')
-      assert_instance_of OpenEhr::RM::Support::Identification::ArchetypeID, ast.archetype_id
-    end
-  end
-
-  must "openEHR-EHR-CLUSTER.auscultation.v1.adl be properly parsed" do
-    file =  File.read("#{TEST_ROOT_DIR}/adl/openEHR-EHR-CLUSTER.auscultation.v1.adl")
-    assert_nothing_raised do
-      ast = @parser.parse(file, 'openEHR-EHR-CLUSTER.auscultation.v1')
-      assert_instance_of OpenEhr::RM::Support::Identification::ArchetypeID, ast.archetype_id
-    end
-  end
-
-
-  must "openEHR-EHR-CLUSTER.exam-abdomen.v1.adl be properly parsed" do
-    file =  File.read("#{TEST_ROOT_DIR}/adl/openEHR-EHR-CLUSTER.exam-abdomen.v1.adl")
-    assert_nothing_raised do
-      ast = @parser.parse(file, 'openEHR-EHR-CLUSTER.exam-abdomen.v1')
-      assert_instance_of OpenEhr::RM::Support::Identification::ArchetypeID, ast.archetype_id
-    end
-  end
-
-  must "openEHR-EHR-CLUSTER.exam-chest.v1.adl be properly parsed" do
-    file =  File.read("#{TEST_ROOT_DIR}/adl/openEHR-EHR-CLUSTER.exam-chest.v1.adl")
-    assert_nothing_raised do
-      ast = @parser.parse(file, 'openEHR-EHR-CLUSTER.exam-chest.v1')
-      assert_instance_of OpenEhr::RM::Support::Identification::ArchetypeID, ast.archetype_id
-    end
-  end
-
-  must "openEHR-EHR-CLUSTER.exam-generic-joint.v1.adl be properly parsed" do
-    file =  File.read("#{TEST_ROOT_DIR}/adl/openEHR-EHR-CLUSTER.exam-generic-joint.v1.adl")
-    assert_nothing_raised do
-      ast = @parser.parse(file, 'openEHR-EHR-CLUSTER.exam-generic-joint.v1')
-      assert_instance_of OpenEhr::RM::Support::Identification::ArchetypeID, ast.archetype_id
-    end
-  end
-
-  must "openEHR-EHR-CLUSTER.exam-generic-lymphnode.v1.adl be properly parsed" do
-    file =  File.read("#{TEST_ROOT_DIR}/adl/openEHR-EHR-CLUSTER.exam-generic-lymphnode.v1.adl")
-    assert_nothing_raised do
-      ast = @parser.parse(file, 'openEHR-EHR-CLUSTER.exam-generic-lymphnode.v1')
-      assert_instance_of OpenEhr::RM::Support::Identification::ArchetypeID, ast.archetype_id
-    end
-  end
-
-  must "openEHR-EHR-CLUSTER.exam-generic-mass.v1.adl be properly parsed" do
-    file =  File.read("#{TEST_ROOT_DIR}/adl/openEHR-EHR-CLUSTER.exam-generic-mass.v1.adl")
-    assert_nothing_raised do
-      ast = @parser.parse(file, 'openEHR-EHR-CLUSTER.exam-generic-mass.v1')
-      assert_instance_of OpenEhr::RM::Support::Identification::ArchetypeID, ast.archetype_id
-    end
-  end
-
-  must "openEHR-EHR-CLUSTER.exam-generic.v1.adl be properly parsed" do
-    file =  File.read("#{TEST_ROOT_DIR}/adl/openEHR-EHR-CLUSTER.exam-generic.v1.adl")
-    assert_nothing_raised do
-      ast = @parser.parse(file, 'openEHR-EHR-CLUSTER.exam-generic.v1')
-      assert_instance_of OpenEhr::RM::Support::Identification::ArchetypeID, ast.archetype_id
-    end
-  end
-
-  must "openEHR-EHR-CLUSTER.exam-nervous_system.v1.adl be properly parsed" do
-    file =  File.read("#{TEST_ROOT_DIR}/adl/openEHR-EHR-CLUSTER.exam-nervous_system.v1.adl")
-    assert_nothing_raised do
-      ast = @parser.parse(file, 'openEHR-EHR-CLUSTER.exam-nervous_system.v1')
-      assert_instance_of OpenEhr::RM::Support::Identification::ArchetypeID, ast.archetype_id
-    end
-  end
-
-  must "openEHR-EHR-COMPOSITION.discharge.v1draft.adl be properly parsed" do
-    file =  File.read("#{TEST_ROOT_DIR}/adl/openEHR-EHR-COMPOSITION.discharge.v1draft.adl")
-    assert_nothing_raised do
-      ast = @parser.parse(file, 'openEHR-EHR-COMPOSITION.discharge.v1draft')
-      assert_instance_of OpenEhr::RM::Support::Identification::ArchetypeID, ast.archetype_id
-    end
-  end
-
-  must "openEHR-EHR-COMPOSITION.encounter.v1draft.adl be properly parsed" do
-    file =  File.read("#{TEST_ROOT_DIR}/adl/openEHR-EHR-COMPOSITION.encounter.v1draft.adl")
-    assert_nothing_raised do
-      ast = @parser.parse(file, 'openEHR-EHR-COMPOSITION.encounter.v1draft')
-      assert_instance_of OpenEhr::RM::Support::Identification::ArchetypeID, ast.archetype_id
-    end
-  end
-
-  must "openEHR-EHR-INSTRUCTION.medication.v1.adl be properly parsed" do
-    file =  File.read("#{TEST_ROOT_DIR}/adl/openEHR-EHR-INSTRUCTION.medication.v1.adl")
-    assert_nothing_raised do
-      ast = @parser.parse(file, 'openEHR-EHR-INSTRUCTION.medication.v1')
-      assert_instance_of OpenEhr::RM::Support::Identification::ArchetypeID, ast.archetype_id
-    end
-  end
-
-  must "openEHR-EHR-INSTRUCTION.referral.v1.adl be properly parsed" do
-    file =  File.read("#{TEST_ROOT_DIR}/adl/openEHR-EHR-INSTRUCTION.referral.v1.adl")
-    assert_nothing_raised do
-      ast = @parser.parse(file, 'openEHR-EHR-INSTRUCTION.referral.v1')
-      assert_instance_of OpenEhr::RM::Support::Identification::ArchetypeID, ast.archetype_id
-    end
-  end
-
-  must "openEHR-EHR-ITEM_TREE.Laboratory_request.v1.adl be properly parsed" do
-    file =  File.read("#{TEST_ROOT_DIR}/adl/openEHR-EHR-ITEM_TREE.Laboratory_request.v1.adl")
-    assert_nothing_raised do
-      ast = @parser.parse(file, 'openEHR-EHR-ITEM_TREE.Laboratory_request.v1')
-      assert_instance_of OpenEhr::RM::Support::Identification::ArchetypeID, ast.archetype_id
-    end
-  end
-
-
-  must "openEHR-EHR-OBSERVATION.apgar.v1.adl be properly parsed" do
-    file =  File.read("#{TEST_ROOT_DIR}/adl/openEHR-EHR-OBSERVATION.apgar.v1.adl")
-    assert_nothing_raised do
-      ast = @parser.parse(file, 'openEHR-EHR-OBSERVATION.apgar.v1')
-      assert_instance_of OpenEhr::RM::Support::Identification::ArchetypeID, ast.archetype_id
-    end
-  end
-
-  must "openEHR-EHR-SECTION.findings.v1.adl be properly parsed" do
-    file =  File.read("#{TEST_ROOT_DIR}/adl/openEHR-EHR-SECTION.findings.v1.adl")
-    assert_nothing_raised do
-      ast = @parser.parse(file, 'openEHR-EHR-SECTION.findings.v1')
-      assert_instance_of OpenEhr::RM::Support::Identification::ArchetypeID, ast.archetype_id
-    end
-  end
-
-  must "openEHR-EHR-SECTION.reason_for_encounter.v1.adl be properly parsed" do
-    file =  File.read("#{TEST_ROOT_DIR}/adl/openEHR-EHR-SECTION.reason_for_encounter.v1.adl")
-    assert_nothing_raised do
-      ast = @parser.parse(file, 'openEHR-EHR-SECTION.reason_for_encounter.v1')
-      assert_instance_of OpenEhr::RM::Support::Identification::ArchetypeID, ast.archetype_id
-    end
-  end
-
-
-  must "openEHR-EHR-SECTION.vital_signs.v1.adl be properly parsed" do
-    file =  File.read("#{TEST_ROOT_DIR}/adl/openEHR-EHR-SECTION.vital_signs.v1.adl")
-    assert_nothing_raised do
-      ast = @parser.parse(file, 'openEHR-EHR-SECTION.vital_signs.v1')
-      assert_instance_of OpenEhr::RM::Support::Identification::ArchetypeID, ast.archetype_id
-    end
-  end
-
-
-# C_DV_QUANTITY parse error
-  must "openEHR-EHR-CLUSTER.dimensions-circumference.v1.adl be properly parsed" do
-    file =  File.read("#{TEST_ROOT_DIR}/adl/openEHR-EHR-CLUSTER.dimensions-circumference.v1.adl")
-    assert_nothing_raised do
-      ast = @parser.parse(file, 'openEHR-EHR-CLUSTER.dimensions-circumference.v1')
-      assert_instance_of OpenEhr::RM::Support::Identification::ArchetypeID, ast.archetype_id
-    end
-  end
-
-  must "openEHR-EHR-CLUSTER.dimensions.v1.adl be properly parsed" do
-    file =  File.read("#{TEST_ROOT_DIR}/adl/openEHR-EHR-CLUSTER.dimensions.v1.adl")
-    assert_nothing_raised do
-      ast = @parser.parse(file, 'openEHR-EHR-CLUSTER.dimensions.v1')
-      assert_instance_of OpenEhr::RM::Support::Identification::ArchetypeID, ast.archetype_id
-    end
-  end
-
-  must "openEHR-EHR-CLUSTER.exam-fetus.v1.adl be properly parsed" do
-    file =  File.read("#{TEST_ROOT_DIR}/adl/openEHR-EHR-CLUSTER.exam-fetus.v1.adl")
-    assert_nothing_raised do
-      ast = @parser.parse(file, 'openEHR-EHR-CLUSTER.exam-fetus.v1')
-      assert_instance_of OpenEhr::RM::Support::Identification::ArchetypeID, ast.archetype_id
-    end
-  end
-
-  must "openEHR-EHR-CLUSTER.exam-uterine_cervix.v1.adl be properly parsed" do
-    file =  File.read("#{TEST_ROOT_DIR}/adl/openEHR-EHR-CLUSTER.exam-uterine_cervix.v1.adl")
-    assert_nothing_raised do
-      ast = @parser.parse(file, 'openEHR-EHR-CLUSTER.exam-uterine_cervix.v1')
-      assert_instance_of OpenEhr::RM::Support::Identification::ArchetypeID, ast.archetype_id
-    end
-  end
-
-  must "openEHR-EHR-EVALUATION.adverse.v1.adl be properly parsed" do
-    file =  File.read("#{TEST_ROOT_DIR}/adl/openEHR-EHR-EVALUATION.adverse.v1.adl")
-    assert_nothing_raised do
-      ast = @parser.parse(file, 'openEHR-EHR-EVALUATION.adverse.v1')
-      assert_instance_of OpenEhr::RM::Support::Identification::ArchetypeID, ast.archetype_id
-    end
-  end
+#   must "assert parser instance" do
+#     assert_instance_of ::OpenEhr::ADL::Parser,@parser
+#   end
+
+#   must "openEHR-EHR-SECTION.summary.v1.adl be properly parsed" do
+#     file =  File.read("#{TEST_ROOT_DIR}/adl/openEHR-EHR-SECTION.summary.v1.adl")
+#     assert_nothing_raised do
+#       ast = @parser.parse(file, 'openEHR-EHR-SECTION.summary.v1')
+#       assert_instance_of OpenEhr::RM::Support::Identification::ArchetypeID, ast.archetype_id
+#     end
+#   end
+
+#   must "openEHR-EHR-ACTION.imaging.v1.adl be properly parsed" do
+#     file =  File.read("#{TEST_ROOT_DIR}/adl/openEHR-EHR-ACTION.imaging.v1.adl")
+#     assert_nothing_raised do
+#       ast = @parser.parse(file, 'openEHR-EHR-ACTION.imaging.v1')
+#       assert_instance_of OpenEhr::RM::Support::Identification::ArchetypeID, ast.archetype_id
+#     end
+#   end
+
+#   must "openEHR-EHR-ACTION.referral.v1.adl be properly parsed" do
+#     file =  File.read("#{TEST_ROOT_DIR}/adl/openEHR-EHR-ACTION.referral.v1.adl")
+#     assert_nothing_raised do
+#       ast = @parser.parse(file, 'openEHR-EHR-ACTION.referral.v1')
+#       assert_instance_of OpenEhr::RM::Support::Identification::ArchetypeID, ast.archetype_id
+#     end
+#   end
+
+#   must "openEHR-EHR-CLUSTER.auscultation-chest.v1.adl be properly parsed" do
+#     file =  File.read("#{TEST_ROOT_DIR}/adl/openEHR-EHR-CLUSTER.auscultation-chest.v1.adl")
+#     assert_nothing_raised do
+#       ast = @parser.parse(file, 'openEHR-EHR-CLUSTER.auscultation-chest.v1')
+#       assert_instance_of OpenEhr::RM::Support::Identification::ArchetypeID, ast.archetype_id
+#     end
+#   end
+
+#   must "openEHR-EHR-CLUSTER.auscultation.v1.adl be properly parsed" do
+#     file =  File.read("#{TEST_ROOT_DIR}/adl/openEHR-EHR-CLUSTER.auscultation.v1.adl")
+#     assert_nothing_raised do
+#       ast = @parser.parse(file, 'openEHR-EHR-CLUSTER.auscultation.v1')
+#       assert_instance_of OpenEhr::RM::Support::Identification::ArchetypeID, ast.archetype_id
+#     end
+#   end
+
+
+#   must "openEHR-EHR-CLUSTER.exam-abdomen.v1.adl be properly parsed" do
+#     file =  File.read("#{TEST_ROOT_DIR}/adl/openEHR-EHR-CLUSTER.exam-abdomen.v1.adl")
+#     assert_nothing_raised do
+#       ast = @parser.parse(file, 'openEHR-EHR-CLUSTER.exam-abdomen.v1')
+#       assert_instance_of OpenEhr::RM::Support::Identification::ArchetypeID, ast.archetype_id
+#     end
+#   end
+
+#   must "openEHR-EHR-CLUSTER.exam-chest.v1.adl be properly parsed" do
+#     file =  File.read("#{TEST_ROOT_DIR}/adl/openEHR-EHR-CLUSTER.exam-chest.v1.adl")
+#     assert_nothing_raised do
+#       ast = @parser.parse(file, 'openEHR-EHR-CLUSTER.exam-chest.v1')
+#       assert_instance_of OpenEhr::RM::Support::Identification::ArchetypeID, ast.archetype_id
+#     end
+#   end
+
+#   must "openEHR-EHR-CLUSTER.exam-generic-joint.v1.adl be properly parsed" do
+#     file =  File.read("#{TEST_ROOT_DIR}/adl/openEHR-EHR-CLUSTER.exam-generic-joint.v1.adl")
+#     assert_nothing_raised do
+#       ast = @parser.parse(file, 'openEHR-EHR-CLUSTER.exam-generic-joint.v1')
+#       assert_instance_of OpenEhr::RM::Support::Identification::ArchetypeID, ast.archetype_id
+#     end
+#   end
+
+#   must "openEHR-EHR-CLUSTER.exam-generic-lymphnode.v1.adl be properly parsed" do
+#     file =  File.read("#{TEST_ROOT_DIR}/adl/openEHR-EHR-CLUSTER.exam-generic-lymphnode.v1.adl")
+#     assert_nothing_raised do
+#       ast = @parser.parse(file, 'openEHR-EHR-CLUSTER.exam-generic-lymphnode.v1')
+#       assert_instance_of OpenEhr::RM::Support::Identification::ArchetypeID, ast.archetype_id
+#     end
+#   end
+
+#   must "openEHR-EHR-CLUSTER.exam-generic-mass.v1.adl be properly parsed" do
+#     file =  File.read("#{TEST_ROOT_DIR}/adl/openEHR-EHR-CLUSTER.exam-generic-mass.v1.adl")
+#     assert_nothing_raised do
+#       ast = @parser.parse(file, 'openEHR-EHR-CLUSTER.exam-generic-mass.v1')
+#       assert_instance_of OpenEhr::RM::Support::Identification::ArchetypeID, ast.archetype_id
+#     end
+#   end
+
+#   must "openEHR-EHR-CLUSTER.exam-generic.v1.adl be properly parsed" do
+#     file =  File.read("#{TEST_ROOT_DIR}/adl/openEHR-EHR-CLUSTER.exam-generic.v1.adl")
+#     assert_nothing_raised do
+#       ast = @parser.parse(file, 'openEHR-EHR-CLUSTER.exam-generic.v1')
+#       assert_instance_of OpenEhr::RM::Support::Identification::ArchetypeID, ast.archetype_id
+#     end
+#   end
+
+#   must "openEHR-EHR-CLUSTER.exam-nervous_system.v1.adl be properly parsed" do
+#     file =  File.read("#{TEST_ROOT_DIR}/adl/openEHR-EHR-CLUSTER.exam-nervous_system.v1.adl")
+#     assert_nothing_raised do
+#       ast = @parser.parse(file, 'openEHR-EHR-CLUSTER.exam-nervous_system.v1')
+#       assert_instance_of OpenEhr::RM::Support::Identification::ArchetypeID, ast.archetype_id
+#     end
+#   end
+
+#   must "openEHR-EHR-COMPOSITION.discharge.v1draft.adl be properly parsed" do
+#     file =  File.read("#{TEST_ROOT_DIR}/adl/openEHR-EHR-COMPOSITION.discharge.v1draft.adl")
+#     assert_nothing_raised do
+#       ast = @parser.parse(file, 'openEHR-EHR-COMPOSITION.discharge.v1draft')
+#       assert_instance_of OpenEhr::RM::Support::Identification::ArchetypeID, ast.archetype_id
+#     end
+#   end
+
+#   must "openEHR-EHR-COMPOSITION.encounter.v1draft.adl be properly parsed" do
+#     file =  File.read("#{TEST_ROOT_DIR}/adl/openEHR-EHR-COMPOSITION.encounter.v1draft.adl")
+#     assert_nothing_raised do
+#       ast = @parser.parse(file, 'openEHR-EHR-COMPOSITION.encounter.v1draft')
+#       assert_instance_of OpenEhr::RM::Support::Identification::ArchetypeID, ast.archetype_id
+#     end
+#   end
+
+#   must "openEHR-EHR-INSTRUCTION.medication.v1.adl be properly parsed" do
+#     file =  File.read("#{TEST_ROOT_DIR}/adl/openEHR-EHR-INSTRUCTION.medication.v1.adl")
+#     assert_nothing_raised do
+#       ast = @parser.parse(file, 'openEHR-EHR-INSTRUCTION.medication.v1')
+#       assert_instance_of OpenEhr::RM::Support::Identification::ArchetypeID, ast.archetype_id
+#     end
+#   end
+
+#   must "openEHR-EHR-INSTRUCTION.referral.v1.adl be properly parsed" do
+#     file =  File.read("#{TEST_ROOT_DIR}/adl/openEHR-EHR-INSTRUCTION.referral.v1.adl")
+#     assert_nothing_raised do
+#       ast = @parser.parse(file, 'openEHR-EHR-INSTRUCTION.referral.v1')
+#       assert_instance_of OpenEhr::RM::Support::Identification::ArchetypeID, ast.archetype_id
+#     end
+#   end
+
+#   must "openEHR-EHR-ITEM_TREE.Laboratory_request.v1.adl be properly parsed" do
+#     file =  File.read("#{TEST_ROOT_DIR}/adl/openEHR-EHR-ITEM_TREE.Laboratory_request.v1.adl")
+#     assert_nothing_raised do
+#       ast = @parser.parse(file, 'openEHR-EHR-ITEM_TREE.Laboratory_request.v1')
+#       assert_instance_of OpenEhr::RM::Support::Identification::ArchetypeID, ast.archetype_id
+#     end
+#   end
+
+
+#   must "openEHR-EHR-OBSERVATION.apgar.v1.adl be properly parsed" do
+#     file =  File.read("#{TEST_ROOT_DIR}/adl/openEHR-EHR-OBSERVATION.apgar.v1.adl")
+#     assert_nothing_raised do
+#       ast = @parser.parse(file, 'openEHR-EHR-OBSERVATION.apgar.v1')
+#       assert_instance_of OpenEhr::RM::Support::Identification::ArchetypeID, ast.archetype_id
+#     end
+#   end
+
+#   must "openEHR-EHR-SECTION.findings.v1.adl be properly parsed" do
+#     file =  File.read("#{TEST_ROOT_DIR}/adl/openEHR-EHR-SECTION.findings.v1.adl")
+#     assert_nothing_raised do
+#       ast = @parser.parse(file, 'openEHR-EHR-SECTION.findings.v1')
+#       assert_instance_of OpenEhr::RM::Support::Identification::ArchetypeID, ast.archetype_id
+#     end
+#   end
+
+#   must "openEHR-EHR-SECTION.reason_for_encounter.v1.adl be properly parsed" do
+#     file =  File.read("#{TEST_ROOT_DIR}/adl/openEHR-EHR-SECTION.reason_for_encounter.v1.adl")
+#     assert_nothing_raised do
+#       ast = @parser.parse(file, 'openEHR-EHR-SECTION.reason_for_encounter.v1')
+#       assert_instance_of OpenEhr::RM::Support::Identification::ArchetypeID, ast.archetype_id
+#     end
+#   end
+
+
+#   must "openEHR-EHR-SECTION.vital_signs.v1.adl be properly parsed" do
+#     file =  File.read("#{TEST_ROOT_DIR}/adl/openEHR-EHR-SECTION.vital_signs.v1.adl")
+#     assert_nothing_raised do
+#       ast = @parser.parse(file, 'openEHR-EHR-SECTION.vital_signs.v1')
+#       assert_instance_of OpenEhr::RM::Support::Identification::ArchetypeID, ast.archetype_id
+#     end
+#   end
+
+
+# # C_DV_QUANTITY parse error
+#   must "openEHR-EHR-EVALUATION.adverse.v1.adl be properly parsed" do
+#     file =  File.read("#{TEST_ROOT_DIR}/adl/openEHR-EHR-EVALUATION.adverse.v1.adl")
+#     assert_nothing_raised do
+#       ast = @parser.parse(file, 'openEHR-EHR-EVALUATION.adverse.v1')
+#       assert_instance_of OpenEhr::RM::Support::Identification::ArchetypeID, ast.archetype_id
+#     end
+#   end
+
+#   must "openEHR-EHR-CLUSTER.dimensions-circumference.v1.adl be properly parsed" do
+#     file =  File.read("#{TEST_ROOT_DIR}/adl/openEHR-EHR-CLUSTER.dimensions-circumference.v1.adl")
+#     assert_nothing_raised do
+#       ast = @parser.parse(file, 'openEHR-EHR-CLUSTER.dimensions-circumference.v1')
+#       assert_instance_of OpenEhr::RM::Support::Identification::ArchetypeID, ast.archetype_id
+#     end
+#   end
+
+#   must "openEHR-EHR-CLUSTER.dimensions.v1.adl be properly parsed" do
+#     file =  File.read("#{TEST_ROOT_DIR}/adl/openEHR-EHR-CLUSTER.dimensions.v1.adl")
+#     assert_nothing_raised do
+#       ast = @parser.parse(file, 'openEHR-EHR-CLUSTER.dimensions.v1')
+#       assert_instance_of OpenEhr::RM::Support::Identification::ArchetypeID, ast.archetype_id
+#     end
+#   end
+
+#   must "openEHR-EHR-CLUSTER.exam-fetus.v1.adl be properly parsed" do
+#     file =  File.read("#{TEST_ROOT_DIR}/adl/openEHR-EHR-CLUSTER.exam-fetus.v1.adl")
+#     assert_nothing_raised do
+#       ast = @parser.parse(file, 'openEHR-EHR-CLUSTER.exam-fetus.v1')
+#       assert_instance_of OpenEhr::RM::Support::Identification::ArchetypeID, ast.archetype_id
+#     end
+#   end
+
+#   must "openEHR-EHR-CLUSTER.exam-uterine_cervix.v1.adl be properly parsed" do
+#     file =  File.read("#{TEST_ROOT_DIR}/adl/openEHR-EHR-CLUSTER.exam-uterine_cervix.v1.adl")
+#     assert_nothing_raised do
+#       ast = @parser.parse(file, 'openEHR-EHR-CLUSTER.exam-uterine_cervix.v1')
+#       assert_instance_of OpenEhr::RM::Support::Identification::ArchetypeID, ast.archetype_id
+#     end
+#   end
+
   must "openEHR-EHR-OBSERVATION.body_mass_index.v1.adl be properly parsed" do
     file =  File.read("#{TEST_ROOT_DIR}/adl/openEHR-EHR-OBSERVATION.body_mass_index.v1.adl")
Index: ruby/trunk/lib/adl_parser/test/scanner_test.rb
===================================================================
--- ruby/trunk/lib/adl_parser/test/scanner_test.rb	(revision 314)
+++ ruby/trunk/lib/adl_parser/test/scanner_test.rb	(revision 315)
@@ -34,4 +34,15 @@
       assert_equal :V_QUALIFIED_TERM_CODE_REF,sym
       assert_equal "ICD10AM(1998)::F23",val
+    end
+  end
+
+  must "assert ADLScanner scanner scan V_STRING" do
+    @scanner.scan("\"string\"") do |sym, val|
+      assert_equal :V_STRING,sym
+      assert_equal "string",val
+    end
+    @scanner.scan("\"1605E211E9BFB4093A72CCE7A9792FF9\"") do |sym, val|
+      assert_equal :V_STRING,sym
+      assert_equal "1605E211E9BFB4093A72CCE7A9792FF9",val
     end
   end
@@ -76,4 +87,15 @@
     end
   end
+
+  must "assert CADLScanner scanner scan V_STRING" do
+    @scanner.scan("\"string\"") do |sym, val|
+      assert_equal :V_STRING,sym
+      assert_equal "string",val
+    end
+    @scanner.scan("\"1605E211E9BFB4093A72CCE7A9792FF9\"") do |sym, val|
+      assert_equal :V_STRING,sym
+      assert_equal "1605E211E9BFB4093A72CCE7A9792FF9",val
+    end
+  end
 end
 
@@ -102,4 +124,8 @@
       assert_equal "string",val
     end
+    @scanner.scan("\"1605E211E9BFB4093A72CCE7A9792FF9\"") do |sym, val|
+      assert_equal :V_STRING,sym
+      assert_equal "1605E211E9BFB4093A72CCE7A9792FF9",val
+    end
   end
 end
