Classification: Public

Thanks Geert.  FpML is indeed my issue, because FpML only changes 
namespace URI for major versions, but FpML documents contain a version 
number indicating the major & minor version of FpML that the sender was 
using.  Ideally, the receiver should be able to use the same major/minor 
version Schemas for validation, etc. as the sender did, because strategies 
like using the latest minor version with the same major version mean that 
you have to trust that there are no backwards compatibility issues, not 
even subtle ones, and it's safer for production systems if you don't be 
too trusting.

As a general rule, I always discourage production systems from adding 
schema locations to XML files, because the receiver should decide which 
Schema(s) to use (if any), not the sender, just on security grounds.

I see that you could modifying a temporary copy of an XML file, add any 
necessary schema locations and then validate it, that's an interesting 
idea.  I also liked what others posted around using XSLT to do validation, 
that seems workable.

However, that only helps for validation, it doesn't help you with enabling 
Schema-aware XQueries.

It would be helpful if you could associate a collection of documents with 
a collection of Schemas, rather than only have the current coarser 
association of a database of documents to a database of Schemas.

Cheers, Tony.

____________________________________________________



Anthony B. Coates (Tony)
VP | Solution/Data Architect

Deutsche Bank AG, Filiale London
Global Technology and Operations (GTO)
1 Appold Street, EC2A 2UU London, United Kingdom
Tel. +44(20)754-77217
Mobile +44(79)0543-9026
Email [email protected]






From:
"Geert J." <[email protected]>
To:
MarkLogic Developer Discussion <[email protected]>, 
Date:
04/02/2014 21:09
Subject:
Re: [MarkLogic Dev General] schema validation



Hi Tony,
 
You mean that the fpml xsd is using xsd:include to incorporate 
declarations from various files, all for the same targetNamespace, right?
 
That could indeed cause trouble if you let MarkLogic try to find the 
top-level schema file itself. It will find multiple hits for the same 
targetNamespace, and doesn’t have logic to recognize there is a top-level 
file among them. You’d have to be lucky, if MarkLogic should find the 
correct one by itself.
 
But you can point MarkLogic into the right direction. You can for instance 
use schemaLocation to specify a specific xsd file. You can also use schema 
imports to specify a specific file. If you point to the top-level file, 
I’d expect validation to work just fine..
 
Kind regards,
Geert
 
Van: [email protected] [mailto:
[email protected]] Namens Anthony Coates
Verzonden: dinsdag 4 februari 2014 17:14
Aan: MarkLogic Developer Discussion
Onderwerp: Re: [MarkLogic Dev General] schema validation
 
Classification: Public

The problem, as least for me sometimes, is that MarkLogic assumes you can 
select the Schema(s) based on the namespace URI, and so you are stuck if 
you need to select a specific Schema or set of Schemas where there isn't a 
1-to-1 mapping between Schemas and namespace URIs (as often there isn't, 
e.g. for FpML).

Cheers, Tony.
____________________________________________________



Anthony B. Coates (Tony)
VP | Solution/Data Architect

Deutsche Bank AG, Filiale London
Global Technology and Operations (GTO)
1 Appold Street, EC2A 2UU London, United Kingdom
Tel. +44(20)754-77217
Mobile +44(79)0543-9026
Email [email protected] 





From: 
"Geert J." <[email protected]> 
To: 
MarkLogic Developer Discussion <[email protected]>, 
Date: 
04/02/2014 14:10 
Subject: 
Re: [MarkLogic Dev General] schema validation
 




Hi Rob, 
  
As far as I know, no. But you can specify a different database as Schemas 
database. It should in principle be possible to select a docs database 
itself as Schemas database.. 
  
Kind regards, 
Geert 
  
Van: [email protected] [mailto:
[email protected]] Namens Whitby, Rob
Verzonden: dinsdag 4 februari 2014 13:55
Aan: MarkLogic Developer Discussion
Onderwerp: [MarkLogic Dev General] schema validation 
  
Hi, 
  
I can’t seem to figure out how to use a schema without loading it into the 
schemas db. Is something like this possible? 
  
let $xml := <foo>… 
let $schema := <xs:schema>… 
let $validate := ??? 
  
Thanks 
Rob 
  
 _______________________________________________
General mailing list
[email protected]
http://developer.marklogic.com/mailman/listinfo/general





---

This e-mail may contain confidential and/or privileged information. If you 
are not the intended recipient (or have received this e-mail in error) 
please notify the sender immediately and delete this e-mail. Any 
unauthorized copying, disclosure or distribution of the material in this 
e-mail is strictly forbidden.

Please refer to http://www.db.com/en/content/eu_disclosures.htm for 
additional EU corporate and regulatory disclosures. 
_______________________________________________
General mailing list
[email protected]
http://developer.marklogic.com/mailman/listinfo/general






---

This e-mail may contain confidential and/or privileged information. If you are 
not the intended recipient (or have received this e-mail in error) please 
notify the sender immediately and delete this e-mail. Any unauthorized copying, 
disclosure or distribution of the material in this e-mail is strictly forbidden.

Please refer to http://www.db.com/en/content/eu_disclosures.htm for additional 
EU corporate and regulatory disclosures.

<<image/gif>>

<<image/gif>>

<<image/gif>>

<<image/gif>>

_______________________________________________
General mailing list
[email protected]
http://developer.marklogic.com/mailman/listinfo/general

Reply via email to