a.binder před 6 roky
rodič
revize
84ca1c4c3c

+ 1 - 0
SE/schema/default_db_xml_cache.public/system_cache__appinfo/element-filename.xsl

@@ -24,6 +24,7 @@
                 <xsl:when test="$objectType='complexType'"><xsl:value-of select="'build_complexType'"/></xsl:when>
                 <xsl:when test="$objectType='element'"><xsl:value-of select="'build_element'"/></xsl:when>
                 <xsl:when test="$objectType='build_complexType'"><xsl:value-of select="$objectType"/></xsl:when>
+                <xsl:when test="$objectType='build_complexType__simpleType'"><xsl:value-of select="$objectType"/></xsl:when>                
                 <xsl:when test="$objectType='build_element'"><xsl:value-of select="$objectType"/></xsl:when>
                 <xsl:otherwise><xsl:message terminate="yes">#25 unsupported type $element_or_complexType <xsl:value-of select="$objectType"/></xsl:message></xsl:otherwise>
             </xsl:choose>

+ 16 - 3
SE/schema/default_db_xml_cache/build_complexType.xsl

@@ -2095,7 +2095,17 @@
         <xsl:param name="restriction_path"/>
         <xsl:param name="system_cache__appinfo:root_element_in_schema"/> <!-- @2016-01-16 w przypadku elementow na glownym schemacie, nalezy przetworzyc i wyswietlic simpleType, aby p5_tr_map stworzylo 428a do tego . W przypadku elementow skladowych complexContent na razie nie przetwarzamy simpleType z racji komplikacji przetwarzania p5_tr_map -->
         <!--<xsl:message>209: simpleType applied! system_cache__appinfo:root_element_in_schema:<xsl:value-of select="$system_cache__appinfo:root_element_in_schema"/>;</xsl:message>-->
-        <xsl:comment>209: simpleType applied! system_cache__appinfo:root_element_in_schema:<xsl:value-of select="$system_cache__appinfo:root_element_in_schema"/>;</xsl:comment>
+        <xsl:variable name="if-prepare" select="unparsed-text-available(system_cache__appinfo:element-filename.prepare('build_complexType__simpleType',@name,$prefix,$targetNamespace))"/>
+        <xsl:choose>
+            <xsl:when test="not($if-prepare) and unparsed-text-available(system_cache__appinfo:element-filename.complete('build_complexType__simpleType',@name,$prefix,$targetNamespace)) "><!-- and $cache='read' --> <!-- concat($default_db.instance.xml,'/build_complexType/complexType-',$element-filename,'.xml') -->
+                <xsl:message>#2101 TODO hit from cache for <xsl:value-of select="system_cache__appinfo:element-filename.complete('build_complexType__simpleType',@name,$prefix,$targetNamespace)"/> </xsl:message>
+                <!--<xsl:copy-of select="doc(system_cache__appinfo:element-filename('build_complexType',$complexType,$prefix,$namespace_uri_param))"/>-->
+            </xsl:when>
+            <xsl:otherwise>
+                <xsl:message>#2101B TODO save to <xsl:value-of select="system_cache__appinfo:element-filename.symlink('build_complexType__simpleType',@name,$prefix,$targetNamespace)"/></xsl:message>
+            </xsl:otherwise>
+        </xsl:choose>
+        <xsl:comment>209: simpleType applied! system_cache__appinfo:root_element_in_schema:<xsl:value-of select="$system_cache__appinfo:root_element_in_schema"/>; if-prepare(<xsl:value-of select="$if-prepare"/>)</xsl:comment>
         <!-- TODO @2015-11-04 TODO REM REM!!!--> 
       <!--  <xsl:choose>
             <xsl:when test="$system_cache__appinfo:root_element_in_schema='true'">-->
@@ -2877,6 +2887,9 @@
         <xsl:comment>
                       56:odpalilem @type $path:<xsl:value-of select="$path"/>;
         </xsl:comment></xsl:if>
+        
+        
+        
         <xsl:variable name="type_uri" select="namespace-uri-for-prefix( system_cache__appinfo:get_prefix_from_element(.),parent::node())"/><!-- TODO blad na external -->
         <xsl:variable name="type" select="."/>
         <xsl:variable name="ref_id" select="$procesy5_system_schema/system_cache__appinfo:get_all_xsd_list/(system_cache__appinfo:get_all_xsd|system_cache__appinfo:get_all_xsd_external_schema_id_namespace_prefix)/schema[@targetNamespace = $type_uri]/(complexType|simpleType)[@name = system_cache__appinfo:clean_object_prefix($type)]/@id"/>
@@ -3303,10 +3316,10 @@
         </xsl:variable>
         <xsl:if test="string-length($prefix) &lt; 1"><xsl:message terminate="yes">#2616 error empty prefix for @id=<xsl:value-of select=".././@id"/>  </xsl:message></xsl:if>
         <xsl:if test="count($procesy5_system_schema/system_cache__appinfo:get_all_xsd_list/(system_cache__appinfo:get_all_xsd|system_cache__appinfo:get_all_xsd_external_schema_id_namespace_prefix)/schema[@targetNamespace=$type_uri]/namespace::node()[.=$type_uri]/name()) &gt; 1">
-            <xsl:message terminate="no">#1517A ERROR - probably You have wrong schema .xsd  files with twice set targetnamespace for $prefix:<xsl:value-of select="$prefix"/>; - it could be OK for importing external schemas for local default_db prefix </xsl:message>
+            <xsl:message terminate="no">#1517A ERROR - probably You have wrong schema .xsd  files with twice set targetnamespace for $prefix:<xsl:value-of select="$prefix"/>; - it could be OK for importing external schemas for local default_db prefix ($type="<xsl:value-of select="$type"/>")</xsl:message>
         </xsl:if>
         <xsl:if test="substring-before($prefix,' ')">
-            <xsl:message terminate="yes">#1517B ERROR - probably You have wrong schema .xsd  files with twice set targetnamespace for $prefix:<xsl:value-of select="$prefix"/>; $type_uri = <xsl:value-of select="$type_uri"/>; $targetNamespace = <xsl:value-of select="$targetNamespace"/>;  @ref=<xsl:value-of select="."/>; @id= <xsl:value-of select="../@id"/>; </xsl:message>
+            <xsl:message terminate="yes">#1517B ERROR - probably You have wrong schema .xsd  files with twice set targetnamespace for $prefix:<xsl:value-of select="$prefix"/>; $type_uri = <xsl:value-of select="$type_uri"/>; $targetNamespace = <xsl:value-of select="$targetNamespace"/>;  @ref=<xsl:value-of select="."/>; @id= <xsl:value-of select="../@id"/>; ($type="<xsl:value-of select="$type"/>")</xsl:message>
         </xsl:if>
             
         <xsl:if test="$debug_level&gt;3"><xsl:message>187b: @ref:<xsl:value-of select="$type"/>; $ref_id:<xsl:value-of select="$ref_id"/>; $type_uri:<xsl:value-of select="$type_uri"/>; $prefix:<xsl:value-of select="$prefix"/>;</xsl:message>