associate namespace URI with schema
Questions about XML that are not covered by the other forums should go here.
-
- Posts: 5
- Joined: Fri Oct 19, 2012 10:25 am
associate namespace URI with schema
Hi,
I am trying to find what i would consider a basic feature, but somehow are unable to find in the program or on this forum/internet.
I have an XML file using many namespaces (used inside strict wildcards). What i need is a way of declaring namespace URIs (plural) and link them to a schema location, so that i can have code-insight and validation.
I tried "Document Type Association", but that only allows you to register a single schema (i guess for the document element). Also the tool-button "Associate Schema...." only allows a single one (furthermore this just adds a schemaLocation to the XML). I could obviously to that for each XML namespace, but i don't want to clutter up the XML document (and it anyway a bad idea to reference schemas from XML)
Is there anyway to tell oXygen "use this schema for that namespace"? Similar to other editors (e.g, IDEA IntelliJ)
Thanks.,
I am trying to find what i would consider a basic feature, but somehow are unable to find in the program or on this forum/internet.
I have an XML file using many namespaces (used inside strict wildcards). What i need is a way of declaring namespace URIs (plural) and link them to a schema location, so that i can have code-insight and validation.
I tried "Document Type Association", but that only allows you to register a single schema (i guess for the document element). Also the tool-button "Associate Schema...." only allows a single one (furthermore this just adds a schemaLocation to the XML). I could obviously to that for each XML namespace, but i don't want to clutter up the XML document (and it anyway a bad idea to reference schemas from XML)
Is there anyway to tell oXygen "use this schema for that namespace"? Similar to other editors (e.g, IDEA IntelliJ)
Thanks.,
-
- Posts: 2879
- Joined: Tue May 17, 2005 4:01 pm
Re: associate namespace URI with schema
Hello,
You haven't mentioned what types of schemas are you using, but from the context I'm guessing it's XML schema(XSD).
I'm not sure if you want to associate multiple schemas within an XML or you're just looking for a way to map namespace URis to schemas.
If it's the former (associate multiple schemas within an XML), then that's not possible directly in the XML, you need to create an additional schema that imports the others and links them together.
If it's the latter (map namespace URIs to schemas) then you could write and use an XML catalog.
You can find documentation and an example in the Oxygen user manual:
Working with XML Catalogs
Let me know if you need additional assistance.
Regards,
Adrian
You haven't mentioned what types of schemas are you using, but from the context I'm guessing it's XML schema(XSD).
I'm not sure if you want to associate multiple schemas within an XML or you're just looking for a way to map namespace URis to schemas.
If it's the former (associate multiple schemas within an XML), then that's not possible directly in the XML, you need to create an additional schema that imports the others and links them together.
If it's the latter (map namespace URIs to schemas) then you could write and use an XML catalog.
You can find documentation and an example in the Oxygen user manual:
Working with XML Catalogs
Let me know if you need additional assistance.
Regards,
Adrian
Adrian Buza
<oXygen/> XML Editor, Schema Editor and XSLT Editor/Debugger
http://www.oxygenxml.com
<oXygen/> XML Editor, Schema Editor and XSLT Editor/Debugger
http://www.oxygenxml.com
-
- Posts: 5
- Joined: Fri Oct 19, 2012 10:25 am
Re: associate namespace URI with schema
Adian,
Thanks for your reply. Indeed the schemas are "W3C XML Schemas".I am looking for a tool feature (so "the latter" in your reply). BTW it is possible in XML to associate an XML document with many XSDs, With using schemaLocation you can provide a list of namespace URIs and XSD URLs. But that's what i don't want.
In fact i should have posted this in the "Common Problems" forum and not in XML. Only later i realized this is where people ask pure XML related questions.
I did try the catalog, but it does not seem to work. My catalog contents is: (catalog file in same directory as XSD files)
And part of my XML is:
But this does not work.
Thanks for your reply. Indeed the schemas are "W3C XML Schemas".I am looking for a tool feature (so "the latter" in your reply). BTW it is possible in XML to associate an XML document with many XSDs, With using schemaLocation you can provide a list of namespace URIs and XSD URLs. But that's what i don't want.
In fact i should have posted this in the "Common Problems" forum and not in XML. Only later i realized this is where people ask pure XML related questions.
I did try the catalog, but it does not seem to work. My catalog contents is: (catalog file in same directory as XSD files)
Code: Select all
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE catalog PUBLIC "-//OASIS//DTD XML Catalogs V1.1//EN" "http://www.oasis-open.org/committees/entity/release/1.1/catalog.dtd">
<catalog xmlns="urn:oasis:names:tc:entity:xmlns:xml:catalog" prefer="system" >
<uri name="urn:jboss:domain:1.3" uri="jboss-as-config_1_3.xsd"/>
<uri name="urn:jboss:domain:messaging:1.2" uri="jboss-as-messaging_1_2.xsd"/>
<uri name="urn:jboss:domain:modcluster:1.1" uri="jboss-as-mod-cluster_1_1.xsd"/>
....
</catalog>
Code: Select all
<server xmlns="urn:jboss:domain:1.3">
<extensions/>
<management/>
<profile>
<subsystem xmlns="urn:jboss:domain:jsr77:1.0"/>
<subsystem xmlns="urn:jboss:domain:mail:1.0">
<mail-session jndi-name="java:jboss/mail/Default">
<smtp-server outbound-socket-binding-ref="mail-smtp"/>
</mail-session>
</subsystem>
<subsystem xmlns="urn:jboss:domain:messaging:1.2">
<hornetq-server>
</hornetq-server>
</subsystem>
<subsystem xmlns="urn:jboss:domain:naming:1.2">
<remote-naming/>
</subsystem>
<subsystem xmlns="urn:jboss:domain:remoting:1.1">
<connector name="remoting-connector" socket-binding="remoting" security-realm="ApplicationRealm"/>
</subsystem>
<subsystem xmlns="urn:jboss:domain:resource-adapters:1.0"/>
</profile>
<interfaces/>
<socket-binding-group name="standard-sockets" default-interface="public" port-offset="${jboss.socket.binding.port-offset:0}"/>
</server>
-
- Posts: 2879
- Joined: Tue May 17, 2005 4:01 pm
Re: associate namespace URI with schema
Hi,
I've successfully (with some missing schemas from that catalog) tried your examples with the schemas found here:
https://github.com/jbossas/jboss-as/tre ... ocs/schema
Make sure you've added your XML catalog file in Options > Preferences, XML > XML Catalog.
Regards,
Adrian
You are right, I completely forgot about that. Oxygen even supports that for content completion and validation, just not for association (Associate Schema....).rparree2 wrote:BTW it is possible in XML to associate an XML document with many XSDs, With using schemaLocation you can provide a list of namespace URIs and XSD URLs. But that's what i don't want.
I've successfully (with some missing schemas from that catalog) tried your examples with the schemas found here:
https://github.com/jbossas/jboss-as/tre ... ocs/schema
Make sure you've added your XML catalog file in Options > Preferences, XML > XML Catalog.
Regards,
Adrian
Adrian Buza
<oXygen/> XML Editor, Schema Editor and XSLT Editor/Debugger
http://www.oxygenxml.com
<oXygen/> XML Editor, Schema Editor and XSLT Editor/Debugger
http://www.oxygenxml.com
-
- Posts: 5
- Joined: Fri Oct 19, 2012 10:25 am
Re: associate namespace URI with schema
Hi,
I don't get it, it is not working for me. Are you getting content completion for example is the element:
Because i don't. I have tried using the public schema locations, but that does not help either. It only seem to work on the document element. And that can also be accomplished using an oXygen framework.
I have tried with and without "Process namespaces trhough URI mappings for XML schema". With verbosity to "all", i see three "Resolved URI ..." for the namespace of the document element, but after that many "Could not resolve URI".
What am i missing?
I don't get it, it is not working for me. Are you getting content completion for example is the element:
Code: Select all
<subsystem xmlns="urn:jboss:domain:messaging:1.2">
...
I have tried with and without "Process namespaces trhough URI mappings for XML schema". With verbosity to "all", i see three "Resolved URI ..." for the namespace of the document element, but after that many "Could not resolve URI".
What am i missing?
-
- Posts: 2879
- Joined: Tue May 17, 2005 4:01 pm
Re: associate namespace URI with schema
Hi,
You are right, it only works for the namespace of the root element. To make this work you have to add all the necessary namespace/schemas in the schemaLocation attribute. Since you have the catalog you can use the URI twice:
e.g.
Regards,
Adrian
You are right, it only works for the namespace of the root element. To make this work you have to add all the necessary namespace/schemas in the schemaLocation attribute. Since you have the catalog you can use the URI twice:
e.g.
Code: Select all
<server xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="urn:jboss:domain:1.3 urn:jboss:domain:1.3 urn:jboss:domain:messaging:1.2 urn:jboss:domain:messaging:1.2" xmlns="urn:jboss:domain:1.3">
Adrian
Adrian Buza
<oXygen/> XML Editor, Schema Editor and XSLT Editor/Debugger
http://www.oxygenxml.com
<oXygen/> XML Editor, Schema Editor and XSLT Editor/Debugger
http://www.oxygenxml.com
-
- Posts: 5
- Joined: Fri Oct 19, 2012 10:25 am
Re: associate namespace URI with schema
Hi,
That's just what i want to avoid. In general it is a bad idea to add these hints to the XML document. Therefore i was looking for this (by me assumed) basic feature of an XML editor.
I continue editing with IntelliJ
(which is fine otherwise, just a bit heavy for XML authoring)
That's just what i want to avoid. In general it is a bad idea to add these hints to the XML document. Therefore i was looking for this (by me assumed) basic feature of an XML editor.
I continue editing with IntelliJ

-
- Posts: 2879
- Joined: Tue May 17, 2005 4:01 pm
Re: associate namespace URI with schema
Hi,
I'm not sure I understand the problem you have with URIs in the schemaLocation. It's not as if you're referring the schemas by file name (that could be a problem in some contexts), they are the same URIs that you're using in the schema to declare the namespaces. If a schema ever changes (e.g. different version), you would only have to edit the XML catalog. So what am I missing?
Regrds,
Adrian
I'm not sure I understand the problem you have with URIs in the schemaLocation. It's not as if you're referring the schemas by file name (that could be a problem in some contexts), they are the same URIs that you're using in the schema to declare the namespaces. If a schema ever changes (e.g. different version), you would only have to edit the XML catalog. So what am I missing?
Regrds,
Adrian
Adrian Buza
<oXygen/> XML Editor, Schema Editor and XSLT Editor/Debugger
http://www.oxygenxml.com
<oXygen/> XML Editor, Schema Editor and XSLT Editor/Debugger
http://www.oxygenxml.com
-
- Posts: 5
- Joined: Fri Oct 19, 2012 10:25 am
Re: associate namespace URI with schema
Hi,
Not a big problem...but in general i think it is a bad idea to reference any schema from your XML, as schema languages will evolve (like DTD did), but the XML will remain. Again, not a big problem, but just something i think is a bad idea (to reference XSI). Especially if it is just a lack of features in a tool, having alternatives. In this case not a a real issue, as it is just a bunch of configuration files. I was also asking the question for more generic problems, outside the field of configuration.
Oxygen rocks for most things, therefore it was hard for me to believe that code insight and validation for multi-namespace XML would be such a problem, without relying on core XSD/XSI technologies.
Thanks for all your help, much appreciated
Not a big problem...but in general i think it is a bad idea to reference any schema from your XML, as schema languages will evolve (like DTD did), but the XML will remain. Again, not a big problem, but just something i think is a bad idea (to reference XSI). Especially if it is just a lack of features in a tool, having alternatives. In this case not a a real issue, as it is just a bunch of configuration files. I was also asking the question for more generic problems, outside the field of configuration.
Oxygen rocks for most things, therefore it was hard for me to believe that code insight and validation for multi-namespace XML would be such a problem, without relying on core XSD/XSI technologies.
Thanks for all your help, much appreciated

Return to “General XML Questions”
Jump to
- Oxygen XML Editor/Author/Developer
- ↳ Feature Request
- ↳ Common Problems
- ↳ DITA (Editing and Publishing DITA Content)
- ↳ SDK-API, Frameworks - Document Types
- ↳ DocBook
- ↳ TEI
- ↳ XHTML
- ↳ Other Issues
- Oxygen XML Web Author
- ↳ Feature Request
- ↳ Common Problems
- Oxygen Content Fusion
- ↳ Feature Request
- ↳ Common Problems
- Oxygen JSON Editor
- ↳ Feature Request
- ↳ Common Problems
- Oxygen PDF Chemistry
- ↳ Feature Request
- ↳ Common Problems
- Oxygen Feedback
- ↳ Feature Request
- ↳ Common Problems
- Oxygen XML WebHelp
- ↳ Feature Request
- ↳ Common Problems
- XML
- ↳ General XML Questions
- ↳ XSLT and FOP
- ↳ XML Schemas
- ↳ XQuery
- NVDL
- ↳ General NVDL Issues
- ↳ oNVDL Related Issues
- XML Services Market
- ↳ Offer a Service