Hello I attempting to parse an xml file using Xerces that references external paramater entities like below. I need to use an entity resolver, but the systemid passed by the parser is only partially constructed.
Is there a parser feature that I can set to inform the parser to construct the fully qualified URL for the systemid's in the w3centities.ent file? If I don't use an entity resolver, Xerces knows how to handle the external entity references. Why is this? <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mpd SYSTEM "maps.dtd" [ <!ENTITY % w3centities PUBLIC "-//W3C//ENTITIES Combined Set//EN//XML" "http://www.w3.org/2003/entities/2007/w3centities.ent"> %w3centities; >>>> When the parser sees the above ENTITY it calls the entity resolver and >>>> passes a publicid,systemid >>>> publicid="-//W3C//ENTITIES Combined Set//EN//XML" >>>> systemid=http://www.w3.org/2003/entities/2007/w3centities.ent >>>> I expect this. The URL http://www.w3.org/2003/entities/2007/w3centities.ent points to an entity subset as given below: <!ENTITY % isobox PUBLIC "-//W3C//ENTITIES Box and Line Drawing//EN" "isobox.ent"> %isobox; <!ENTITY % isocyr1 PUBLIC "-//W3C//ENTITIES Russian Cyrillic//EN" "isocyr1.ent"> %isocyr1; <!ENTITY % isocyr2 PUBLIC "-//W3C//ENTITIES Non-Russian Cyrillic//EN" "isocyr2.ent"> %isocyr2; <!ENTITY % isodia PUBLIC "-//W3C//ENTITIES Diacritical Marks//EN" "isodia.ent"> %isodia; >>>> When the parser sees the above ENTITY it calls the entity resolver and >>>> passes a publicid,systemid >>>> publicid="-//W3C//ENTITIES Box and Line Drawing//EN" systemid="isobox.ent" >>>> The problem is that the systemid REALLY NEEDS TO BE >>>> "http://www.w3.org/2003/entities/2007/isobox.ent"!!!!
